應(yīng)用概述
??使用AT方式通過MQTT協(xié)議連接onenet studio。官網(wǎng)地址:https://open.iot.10086.cn/
材料準(zhǔn)備
Air780EP(V)開發(fā)板一套,包括天線SIM卡,USB線。

2.PC電腦,串口工具
%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97/%E5%BC%80%E5%8F%91%E6%9D%BF.png)
3.在onenet上創(chuàng)建產(chǎn)品
打開OneNET官網(wǎng),進(jìn)入控制臺(tái),進(jìn)入Onenet Studio,選擇設(shè)備接入與管理,點(diǎn)擊產(chǎn)品管理。

%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97/%E5%9B%BE%E7%89%871.png)
點(diǎn)擊添加產(chǎn)品

%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97/%E5%9B%BE%E7%89%872.png)
根據(jù)自己產(chǎn)品填寫,注意:節(jié)點(diǎn)類型選擇直連設(shè)備,接入?yún)f(xié)議選擇MQTT,點(diǎn)擊確定

%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97/%E5%9B%BE%E7%89%873.png)
點(diǎn)擊詳情

%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97/%E5%9B%BE%E7%89%874.png)
將右上角自動(dòng)注冊(cè)打開

%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97/%E5%9B%BE%E7%89%875.png)
記住產(chǎn)品ID和產(chǎn)品key
4.創(chuàng)建設(shè)備
填入設(shè)備名,選擇產(chǎn)品,這里我使用的是模塊的imei來做設(shè)備名稱

%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97/QQ20240722-151053.png)
5.查看onenet接入?yún)f(xié)議
MQTT設(shè)備連接_開發(fā)者文檔_OneNET (10086.cn))

%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97/20230808174902316_image.png)
可以看到,登入onenet時(shí),mqtt的clientID、username和password都有指定
clientId即為剛才創(chuàng)建的設(shè)備名稱
username為創(chuàng)建的產(chǎn)品ID

%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97/QQ20240722-152651.png)
password是需要經(jīng)過加密計(jì)算得來的鑒權(quán)token
計(jì)算方法詳見如下文章,這篇文章測試時(shí)直接使用onenet提供的測試工具來計(jì)算鑒權(quán)密碼,鑒權(quán)計(jì)算測試工具下面連接中下載
接入安全認(rèn)證_開發(fā)者文檔_OneNET (10086.cn)
連接onenet
1.查詢卡、網(wǎng)絡(luò)注冊(cè)狀態(tài)
??具體交互流程如下所示
查詢SIM卡狀態(tài) AT+CPIN? +CPIN: READY OK 查詢信號(hào)質(zhì)量 AT+CSQ +CSQ: 16,0 OK 查詢網(wǎng)絡(luò)附著狀態(tài) AT+CGATT? +CGATT: 1 OK AT+CGDCONT? +CGDCONT: 1,"IP","cmiot","10.126.200.230" OK
2.MQTT直連onenet
設(shè)備注冊(cè)參數(shù)如下:
mqttClientId: devicename mqttUsername: productID mqttPassword: token
| 參數(shù) | 說明 |
|---|---|
| devicename | 設(shè)備名稱 |
| productID | 平臺(tái)分配的產(chǎn)品id |
| token | 經(jīng)過鑒權(quán)算法得到的token |
| 具體交互流程如下所示 |
下圖為工具計(jì)算出的token

%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97/QQ20240722-154010.png)
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
可以從平臺(tái)上看到設(shè)備已經(jīng)在線了

%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97/QQ20240722-160748.png)
3.發(fā)布與訂閱消息
onenet studio有固定的通信TOPIC,可以到官網(wǎng)查看,這里演示下設(shè)備屬性上報(bào)與響應(yīng)的主題
通信主題_開發(fā)者文檔_OneNET (10086.cn)

%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97/20210812151650017_image.png)
訂閱
AT+MSUB="$sys/Wf5IXIGcZn/868655072230313/thing/property/post/reply",0 OK SUBACK
發(fā)布
向設(shè)備上報(bào)屬性的主題發(fā)布消息,消息攜帶設(shè)備的屬性,不同的產(chǎn)品具有不同的屬性,可以在設(shè)備物模型處查看
例如:在文章開始創(chuàng)建的產(chǎn)品具有如下圖所示的屬性

%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97/QQ20240722-162245.png)
向上報(bào)屬性的主題發(fā)布一條payload格式錯(cuò)誤的消息 AT+MPUB="$sys/q23GT8XVOu/868739055238251/thing/property/post",0,0,"{}" OK 平臺(tái)返回缺少參數(shù) +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 平臺(tái)返回成功 +MSUB: "$sys/Wf5IXIGcZn/868655072230313/thing/property/post/reply",39 byte,{"id":"123","code":200,"msg":"success"}
可以看到平臺(tái)已經(jīng)有數(shù)據(jù)更新

-
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2945文章
47815瀏覽量
414793 -
MQTT
+關(guān)注
關(guān)注
5文章
733瀏覽量
25062 -
合宙通信
+關(guān)注
關(guān)注
0文章
160瀏覽量
2470
發(fā)布評(píng)論請(qǐng)先 登錄
MQTT應(yīng)用看這篇!合宙Air780EP_LuatOS_MQTT應(yīng)用指南
合宙Air780EP模塊開發(fā)常見問題——異常斷鏈篇
合宙Air780EP模塊——AT指令MQTT接入OneNET開發(fā)指南
Air780EP模塊AT開發(fā)FOTA遠(yuǎn)程升級(jí)指南
Air780E/Air780EP/Air780EQ/Air201模塊遇到死機(jī)問題如何分析
Air780E/Air780EP/Air780EQ/Air201模塊遇到內(nèi)存死機(jī)如何分析
合宙 Air780E/Air780EP/Air780EQ/Air201模塊遇到死機(jī)問題如何分析
Air780EP低功耗4G模組—AT開發(fā)FOTA遠(yuǎn)程升級(jí)
MQTT應(yīng)用:Air780EP低功耗4G模組AT開發(fā)
AT開發(fā)FOTA遠(yuǎn)程升級(jí):Air780EP低功耗4G模組
4G通信先鋒:Air780EP開發(fā)板與RC522的結(jié)合
Air780EP模塊 AT開發(fā)-MQTT接入OneNET移動(dòng)物聯(lián)網(wǎng)平臺(tái)應(yīng)用指南
評(píng)論