• 方案介紹
    • 一、前言
    • 二、下載固件
    • 三、常用的AT指令
    • 四、ESP8266-AT指令連接華為云IOT
    • 五、華為云IOT服務(wù)器部署過程
  • 附件下載
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

ESP8266采用AT指令連接華為云服務(wù)器(MQTT固件)

05/29 10:03
1347
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

更多詳細(xì)資料請聯(lián)系.docx

共1個文件

一、前言

本篇文章主要介紹3個內(nèi)容:

(1)ESP8266-WIFI模塊常用的AI指令功能介紹

(2)ESP8266燒寫MQTT固件連接華為云IOT服務(wù)器。

(3)介紹華為云IOT服務(wù)器的配置過程。

ESP8266是一款功能強大的物聯(lián)網(wǎng)芯片,它集成了處理器、Wi-Fi網(wǎng)絡(luò)連接和TCP/IP協(xié)議棧,提供了簡單而強大的無線網(wǎng)絡(luò)連接能力,被廣泛應(yīng)用于各種物聯(lián)網(wǎng)設(shè)備中。支持AT指令集,可以通過串口與其他設(shè)備進(jìn)行通信,可以降低設(shè)備間的通信難度。

以下是ESP8266模塊的主要特點和功能:

(1)小巧而強大:ESP8266模塊的尺寸小,但它搭載了一個高性能的32位Tensilica L106 RISC處理器,時鐘頻率為80MHz,可以通過軟件進(jìn)行固件升級。

(2)Wi-Fi連接:ESP8266支持802.11 b/g/n標(biāo)準(zhǔn),能夠?qū)崿F(xiàn)快速而穩(wěn)定的無線網(wǎng)絡(luò)連接。它可以作為Wi-Fi客戶端連接到現(xiàn)有的Wi-Fi網(wǎng)絡(luò),也可以作為Wi-Fi接入點(AP)提供無線網(wǎng)絡(luò)服務(wù)。

(3)TCP/IP協(xié)議棧:ESP8266集成了TCP/IP協(xié)議棧,可以通過Wi-Fi與其他設(shè)備進(jìn)行通信,包括傳輸數(shù)據(jù)、發(fā)送HTTP請求、執(zhí)行WebSocket通信等。

(4)GPIO引腳:ESP8266模塊具有多個通用GPIO引腳,可用于連接和控制外部設(shè)備,如傳感器、繼電器、LED等。

(5)低功耗:ESP8266在待機模式下的功耗非常低,適用于需要長時間運行的低功耗應(yīng)用。

(6)開發(fā)環(huán)境:ESP8266的開發(fā)可以使用多種編程語言和開發(fā)平臺,如Arduino IDE、MicroPython、Lua等。這使得開發(fā)人員可以選擇最適合他們的工具進(jìn)行開發(fā)。

image-20231214095551151

image-20231214095534811

二、下載固件

ESP8266默認(rèn)的固件不支持MQTT協(xié)議,需要重新下載固件。

鏈接:https://docs.ai-thinker.com/%E5%9B%BA%E4%BB%B6%E6%B1%87%E6%80%BB

三、常用的AT指令

【1】基礎(chǔ)AT指令

AT:測試 AT 啟動

AT+RST:重啟模塊

AT+GMR:查看版本信息

AT+CMD:查詢當(dāng)前固件支持的所有命令及命令類型

AT+GSLP:進(jìn)? Deep-sleep 模式

ATE:開啟或關(guān)閉 AT 回顯功能

AT+RESTORE:恢復(fù)出廠設(shè)置

AT+SAVETRANSLINK:設(shè)置開機 透傳模式 信息

AT+TRANSINTVL:設(shè)置 透傳模式 模式下的數(shù)據(jù)發(fā)送間隔

AT+UART_CUR:設(shè)置 UART 當(dāng)前臨時配置,不保存到 flash

AT+UART_DEF:設(shè)置 UART 默認(rèn)配置, 保存到 flash

AT+SLEEP:設(shè)置 sleep 模式

