TDengine + EMQ X + Grafana 輕鬆搭建高效低成本的邊緣側工業網際網路平臺
本文將介紹基於TDengine、EMQ X搭建一個集工業資料採集、匯聚、清洗、儲存分析以及視覺化展示等能力於一體的輕量級邊緣計算工業網際網路平臺。在此方案基礎上,讀者可以根據自身需求調整方案設計,從而搭建滿足實際業務需求的工業網際網路平臺,加速實現工業智慧化轉型。
工業網際網路的挑戰
據中國工業和資訊化部資訊中心最新的《工業網際網路體系架構(版本2.0)》所述,工業網際網路架構下的邊緣層主要實現以下功能:
- 邊緣層提供海量工業資料接入、轉換、資料預處理和邊緣分析應用等功能。
- 是工業資料接入,包括機器人、機床、高爐等工業裝置資料接入能力,以及 ERP、MES、WMS 等資訊系統資料接入能力,實現對各類工業資料的大範圍、深層次採集和連線;
- 是協議解析與資料預處理,將採集連線的各類多源異構資料進行格式統一和語義解析,並進行資料剔除、壓縮、快取等操作後傳輸至雲端;
- 是邊緣分析應用,重點是面向高實時應用場景,在邊緣側開展實時分析與反饋控制,並提供邊緣應用開發所需的資源排程、執行維護、開發除錯等各類功能;
然而工業領域多種協議並存,如何把異構裝置連線並將資料匯聚,實現後續的邊緣或雲端計算,是無法迴避的問題。目前一般的方案有以下兩種:
1.在邊緣端採用傳統程式直接連線和控制裝置。這種方式一般針對於特定裝置或型號,定製化程度比較高,但是可移植性、可重用性、可擴充套件性和靈活性均較差,無法對接現在的大資料和 AI 後臺,不具備對資料進行深入分析併產生更多價值的能力;
2. 將雲端架構的軟體部署到邊緣端來實現。雲端由 IT 產業主導,資訊化程度非常高。但基於成本考慮,邊緣端的硬體裝置一般計算能力有限,因此將雲端架構的軟體直接遷移到邊緣裝置上並不可行。在邊緣端實現上述功能的軟體必須加以優化,才能適應邊緣端的實際執行情況。
為了融合在邊緣 CT 和 IT 端的不同需求,TDengine 與 EMQ X 正式釋出工業網際網路一體化解決方案,以幫助領域內相關企業應對工業網際網路邊緣端面臨的問題與挑戰。這一方案適合在邊緣端部署,具備各類協議解析、多源資料接入和資料分析能力,可快速實現工業網際網路架構下邊緣層的功能。
邊緣計算工業網際網路平臺解決方案
該方案可實現邊緣端的工業協議解析、資料匯聚和流式分析,將通過流式分析的資料存入在邊緣部署的 TDengine 中,在邊緣端執行的應用即可從 TDengine 中獲取和處理資料,呈現給終端使用者;在邊緣端執行的Edge Manager
適用場景
對實時性要求比較高,可以作為邊緣自主獨立應用執行在邊緣的閘道器或者工控機上,與雲端沒有互動。該方案中所有的計算和儲存等都在邊緣端實現,因此對硬體的計算、儲存等有一定的要求。使用者可以根據實際情況,將軟體和應用分開部署在多個硬體裝置上。
軟體列表
本方案會用到以下列表中的軟體產品。
編號 | 名稱 | 提供商 | 開源 |
1 | TDengine | TAOS DATA | 是 |
2 | EMQ X Neuron | EMQ | 否-1 |
3 | EMQ X Edge | EMQ | 是 |
4 | EMQ X Kuiper | EMQ | 是 |
5 | Edge manager | EMQ | 否-2 |
6 | Grafana | GrafanaLabs | 是 |
1:
Neuron 未來規劃會將基礎功能進行開源,目前使用者下載後可以免費使用,如果內建試用版本的資料採集點數不夠,可以通過 EMQ 網站進行線上申請。
2:
使用者可以免費使用,免費版本中除了管理的節點數目受限之外,使用者可以使用所有功能。如果使用者想試用更多的節點管理功能,可以通過 EMQ 網站進行線上申請。
產品基本功能描述
1. TDengine:開源時序資料庫,實現對採集資料的處理
- 將原始資料,或者是經過流式處理之後的資料儲存到資料庫中;
- 應用程式可以通過 SQL 來實現對資料的訪問和分析處理;
2. Neuron:工業物聯網資料採集
- 支援了 Modbus,OPCUA,IEC61850,IEC104 和 BACnet 等眾多協議和裝置;
- 管理控制檯,使用者可以在瀏覽器中進行視覺化的配置,實現跨工業裝置資料的接入;
- 北向標準 MQTT 資料傳送,根據使用者指定配置,將資料傳送至指定的 MQTT 訊息伺服器中;
- 南向控制介面,結合 Kuiper 提供的規則引擎功能,實現基於規則的裝置控制;
- 本地資料儲存,實現裝置原始資料的儲存和檢視;
3. Edge:輕量級 MQTT 訊息伺服器
- 實現工業裝置訊息匯聚;
- 連線流式處理軟體,處理工業資料;
- 接受規則引擎的控制訊息,傳遞至 Neuron 實現裝置控制;
- 對接雲端訊息伺服器,實現離線訊息快取;
4. Kuiper:基於 SQL 的 IoT 流式處理框架
- 可以持續地消費、過濾、轉換和路由來自於 Edge 中的資料;
- 基於此實現流分析、規則引擎和訊息推送;
- 可以擴充套件實現對不同的資料來源的支援,實現在邊緣端 ERP、MES、WMS 和工業資料的互聯互通,以及實時分析與處理;
5. Edge manager:集成了 Neuron、Edge 和 Kuiper 三者的網頁管理控制檯
- 在 web 端輕鬆進行統一視覺化管理
- 實現了包括對 Neuron 的配置下發,資料傳送目標的配置;
- Edge 狀態的管理;
- Kuiper 流、規則和外掛等管理;
6. Grafana:模擬客戶的應用,將儲存在 TDengine 中的資料進行展示
支援的軟硬體環境
- 樹莓派、閘道器、工控機
- x86 & ARM – 64位和32位
- 常見 Linux 系統的支援
- 物理機,Docker & KubeEdge 等支援
開始試用
為了使使用者的試用更加簡單,演示場景利用 Docker 和 Docker compose 技術進行快速的部署,使用者可以在虛擬主機、工控機或者運算能力較強的閘道器上按照教程來體驗該方案。在實際的業務系統部署過程中,使用者可以根據需要在生產環境中直接採用二進位制安裝包進行部署,這樣執行的效率會更高。
該樣例場景中,資料通過 Modbus TCP 協議,發出模擬的溫度與溼度資料,這些資料進入系統後實現資料採集、匯聚、清洗、儲存分析和視覺化等能力,以下是在 Grafana 中呈現的溫度與溼度的視覺化報告。
注:TDengine 釋出的容器映象預設為 x86*64 環境,如果想切換為 ARM 架構,需要手工改一下docker-compose.yml
,以指向正確的版本。
總結
基於本文方案所搭建的工業網際網路基礎能力平臺,使用者可以實現高效、低成本的工業網際網路裝置連線、採集和分析。