合宙Air780EP:AT+MQTT速接OneNET

说到物联网,设备间通信很关键。

合宙Air780EP模块能用AT指令通过MQTT与OneNET平台交流。

想知道怎么让它们“聊”起来?接下来的内容就教你简单几步,实现Air780EP到OneNET的数据传输。

无论你是新手还是资深,都能轻松上手。

咱们直接开讲!

OneNET Studio提供了强大的数据处理能力、灵活的设备接入方式以及丰富的API接口。

官网地址:OneNET - 中国移动物联网开放平台

一、材料准备

为了顺利展开本次接入实践,需要准备以下关键材料:

Air780EP开发板一套:

合宙Air780EP模组采用了微安级极致低功耗设计,长连接待机功耗(5分钟心跳)低至450微安,该模组支持中国移动、电信、联通三大运营商的4G网络,实现了全网通覆盖,采用LGA高集成封装,多达109个SMT焊盘管脚。支持AT指令集、和LuatOS脚本开发,除了MQTT协议外,还支持TCP、UDP、HTTP、WebSocket、FTP、NTP等多种网络协议。

USB线:作为连接开发板与PC电脑的重要纽带,请选用质量可靠、传输速度稳定的USB线,以确保数据传输的顺畅无阻。

PC电脑:请确保电脑系统稳定,已安装必要的驱动程序和串口通信软件,以便能够顺利与Air780EP(V)开发板进行交互。

串口工具:作为与Air780EP(V)开发板进行AT指令交互的必备软件,串口工具将帮助您发送指令、接收响应,并实时监控设备状态。

准备就绪后,您就可以按照本指南的步骤,逐步完成Air780EP开发板通过MQTT协议接入OneNET Studio的全过程。

二、在onenet上创建产品

打开OneNET官网,进入控制台,进入Onenet Studio,选择设备接入与管理,点击产品管理

点击添加产品

根据自己产品填写,注意:节点类型选择直连设备,接入协议选择MQTT,点击确定

点击详情

将右上角自动注册打开

记住产品ID和产品key

三、创建设备

填入设备名,选择产品,这里我使用的是模块的imei来做设备名称

四、查看onenet接入协议

MQTT设备连接_开发者文档_OneNET (10086.cn))

可以看到,登入onenet时,mqtt的clientID、username和password都有指定

clientId即为刚才创建的设备名称

username为创建的产品ID

password是需要经过加密计算得来的鉴权token

计算方法详见如下文章,这篇文章测试时直接使用onenet提供的测试工具来计算鉴权密码,鉴权计算测试工具下面连接中下载

接入安全认证_开发者文档_OneNET (10086.cn)

五、连接onenet

1.查询卡、网络注册状态

具体交互流程如下所示

查询SIM卡状态
AT+CPIN?
 
+CPIN: READY
 
OK
 
查询信号质量
AT+CSQ
 
+CSQ: 16,0
 
OK
 
查询网络附着状态
AT+CGATT?
 
+CGATT: 1
 
OK
 
AT+CGDCONT?
 
+CGDCONT: 1,"IP","cmiot","10.126.200.230"
 
OK
 


2.MQTT直连onenet

设备注册参数如下:

mqttClientId: devicename
mqttUsername: productID
mqttPassword: token


下图为工具计算出的token

AT+MCONFIG="868655072230313","Wf5IXIGcZn","version=2018-10-31&res=products%2FWf5IXIGcZn%2Fdevices%2F868655072230313&et=1721630715&method=md5&sign=DPqCcsPQAQok9Gt7mNPTbA%3D%3D"
 
OK
 
AT+MIPSTART="studio-mqtt.heclouds.com",1883
 
OK
 
CONNECT OK
 
 
AT+MCONNECT=1,120
 
OK
 
CONNACK OK
 

可以从平台上看到设备已经在线了

3.发布与订阅消息

onenet studio有固定的通信TOPIC,可以到官网查看,这里演示下设备属性上报与响应的主题

通信主题_开发者文档_OneNET (10086.cn)

订阅消息:

AT+MSUB="$sys/Wf5IXIGcZn/868655072230313/thing/property/post/reply",0
 
OK
 
SUBACK


发布
向设备上报属性的主题发布消息,消息携带设备的属性,不同的产品具有不同的属性,可以在设备物模型处查看

例如:在文章开始创建的产品具有如下图所示的属性

向上报属性的主题发布一条payload格式错误的消息
AT+MPUB="$sys/q23GT8XVOu/868739055238251/thing/property/post",0,0,"{}"
 
OK
 
平台返回缺少参数
+MSUB: "$sys/q23GT8XVOu/868739055238251/thing/property/post/reply",47 byte,{"id":null,"code":2403,"msg":"required msg id"}
 
 
如下是正常流程
AT+MPUB="$sys/Wf5IXIGcZn/868655072230313/thing/property/post",0,0,"{\22id\22:\22123\22,\22params\22:{\22Capacity\22:{\22value\22:62}}}"
 
OK
 
平台返回成功
+MSUB: "$sys/Wf5IXIGcZn/868655072230313/thing/property/post/reply",39 byte,{"id":"123","code":200,"msg":"success"}
 

可以看到平台已经有数据更新

详细资料获取请点击:www.openluat.com

posted @ 2024-08-19 16:44  合宙LuatOS  阅读(490)  评论(0)    收藏  举报