AT+SYSRAM:查詢當(dāng)前剩余堆空間和最小堆空間

AT+SYSMSG:查詢/設(shè)置系統(tǒng)提示信息

AT+SYSMSGFILTER:啟用或禁用 系統(tǒng)消息 過濾

AT+SYSMSGFILTERCFG:查詢/配置 系統(tǒng)消息 的過濾器

AT+SYSFLASH:查詢或讀寫 flash 用戶分區(qū)

AT+SYSMFG:查詢或讀寫 manufacturing nvs 用戶分區(qū)

AT+RFPOWER:查詢/設(shè)置 RF TX Power

AT+SYSROLLBACK:回滾到以前的固件

AT+SYSTIMESTAMP:查詢/設(shè)置本地時間戳

AT+SYSLOG:啟用或禁用 AT 錯誤代碼提示

AT+SLEEPWKCFG:設(shè)置 Light-sleep 喚醒源和喚醒 GPIO

AT+SYSSTORE:設(shè)置參數(shù)存儲模式

AT+SYSREG:讀寫寄存器

【2】Wi-Fi AT 命令集

AT+CWINIT:初始化/清理 Wi-Fi 驅(qū)動程序

AT+CWMODE:查詢/設(shè)置 Wi-Fi 模式 (Station/SoftAP/Station+SoftAP)

AT+CWSTATE:查詢 Wi-Fi 狀態(tài)和 Wi-Fi 信息

AT+CWJAP:連接 AP

AT+CWRECONNCFG:查詢/設(shè)置 Wi-Fi 重連配置

AT+CWLAPOPT:設(shè)置 AT+CWLAP 命令掃描結(jié)果的屬性

AT+CWLAP:掃描當(dāng)前可用的 AP

AT+CWQAP:斷開與 AP 的連接

AT+CWSAP:配置 ESP32 SoftAP 參數(shù)

AT+CWLIF:查詢連接到 ESP32 SoftAP 的 station 信息

AT+CWQIF:斷開 station 與 ESP32 SoftAP 的連接

AT+CWDHCP:啟用/禁用 DHCP

AT+CWDHCPS:查詢/設(shè)置 ESP32 SoftAP DHCP 分配的 IPv4 地址范圍

AT+CWAUTOCONN:上電是否自動連接 AP

AT+CWAPPROTO:查詢/設(shè)置 SoftAP 模式下 802.11 b/g/n 協(xié)議標(biāo)準(zhǔn)

AT+CWSTAPROTO:設(shè)置 Station 模式下 802.11 b/g/n 協(xié)議標(biāo)準(zhǔn)

AT+CIPSTAMAC:查詢/設(shè)置 ESP32 Station 的 MAC 地址

AT+CIPAPMAC:查詢/設(shè)置 ESP32 SoftAP 的 MAC 地址

AT+CIPSTA:查詢/設(shè)置 ESP32 Station 的 IP 地址

AT+CIPAP:查詢/設(shè)置 ESP32 SoftAP 的 IP 地址

AT+CWSTARTSMART:開啟 SmartConfig

AT+CWSTOPSMART:停止 SmartConfig

AT+WPS:設(shè)置 WPS 功能

AT+MDNS:設(shè)置 mDNS 功能

AT+CWJEAP:連接 WPA2 企業(yè)版 AP

AT+CWHOSTNAME:查詢/設(shè)置 ESP32 Station 的主機

【3】TCP/IP AT 命令

AT+CIPV6: 啟用/禁用 IPv6 網(wǎng)絡(luò) (IPv6)

AT+CIPSTATE:查詢 TCP/UDP/SSL 連接信息

AT+CIPSTATUS (棄用):查詢 TCP/UDP/SSL 連接狀態(tài)和信息

AT+CIPDOMAIN:域名解析

AT+CIPSTART:建立 TCP 連接、UDP 傳輸或 SSL 連接

AT+CIPSTARTEX:建立自動分配 ID 的 TCP 連接、UDP 傳輸或 SSL 連接

[僅適用數(shù)據(jù)模式] +++: 退出 數(shù)據(jù)模式

AT+SAVETRANSLINK:設(shè)置 Wi-Fi 開機 透傳模式 信息

AT+CIPSEND:在 普通傳輸模式 或 Wi-Fi 透傳模式 下發(fā)送數(shù)據(jù)

AT+CIPSENDL:在 普通傳輸模式 下并行發(fā)送長數(shù)據(jù)

AT+CIPSENDLCFG:設(shè)置 AT+CIPSENDL 命令的屬性

AT+CIPSENDEX:在 普通傳輸模式 下采用擴展的方式發(fā)送數(shù)據(jù)

AT+CIPCLOSE:關(guān)閉 TCP/UDP/SSL 連接

AT+CIFSR:查詢本地 IP 地址和 MAC 地址

AT+CIPMUX:啟用/禁用多連接模式

AT+CIPSERVER:建立/關(guān)閉 TCP 或 SSL 服務(wù)器

AT+CIPSERVERMAXCONN:查詢/設(shè)置服務(wù)器允許建立的最大連接數(shù)

AT+CIPMODE:查詢/設(shè)置傳輸模式

AT+CIPSTO:查詢/設(shè)置本地 TCP 服務(wù)器超時時間

AT+CIPSNTPCFG:查詢/設(shè)置時區(qū)和 SNTP 服務(wù)器

AT+CIPSNTPTIME:查詢 SNTP 時間

AT+CIPSNTPINTV:查詢/設(shè)置 SNTP 時間同步的間隔

AT+CIPFWVER:查詢服務(wù)器已有的 AT 固件版本

AT+CIUPDATE:通過 Wi-Fi 升級固件

AT+CIPDINFO:設(shè)置 +IPD 消息詳情

AT+CIPSSLCCONF:查詢/設(shè)置 SSL 客戶端配置

AT+CIPSSLCCN:查詢/設(shè)置 SSL 客戶端的公用名 (common name)

AT+CIPSSLCSNI:查詢/設(shè)置 SSL 客戶端的 SNI

AT+CIPSSLCALPN:查詢/設(shè)置 SSL 客戶端 ALPN

AT+CIPSSLCPSK:查詢/設(shè)置 SSL 客戶端的 PSK

AT+CIPRECONNINTV:查詢/設(shè)置 Wi-Fi 透傳模式 下的 TCP/UDP/SSL 重連間隔

AT+CIPRECVTYPE:查詢/設(shè)置套接字接收模式

AT+CIPRECVDATA:獲取被動接收模式下的套接字?jǐn)?shù)據(jù)

AT+CIPRECVLEN:查詢被動接收模式下套接字?jǐn)?shù)據(jù)的長度

AT+PING:ping 對端主機

AT+CIPDNS:查詢/設(shè)置 DNS 服務(wù)器信息

AT+CIPTCPOPT:查詢/設(shè)置套接字選項

【4】MQTT AT 命令集

AT+MQTTUSERCFG:設(shè)置 MQTT 用戶屬性

AT+MQTTLONGCLIENTID:設(shè)置 MQTT 客戶端 ID

AT+MQTTLONGUSERNAME:設(shè)置 MQTT 登陸用戶名

AT+MQTTLONGPASSWORD:設(shè)置 MQTT 登陸密碼

AT+MQTTCONNCFG:設(shè)置 MQTT 連接屬性

AT+MQTTALPN:設(shè)置 MQTT 應(yīng)用層協(xié)議協(xié)商(ALPN)

AT+MQTTSNI:設(shè)置 MQTT 服務(wù)器名稱指示(SNI)

AT+MQTTCONN:連接 MQTT Broker

AT+MQTTPUB:發(fā)布 MQTT 消息(字符串)

AT+MQTTPUBRAW:發(fā)布長 MQTT 消息

AT+MQTTSUB:訂閱 MQTT Topic

AT+MQTTUNSUB:取消訂閱 MQTT Topic

AT+MQTTCLEAN:斷開 MQTT 連接

四、ESP8266-AT指令連接華為云IOT

