IOT實(shí)驗(yàn)

IoT Hub 參考手冊(cè)見 https://support.huaweicloud.com/iothub/index.html

loT Hub 注冊(cè)

注冊(cè) IoT Hub 之前,必須先注冊(cè)華為云,并完成實(shí)名認(rèn)證。認(rèn)證完畢以后,訪問 IoT平臺(tái)基礎(chǔ)版(IoT Hub),由頁面引導(dǎo)注冊(cè)。

image.qq

注冊(cè)完畢后,進(jìn)入 IoT Hub 產(chǎn)品首頁,點(diǎn)擊“立即使用”,此時(shí)會(huì)提示平臺(tái)的各種接入信息,需要記錄下來:

image.qq

點(diǎn)擊“進(jìn)入管理門戶”即可以進(jìn)入 IoT Hub 管理控制臺(tái)。以后我們可以使用系統(tǒng)分配給我們的用戶名和密碼直接從 IoT Hub 管理控制臺(tái) 入口登陸。

平臺(tái)使用

平臺(tái)使用的流程很簡單,就如下圖所示,先創(chuàng)建應(yīng)用,然后創(chuàng)建產(chǎn)品模型,最后分兩條線,一條線完成設(shè)備相關(guān)的開發(fā)和調(diào)試,另一條線完成應(yīng)用的開發(fā)和調(diào)試。


image.qq

創(chuàng)建應(yīng)用和創(chuàng)建產(chǎn)品的操作,均是手動(dòng)在 IoT Hub 管理控制臺(tái)中完成。IoT Hub 只支持創(chuàng)建一個(gè)應(yīng)用,可以參考 開發(fā)文檔 操作,也可以隨便創(chuàng)建:

image_1d6dsk49q3ci1n741310u7j147n5b.png-66.1kB

產(chǎn)品模型也是,也可以參考 開發(fā)文檔 來操作,也可以隨便創(chuàng)建:

image.qq

應(yīng)用接入

使用應(yīng)用模擬器模擬登陸,完成應(yīng)用接入。應(yīng)用模擬器是一個(gè) Java 程序,基于 JDK1.8,因此事先需要安裝 JDK1.8。JDK1.8 可以從 這里 下載,安裝完 JDK 后,可以參考 這篇文章 配置 Java 環(huán)境變量。

JDK 環(huán)境安裝配置完成后,可以從 這里 下載應(yīng)用模擬器。模擬器運(yùn)行后的界面如下。如果看不到輸入框,把程序最大化即可。

image.qq
屬性 備注
Platform IP 49.4.80.153 上面記錄的
Port 8743 上面記錄的
App ID yIdtfm1fQ9uE2Jlk48zw708tf7Qa 管理控制臺(tái)進(jìn)入應(yīng)用列表,為“應(yīng)用ID”字段的值
App Secret urAOb19X7mX0ajvfTyXvwuZHIIEa 系統(tǒng)自動(dòng)生成的秘鑰,如忘記可重置

注:登陸過程調(diào)用了 OceanConnect 的 北向鑒權(quán) API,該 API 的輸入?yún)?shù)包括 appIdsecret。

登陸成功以后進(jìn)入模擬器主界面:

imag.qq

注冊(cè)設(shè)備

注冊(cè)設(shè)備有兩種方式,一種是直接在管理控制臺(tái)里面操作,另外一種是調(diào)用北向 API。這里我是嘗試調(diào)用 第一種方法:
在“設(shè)備”中,設(shè)備注冊(cè),先選擇產(chǎn)品,再輸入設(shè)備識(shí)別碼,再輸入預(yù)置密鑰,就設(shè)備注冊(cè)成功:


image.qq
屬性 備注
Product ID 3a6e739b-28db-4e8e-83cc-b20c8b6d6896 從管理控制臺(tái)進(jìn)入產(chǎn)品模型,查看產(chǎn)品模型的“產(chǎn)品ID”字段
Node ID TESTxxx 需要構(gòu)造一個(gè)全網(wǎng)唯一的號(hào),作為設(shè)備的唯一標(biāo)識(shí)
pre Secret 111111 隨便填,跟隨設(shè)備的預(yù)置密鑰,作為DTLS安全鑒權(quán)碼

