注冊(cè) IoT Hub 之前,必須先注冊(cè)華為云,并完成實(shí)名認(rèn)證嚼锄。認(rèn)證完畢以后,訪問 般此,由頁面引導(dǎo)注冊(cè)。
注冊(cè)完畢后牵现,進(jìn)入 恤煞,點(diǎn)擊“立即使用”,此時(shí)會(huì)提示平臺(tái)的各種接入信息施籍,需要記錄下來:
點(diǎn)擊“進(jìn)入管理門戶”即可以進(jìn)入 IoT Hub 管理控制臺(tái)居扒。以后我們可以使用系統(tǒng)分配給我們的用戶名和密碼直接從 入口登陸。
平臺(tái)使用
平臺(tái)使用的流程很簡(jiǎn)單丑慎,就如下圖所示喜喂,先創(chuàng)建應(yīng)用,然后創(chuàng)建產(chǎn)品模型竿裂,最后分兩條線玉吁,一條線完成設(shè)備相關(guān)的開發(fā)和調(diào)試,另一條線完成應(yīng)用的開發(fā)和調(diào)試腻异。
創(chuàng)建應(yīng)用和創(chuàng)建產(chǎn)品的操作进副,均是手動(dòng)在 IoT Hub 管理控制臺(tái)中完成。IoT Hub 只支持創(chuàng)建一個(gè)應(yīng)用悔常,可以參考 操作影斑,也可以隨便創(chuàng)建:
產(chǎn)品模型也是,也可以參考 來操作机打,也可以隨便創(chuàng)建:
應(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)行后的界面如下。如果看不到輸入框鼓蜒,把程序最大化即可痹换。
屬性 值 備注
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 的 娇豫,該 API 的輸入?yún)?shù)包括appId 和 secret。
登陸成功以后進(jìn)入模擬器主界面:
注冊(cè)設(shè)備
注冊(cè)設(shè)備有兩種方式畅厢,一種是直接在管理控制臺(tái)里面操作冯痢,另外一種是調(diào)用北向 API。這里肯定是嘗試調(diào)用 API:
屬性 值 備注
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 的 振劳,該 API 的必選參數(shù)為 nodeId。
該設(shè)備注冊(cè)成功后油狂,將在“設(shè)備->所有設(shè)備”列表中顯示出來历恐。注意此時(shí)的這個(gè)設(shè)備,是我們虛擬的专筷,目前還并不存在其實(shí)體弱贼。
設(shè)備接入
根據(jù)設(shè)備接入物聯(lián)網(wǎng)平臺(tái)的協(xié)議類型,劃分為兩種場(chǎng)景:
使用CoAP或LWM2M協(xié)議接入:在此場(chǎng)景下磷蛹,設(shè)備可以通過集成NB-IoT模組實(shí)現(xiàn)與物聯(lián)網(wǎng)平臺(tái)的對(duì)接吮旅。在快速入門中,以CoAP設(shè)備模擬器()為例進(jìn)行說明味咳。
使用MQTT/MQTTS協(xié)議接入:在此場(chǎng)景下庇勃,設(shè)備可以通過集成Agent Lite SDK實(shí)現(xiàn)與物聯(lián)網(wǎng)平臺(tái)的對(duì)接。在快速入門中槽驶,以MQTT設(shè)備模擬器()為例進(jìn)行說明匪凉。
因?yàn)樯厦鎰?chuàng)建的產(chǎn)品模型使用的是 CoAP 協(xié)議,因此下載 CoAP 模擬器捺檬。打開CoAP協(xié)議模擬器再层,根據(jù)提示,選擇是否開啟DTLS加密傳輸堡纬。
如果選擇“是”聂受,則需要在模擬設(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è)過了∞趾校現(xiàn)在的操作實(shí)際上是設(shè)備接入 OceanConnect)
登錄管理門戶怖竭,選擇“設(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ù)”:
登錄管理門戶戏蔑,選擇“設(shè)備->所有設(shè)備”蹋凝,在“設(shè)備影子”中查看CoAP設(shè)備模擬器上報(bào)的數(shù)據(jù)。
注1:因?yàn)?OceanConnect 并不知道上報(bào)數(shù)據(jù)的格式总棵,因此顯示出來就是一個(gè) RawData 類型鳍寂,其值也不是我們上傳的數(shù)字。
注2:MQTT 設(shè)備上報(bào)數(shù)據(jù)情龄,可以參考 迄汛。