下面是STM32的實際代碼,通過串口發(fā)送AT指令控制ESP8266連接華為云IOT服務(wù)器、

void ESP8266_Init(void)
{
//====================================================實現(xiàn)設(shè)備在線==================================================
    //【1】復(fù)位ESP8266
    printf("AT+RSTrn");//第一步
    delay_ms(2000);
    //【2】設(shè)置為STA模式
    printf("AT+CWMODE=1rn");//第二步
    delay_ms(1500);
    //【3】設(shè)置連接的WIFI熱點
    // 格式: AT+CWJAP="填寫wifi名稱","填寫WiFi密碼"
    printf("AT+CWJAP="123","12345678"rn");//第四步
    delay_ms(1500);
    //【4】設(shè)置MQTT的登錄名和密碼
    // 格式: AT+MQTTUSERCFG=0,1,"NULL","填寫用戶名","填寫密碼",0,0,""
    printf("AT+MQTTUSERCFG=0,1,"NULL","65620a943668046d0e31568c_room1","a83d06a34631b72d1b35bae5ef5e23c7ea723952c33796faa47410b107e7f4b7",0,0,""rn");//第五步
    delay_ms(1500);
    //【5】設(shè)置MQTT的ClientID
    // 格式: AT+MQTTCLIENTID=0,"填寫ClientID"
    printf("AT+MQTTCLIENTID=0,"65620a943668046d0e31568c_room1_0_0_2023112515"rn");//第6步  客戶端ID
    delay_ms(1500);
    // 【6】設(shè)置MQTT接入地址
    // 格式: AT+MQTTCONN=0,"填寫MQTT接入的地址",1883,1
    printf("AT+MQTTCONN=0,"124.70.218.131",1883,1rn");//第7步
    delay_ms(2000);
    
}



void ESP8266_data_publish(char *att)
{
    //	char publish_command[256];
    printf("%s",att);//第2步
    //printf("AT+MQTTPUB=0,"$oc/devices/65620a943668046d0e31568c_room1/sys/properties/report","{"services":[{"service_id":"stm32","properties":{"%s":%d}}]}",0,0rn", att, data);
    //	printf("%s", publish_command);
}


int main()
{
    //【7】上傳數(shù)據(jù)
               // 格式: AT+MQTTPUB=0," 發(fā)布的主題 ","上報的json數(shù)據(jù)",0,0
               // $oc/devices/64047c741eaf704179abaa58_Temp_test/sys/properties/report ","{"services":[{"service_id":"esp8266_data","properties":{"temp": 100}}]}

               //
               //組合上傳的數(shù)據(jù)0---上傳單個
               sprintf(MQTT_buff,"AT+MQTTPUB=0,"$oc/devices/65620a943668046d0e31568c_room1/sys/properties/report","{"services":[{"service_id":"stm32","properties":{"Temp":%d}}]}",0,0rn",
               temperature);
               
               //組合上傳的數(shù)據(jù)--上傳多個
               //sprintf(MQTT_buff,"AT+MQTTPUB=0,"$oc/devices/65620a943668046d0e31568c_room1/sys/properties/report","{"services": [{"service_id": "stm32","properties":{"Temp":%d,"Humi":%d,"Fire":%d,"MQ-135":%d,"Water":%d,"SPO2":%d,"HR":%d}}]}",0,0rn",
               //temperature,humidity,Fire,z,Water,SPO2,HR);
               
               
               //上傳數(shù)據(jù)
               ESP8266_data_publish(MQTT_buff);
}

五、華為云IOT服務(wù)器部署過程

在華為云IOT平臺上,需要進(jìn)行設(shè)備接入、數(shù)據(jù)模型定義、規(guī)則引擎配置和應(yīng)用開發(fā)等四個核心模塊的開發(fā)。其中,設(shè)備接入模塊包括設(shè)備注冊、獲取設(shè)備證書、建立連接等步驟,以保障設(shè)備與云平臺之間的安全通信;數(shù)據(jù)模型定義模塊需要根據(jù)實際需求定義相應(yīng)的數(shù)據(jù)模型,包括上傳數(shù)據(jù)格式、設(shè)備屬性和服務(wù)等。規(guī)則引擎配置模塊需要完成實時消息推送、遠(yuǎn)程控制和告警等功能。應(yīng)用開發(fā)模塊則是將完整的智能井蓋系統(tǒng)進(jìn)行打包,為用戶提供統(tǒng)一的操作接口。

