使用ML302模组通过MQTT协议接入OneNet平台与mqtt Broker
Posted 上官落冥
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用ML302模组通过MQTT协议接入OneNet平台与mqtt Broker相关的知识,希望对你有一定的参考价值。
一、前期准备
- ML302开发板
- USB转TTL串口模块
- 串口调试软件
- 开发板跳线帽配置与连接
将跳线帽短接在图中两个红圈的地方
USBTTL与ML302的连接图如下
5.连接完毕后上电并打开开关,红灯亮说明板子正在工作
二、模块初始化
- 打开串口助手,选择对应的端口号,波特率设置为115200,勾选发送新行,打开串口后向设备发送AT,若连接正常设备回回复OK
- ML302开机后默认手动PDD激活,我们按顺序输入如下指令进行激活:
AT
AT+CPIN?
AT+CFUN?
AT+CSQ
AT+CGDCONT=1,"IP","CMIOT"
AT+CGACT=1,1
当模块初始化完成,就可以配置TCP/UDP跟服务器进行通讯了。模组内部集成了AT扩展指令集,支持MQTT协议通讯,包括MQTT参数设置、MQTT连接、订阅、发布、消息接收等。
三、接入OneNet平台
1. 注册账号并登录
2. 创建产品与设备
2.1点击基础服务下的OneNET Studio进入开发
2.2创建产品
2.3添加设备
添加完产品后在设备管理界面中添加设备
3 将ML302连接到OneNet
3.1 获取连接信息
选择运维监控下的设备调试,并选择好产品与设备后,点击启动调试
可以看到调试日志栏中打印出了一条日志
{"clientid":"ML302_1","username":"20Re9D6quZ","password":"version=2018-10-31&res=products%2F20Re9D6quZ%2Fdevices%2FML302_1&et=1667887582&method=md5&sign=w1zIdZHGKv78zIVTSnQDqg%3D%3D"}
这个日志中的三个值是我们接下来要使用的。
(PS:获取到日志后点击停止调试,不然一会ML302会连接不上OneNet平台)
3.2 ML302配置
- 使用AT指令配置连接信息
平台的MQTT服务器IP为218.201.45.7,端口号为1883,id字段填写之前日志中的"clientid",用户名和密码分别对应日志中的"username"和"password",如下为测试时发送的数据,返回OK说明配置信息已经存储到模组:
AT+MQTTCFG="218.201.45.7",1883,"ML302_1",60,"20Re9D6quZ","version=2018-10-31&res=products%2F20Re9D6quZ%2Fdevices%2FML302_1&et=1667877383&method=md5&sign=I2yLCuH1evzKJVXmrLWUDA%3D%3D",1,"",0
2.连接服务器
配置完毕后发送AT+MQTTOPEN=1,1,0,0,0,"",""
,模组返回"+MQTTOPEN:OK",表示连接成功,这时候平台显示设备在线状态。
至此连接已经完成,更多有关平台的使用可以查看平台的文档OneNet文档
四、接入自有平台
自有平台的接入和OneNet的区别仅在配置MQTT的连接时不同,将图中AT指令的字段换成自己的服务器即可
AT+MQTTCFG="host",port,"id",60,"user","",1,"password",0
后续步骤与上面一样。
五、ML302与MQTT协议的相关AT指令
完成刚刚的步骤后我们仅仅只是与MQTT服务器进行了连接,若要执行其他操作还需输入对应的指令,如下:
1.订阅主题
2.发布主题
3.断开连接
以上是关于使用ML302模组通过MQTT协议接入OneNet平台与mqtt Broker的主要内容,如果未能解决你的问题,请参考以下文章
安信可EC系列模组接入OneNET物联网开放平台的多协议接入产品