目录
一. NB-IoT模块实物图
二. BC20/NB-IoT模块产品规格
三. 指令顺序
1. AT判断BC20模组是否正常
2. ATE0返回OK,已经返回回显
3. AT+CSQ
4. AT_CEREG?
5. AT+CGATT?
6. AT+CGATT?
四. OneNet 连接
1. AT 查看 NB(当前NB),云平台根据这两个数值,连接NB
2. 检测SIM卡的状态 AT+CPIN?
五. ONENET
1. ONENET网站链接:https://open.iot.10086.cn/console/product/own
2. 生成产品,添加设备
3. 传输数据
五. 最后完整结果
六. 如何移植
1.main 里面 更改AT指令连接OneNet和发送需要传输的数据的AT指令
2.添加 apply.c apply.h
3.添加 uart.c uart.h
七. 参考教学网址
八. 链接
一. NB-IoT模块实物图
二. BC20/NB-IoT模块产品规格
BC20 是一款高性能,低功耗,多频段,支持GNSS定位功能的NB-IOT无线通信模块,供电电压:2.1V-3.63V,典型值3.3V
丰富的协议栈:UDP/TCP/MQTT/HTTP等
内置GNSS芯片:支持BeiDu,GPS和AGPS。
窄带物联网,带宽有180KHz,能直接部署在GSM,UMTS,LTE网络,即2/3/4G的网络上,
芯片购买链接:QUECTEL移远B...-淘宝网 (taobao.com)
三. 指令顺序
1. AT判断BC20模组是否正常
2. ATE0返回OK,已经返回回显
3. AT+CSQ
参数 | 属性 | 分类 |
0 ->-113dbm或以下,1->-111dBm,2-30->-109至-53dBm,31->51dBm或以上,99->未知 | 整型。接收信号强度指示 | |
0-7->RxQual 值,99->未知 | 整型。信道误码率(百分比) |
4. AT_CEREG?
当<n>=0、1、2 或 3 且命令成功执行时:
+CEREG: <n>,<stat>[,[<tac>],[<ci>],[<AcT>[,<cause_typ
e>,<reject_cause>]]]
<stat> 整型。EPS 注册状态。
0 未注册,MT 当前未搜索网络
1 已注册,归属网络
2 未注册,但 MT 当前正在尝试附着或搜索网络以进行注册
3 注册被拒绝
4 未知(例如:超出 E-UTRAN 覆盖范围)
5 已注册,漫游状态
5. AT+CGATT?
<state> 整型。PDP 上下文激活状态。
0 去附着
1 附着
<err> 整型。错误码。详细信息,请参阅第 12 章
6. AT+CGATT?
确认 PDP 激活状态,1-代表已激活 0-代表未激活(决定是否能上网)
四. OneNet 连接
1. AT 查看 NB(当前NB),云平台根据这两个数值,连接NB
AT+CGSN=1
+CGSN: 862177046278936(IMEI)
OK
AT+CIMI
460085667003776(IMSI)
OK
2. 检测SIM卡的状态 AT+CPIN?
五. ONENET
1. ONENET网站链接:https://open.iot.10086.cn/console/product/own
2. 生成产品,添加设备
AT+MIPLCREATE
+MIPLCREATE: 0 //成功创建通信套件实例。
OK
AT+MIPLADDOBJ=0,3311,1,"1",4,2 //添加 LwM2M 对象。
OK //成功添加对象,且将注册 ID 为 0 的实例。
/**
*0 通信套件的实例ID
*3311 是LwM2M对象ID,若对象ID不存在,则返回错误
*1 实例个数
*"1" 实例位图,比如"4"就是"1101",ID 0,2,3注册,ID 1不注册
*4 是属性的个数,可读可写的
*2 是可执行的资源个数
*/
AT+MIPLOPEN=0,86400 //向 OneNET 发送注册请求。
OK
+MIPLEVENT: 0,1 //开始连接到 Bootstrap 服务器。
+MIPLEVENT: 0,2 //成功连接到 Bootstrap 服务器。
+MIPLEVENT: 0,4 //成功连接到 OneNET 平台。
+MIPLEVENT: 0,6 //成功注册到 OneNET 平台。
+MIPLOBSERVE: 0,69234,1,3311,0,-1 //接收到订阅请求(3311/0)。
AT+MIPLOBSERVERSP=0,69234,1 //响应订阅请求,其结果码为 1。
OK
+MIPLDISCOVER: 0,26384,3311 //接收到发现资源请求。
AT+MIPLDISCOVERRSP=0,26384,1,19,"5850;5851;5706;5805" //使用资源 ID 列表响应发现资源请求。
OK
AT+MIPLDELOBJ=0,3311 //删除 LwM2M 对象。
OK
AT+MIPLCLOSE=0 //向 OneNET 平台发送注销请求。
OK
+MIPLEVENT: 0,15 //成功注销。
AT+MIPLDELETE=0
OK //成功删除通信套件实例
3. 传输数据
AT+MIPLNOTIFY=<ref>,<msgId>,<objId>,<insId>,<resId>,<valueType>,<len>,<value>,<index>,<flag>[,<ackid>]
<ref> 整型。OneNET 通信套件的实例 ID;范围:0-65535。
<msgId> 整型。消息 ID;出自 URC +MIPLOBSERVE。
<objId> 整型。LwM2M 对象 ID。
<insId> 整型。实例 ID;出自 URC +MIPLOBSERVE。
<resId> 整型。资源 ID;出自 URC +MIPLOBSERVE。
<valueType> 整型。<value>值的类型。
1 字符串类型
2 十六进制类型
3 整型
4 浮点型
5 布尔型(Boolean)
<len> 整型。<value>值的长度;单位:字节。
当<valueType>=1 时,该参数值为字符串类型<value>的长度,范围:0-1024。
当<valueType>=2 时,该参数值为十六进制字符串类型<value>的长度,范围:
0-512。
当<valueType>=3 时,该参数值可能为 2、4 或者 8。
当<valueType>=4 时,该参数值为 4。
当<valueType>=5 时,该参数值为 1。
<value> 数据。
当<valueType>=1 时,该参数值为带双引号的字符串类型格式。
当<valueType>=2 时,该参数值为十六进制字符串格式。
当<valueType>=3 时,该参数值为整型格式。
当<valueType>=4 时,该参数值为浮点型格式。
当<valueType>=5 是,该参数值为布尔型格式。
<index> 整型。消息序号。若待上报数据包含多条消息,则需要发送多次 AT 命令以完成
上报。例如,若待上报数据包含 N 条消息,则参数<index>需从 N-1 到 0 依次递
减,AT 命令按照<index>取值从大到小的顺序执行。<index>=0 表示数据中最后
一条消息。
<flag> 整型。指示消息,范围:0-2。
0 表示<value>中最后一条消息
1 表示<value>中第一条消息
2 表示<value>中中间消息
该版本仅支持<flag>=0。
<ackid> 整型。范围:0-65535。
0 上报的数据为不需要确认的消息
1-65535 上报的数据为需要确认的消息
五. 最后完整结果
AT
OK
BC20模组正常
ATE0
OK
+IP: 10.5.14.209
+IP: 2409:8d18:200:5bf3:17a2:38d5:e89a:1eeb
已经关闭回显
+CSQ: 23,0
OK
NB_Signal_Value=23
+CEREG: 0,1
OK
EPS网络注册成功
+CGATT: 1
OK
PS已附着
OK
GNSS打开命令已发送
+QGNSSC: 1
OK
GNSS电源已打开
+MIPLCREATE: 0
OK
OK
OK
+MIPLEVENT: 0,1
+MIPLEVENT: 0,2
+MIPLEVENT: 0,4
+MIPLOBSERVE: 0,126521,1,3313,0,-1
hhh6
ttt6
OK
+MIPLDISCOVER: 0,60986,3313
+MIPLDISCOVER: 0,60986,3313
OK
OK
AT+MIPLNOTIFY=0,126521,3313,0,5704,4,4,4,0,0
OK
AT+MIPLNOTIFY=0,126521,3313,0,5704,4,4,4,0,0
//发送数据 4 到OneNet 云平台
AT+MIPLNOTIFY=0,110915,3313,0,5703,4,4,8.584,0,0
OK
AT+MIPLNOTIFY=0,110915,3313,0,5704,4,4,13.95,,0,0
OK
AT+MIPLNOTIFY=0,110915,3313,0,5603,4,4,28.22,,0,0
OK
AT+MIPLNOTIFY=0,110915,3313,0,5702,4,4,20.340,0,0
OK
六. 如何移植
1.main 里面 更改AT指令连接OneNet和发送需要传输的数据的AT指令
2.添加 apply.c apply.h
3.添加 uart.c uart.h
(具体代码可查看gitee链接中的文件夹:NBIOT 程序)
七. 参考教学网址
第34集-云平台添加设备_哔哩哔哩_bilibili
八. 链接
王锦/NB-IoT (gitee.com)https://gitee.com/didiao-hhh/nb-io-t