摘 要:本文闡述了基于物聯(lián)網(wǎng)技術(shù)的智慧消防平臺架構(gòu)設(shè)計,項目整體基于5G網(wǎng)絡(luò)、移動OneNET平臺實現(xiàn)物聯(lián)設(shè)備的接入,云平臺主要使用Spring、Apache Dubbbo等主流技術(shù)來實現(xiàn),整體架構(gòu)可擴(kuò)展性高、運(yùn)營成本低,云平臺市場前景好。
關(guān)鍵詞:NB-IOT;OneNET;Dubbbo; 消防;物聯(lián)網(wǎng)
1 引言
我司新一代智慧消防平臺是基于物聯(lián)網(wǎng)、云計算等現(xiàn)代信息技術(shù),將分散的火災(zāi)自動報警設(shè)備、電氣火災(zāi)監(jiān)控設(shè)備、智慧煙感探測器、智慧消防用水等設(shè)備連接形成網(wǎng)絡(luò),并對這些設(shè)備的狀態(tài)進(jìn)行智能化感知、識別、定位,實時動態(tài)采集狀態(tài)、告警信息,通過云平臺進(jìn)行數(shù)據(jù)分析、挖掘和趨勢分析,幫助實現(xiàn)科學(xué)預(yù)警火災(zāi)、網(wǎng)格化管理、落實多元責(zé)任監(jiān)管等目標(biāo)。填補(bǔ)了原先針對“九小場所”和?;飞a(chǎn)企業(yè)無法有效監(jiān)控的空白。
在統(tǒng)一的平臺內(nèi)運(yùn)行,用戶、安保人員、監(jiān)管單位都能夠通過平臺直觀地看到每一棟建筑物中各類消防設(shè)備和傳感器的運(yùn)行狀況,并能夠在出現(xiàn)細(xì)節(jié)隱患、發(fā)生火情等緊急和非緊急情況下,在幾秒時間內(nèi),相關(guān)報警和事件信息通過手機(jī)短信、語音電話、APP推送等手段,迅速通知相關(guān)人員。
項目于2020年4月啟動,成立了由8個人組成的項目組,作為技術(shù)部負(fù)責(zé)人,我主要負(fù)責(zé)需求分析和系統(tǒng)架構(gòu)設(shè)計,并完全負(fù)責(zé)該項目的管理。經(jīng)過6個月研發(fā)、測試,平臺正式上線,系統(tǒng)運(yùn)行穩(wěn)定,獲得了領(lǐng)導(dǎo)和客戶的認(rèn)可。
2 系統(tǒng)架構(gòu)
2.1 邏輯架構(gòu)
所有物聯(lián)設(shè)備通過移動NB-IOT網(wǎng)絡(luò)連接到移動OneNET平臺,智慧消防平臺通過接口與移動OneNET平臺進(jìn)行交互。OneNet平臺采用HTTP及時把設(shè)備上報的信息推送到平臺開發(fā)的接口層,消息經(jīng)過校驗后再推送到消息隊列里面,實現(xiàn)削峰平流的作用,之后是由業(yè)務(wù)分析引擎對消息進(jìn)行處理和告警通知等,見圖1所示。
2.2 物理架構(gòu)
系統(tǒng)是在阿里云進(jìn)行部署的,業(yè)務(wù)應(yīng)用采用多節(jié)點部署在由多個ECS上組成集群,緩存使用的是阿里云的Redis服務(wù),數(shù)據(jù)庫使用的MySQL讀寫分離,接入層使用的阿里云的SLB進(jìn)行負(fù)載均衡處理,WEB層使用Nginx進(jìn)行分發(fā)請求。會話狀態(tài)是使用的Redis來存儲的,消息隊列使用的是RabbitMQ,即時消息使用的WebSocket來實現(xiàn),如圖2所示。所有后端應(yīng)用均采用多節(jié)點部署以防止單點故障。
2.3 技術(shù)架構(gòu)
根據(jù)系統(tǒng)特點,主要從系統(tǒng)業(yè)務(wù)功能特性、系統(tǒng)性能、擴(kuò)展性、維護(hù)性以及穩(wěn)定性方面考慮,同時兼顧考慮客戶特性等方面進(jìn)行技術(shù)選型。項目采用前后端分離技術(shù),后端整體使用流行的Java語言開發(fā),用Maven進(jìn)行依賴管理,采用Spring作為業(yè)務(wù)框架進(jìn)行構(gòu)建(Spring AOP、Spring MVC等組件)。使用Apache Dubbo作為微服務(wù)調(diào)用框架,Nacos作為注冊和配置中心,Seata作為分布式事務(wù)管理器,使用Quartz作為系統(tǒng)定時任務(wù)調(diào)度器,見圖3所示。前端使用的Vue + Element UI框架,流行度和成熟度也是非常高的。
對于架構(gòu)設(shè)計而言,無論從展現(xiàn)層,還是業(yè)務(wù)層、數(shù)據(jù)層以及事務(wù)控制管理等方面使用的技術(shù)和框架,都是目前業(yè)界非常主流的、應(yīng)用范圍非常廣泛、性能表現(xiàn)非常優(yōu)秀的技術(shù)和框架。架構(gòu)設(shè)計的展現(xiàn)層技術(shù)能夠較好滿足系統(tǒng)界面需求以及客戶使用習(xí)慣需求,實現(xiàn)跨平臺部署和運(yùn)行的目的。
3 智慧消防平臺功能設(shè)計
基于現(xiàn)有消防安全監(jiān)管的需要,平臺針對不同角色設(shè)計了相應(yīng)的功能,具體模塊見下表。運(yùn)營后臺是提供給平臺管理用的,主要進(jìn)行租戶管理及設(shè)備類型的設(shè)置等;監(jiān)管單位支持多級組織的分級監(jiān)管,上線可以看到下級的所有單位的運(yùn)行數(shù)據(jù);業(yè)主單位是指具體實施安裝消防設(shè)備的單位,為了日常維護(hù)方便,提供通過公眾號進(jìn)行安裝設(shè)備和巡檢的功能。主要功能見表1。
4 具體設(shè)計與實現(xiàn)
4.1 設(shè)備管理層
設(shè)備類型管理用于管理各硬件廠家的各種類型的設(shè)備,通過參數(shù)配置實現(xiàn)統(tǒng)一接入的需求:主要參數(shù)包括設(shè)備分類、數(shù)據(jù)上報周期、接入?yún)f(xié)議、巡檢項目等。物聯(lián)設(shè)備都是通過IMEI號進(jìn)行唯一識別的。設(shè)備添加的時候關(guān)聯(lián)到具體的點位平面圖上,方便進(jìn)行告警展示。設(shè)備管理會收集電量、信號強(qiáng)度等,會進(jìn)行檢驗提醒及報廢提醒。
4.2 設(shè)備接入層
平臺可以接入物聯(lián)設(shè)備及非物聯(lián)設(shè)備:非物聯(lián)設(shè)備包括各種傳統(tǒng)的滅火器、室內(nèi)消火栓、室外消火栓等;而物聯(lián)設(shè)備則主要包括新一代煙霧感應(yīng)器、可燃?xì)怏w感應(yīng)器、門磁報警器、水壓檢測器、水位檢測器、溫度感應(yīng)器等。
對于物聯(lián)設(shè)備,使用的是中國移動的NB-IOT卡,使用LwM2M協(xié)議直接與移動基站進(jìn)行聯(lián)接入網(wǎng)。OneNET是由電信供應(yīng)商中國移動打造的高效、穩(wěn)定、安全的物聯(lián)網(wǎng)開放平臺:支持適配各種網(wǎng)絡(luò)環(huán)境和協(xié)議類型,可實現(xiàn)各種傳感器和智能硬件的快速接入,滿足物聯(lián)網(wǎng)領(lǐng)域設(shè)備連接、協(xié)議適配、數(shù)據(jù)存儲、數(shù)據(jù)安全以及大數(shù)據(jù)分析等平臺級服務(wù)需求。
智慧消防平臺通過API在OneNET上通過設(shè)備的IMEI號來添加設(shè)備,實現(xiàn)設(shè)備的綁定,調(diào)用刪除指令來解除設(shè)備的綁定。設(shè)備綁定后,平臺會自動把設(shè)備的上線、下線、心跳消息通過HTTP協(xié)議主動推送給智慧消防平臺。設(shè)備在警情發(fā)生時會立即上線并發(fā)送消息給OneNET平臺,OneNET平臺收到消息會立即轉(zhuǎn)發(fā)給智慧消防平臺,以此來實現(xiàn)告警信息的及時傳傳遞。設(shè)備在平時處于休眠狀態(tài),以節(jié)省電池消耗。
智慧消防平臺收到消息后,會進(jìn)行消息驗簽,通過驗證的消息會投遞到RabbitMQ的隊列中。
4.3 協(xié)議適配層
平臺建立不同廠家不同設(shè)備的編碼庫,并且根據(jù)設(shè)備的具體協(xié)議開發(fā)適配器,收到消息后,根據(jù)設(shè)備類型獲取其對應(yīng)的適配器進(jìn)行解析,轉(zhuǎn)化成統(tǒng)一的數(shù)據(jù)模型提供給數(shù)據(jù)處理層。
4.4 數(shù)據(jù)處理層
應(yīng)用集群采用分布式部署,監(jiān)聽隊列的消息,根據(jù)消息類型進(jìn)行處理:上下線消息、心跳直接入庫,并對設(shè)備的狀態(tài)進(jìn)行相應(yīng)的調(diào)整;告警、故障內(nèi)消息會根據(jù)等級(高、中、低)進(jìn)行相應(yīng)的處理,高級的告警會電話的短信通知到對應(yīng)單位的消防值班人員,其它的告警及故障信息會在平臺的大屏上彈窗顯示。
數(shù)據(jù)處理層是架構(gòu)設(shè)計的核心,需要考慮海量數(shù)據(jù)的存取。所以系統(tǒng)根據(jù)業(yè)務(wù)進(jìn)行拆分,主要分為:基礎(chǔ)服務(wù),設(shè)備管理服務(wù),設(shè)備狀態(tài)服務(wù),告警服務(wù),巡檢服務(wù)等。不同服務(wù)使用獨立的數(shù)據(jù)庫,以降低數(shù)據(jù)庫的壓力;狀態(tài)數(shù)據(jù)按時間歸檔,主庫只保留最近3個月的數(shù)據(jù),過期的數(shù)據(jù)按月進(jìn)行歸檔;平臺使用對象緩存,通過AOP攔截實現(xiàn)緩存及刷新。
4.5 智能處理層
采用行業(yè)主流的流式數(shù)據(jù)處理引擎對設(shè)備上報的數(shù)據(jù)進(jìn)行進(jìn)一步的加工和分析,基于大量的歷史告警及設(shè)備故障數(shù)據(jù),通過不斷調(diào)整規(guī)則引擎算法,實現(xiàn)最優(yōu)的采購?fù)扑]及警情預(yù)測。
4.6 統(tǒng)計分析層
平臺提供大量統(tǒng)計報表,可以根據(jù)監(jiān)管的不同層級進(jìn)行數(shù)據(jù)匯總展示,主要的統(tǒng)計數(shù)據(jù)包括:告警統(tǒng)計、故障統(tǒng)計;實時的設(shè)備狀態(tài)統(tǒng)計;巡檢情況統(tǒng)計;實時的告警信息等。對于非實現(xiàn)的統(tǒng)計,平臺采用定時任務(wù)的方式,每隔一定的時間自動拉取最新的數(shù)據(jù)進(jìn)行聚合運(yùn)算,生成統(tǒng)計數(shù)據(jù)供展示和查詢使用。
5 總結(jié)
綜合來看NB-IoT有海量連接、深度覆蓋、低成本、超低功耗、穩(wěn)定可靠等優(yōu)勢。OneNET平臺則具有降低企業(yè)研發(fā)、運(yùn)營和運(yùn)維成本的優(yōu)勢。本平臺充分利用現(xiàn)有成熟的技術(shù)進(jìn)行融合設(shè)計,既滿足了業(yè)務(wù)需求又降低了用戶的使用成本,獲得了巨大的經(jīng)濟(jì)和社會效益。
在5G網(wǎng)絡(luò)下,產(chǎn)業(yè)中所有的基礎(chǔ)設(shè)施、生產(chǎn)設(shè)備、各種電子產(chǎn)品都將被連接起來,更多的創(chuàng)新空間隨之而生,傳統(tǒng)產(chǎn)業(yè)將迎來非常巨大的市場機(jī)遇。連接賦能的重點業(yè)務(wù)也將廣泛的拓展。技術(shù)的革新帶來的是更加低成本的應(yīng)用和更好的業(yè)務(wù)體驗,萬物互聯(lián)的時代已經(jīng)到來。我司正是基于行業(yè)的發(fā)展趨勢構(gòu)建了新一代智慧消防平臺,基于其強(qiáng)大的感知功能,必將改變消防監(jiān)管的方方面面,相信在不久的將來會迎來大規(guī)模的推廣和使用。
參考文獻(xiàn)
[1]李菁,葉卓映.NB-IoT技術(shù)及其在物聯(lián)網(wǎng)中的應(yīng)用研究[J].無線互聯(lián)科技,2019,10:11-12.
[2]吳先洪 車輝 楊波 邢慧芬 樊玉琦.基于大數(shù)據(jù)的智慧消防系統(tǒng)架構(gòu)探討[J].物聯(lián)網(wǎng)技術(shù),2021,6:47-54.
[3]于曉虹.微服務(wù)架構(gòu)在分布式系統(tǒng)的設(shè)計和應(yīng)用[J].電子技術(shù)與軟件工程,2021,6:28-29.
作者簡介:蒲邦雄,男,四川省南部縣人,1982年4月生人,漢,大學(xué)本科,工程師,目前就職于有伴(上海)智能科技有限公司,主要研究方向為軟件系統(tǒng)架構(gòu)