華為云官網(wǎng): https://www.huaweicloud.com/

打開官網(wǎng),搜索物聯(lián)網(wǎng),就能快速找到 設(shè)備接入IoTDA。

image-20221204193824815

5.1 物聯(lián)網(wǎng)平臺介紹

華為云物聯(lián)網(wǎng)平臺(IoT 設(shè)備接入云服務(wù))提供海量設(shè)備的接入和管理能力,將物理設(shè)備聯(lián)接到云,支撐設(shè)備數(shù)據(jù)采集上云和云端下發(fā)命令給設(shè)備進(jìn)行遠(yuǎn)程控制,配合華為云其他產(chǎn)品,幫助我們快速構(gòu)筑物聯(lián)網(wǎng)解決方案。

使用物聯(lián)網(wǎng)平臺構(gòu)建一個完整的物聯(lián)網(wǎng)解決方案主要包括3部分:物聯(lián)網(wǎng)平臺、業(yè)務(wù)應(yīng)用和設(shè)備。

物聯(lián)網(wǎng)平臺作為連接業(yè)務(wù)應(yīng)用和設(shè)備的中間層,屏蔽了各種復(fù)雜的設(shè)備接口,實現(xiàn)設(shè)備的快速接入;同時提供強大的開放能力,支撐行業(yè)用戶構(gòu)建各種物聯(lián)網(wǎng)解決方案。

設(shè)備可以通過固網(wǎng)、2G/3G/4G/5G、NB-IoT、Wifi等多種網(wǎng)絡(luò)接入物聯(lián)網(wǎng)平臺,并使用LWM2M/CoAP、MQTT、HTTPS協(xié)議將業(yè)務(wù)數(shù)據(jù)上報到平臺,平臺也可以將控制命令下發(fā)給設(shè)備。

業(yè)務(wù)應(yīng)用通過調(diào)用物聯(lián)網(wǎng)平臺提供的API,實現(xiàn)設(shè)備數(shù)據(jù)采集、命令下發(fā)、設(shè)備管理等業(yè)務(wù)場景。

img

5.2 開通物聯(lián)網(wǎng)服務(wù)

地址: https://www.huaweicloud.com/product/iothub.html

image-20221204194233414

開通標(biāo)準(zhǔn)版免費單元。

image-20230420181306316

image-20230420181322092

開通之后,點擊總覽,查看接入信息。 我們當(dāng)前設(shè)備準(zhǔn)備采用MQTT協(xié)議接入華為云平臺,這里可以看到MQTT協(xié)議的地址和端口號等信息。

image-20230423111235524

總結(jié):

端口號:   MQTT (1883)| MQTTS (8883)	
接入地址: a3433ab133.iot-mqtts.cn-north-4.myhuaweicloud.com

根據(jù)域名地址得到IP地址信息:

Microsoft Windows [版本 10.0.19044.2846]
(c) Microsoft Corporation。保留所有權(quán)利。

C:Users11266>ping a3433ab133.iot-mqtts.cn-north-4.myhuaweicloud.com

正在 Ping a3433ab133.iot-mqtts.cn-north-4.myhuaweicloud.com [121.36.42.100] 具有 32 字節(jié)的數(shù)據(jù):
來自 121.36.42.100 的回復(fù): 字節(jié)=32 時間=37ms TTL=31
來自 121.36.42.100 的回復(fù): 字節(jié)=32 時間=37ms TTL=31
來自 121.36.42.100 的回復(fù): 字節(jié)=32 時間=36ms TTL=31
來自 121.36.42.100 的回復(fù): 字節(jié)=32 時間=37ms TTL=31

