- Node-RED物聯網應用開發工程實踐
- 何錚 朱迪
- 1615字
- 2024-07-25 15:46:03
1.1 物聯網工程系統架構
首先,物聯網工程和其他信息化項目有很大的不同,不能直接套用信息化項目的系統架構,需要了解其本質差異后進行調整。二者的重要區別表現在以下幾方面。
? 打通異構協議的硬件設備。
? 數據采集方式。
? 低延遲的控制能力。
? 基于BIM模型的3D界面呈現方式。
? 打通人、設備、空間的權限管理方式。
? 重新組建的開發團隊和開發技術棧。
? 高可用架構。
? 快速搭建場景化功能的能力。
? 面向AI的集成能力。
Node-RED面向物聯網工程只能提供部分能力,嵌入整體系統還要考慮很多因素。這里用一個通用的物聯網技術架構拓撲圖來展示Node-RED在項目中的定位,以及商用物聯網工程的基礎系統理念,如圖1-1所示。

圖1-1 物聯網技術架構拓撲
圖1-1展示的是一個通用商用物聯網系統架構。按照傳統系統架構的分層理念來看,物聯網系統也分為4層,分別為設備層、網關層、平臺層、業務層。
■ 設備層:設備層是物聯網系統的基礎,包括各種傳感器、執行器、控制器等物理設備。這些設備通過各種通信協議(如MQTT、CoAP、ZigBee等)與網關層進行通信。在設備層中,Node-RED可以用于實現設備的數據采集、控制指令下發等功能。
■ 網關層:網關層是物聯網系統的中間層,也常被叫作邊緣層,使用的設備叫邊緣網關。網關層主要負責將設備層的數據傳輸到平臺層,并將平臺層的控制指令下發到設備層。網關層通常配有嵌入式設備或服務器,具有數據轉換、協議轉換、數據緩存等功能。在網關層中,Node-RED可以用于實現數據的清洗、轉換、過濾等功能,以及將數據發送到平臺層或從平臺層接收控制指令。
■ 平臺層:平臺層是物聯網系統的核心層,主要負責對設備層和網關層的數據進行存儲、分析、展示等。平臺層通常由云平臺、數據庫、數據分析模塊等組成。在平臺層中,Node-RED可以用于實現數據的存儲、查詢、分析等功能,以及將分析結果展示給用戶。
■ 業務層:業務層是物聯網系統的外部擴展,主要負責根據用戶需求提供各種業務功能。業務層通常由用戶界面、業務流程、業務邏輯等組成。在業務層中,Node-RED可以用于實現業務流程的編排、業務邏輯的處理等功能。
Node-RED可以部署在物聯網網關或者物聯網平臺中。為什么不可以將物聯網網關和物聯網平臺合并在一起呢?這種觀點經常被提出,特別是來自IT行業的廠商、工程師。在IT世界,大部分服務是可以集中放置在一層的,通過強大的服務器能力來組合完成。但是,物聯網系統有一個重要特點,就是存在物理位置的考慮維度,當你真實完成一個商用物聯網項目的時候就會發現,各種需要用銅纜線連接的設備在接入的時候會受限于工程布線和現場環境。比如對接一個傳統電表進行數據采集和控制,此時強電箱中是無法塞入一臺1U的服務器的,溫濕度環境不支持服務器運行,并且現場環境條件也不支持先布網線到機房再進行接入,因此需要在強電箱附近部署IoT網關。從拓撲圖中可以看出,大部分IoT網關產品是非常小的嵌入式設備,就像樹莓派這樣的硬件一樣,可以在大部分普通環境中工作,近端采集設備的數據和發送控制指令,此時IoT網關中的Node-RED就發揮了重要作用。它負責連接設備、處理數據、轉化格式,甚至完成一些較為復雜的邏輯處理,最后將輸出數據轉化為IP網絡可以傳輸的內容,再通過MQTT、UDP、TCP等協議發送給物聯網平臺。因此,一個優秀的物聯網引擎一定要能夠在低功耗工業級設備上運行。Node-RED最低可以在CPU頻率1.2GHz、內存512MB的嵌入式低功耗芯片和低內存環境中運行,為IoT網關產品提供了最優秀的引擎。因此,從通用角度看,4層架構是一個普遍設計原則。當然,我們也可根據實際項目情況進行調整。比如,如果在一個小的物理空間(如會議室)實現物聯網場景,那么由于設備端都集中在一個可以方便連線和對接的空間,因此可以將IoT網關和IoT平臺合二為一部署在一臺硬件設備上。像極企科技公司研發的BXRoom產品就是在此場景使用的物聯網產品。總之,物聯網系統涉及硬件、軟件、工程、設計等,4層架構可以變化后適用于各種場景,但是缺一不可,無非是在選型過程中拆分或者合并一些設備,但是均可以使用Node-RED作為核心引擎。下面介紹IoT設備層、IoT網關層、IoT平臺層。
- FreeSWITCH 1.2
- 網絡故障現場處理實踐(第4版)
- Windows Server 2003 Active Directory Design and Implementation: Creating, Migrating, and Merging Networks
- Spring Cloud微服務架構進階
- Practical Web Design
- 雷達饋線技術
- 物聯網通信技術
- Building RESTful Web services with Go
- Building Web Applications with ArcGIS
- 4G小基站系統原理、組網及應用
- 移動物聯網:商業模式+案例分析+應用實戰
- 計算機網絡技術
- React Design Patterns and Best Practices(Second Edition)
- Migrating to Drupal7
- 5G新型多址技術