注:設(shè)備注冊(cè)過程調(diào)用了 OceanConnect 的 注冊(cè)直連設(shè)備 API,該 API 的必選參數(shù)為 nodeId。

該設(shè)備注冊(cè)成功后,將在“設(shè)備->所有設(shè)備”列表中顯示出來。注意此時(shí)的這個(gè)設(shè)備,是我們虛擬的,目前還并不存在其實(shí)體。

image.qq

設(shè)備接入

根據(jù)設(shè)備接入物聯(lián)網(wǎng)平臺(tái)的協(xié)議類型,劃分為兩種場景:

  • 使用CoAP或LWM2M協(xié)議接入:在此場景下,設(shè)備可以通過集成NB-IoT模組實(shí)現(xiàn)與物聯(lián)網(wǎng)平臺(tái)的對(duì)接。在快速入門中,以CoAP設(shè)備模擬器(點(diǎn)擊獲取)為例進(jìn)行說明。

  • 使用MQTT/MQTTS協(xié)議接入:在此場景下,設(shè)備可以通過集成Agent Lite SDK實(shí)現(xiàn)與物聯(lián)網(wǎng)平臺(tái)的對(duì)接。在快速入門中,以MQTT設(shè)備模擬器(點(diǎn)擊獲取)為例進(jìn)行說明。

因?yàn)樯厦鎰?chuàng)建的產(chǎn)品模型使用的是 CoAP 協(xié)議,因此下載 CoAP 模擬器。打開CoAP協(xié)議模擬器,根據(jù)提示,選擇是否開啟DTLS加密傳輸。

image.qq

如果選擇“是”,則需要在模擬設(shè)備接入時(shí),填寫“IP地址”、“設(shè)備標(biāo)識(shí)碼”、“設(shè)備密鑰”。“IP地址”在IoT平臺(tái)管理控制臺(tái)查看(類型:設(shè)備對(duì)接信息,協(xié)議:coaps),“設(shè)備標(biāo)識(shí)碼”和“設(shè)備密鑰”在注冊(cè)設(shè)備時(shí)設(shè)置。

如果選擇“否”,則需要在模擬設(shè)備接入時(shí),填寫“IP地址”、“設(shè)備標(biāo)識(shí)碼”。“IP地址”在IoT平臺(tái)管理控制臺(tái)查看(類型:設(shè)備對(duì)接信息,協(xié)議:coap),“設(shè)備標(biāo)識(shí)碼”在注冊(cè)設(shè)備時(shí)設(shè)置。(注:按鈕上寫的是“注冊(cè)設(shè)備”,實(shí)則這個(gè)設(shè)備之前已經(jīng)注冊(cè)過了?,F(xiàn)在的操作實(shí)際上是設(shè)備接入 OceanConnect)

image.qq

登錄管理門戶,選擇“設(shè)備->所有設(shè)備”,查看設(shè)備狀態(tài)是否已經(jīng)轉(zhuǎn)換為“在線”。

注:MQTT 設(shè)備接入,可以參考 在線文檔。

數(shù)據(jù)上報(bào)

設(shè)備接入物聯(lián)網(wǎng)平臺(tái)后,可以向物聯(lián)網(wǎng)平臺(tái)上報(bào)數(shù)據(jù)。通過物聯(lián)網(wǎng)平臺(tái)的設(shè)備影子功能,可以查看設(shè)備最近一次上報(bào)的數(shù)據(jù)。

打開 CoAP 協(xié)議模擬器,在“數(shù)據(jù)”區(qū)域填寫上報(bào)的數(shù)據(jù),點(diǎn)擊“發(fā)送數(shù)據(jù)”:

image.qq

登錄管理門戶,選擇“設(shè)備->所有設(shè)備”,在“設(shè)備影子”中查看CoAP設(shè)備模擬器上報(bào)的數(shù)據(jù)。

image.qq

注1:因?yàn)?OceanConnect 并不知道上報(bào)數(shù)據(jù)的格式,因此顯示出來就是一個(gè) RawData 類型,其值也不是我們上傳的數(shù)字。

注2:MQTT 設(shè)備上報(bào)數(shù)據(jù),可以參考 在線文檔。
068

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容