ThingsBoard IoT Gateway位于終端設備和云平臺之間,與不同類型的終端設備進行連接,并通過MQTT與云平臺進行交互,屏蔽不同終端設備之間的差異。
本文將介紹ThingsBoard IoT Gateway基本使用。
一、MQTT Connector
Connector是ThingsBoard IoT Gateway的關鍵部分,通過MQTT Connector:
(1)將MQTT代理的數據推送到IoT云平臺;
(2)ThingsBoard發送的命令推送到MQTT代理。
- Connector 配置文件
Connector configuration是一個 JSON 文件,配置信息,詳情如下:
- Broker:如何連接到外部 MQTT 代理;
- Mapper:如何處理訂閱的Topic消息;
- connectRequests:設備告知網關,已連接到MQTT Broker;
- disconnectRequests:從MQTT代理獲取有關斷開設備的信息;
- attributeUpdates:該配置項是可選的,用于設備的遠程配置;
- Server side RPC commands:IoT平臺可以向終端設備發送RPC命令。
- Broker部分
- mapping部分
作用 :接收通過topicFilter定義的主題,并分析該主題的每一消息,提取device name、type、data (attributes and/or timeseries values)。
結構 :“mapping”部分定義一個數組,包含topic和converter(轉換器-處理傳入消息)。
有關Topic的定義:
Json 轉換器是默認轉換器,在傳入消息中查找 deviceName、deviceType、attributes and telemetry。關鍵字段的含義:
- ConnectRequests
ThingsBoard可以向設備發送RPC命令和更新設備屬性的通知。ThingsBoard在發送命令之前,需要知道目標設備是否已連接、使用的網關或會話。 這樣,設備不僅要連接到MQTT代理,還需要向IoT網關發送消息來通知設備已連接到了MQTT代理。
- disconnectRequests
該配置項是可選的,用于從MQTT代理獲取有關斷開設備的信息。
- attributeUpdates
該配置項是可選的,用于設備的遠程配置。
- Server side RPC commands
IoT平臺可以向終端設備發送RPC命令。
二、數據鏈路流分析
在有IoT Gateway的網絡中,一般要有MQTT Broker;環境搭建完全使用開源軟件。
分別在TB IoT Gateway、TB抓包分析。
可以得到如下結論:
MQTT協議:從協議的角度來講,各網元所承擔的職責;
主題:IoT Gateway是關鍵,訂閱MQTT Broker的topic,在其內部經過Converter、topic的處理,向TB發送topic,實現相應的業務。
發布評論請先 登錄
相關推薦
評論