摘要:本文主要介紹基于OpenHarmony 3.0版本來對接華為云IoT設備接入IoTDA,以小熊派BearPi-HM_Nano開發板為例,使用huaweicloud_iot_link SDK對接華為云物聯網平臺的簡單流程,
本文分享自華為云社區《OpenHarmony3.0如何輕松連接華為云IoT設備接入平臺》,作者:華為IoT云服務 ,
萬物互聯的全場景、全智能時代,使得人均持有設備量不斷攀升,設備和場景的多樣性,使應用開發變得更加復雜、應用入口更加豐富,當下依托OpenHarmony框架,搭建萬物智聯底座,重構物聯網格局,是當下熱門的物聯網開發方式之一,那OpenHarmony3.0如何連接an >華為云IoT設備接入平臺呢?注意事項又有哪些呢?
本文主要介紹基于OpenHarmony 3.0版本來對接華為云IoT設備接入IoTDA,以小熊派BearPi-HM_Nano開發板為例,使用huaweicloud_iot_link SDK對接華為云物聯網平臺的簡單流程,
前提條件
- 已注冊華為云官方帳號,未注冊可單擊注冊頁面完成注冊,
- 已完成實名制認證,未完成可在華為云上單擊實名認證完成認證,否則無法使用設備接入功能,
- 已開通設備接入服務,未開通則訪問設備接入服務,單擊“管理控制臺”后開通該服務,
硬體環境準備
BearPi-HM_Nano開發板、Type-C資料線、PC,
軟體環境準備
參考鏈接單擊這里,
圖1 軟體環境創建步驟
說明:
(1)如使用DevEco Device Tool參與除錯的需要安裝Windows環境,
(2)獲取原始碼:如果不使用Docker方式,強烈建議采用獲取方式一,
(3)在安裝開發板中的環境的安裝gcc_riscv32步驟時,強烈建議直接下載gcc_riscv32鏡像,否則可能出現某些插件下載或安裝失敗,具體操作如下圖2所示,
須知:
開源代碼量較大,下載時間可能較長,需預留好充足時間,
圖2 直接下載gcc_riscv32鏡像
一、創建產品
1.登錄管理控制臺,單擊左側導航欄“產品”,單擊頁面右上角的“創建產品”,
2.根據頁面提示填寫引數,然后單擊“確認”,完成產品的創建,
圖3 創建產品
二、開發產品模型
- 找到新增的產品,單擊“產品”進入產品界面,
- 在產品詳情“模型定義”頁面,直接上傳模型檔案BearPi_Agriculture.zip,
說明:
在產品串列中,單擊對應的產品,進入產品詳情頁,您可以查看產品ID、產品名稱、設備型別、資料格式、廠商名稱、所屬資源空間、協議型別等產品基本資訊,其中產品ID(product Id)是物聯網平臺自動生成的,其余資訊均是由用戶創建產品時自定義,
產品創建成功后,您可以單擊“洗掉”洗掉不再使用的產品,洗掉產品后,該產品下的產品模型、編解碼插件等資源將被清空,請謹慎操作,
三、注冊設備
- 訪問設備接入服務,單擊“管理控制臺”進入設備接入控制臺,
- 在左側導航欄選擇“ 設備 > 所有設備”,單擊右上角“注冊設備”,按照如下表格填寫引數后,單擊“確定”,
圖4 注冊單個設備


圖5 獲取設備密鑰
說明:
設備注冊成功后,請妥善保管好設備ID和密鑰,用于設備接入平臺認證,
若密鑰丟失,只能通過重置密鑰生成新的密鑰,無法找回注冊設備時生成的密鑰,
用戶可在設備串列洗掉不再使用的設備,洗掉設備不支持撤回,請謹慎操作,
四、Huaweicloud_iotlink SDK使用
- 下載原始碼:oh3.0_hwcloud_iotlink-master.zip,
- 將上述原始碼直接拷貝到OpenHarmony原始碼的third-party檔案目錄下,此處需要注意的是OpenHarmony和Huaweicloud_iotlink SDK共同具備的三方庫直接使用OpenHarmony的庫檔案,如CJSON和mbedtls,
- 在OpenHarmony 3.0原始碼device\bearpi\bearpi_hm_nano\app\BUILD.gn中添加如下代碼,根據#是否注釋來決定具體編譯demo的選擇,
# "//third_party/hwcloud_iotlink/demos/test_iotlink:test_iotlink", "//third_party/hwcloud_iotlink/demos/mqtt_tiny_v5_agriculture_demo:mqtt_tiny_v5_agriculture_demo",
圖6 demo的選擇
步驟說明:
- 圖6中1為單元測驗代碼,可以根據修改test_main.c檔案中最后一行代碼中,APP_FEATURE_INIT()中的入口函式,來進行不同的測驗用例的執行,分別測驗OSAL層不同的組件適配,包括任務、互斥鎖、信號量、佇列、以及SDK本身佇列等一系列驗證,部分內容可以對比BearPi-HM_Nano開發板的官方樣例代碼進行對比驗證程式結果的正確性,具體如圖7,
- 圖6中2為使用MQTT對接華為云的demo,看一下該demo的BUILD.gn檔案,具體如圖8所示,其中A區域包含開發板硬體和wifi相關的庫檔案,B區域包括MQTT對接華為云必須的一些庫檔案,如cJson,mqtt相關、osal相關以及配置庫檔案,C區域表示編譯該檔案時需要編譯hwcloud_iotlink庫,編譯是會按照指定路徑找到該檔案所必要的庫以及C檔案進行編譯,
圖7 單元測驗
圖8 代碼編譯檔案
圖9 demo的主函式檔案
步驟說明:
圖9中A區域表示MQTT對接華為云所必須的一些庫檔案以及dtls的庫檔案,入口函式IoTMainTaskEntry()中務必先呼叫link_main_task_entry()函式,來確保osal的安裝以及其他配置的初始化,
- 設定引數,
圖10 引數修改
注意:
如果需要對接上云需要根據自己的設備修改配網資訊,wifi熱點賬號以及密碼以及自己在云端注冊的設備ID和設備秘鑰,設備僅支持2.4G頻段的wifi,
五、設備接入平臺
代碼燒錄到設備后重啟設備(首次使用需重啟兩次,第一次燒錄時可能需要配置一下內部資訊),第二次設備重啟之后可以正常對接華為云,
登錄平臺可以看見資料上報的具體資訊,也可以進行命令下發等操作控制設備,具體如下圖11-13,
圖11 資料上報
圖12 命令下發
圖13 日志資訊
總結:
傳統的終端作業系統主要是面向單端,基于 OpenHarmony 開源專案開發的系統似乎天生是面向萬物互聯的,可以運行在大大小小的各種智能終端上,熟悉使用OpenHarmony和華為云IoT平臺結合是物聯網開發者的必經之路,
點擊關注,第一時間了解華為云新鮮技術~
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/504557.html
標籤:其他
上一篇:2022超詳細流程ios APP最新打包上線教程,保證一看就會!
下一篇:使用css和jQuery實作按鈕
