1. 程式人生 > >【物聯網雲端對接-4】通過MQTT協議與百度雲進行雲端通訊

【物聯網雲端對接-4】通過MQTT協議與百度雲進行雲端通訊

百度雲的天工物聯網服務目前包括:物接入、物解析、物管理、時序資料庫和規則引擎等5大部分,本篇文章僅介紹物接入。

天工物聯網的物接入,從開發者的角度來說相對有些複雜,需要多步操作才能實現一個雲裝置的建立,下面我們將詳細介紹一下相關的步驟:

第一步:建立例項(類似工程中的專案概念)

支援三種方式訪問。TCP,SSL(TCP加密通道),WSS(WebSocket 加密通道)。

第二步:建立裝置

第三步:建立身份

天工物聯網對裝置的訪問增加了身份這一個功能,這樣對一個專案來說,安全性有了一定層度的提升,比如有些模組,只有上傳的功能,那麼可以繫結一個低許可權的身份。或者是聯合進行專案開發的時候,有些裝置需要第三方合作開發,那麼為第三方配置一個身份即可,約束其要傳或收的topic即可。

第四步:建立策略

每個身份其實可以繫結若干個策略,每個策略對應若干個topic主題。和微軟及阿里不同,百度的topic沒有預設主題,這裡我們建立一個相對通用的“yfiothub/yfdevice01/#”。也就是說這個節點下的所有topic都可以訂閱也可以釋出。

第五步:獲取訪問金鑰

這個金鑰其實是和身份繫結的,而不是和裝置繫結的,不同的身份對應不同的金鑰,不同的身份包含的策略也不一樣。所以相同的使用者名稱,不同的金鑰對應的身份不同。

完成以上5步操作,那麼我們就可以讓裝置來對接物聯網雲平臺了。

和微軟及阿里的物聯網平臺不同,百度的雲連線非常簡單。客戶ID可以任意,使用者名稱就是和裝置對應的使用者名稱,密碼就是身份對應的密碼,沒有所謂的toKen等概念。

釋出和訂閱的topic,我們仿照阿里的分別定義為:

yfiothub/yfdevice01/update

yfiothub/yfdevice01/get

除了程式碼編寫外,同樣我們也做組態的方案,具體實施步驟如下:

第一步:新增裝置

裝置變數自動生成

第二步:增加百度雲MQTT客戶端策略


填寫完伺服器配置資訊,然後勾選需要上傳的IO變數

第三步:部署執行

相對於微軟和阿里,天工物聯網的“裝置列表”下有一個“連線測試”的功能,可以直接進行通訊監控。單擊“連線測試”,進入如下頁面,需要配置相關資訊。

使用者名稱就是裝置對應的使用者名稱,身份金鑰就是身份對應的金鑰。目前該測試頁面僅支援WSS方式連線。

連線成功後,我們就可以進行訂閱和釋出操作了(如下圖所示)。

 

相關的硬體如下: