黃翊君,張家偉,錢銘翰,陳仁文
(1.南京航空航天大學(xué) 機(jī)械結(jié)構(gòu)力學(xué)及控制國(guó)家重點(diǎn)實(shí)驗(yàn)室,江蘇 南京 210016;2.中國(guó)鐵路上海局集團(tuán)有限公司南京房建公寓段,江蘇 南京 210016)
大型公共建筑面積大且結(jié)構(gòu)復(fù)雜,功能分區(qū)復(fù)雜多變[1],用電設(shè)備多且實(shí)時(shí)監(jiān)測(cè)性差。建筑內(nèi)的用電設(shè)備安全管理是保證建筑高效運(yùn)行的基礎(chǔ)。國(guó)內(nèi)傳統(tǒng)的大型公共建筑的照明系統(tǒng)等用電設(shè)備一般采用人工控制[2],部分地區(qū)使用紅外遙控等方式進(jìn)行控制[3],存在著控制方式陳舊和信息管理手段落后等問題[4],對(duì)建筑內(nèi)的安全生產(chǎn)和管理信息化產(chǎn)生不利的影響。
將物聯(lián)網(wǎng)技術(shù)與大型公共建筑相結(jié)合是管理向現(xiàn)代化發(fā)展的契機(jī)。智慧城市的興起將物聯(lián)網(wǎng)技術(shù)應(yīng)用到大型公共建筑的管理中,通過將傳感器技術(shù)、嵌入式系統(tǒng)技術(shù)、通信技術(shù)、大數(shù)據(jù)算法、云計(jì)算等技術(shù)[5-9]融合到大型公共建筑系統(tǒng)的解決方案中,使得大型公共建筑的管理有了“智慧”,可做到大型公共建筑用電設(shè)備的精準(zhǔn)感知和智能決策管理[10-11]。
針對(duì)目前大型公共建筑存在的問題,本文提出一種基于無線網(wǎng)絡(luò)和云平臺(tái)的大型建筑分布式用電設(shè)備遠(yuǎn)程安全狀態(tài)監(jiān)控系統(tǒng)的設(shè)計(jì)方案,讓不同的管理人員對(duì)其所管轄的建筑區(qū)域的用電數(shù)據(jù)進(jìn)行實(shí)時(shí)狀態(tài)監(jiān)測(cè)并實(shí)行遠(yuǎn)程控制,實(shí)現(xiàn)了對(duì)大型公共建筑各個(gè)區(qū)域的用電數(shù)據(jù)進(jìn)行實(shí)時(shí)采集、監(jiān)測(cè)及故障切除控制等功能,具有較強(qiáng)的實(shí)用性和可擴(kuò)展性。
分布式用電設(shè)備安全監(jiān)控系統(tǒng)的整體架構(gòu)如圖1所示,整個(gè)系統(tǒng)包括設(shè)備監(jiān)控端和遠(yuǎn)程終端兩大部分。
圖1 系統(tǒng)整體架構(gòu)
將多回路交流功率采集模塊安裝在配電箱內(nèi),即可通過MCU采集該配電箱所連接負(fù)載的能耗(電壓、電流和功率)。利用Air720模塊支持的移動(dòng)數(shù)據(jù)網(wǎng)絡(luò)與云服務(wù)器進(jìn)行通信。按照MQTT通信協(xié)議規(guī)范將采集到的數(shù)據(jù)上傳到云服務(wù)器,并接收云服務(wù)器下發(fā)的用電設(shè)備控制信號(hào)和參數(shù)設(shè)置信號(hào)。
采用基于阿里云平臺(tái)的監(jiān)控系統(tǒng)軟件,用戶通過桌面應(yīng)用端、Web端和手機(jī)APP端獲取監(jiān)測(cè)數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)查詢、故障報(bào)警、參數(shù)設(shè)置、數(shù)據(jù)存儲(chǔ)、統(tǒng)計(jì)報(bào)表、實(shí)時(shí)控制、權(quán)限管理和故障切除等功能。
設(shè)備監(jiān)控端主要包括信號(hào)采集模塊、MCU、繼電器和移動(dòng)數(shù)據(jù)網(wǎng)絡(luò)。硬件結(jié)構(gòu)如圖2所示。
圖2 硬件結(jié)構(gòu)
MCU是整個(gè)設(shè)備監(jiān)控端的控制核心,采用STM32F103芯片,它擁有72 MHz的主頻、5個(gè)USART串口和64個(gè)GPIO引腳,滿足本系統(tǒng)的性能要求。把MCU的串口模塊波特率配置為115 200 b/s,并通過串口模塊發(fā)送參數(shù)指令到采集模塊和移動(dòng)數(shù)據(jù)網(wǎng)絡(luò)模塊進(jìn)行數(shù)據(jù)交互。將繼電器配置為高電平觸發(fā)且設(shè)置為常閉狀態(tài),保證電路初始狀態(tài)的暢通。
采集模塊是12路交流單相功率采集器,該采集器是一款高精密且內(nèi)置24路相互獨(dú)立A/D模塊的實(shí)時(shí)功耗監(jiān)測(cè)器。由于該模塊使用RS 485總線接口和 ModBus-RTU協(xié)議,需要讀取模塊內(nèi)部寄存器,所以應(yīng)在MCU的串口與采集模塊間連接一個(gè)MAX485模塊進(jìn)行信號(hào)轉(zhuǎn)化。
為保證數(shù)據(jù)的正確性,MCU收到數(shù)據(jù)后還需進(jìn)行CRC校驗(yàn),高字節(jié)在前、低字節(jié)在后。校驗(yàn)正確后MCU在收到的數(shù)據(jù)中提取出每個(gè)回路對(duì)應(yīng)的用電數(shù)據(jù)并判斷是否超過閾值。若超過閾值則控制繼電器進(jìn)行故障回路切除,同時(shí)定時(shí)將采集到的數(shù)據(jù)通過移動(dòng)數(shù)據(jù)網(wǎng)絡(luò)模塊傳輸?shù)皆贫朔?wù)器。程序流程如圖3所示。因遠(yuǎn)程終端需要管理256×256個(gè)設(shè)備監(jiān)控端,為避免通信鏈路擁堵,將此流程設(shè)置成每20 s進(jìn)行一次。若數(shù)據(jù)異常則立刻發(fā)送數(shù)據(jù)包,若數(shù)據(jù)正常則每1 min定時(shí)發(fā)送一次數(shù)據(jù)包。
圖3 信號(hào)采集流程
設(shè)備監(jiān)控端的任務(wù)是獲取能耗數(shù)據(jù)并判斷該數(shù)據(jù)是否異常、上傳數(shù)據(jù)包、執(zhí)行通道啟??刂浦噶?,執(zhí)行閾值參數(shù)設(shè)置指令等。由于需要在多任務(wù)之間對(duì)多個(gè)回路的用電設(shè)備進(jìn)行統(tǒng)一的管理,在此構(gòu)建一個(gè)16進(jìn)制的unsigned int類型的數(shù)據(jù)包,便于存放各種參數(shù)。不同類型的數(shù)據(jù)和指令都以不同的Header標(biāo)志作為傳輸?shù)拈_始。當(dāng)用戶下發(fā)指令后,云服務(wù)器將指令通過移動(dòng)數(shù)據(jù)網(wǎng)絡(luò)下發(fā)到MCU中,MCU執(zhí)行指令內(nèi)容。其流程如圖4所示。
圖4 指令執(zhí)行流程
設(shè)備監(jiān)控端實(shí)時(shí)準(zhǔn)備接收指令,接收指令后根據(jù)Header判斷指令類型并校驗(yàn)設(shè)備的ID號(hào),這樣即使其他設(shè)備接收到該指令也不會(huì)響應(yīng),實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)通信的目的,避免錯(cuò)誤執(zhí)行。同時(shí)還要對(duì)數(shù)據(jù)本身進(jìn)行校驗(yàn),避免數(shù)據(jù)漏接或亂碼。
遠(yuǎn)程監(jiān)控的主要風(fēng)險(xiǎn)在于網(wǎng)絡(luò)連接不穩(wěn)定及遠(yuǎn)程終端對(duì)設(shè)備監(jiān)控端控制的不確定性。因此,設(shè)備端需要一套重連機(jī)制保證網(wǎng)絡(luò)狀況不佳時(shí)進(jìn)行重新連接,并采取自動(dòng)保護(hù)措施。
通過在設(shè)備監(jiān)控端設(shè)定一個(gè)定時(shí)發(fā)送的心跳包檢測(cè)通信鏈路是否正常。若發(fā)送心跳包后收不到云端的回應(yīng)或者其他的通信消息時(shí),設(shè)備端進(jìn)行主動(dòng)重連,重啟移動(dòng)數(shù)據(jù)網(wǎng)絡(luò)通信模塊后再次建立TCP連接。
節(jié)點(diǎn)的通信行為取決于數(shù)據(jù)鏈路層的資源調(diào)度,多路徑傳輸?shù)娜蒎e(cuò)主要分為復(fù)制機(jī)制和重傳機(jī)制[12]。為降低數(shù)據(jù)的冗余性和減少網(wǎng)絡(luò)負(fù)載,本系統(tǒng)采用逐條重傳(Hop-by-Hop,HbH)機(jī)制。需要傳輸?shù)男畔⒊肆⒓窗l(fā)送之外,還暫存于緩沖存儲(chǔ)器中。若接收端解碼出錯(cuò),則對(duì)發(fā)送端發(fā)出一個(gè)重發(fā)指令,該指令控制發(fā)送端重新發(fā)送信息直至解碼正確。
本系統(tǒng)采用控制與應(yīng)用分離模式。設(shè)備監(jiān)控端由MCU統(tǒng)一控制并接收和執(zhí)行控制指令,安全監(jiān)控的相關(guān)邏輯則部署在云端服務(wù)器。遠(yuǎn)程終端包括云服務(wù)器軟件和客戶端,為使用方便,客戶端還具有Web端、桌面客戶端和手機(jī)APP三種。該系統(tǒng)具有可擴(kuò)展功能,可設(shè)置256個(gè)區(qū)域,每個(gè)區(qū)域可連接256個(gè)設(shè)備監(jiān)控端,每個(gè)設(shè)備監(jiān)控端可測(cè)量12個(gè)回路的用電設(shè)備。
為方便管理數(shù)量龐大的設(shè)備監(jiān)控端,系統(tǒng)為每一個(gè)設(shè)備監(jiān)控端設(shè)定一個(gè)專屬唯一ID號(hào)。讀取MCU的ID地址,對(duì)此地址進(jìn)行加密操作變成一個(gè)4 Byte的ID號(hào)。在客戶端將這些設(shè)備添加到規(guī)定的區(qū)域中,方便不同權(quán)限的用戶進(jìn)行管理。
本系統(tǒng)采用阿里云服務(wù)器,云服務(wù)器軟件是由JAVA語(yǔ)言編寫的,采用Netty框架,其詳細(xì)功能如圖5所示。MCU通過TCP連到服務(wù)軟件,服務(wù)軟件接收數(shù)據(jù),根據(jù)協(xié)議解析數(shù)據(jù),將數(shù)據(jù)和每一個(gè)MCU的ID通道號(hào)保存和記錄在MySQL數(shù)據(jù)庫(kù)中,通過應(yīng)用程序接口(Application Programming Interface, API)與客戶端完成數(shù)據(jù)交互。
圖5 云服務(wù)器軟件功能
在一般的物聯(lián)網(wǎng)應(yīng)用層協(xié)議中,消息隊(duì)列遙測(cè)傳輸(Message Queuing Telemetry Transport, MQTT)協(xié)議以其簡(jiǎn)約、輕量、易于使用等優(yōu)點(diǎn)被廣泛應(yīng)用于各物聯(lián)網(wǎng)平臺(tái)中。該協(xié)議構(gòu)建于TCP/IP上,實(shí)現(xiàn)消息的發(fā)布/訂閱模式,可提供一對(duì)多的消息發(fā)布,特別適用于嵌入式設(shè)備和高延遲、不可靠的網(wǎng)絡(luò)環(huán)境,可以更好地實(shí)現(xiàn)多組設(shè)備與云端的集成。設(shè)備監(jiān)控端采用Air 720搭載的移動(dòng)數(shù)據(jù)網(wǎng)絡(luò)模塊作為通信設(shè)備,內(nèi)置MQTT協(xié)議棧,主要由MCU通過AT指令對(duì)Air 720模塊進(jìn)行配置和數(shù)據(jù)包上傳,其主要工作是將參數(shù)表中的數(shù)據(jù)包上傳到云服務(wù)器,以及接收云服務(wù)器下發(fā)的指令,并傳輸?shù)組CU中使其執(zhí)行相應(yīng)的操作。云服務(wù)軟件和各個(gè)客戶端的實(shí)時(shí)數(shù)據(jù)和指令交互也是通過MQTT交互的。
用HTML5設(shè)計(jì)出該系統(tǒng)的Web程序,利用Web系統(tǒng)易擴(kuò)展與客戶端易維護(hù)的特點(diǎn),通過Web程序管理數(shù)據(jù)庫(kù)并提供API給手機(jī)APP和桌面客戶端,桌面客戶端能添加高級(jí)管理員(全系統(tǒng)全部權(quán)限含參數(shù)調(diào)整權(quán)限)、區(qū)域管理員(按設(shè)備地址區(qū)分,區(qū)域內(nèi)除參數(shù)調(diào)整外的全部權(quán)限)、高級(jí)監(jiān)控員(僅全系統(tǒng)全部查看、報(bào)警接收和故障切除權(quán)限)、區(qū)域監(jiān)控員(僅區(qū)域內(nèi)全部查看、報(bào)警接收和故障切除權(quán)限)、高級(jí)訪問員(僅全系統(tǒng)全部查看、報(bào)警接收權(quán)限)、區(qū)域訪問員(僅區(qū)域內(nèi)全部查看、報(bào)警接收權(quán)限)等6類不同權(quán)限的用戶,這6類用戶均能在手機(jī)APP和桌面客戶端登錄。此處以桌面客戶端和手機(jī)APP端為例,設(shè)計(jì)的頁(yè)面及其功能如圖6和圖7所示。
圖7 手機(jī)端操作頁(yè)面
軟硬件設(shè)計(jì)完成后,對(duì)系統(tǒng)進(jìn)行測(cè)試以驗(yàn)證系統(tǒng)是否可達(dá)到預(yù)期的目標(biāo)。為部署方便,選用兩個(gè)區(qū)域的其中6個(gè)回路對(duì)該系統(tǒng)進(jìn)行測(cè)試。測(cè)試設(shè)備如圖8所示。
圖8 測(cè)試設(shè)備
將監(jiān)控設(shè)備正確安裝到配電箱內(nèi)且移動(dòng)數(shù)據(jù)網(wǎng)絡(luò)正常運(yùn)行后,在回路中接入大功率用電設(shè)備,10 s后設(shè)備自動(dòng)斷電,桌面端彈出報(bào)警對(duì)話框并發(fā)出警報(bào)聲。在回路中接入損壞的用電設(shè)備,系統(tǒng)僅彈出報(bào)警對(duì)話框并發(fā)出警報(bào)聲。
經(jīng)過現(xiàn)場(chǎng)測(cè)試試驗(yàn),桌面端和手機(jī)端都能完成實(shí)時(shí)準(zhǔn)確地查看各個(gè)區(qū)域每個(gè)設(shè)備的運(yùn)行情況、控制用電設(shè)備啟停、故障報(bào)警接收和查看歷史統(tǒng)計(jì)數(shù)據(jù)等功能,達(dá)到了預(yù)期目的。
本文設(shè)計(jì)的基于云服務(wù)器的高鐵客站用電設(shè)備安全監(jiān)控系統(tǒng)實(shí)現(xiàn)了高鐵客站龐大且復(fù)雜的用電設(shè)備的統(tǒng)一控制,解決了高鐵客站信息化過程中用電設(shè)備安全管理以及遠(yuǎn)程控制等問題,提升了運(yùn)維效率,減少了管理成本?,F(xiàn)場(chǎng)試驗(yàn)結(jié)果表明,該安全監(jiān)控系統(tǒng)設(shè)計(jì)可靠、運(yùn)行穩(wěn)定、有較強(qiáng)的實(shí)用性,在用電設(shè)備安全實(shí)時(shí)監(jiān)控方面具有一定的應(yīng)用推廣前景。