張繼鋒 劉校宗 張俊
南京萊斯信息技術股份有限公司 江蘇 南京 210000
信號機[1]作為城市道路交通非常核心的設備,在維護和控制交通秩序方面起著主導作用,所以信號機的安全和穩定運行就顯得尤為重要。目前,大多數信號機箱由傳統的機械門鎖組成,由于廣布在城市每一個路口的現實情況,存在許多安全、管理、運維方面的弊端。第一,無法及時獲取信號機以及信號機箱的狀態,需要人工巡檢,故障發現滯后,容易造成不必要的交通事件。第二,鎖門過程繁瑣,容易發生門關鎖開現象,造成信號機箱內設備被盜。第三,機械鎖結構簡單、鑰匙通用,社會上具備開鎖鑰匙的人比比皆是,現有鎖具形同虛設。第四,對于信號機箱惡意破壞行為,沒有視頻抓拍收集證據,無法做到責任追溯,無法形成警示和震懾。第五,信號機箱開關門狀態以及異常狀態無記錄,無法做到有據可查,無法形成狀態分析報告。第六,沒有權限管理,無法對信號機箱歸屬權、使用權進行細分管理。在此背景下,研發出基于物聯網、云計算、移動互聯網等先進技術的智能信號機柜,解決交管部門存在的以上痛點問題。
智能信號機柜與傳統的機柜相比[2],智能信號機柜可以實現門鎖的智能開關狀態,并可以通過嵌入式核心板板載的傳感器等器件實現對溫濕度、水位煙霧等數據的檢測,以及門鎖狀態和接收信號機的數據并解析得到信號燈狀態等數據,并將檢測到的數據和解析得到的數據通過MQTT客戶端上傳到阿里云平臺搭建的MQTT服務器。移動端如電腦和手機可以實時查看檢測到的數據信息,并顯示在移動端。
智能信號機柜是在MQTT協議的基礎上實現數據的傳輸。智能信號機柜作為MQTT的客戶端,將檢測到的數據上傳到阿里云平臺搭建的MQTT服務器,通過搭載的管理客戶端將上傳信息讀取到本地數據庫中,手機端可以通過對數據庫的查看來獲得相關的數據信息。PC端通過局域網將檢測的數據和狀態信息顯示在顯示屏上。

圖1 智能信號機柜系統結構圖
(1) MQTT是一種消息傳輸協議,采用的是訂閱和發布的方式實現的協議,是建立在TCP/IP協議的基礎上實現的。MQTT協議的優點是輕量、簡單,在進行消息傳輸時只需要較少的代碼量,而且對于帶寬的要求也較低。
(2) MQTT的特性是可以實現一對多的消息發布方式,該方式的實現是在訂閱和發布的基礎上[3]。
(3) MQTT的實現是通過客戶端和服務端共同完成。通過發布者(public)發布消息后,根據發布者發布的主題,訂閱者(Subscribe)通過訂閱相同的主題,收到該主題的消息內容。
和傳統的機柜相比,智能信號機柜在功能上做了進一步的改進。智能信號機柜采用MQTT方式上傳狀態及告警信息,并接收來自局域網的開鎖指令。也通過手機APP來實現指令的下發,智能門鎖在收到手機APP端下發的指令時實現門鎖的打開。
智能信號機柜增加了溫濕度、水位煙霧碰撞、網絡狀態、門鎖狀態、開關所反饋狀態、設備故障信息、設備運行狀態、信號燈狀態等數據的檢測和采集,將采集到的數據通過MQTT客戶端將數據發送到阿里云平臺搭建的MQTT服務器。其中信號燈的狀態和信號燈的剩余時間數據由嵌入式開發板和信號機通過RS232相連,通過對接收的數據進行解析可以得到對應的數據信息。
將智能控制盒檢測到的數據信息和接收到的信號機的燈色數據存儲到管理客戶端中的數據庫中。通過數據融合的存儲技術來實現對數據的存儲,數據融合的存儲技術可以對多傳感器檢測的數據在一定的準則下實現對數據的檢測和估計。通過數據融合處理的數據具有更精確性和完整性。其中一級融合采用的是自適應加權融合算法,自適應加權融合算法可以對測量的不同精度的數據進行處理,在一定程度上提高了測量的精度。對于二級融合算法采用了BP神經網絡融合算法,可以根據隱含層的計算結果和標記值的誤差比較,如果超出誤差的范圍將進行反向的傳輸,由輸出層向前傳輸進行計算。

圖2 智能控制盒實現流程圖
智能信號機柜的設計是建立在MQTT協議的基礎上,智能信號機柜通過客戶端將嵌入式開發板上板載傳感器檢測的數據發送到阿里云平臺搭建的MQTT服務器。
智能信號機柜內載的嵌入式開發板上載有溫濕度傳感器、水位煙霧傳感器、智能門鎖以及攝像頭模塊。傳感器會對環境的某些參數進行檢測,檢測得到的數據會采用自適應加權融合算法和BP神經網絡算法對數據進行處理。處理后的數據會被存儲在共享內存中,此時嵌入式開發板上搭建的MQTT客戶端會將共享內存的數據發送到阿里云平臺搭建的MQTT服務器。智能門鎖可由局域網的電腦端進行控制開鎖,PC端和智能機柜的連接通過網線相連。
對于傳感器檢測的數據會存在一定的噪聲誤差,該誤差會對數據的精確性產生一定的影響。通過加權融合算法對數據進行處理,以減少數據的誤差,使得統計之后的數據值更加精確。不同傳感器的權值是不同的,為使得方差達到最小,可根據測量值采用自適應的方法來獲得對應的權值,使得融合的效果達到最佳[4]。
各個傳感器的測量值為X1,X2,…Xn,各個傳感器的加權因子為W1,W2,…Wn,自適應加權算法是多個傳感器的測量值與各傳感器的加權因子的融合。其融合后的表達式為:


由公式可以看出通過求取總均方誤差最小值來提高輸出精度。根據多元極值理論,最小總均方誤差為:

此時每個傳感器的加權因子為:

根據傳感器的數據計算相應的權值,進而對融合結果進行計算。
對于二級的融合采用BP神經網絡算法,BP神經網絡算法是根據結果值和誤差值的比較來確定是否進行反向傳播的一種算法。
BP神經網絡是一種前饋網絡,信號在輸入時,會經過輸入層、隱含層,經過隱含層的計算進行判斷誤差的范圍,根據誤差范圍來判斷是否進行數據的反向傳播。BP神經網絡算法采用三層的網絡模型,包括輸入層、隱含層和輸出層。首先對網絡初始化,給出誤差函數、訓練精度值,并對初始權值和偏置項進行初始化。輸入層到隱含層根據初始權值和偏置項計算回歸值,采用S形激活函數對回歸值進行變換,將變換之后的值傳輸到隱含層。隱含層會對傳輸進來的數據采用函數進行計算以及采用激活函數進行變換,再根據誤差函數計算得到對應的誤差,將誤差與系統設定的誤差精度進行比較,如果沒有達到誤差精度范圍就返回輸入層進行樣本計算。
手機APP可以通過對搭建的管理客戶端進行調用,對智能控制盒上傳的數據信息進行讀取,顯示在手機界面上。搭建的管理客戶端是基于MQTT的基礎上,通過MQTT的訂閱主題功能,訂閱智能控制盒發布的主題,實現了MQTT的通訊功能。管理客戶端將接收到的數據信息存儲在數據庫中,手機APP通過對數據庫的調用來實現數據的查閱,手機APP和管理客戶端通過HTTP協議進行通信。手機APP和智能信號機柜的智能門鎖的連接通過藍牙模塊實現通信,手機APP實現對智能機柜門鎖的開關控制。PC端和智能控制盒的連接采用的是網線,PC端可以將數據顯示在顯示屏上,并可以通過PC端的指令實現對智能信號機柜門鎖的打開和關閉。
智能信號機柜的實現是在MQTT的基礎上,利用MQTT的“輕量”、即時通訊來實現數據的傳輸和通訊。智能信號機柜的控制盒采用的是M6G2C工業控制核心板,通過外接傳感器對環境參數進行測量。外接傳感器主要有溫濕度傳感器、水位煙霧傳感器等對環境溫度進行測量。與此同時,智能控制盒的M6G2C工業控制核心板也會對智能機柜的供電狀態、網絡狀態、設備狀態以及信號機的燈色狀態信息進行檢測,將檢測的信息存儲到創建的共享內存中,通過搭建的MQTT客戶端將存儲在共享內存的數據信息上傳到在阿里云平臺搭建的MQTT服務器。
智能信號機柜的藍牙門鎖由手機端和PC端進行控制。手機APP端通過藍牙功能控制智能門鎖的開啟和關閉,同時手機端將通過搭建的MQTT管理客戶端調用智能控制盒上傳的環境參數、門鎖狀態以及信號機狀態等數據,并將數據顯示在手機屏幕上。對于局域網而言,PC端和智能控制盒的相連采用的是網線,PC端可以實現核心板檢測的數據在桌面的顯示并實現對藍牙門鎖的打開和關閉的控制。
智能機柜安全可靠、防盜性能好、散熱效果好,實現如下主要功能:具備手機藍牙開鎖功能,機柜斷電時可通過電子鑰匙開鎖;柜門狀態實時檢測,門開自動拍照,照片本地存儲及上傳;門開自動開啟照明燈,柜內溫度超限自動開啟風扇;220V交流電實時監測、電能測量、電流越限報警、遠程斷電、斷電檢測上傳告警信息;2G/4G無線通信功能;具有全球導航衛星系統,定位上傳位置信息;柜內環境參數實時監測上報,異常時告警;支持OTA遠程升級,遙測;具有遠程監控功能。
手機APP面向交警和信號機運維人員,通過分發安裝包的形式安裝在Android手機平臺。該APP需特定用戶名和密碼登錄,由系統管理員統一創建、下發、管理。通過該APP,用戶可實現權限內所有信號機箱狀態的查看,對單個信號機箱發送開鎖指令,以及查看每個信號機箱的開關門記錄。
PC端管理平臺實現各類實時狀態監視、一鍵開鎖、歷史記錄查詢等功能外,主要負責對用戶、權限以及日志進行精細化管理,能夠按需定制各類統計分析報表。

圖3 手機APP

圖4 PC端實時監控
文章介紹了基于MQTT的智能信號機柜的研究與設計。智能信號機柜數據通訊是在MQTT協議的基礎上實現的,該設計在原有信號機的基礎上,增加了對環境的監測以及對信號機網絡狀態、運行狀態,以及信號機的燈色狀態信息等信息的檢測,并對數據信息進行存儲。在MQTT協議的基礎上,實現數據信息的上傳,將數據信息上傳到在阿里云平臺搭建的MQTT服務器。手機APP可以通過搭建的MQTT管理客戶端查看智能控制盒上傳的環境參數以及信號機數據信息等數據,并顯示在手機屏幕上。對于PC端,和智能控制盒的核心板采用網線進行連接,智能控制盒的數據信息實時顯示在電腦屏幕上,可以實現對數據的實時檢測。