121.36.42.100 的 Ping 統(tǒng)計信息:
    數(shù)據(jù)包: 已發(fā)送 = 4,已接收 = 4,丟失 = 0 (0% 丟失),
往返行程的估計時間(以毫秒為單位):
    最短 = 36ms,最長 = 37ms,平均 = 36ms

C:Users11266>

image-20230423111213624

MQTT協(xié)議接入端口號有兩個,1883是非加密端口,8883是證書加密端口,單片機無法加載證書,所以使用1883端口比較合適。 接下來的ESP8266就采用1883端口連接華為云物聯(lián)網(wǎng)平臺。

5.3 創(chuàng)建產(chǎn)品

(1)創(chuàng)建產(chǎn)品

點擊右上角創(chuàng)建產(chǎn)品。

image-20230420181503524

(2)填寫產(chǎn)品信息

根據(jù)自己產(chǎn)品名字填寫,設(shè)備類型選擇自定義類型。

(3)添加自定義模型

產(chǎn)品創(chuàng)建完成之后,點擊進(jìn)入產(chǎn)品詳情頁面,翻到最下面可以看到模型定義。

image-20230420181615129

模型簡單來說: 就是存放設(shè)備上傳到云平臺的數(shù)據(jù)。比如:環(huán)境溫度、環(huán)境濕度、環(huán)境煙霧濃度、火焰檢測狀態(tài)圖等等,這些我們都可以單獨創(chuàng)建一個模型保存。

5.4 添加設(shè)備

產(chǎn)品是屬于上層的抽象模型,接下來在產(chǎn)品模型下添加實際的設(shè)備。添加的設(shè)備最終需要與真實的設(shè)備關(guān)聯(lián)在一起,完成數(shù)據(jù)交互。

(1)注冊設(shè)備

點擊右上角注冊設(shè)備。

image-20230421091842025

(2)根據(jù)自己的設(shè)備填寫

在彈出的對話框里填寫自己設(shè)備的信息。根據(jù)自己設(shè)備詳細(xì)情況填寫。

(3)保存設(shè)備信息

創(chuàng)建完畢之后,點擊保存并關(guān)閉,得到創(chuàng)建的設(shè)備密匙信息。該信息在后續(xù)生成MQTT三元組的時候需要使用。

5.5 MQTT協(xié)議主題訂閱與發(fā)布

(1)MQTT協(xié)議介紹

當(dāng)前的設(shè)備是采用MQTT協(xié)議與華為云平臺進(jìn)行通信。

MQTT是一個物聯(lián)網(wǎng)傳輸協(xié)議,它被設(shè)計用于輕量級的發(fā)布/訂閱式消息傳輸,旨在為低帶寬和不穩(wěn)定的網(wǎng)絡(luò)環(huán)境中的物聯(lián)網(wǎng)設(shè)備提供可靠的網(wǎng)絡(luò)服務(wù)。MQTT是專門針對物聯(lián)網(wǎng)開發(fā)的輕量級傳輸協(xié)議。MQTT協(xié)議針對低帶寬網(wǎng)絡(luò),低計算能力的設(shè)備,做了特殊的優(yōu)化,使得其能適應(yīng)各種物聯(lián)網(wǎng)應(yīng)用場景。目前MQTT擁有各種平臺和設(shè)備上的客戶端,已經(jīng)形成了初步的生態(tài)系統(tǒng)。

MQTT是一種消息隊列協(xié)議,使用發(fā)布/訂閱消息模式,提供一對多的消息發(fā)布,解除應(yīng)用程序耦合,相對于其他協(xié)議,開發(fā)更簡單;MQTT協(xié)議是工作在TCP/IP協(xié)議上;由TCP/IP協(xié)議提供穩(wěn)定的網(wǎng)絡(luò)連接;所以,只要具備TCP協(xié)議棧的網(wǎng)絡(luò)設(shè)備都可以使用MQTT協(xié)議。 本次設(shè)備采用的ESP8266就具備TCP協(xié)議棧,能夠建立TCP連接,所以,配合STM32代碼里封裝的MQTT協(xié)議,就可以與華為云平臺完成通信。

華為云的MQTT協(xié)議接入幫助文檔在這里: https://support.huaweicloud.com/devg-iothub/iot_02_2200.html

img

業(yè)務(wù)流程:

img

(2)華為云平臺MQTT協(xié)議使用限制

描述 限制
支持的MQTT協(xié)議版本 3.1.1
與標(biāo)準(zhǔn)MQTT協(xié)議的區(qū)別 支持Qos 0和Qos 1支持Topic自定義不支持QoS2不支持will、retain msg
MQTTS支持的安全等級 采用TCP通道基礎(chǔ) + TLS協(xié)議(最高TLSv1.3版本)
單帳號每秒最大MQTT連接請求數(shù) 無限制
單個設(shè)備每分鐘支持的最大MQTT連接數(shù) 1
單個MQTT連接每秒的吞吐量,即帶寬,包含直連設(shè)備和網(wǎng)關(guān) 3KB/s
MQTT單個發(fā)布消息最大長度,超過此大小的發(fā)布請求將被直接拒絕 1MB
MQTT連接心跳時間建議值 心跳時間限定為30至1200秒,推薦設(shè)置為120秒
產(chǎn)品是否支持自定義Topic 支持
消息發(fā)布與訂閱 設(shè)備只能對自己的Topic進(jìn)行消息發(fā)布與訂閱
每個訂閱請求的最大訂閱數(shù) 無限制

(3)主題訂閱格式

幫助文檔地址:https://support.huaweicloud.com/devg-iothub/iot_02_2200.html

image-20221207153310037

對于設(shè)備而言,一般會訂閱平臺下發(fā)消息給設(shè)備 這個主題。

設(shè)備想接收平臺下發(fā)的消息,就需要訂閱平臺下發(fā)消息給設(shè)備 的主題,訂閱后,平臺下發(fā)消息給設(shè)備,設(shè)備就會收到消息。

(4)主題發(fā)布格式

對于設(shè)備來說,主題發(fā)布表示向云平臺上傳數(shù)據(jù),將最新的傳感器數(shù)據(jù),設(shè)備狀態(tài)上傳到云平臺。

這個操作稱為:屬性上報。

幫助文檔地址:https://support.huaweicloud.com/usermanual-iothub/iot_06_v5_3010.html

image-20221207153637391

5.6 MQTT三元組

MQTT協(xié)議登錄需要填用戶ID,設(shè)備ID,設(shè)備密碼等信息,就像我們平時登錄QQ,微信一樣要輸入賬號密碼才能登錄。MQTT協(xié)議登錄的這3個參數(shù),一般稱為MQTT三元組。

接下來介紹,華為云平臺的MQTT三元組參數(shù)如何得到。

(1)MQTT服務(wù)器地址

要登錄MQTT服務(wù)器,首先記得先知道服務(wù)器的地址是多少,端口是多少。

幫助文檔地址:https://console.huaweicloud.com/iotdm/?region=cn-north-4#/dm-portal/home

image-20230411141412090

MQTT協(xié)議的端口支持1883和8883,它們的區(qū)別是:8883 是加密端口更加安全。但是單片機上使用比較困難,所以當(dāng)前的設(shè)備是采用1883端口進(jìn)連接的。

根據(jù)上面的域名和端口號,得到下面的IP地址和端口號信息: 如果設(shè)備支持填寫域名可以直接填域名,不支持就直接填寫IP地址。 (IP地址就是域名解析得到的)

華為云的MQTT服務(wù)器地址:121.36.42.100
華為云的MQTT端口號:1883

(2)生成MQTT三元組

華為云提供了一個在線工具,用來生成MQTT鑒權(quán)三元組: https://iot-tool.obs-website.cn-north-4.myhuaweicloud.com/

打開這個工具,填入設(shè)備的信息(也就是剛才創(chuàng)建完設(shè)備之后保存的信息),點擊生成,就可以得到MQTT的登錄信息了。

下面是打開的頁面:

image-20221207154917230

  • 更多詳細(xì)資料請聯(lián)系.docx
    下載

相關(guān)推薦