眾所周知,市面上有很多雲平臺,阿里雲、騰訊雲、中移OneNET、華為雲、百度雲、塗鴉雲、Tlink雲等等......並且每家雲平臺都有自己的協議,工程師要移植不同的SDK程式碼或基於各家的手冊文件對接不同的協議,看著都頭大!!!
為解決繁瑣的雲平臺開發困擾,
合宙IoT_CLOUD應運而生,一庫打通所有云平臺!
本文將以Air780E+LuatOS作為示例,教你使用合宙IoT_CLOUD連線百度雲平臺。
一、合宙IoT_CLOUD簡介
1.1 IoT_CLOUD特色簡介
IoT_CLOUD——是合宙專門為了合併IoT平臺而製作的通用庫,意在使用統一且極簡的程式碼接入各個雲平臺,輕鬆實現雲功能。
使用者無需為那麼多雲平臺的接入而頭疼,只需要極簡的通用API即可輕鬆上雲!並且因為通用,所以雲平臺之間的遷移也十分方便。
1.2 IoT_CLOUD功能實現
IoT_CLOUD庫本質就是上層設計一套通用的API,用庫來實現每個平臺功能的對接。
目前已經實現了各個平臺的所有註冊方式,其中自動註冊會將相關驗證資訊儲存KV,隨後使用此驗證資訊進行連線,通知針對每個平臺新增了特有系統實現,比如:裝置上線通知、裝置版本號上傳、OTA功能等。
使用者無需管理這些資訊,只需要注意相關下發訊息做應用邏輯即可。
注意:此庫為網路通用庫不限制型號,即【所有LuatOS支援的蜂窩模組都可使用】。
例如:
Air780EX/Air780EG/Air780EP/Air780EPS…
二、百度雲物聯網平臺簡介
百度雲物聯網平臺——物聯網核心套件(IoT Core)是面向物聯網領域開發者的全託管雲服務,透過主流的物聯網協議(如 MQTT)通訊,可以在智慧裝置與雲端之間建立安全的雙向連線,快速實現物聯網專案。
三、前期準備工作
3.1 雲平臺準備
登入百度雲官網註冊百度賬號,開通物聯網核心套件IoT Core。
開通後我們點選建立IoT Core進行產品建立,後續演示都在此產品中進行:
3.2 硬體準備
-
合宙Air780E開發板
-
USB資料線
-
Win10以上PC電腦
四、實戰教學
鑑於IoT_CLOUD的庫是通用的,這裡我們只說一下不同的註冊操作即可。其他操作都是一樣使用的,可參考系列文件之
。4.1 裝置註冊
1)裝置註冊API
註冊的API只有一個,但是支援了所有的註冊方式,使用也很簡單。
建立雲平臺物件
iotcloud.new(cloud,iot_config,connect_config)
引數:
返回值:
2)裝置註冊分類
百度雲支援支援兩種註冊方式:
-
金鑰驗證
-
證書驗證
接下來,我們分類講解IoT_CLOUD庫的使用:
▼ 金鑰驗證 ▼
我們點選產品->新增裝置:
認證方式修改為金鑰認證並填寫相關選項,點選提交即可建立成功:
建立成功後,我們點選裝置檢視詳情:
記錄下這三個值,分別對應:produt_id、device_name、device_secret。
接下來,我們再來看下程式碼具體怎麼用:
第一個參數列示我們使用的是百度雲,第二個引數我們將上面得到資料寫入即可!
▼ 證書驗證 ▼
注意:不推薦使用此方式,因為證書存在過期,需要定期升級維護。
建立方式和上方金鑰方式一樣,只不過認證方式選擇證書認證;建立成功後,我們點選裝置檢視詳情:
記錄下引數,證書部分參考官方文件進行處理使用:
https://cloud.baidu.com/doc/IoTCore/s/Fkdqzh6r8
接下來,我們再來看下程式碼具體怎麼用:
第一個參數列示我們使用的是百度雲,第二個和第三個引數我們將上面得到資料寫入即可!
4.2 其他操作
如需瞭解【連線/斷開雲平臺、訂閱/取消訂閱主題、釋出資料、接收資料、雲平臺關閉】等操作細節,可以參考連線騰訊雲這篇4.2-4.7章節的詳細介紹(IoT_CLOUD的庫是通用的,本文在此不再複述)。
五、效果演示
5.1 程式碼演示
好了,接下來我們看下完整程式碼和效果。
5.2 裝置日誌
可以看到我們的裝置列印了連線成功,證明自動註冊+連線流程已經完成。
至此,雲平臺已經連線成功。剩下的就是要根據自己的產品需求,使用自己的【物模型】上報/下發資料就可以了。