關注零妖的微信公衆号,擷取第一手物聯網的技術幹貨: LINGYAOIOT
一
這一篇文章零妖老哥将給你展示兩個電腦軟體的使用方法,将極大地友善你調試與MQTT有關的物聯網項目。一個叫MQTT用戶端用來模拟裝置向雲端發送資料和接收雲端的資料;另一個叫作MQTT單片機程式設計小工具,是技小新針對阿裡雲MQTT伺服器連接配接過程中的痛點,自己編寫的一個電腦程式,用來生成連接配接阿裡雲MQTT伺服器時的賬号密碼等資訊的。
二
首先出場亮相的叫 MQTT.fx-1.3.1 的軟體,是一個運作在電腦上的MQTT用戶端軟體,隻要填寫一下MQTT伺服器(比如阿裡雲的MQTT伺服器)的IP位址,端口号,密碼等資訊,就可以連接配接到伺服器,然後可以向指定的TOPIC發送内容了,當然你也可以訂閱指定的TOPIC。

三
零妖帶你去配置一下這個MQTT用戶端,配置好之後就能模拟裝置收發資料了。設定之前,你需要進入阿裡雲的LinkDevelop平台,進入測試裝置的頁面,我們要複制一些參數;設定參數的過程中,你需要打開技小新的MQTT單片機程式設計小工具來配合一下。
如圖所示,在裝置開發裡面的測試裝置選項中,你要打開激活憑證,一鍵複制,到此為止。接下來請出我們的技小新MQTT單片機程式設計小工具,準備計算一下使用者名密碼等資訊。
四
下圖列出了阿裡雲官網給出的,MQTT連接配接時候的賬号密碼資訊的規則,比較繁瑣。零妖老哥根據這個規則寫的電腦小軟體,可以自動計算這些參數。
打開技小新MQTT單片機程式設計小工具,粘貼剛才複制的參數到輸入框裡面,就可以直接算出來上圖中的參數了。
好了,直接複制一些參數到MQTT用戶端裡面進行設定就行了。參數如下:
MQTT域名;端口;ClientID; UserName; Password 。
如果想發送内容到雲端,就複制 “屬性上報” TOPIC 到MQTT用戶端,發送内容即可,記住發送的内容要符合ALink規範。
五
好了,現在你傳回到MQTT用戶端的界面,點選連接配接試一下吧,一下子就能連上信不信?
然後複制一個叫做 “屬性上報” 的TOPIC,寫一個符合ALink協定規範的字元串,試一下發送資料。
再進入LinkDevelop 的測試裝置的 裝置詳情 頁面檢視資料上報結果:
六
零妖再從雲端下發一個資料,試一下模拟的用戶端能否收到。
需要MQTT用戶端,訂閱一個叫 “設定裝置屬性” 的TOPIC 。
好了,看下圖你就明白了,模拟用戶端收到的資料也是符合ALink協定規範的,單片機如果接收到這些資料後,就可以解析了。PS:MQTT通訊協定發送的資料是UTF-8格式的,單片機解碼時候遇到中文字元就要小心了,具體怎麼解決這個問題零妖也會在後續的文章裡說的。
七
說到了這裡你肯定已經猜到了零妖的良苦用心了。
兩個小工具配合使用能模拟一個裝置聯網,那麼雲端開發工程師完全就可以拿着小工具直接調試代碼了,根本不用管硬體端在幹嘛,是不是?該調用API的該寫界面的想咋弄咋弄,是不是很爽?
在LinkDevelop平台裡,有一個測試裝置的接入,硬體工程師隻要能夠想辦法建立一個TCP連接配接,連接配接上阿裡雲的MQTT伺服器,那麼就可以在平台上下發資料和測試上報資料,請問還用得着關心雲端工程師在幹啥嗎?努力做好單片機開發就行了,是不是很爽?
下一篇文章零妖将帶你了解一下雲端Web應用開發架構 ——Bone 架構!