【分享】基于小熊派(BearPi-IoT?Std)的MQTT實戰(zhàn)開發(fā)
概述
本次實戰(zhàn),我分別進行兩種實戰(zhàn):
-
MQTT.fx客戶端 騰訊云
-
利用小熊派 RT-Thread ESP8266 騰訊云
騰訊云配置
- 登錄騰訊云:https://console.cloud.tencent.com/iothub/product,如果你沒有注冊,先注冊。
- 創(chuàng)建一個新產品
- 選擇創(chuàng)建產品:
- 輸入產品名稱,選擇密鑰認證:
添加新設備:
- 進入剛剛創(chuàng)建的產品中:
- 在設備列表中添加新設備:
- 輸入對應的設備名稱即可:
- 點擊開始管理設備:
- 設備創(chuàng)建成功:
- 完成大部分的設置;點擊進入剛剛創(chuàng)建的設備:
- 我們使用默認的權限列表來進行實驗,默認有3個Topic:
MQTT.fx客戶端 騰訊云實戰(zhàn)
打開MQTT.fx客戶端,進入設置:
創(chuàng)建一個profile:
- 填寫Connection Profile相關信息和General信息:
- 參數說明:
| 參數 | 說明 |
|---|---|
| Profile Name | 配置文件保存為的名稱。 |
| Broker Address | MQTT 服務器連接地址,廣州域設備填入:PRODUCT_ID.iotcloud.tencentdevices.com,這里 PRODUCT_ID 為變量參數,用戶需填入創(chuàng)建產品時自動生成的產品 ID,例如 9****ZW2EZ.iotcloud.tencentdevices.com |
| Broker Port | MQTT 服務器連接端口,證書認證型端口:8883;密鑰認證型:1883 |
| Client ID | MQTT 協議字段,按照物聯網通信約束填入:產品 ID 設備名,例如:"9「「ZW2EZgate_dev01 ",9」」ZW2EZ 是產品 ID,gate_dev01 是設備名。 |
| Connection Timeout | 連接超時時間秒。 |
| Keep Alive Interval | 心跳間隔時間秒。 |
| Auto Reconnect | 斷網自動重連。 |
- 填寫User Credentials信息:
-
參數說明
- User Name :MQTT 協議字段,按照物聯網通信約束填入:產品 ID 設備名 SDKAppID connid。(創(chuàng)建完產品即可在產品列表頁和產品詳情頁查看 ProductID)如:"9****ZW2EZgate_dev01;12010126;12345",僅替換示例中的產品 ID 設備名即可,后面的兩個參數本身由物聯網通信接入 SDK 自動生成,所以這里填寫固定測試值。
- Password :Password 必須填寫。用戶可進入 Hub 相應設備列表查看獲取。
-
關于這部分的填寫,可以參考騰訊云的文檔:https://cloud.tencent.com/document/product/634/14630?from=information.detail.騰訊云可以用mqtt
而上面的信息全部都可以從云端獲?。?/span>
- PRODUCT_ID獲?。?/span>
- 設備密鑰,Client id,mqtt username,mqtt password的獲?。?/span>
填寫完上面的信息,便可以連接上服務器:
MQTT.fx客戶端訂閱主題:PRODUCT_ID/mqtt_rice/control,然后服務器往主題:PRODUCT_ID/mqtt_rice/control,發(fā)布消息??梢栽诳蛻舳丝吹椒掌靼l(fā)布的消息:
小熊派 RT-Thread ESP8266 騰訊云實戰(zhàn)
通過RT-Thread連接騰訊云,其實還是很方便的,有現成的軟件包。本次實驗主要用到兩個軟件包:at_device 和 tencent_iot_sdk:
配置at_device組件,配置AP的ssid和password,已經對應的串口:
配置tencent_iot_sdk組件,主要配置三元組:產品ID,設備名字,設備密鑰:
配置完上述內容,編譯燒錄就可以。燒錄完板子會自動連接網絡,然后再串口終端輸入:"tc_data_template_example start"。便可以連接上騰訊云:
很方便的就可以連上騰訊云:





