模组:移远BC20
1 AT命令获取 IMEI 和 IMSI
AT+CGSN=1 // 查询 IMEI
AT+CIMI // 查询 IMSI
2 创建产品
进入OneNET官网的 开发者中心。
选择产品开发 - 创建产品。
填写相关产品信息。
点击 确定 创建产品。
接入协议简介
数据协议简介
IPSO数据模型:
IPSO数据模型是LwM2M协议的一部分,专门用于物联网设备的数据交换。选择IPSO数据模型时,需要在设备注册时开启自动发现资源功能,这样可以自动发现和配置设备的资源项。
OneJson数据模型:
OneJson数据模型是另一种选择,它提供了更灵活的数据表示方式。选择OneJson数据模型后,需要在创建产品后进行物模型设置,以适应不同的数据交换需求。
3 创建/添加设备
进入设备管理页面。
添加设备。
添加完成之后如下图。
点击右侧 详情 进入详细信息页面。
4 设备接入OneNET平台。
接入平台命令如下:
AT+MIPLCREATE // 创建通信套件实例
AT+MIPLADDOBJ=0,3311,1,"1",4,2 // 添加 LwM2M 对象
AT+MIPLOPEN=0,86400 // 向 OneNET 发送注册请求。
AT+MIPLOBSERVERSP=0,69234,1 // 响应订阅请求,其结果码为 1。注意“69234”要根据前一命令返回的数据填写,前一命令返回后10s内要发送这条命令
AT+MIPLDISCOVERRSP=0,26384,1,19,"5850;5851;5706;5805" // 使用资源 ID 列表响应发现资源请求。注意“26384”要根据前一命令返回的数据填写,前一命令返回后10s内要发送这条命令
都返回 OK 后,设备接入成功。刷新设备管理页面可以看到设备处于 在线 状态。
进入到 详情 页面,可以查看 设备资源。
**注意:**这步遇到个蛋疼的问题,当发送完下面这个命令后,串口终端已经返回 OK, 说明执行成功,但是 OneNET 平台上设备资源那里显示属性个数为 0,如前图所示,理论上应该是4。这个问题卡了我一个上午。
AT+MIPLDISCOVERRSP=0,26384,1,19,"5850;5851;5706;5805"
解决方案:
不停地删除设备,然后重新添加设备,并重复步骤4的命令,同时刷新 详情 - 设备资源 网页,直到成功显示4个属性。
5 上报数据
上报资源数据
AT+MIPLNOTIFY=0,114849,3311,0,5851,3,1,51,0,0 // "114849" 为 AT+MIPLOBSERVERSP 命令的第二个参数
调试这一步的时候,数据一直上报失败,返回错误码 655。后面不停执行步骤四(不用删除设备),然后终于成功了。坑~
注意:掉电之后每次要重新执行步骤4才可以执行步骤5(上报数据),现在不知所以然,先这样吧,说不定后面就理解了。
6 获取经纬度
装上GNSS天线,并且使用AT命令打开GNSS。
AT+QGNSSC=1 // 打开 GNSS,0 关闭,1 打开
AT+QGNSSC? // 查询 GNSS 开关状态,0 为关, 1 为开
AT+QGNSSRD="NMEA/RMC" // 获取经纬度
成功获取到了经纬度信息。
+QGNSSRD: $GNRMC,115051.80,V,,,,,,,,,,N,V*10
OK
AT+QGNSSRD="NMEA/RMC"
+QGNSSRD: $GNRMC,115055.80,V,,,,,,,,,,N,V*14
OK
AT+QGNSSRD="NMEA/RMC"
+QGNSSRD: $GNRMC,115101.80,V,,,,,,,091124,,,N,V*1B
OK
AT+QGNSSRD="NMEA/RMC"
+QGNSSRD: $GNRMC,115149.00,A,2302.6723,N,11432.3244,E,0.209,,091124,,,A,V*1E
OK
AT+QGNSSRD="NMEA/RMC"
+QGNSSRD: $GNRMC,115156.00,A,2302.6726,N,11432.3234,E,0.230,,091124,,,A,V*18
OK
6 BC20 模组相关AT命令
创建通信套件:
AT+MIPLCREATE
添加电池的 LwM2M 对象
AT+MIPLADDOBJ=0,3320,1,"1",1,0
添加位置的 LwM2M 对象
AT+MIPLADDOBJ=0,3336,1,"1",2,0
项 OneNet 发送注册请求
AT+MIPLOPEN=0,86400 // 86400x0.9s
响应订阅请求
AT+MIPLOBSERVERSP=0,xxxxx,1
AT+MIPLOBSERVERSP=0,xxxxx,1
响应发现资源请求
AT+MIPLDISCOVERRSP=0,xxxxx,1,4,"5700"
AT+MIPLDISCOVERRSP=0,xxxxx,1,9,"5513;5514"
上报资源信息
AT+MIPLNOTIFY=0,xxxxx,3320,0,5700,4,4,100,0,0
AT+MIPLNOTIFY=0,xxxxx,3336,0,5513,1,8,"00.00000",1,0 // 维度(latitude):114.544407 经度(longitude):23.041794
AT+MIPLNOTIFY=0,xxxxx,3336,0,5514,1,9,"000.00000",0,0
获取NB的经纬度信息
AT+QGNSSRD="NMEA/RMC"
+QGNSSRD: $GPRMC,060845.00,A,4004.7401,N,11614.1961,E,0.000,,180817,,,A,V*0B
OK