基于STM32L031F6P6 OneNET平台注册NBIoT设备(LwM2M协议)[2024.11]

模组:移远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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值