林瑋 白冰
(1.廣東倍思控制技術有限公司 2.廣東新粵交通投資有限公司)
目前我國城市中的大中型建筑及公共場所的獨立樓宇火災自動報警系統(tǒng)及消防設施已逐漸普及、完善,并在防火救災中起到了關鍵作用。但與此同時,對于各個獨立的樓宇火災自動報警系統(tǒng),其聯(lián)網控制設備監(jiān)控功能的相關標準還在研究階段。在建立城市規(guī)模的火災自動報警監(jiān)控聯(lián)網系統(tǒng)的過程中,由于樓宇火災探測報警系統(tǒng)設備生產廠家眾多、型號多樣、采用的通訊協(xié)議各異,而這些設備基本不具備聯(lián)網通信功能。因此,研發(fā)智能消防數據終端,將各獨立系統(tǒng)紛繁復雜的通訊協(xié)議、數據格式進行統(tǒng)一轉換,是大規(guī)模實施城市火災報警監(jiān)控系統(tǒng)關鍵環(huán)節(jié)。
惠普重慶軟件研發(fā)基地火災報警聯(lián)網監(jiān)控系統(tǒng)基于多層級系統(tǒng)架構,形成從公安消防局、重慶市級總隊、沙坪壩支隊,到軟件研發(fā)基地火災報警聯(lián)網監(jiān)控系統(tǒng)的防控一體化監(jiān)控管理網絡。系統(tǒng)的最大特點是利用統(tǒng)一通訊技術,支持分布式數據處理和跨系統(tǒng)融合機制,使研發(fā)基地、沙坪壩支隊、重慶市級總隊各系統(tǒng)之間可根據級別、權限,實現實時監(jiān)控、聯(lián)動通信、數據匯總、按需巡檢等消防管理功能。
圖1 系統(tǒng)總體架構
為確保的研發(fā)中心火災報警系統(tǒng)數據實時準確地被采集,并通過Internet上傳到各級消防監(jiān)控中心,需要在系統(tǒng)配置嵌入式消防數據終端,兼容各主流消防廠家的通訊協(xié)議,使其轉換為統(tǒng)一的國家標準通訊協(xié)議,通過Internet、GSM實現與各級消防監(jiān)控中心的聯(lián)網。系統(tǒng)總體架構如圖1所示。
嵌入式消防數據終端的主控設備采用研華公司UNO-1019嵌入式PC。它基于微軟WinCE嵌入式操作系統(tǒng),集成Intel?XScale PXA-255200MHZ CPU,64MB SDRAM,16MB Flash,2個RS-232和2個RS-232/422/485串口,2個10/100 Mb/s 以太網口,1個CompactFlash插槽,4個DI/DO通道,3個可編程控制LED(用戶自定義),0-70°C工作溫度[1]。
RS-232/422/485串口和10/100Mb/s以太網口用于連接樓宇的火災探測報警系統(tǒng),實現嵌入式消防數據終端與各消防報警系統(tǒng)的數據通訊。數據終端把采集到的數據轉換為統(tǒng)一的數據格式,采用VPN方式,通過互聯(lián)網上傳到消防監(jiān)控中心。同時,數據終端的RS-232口連接GSM Modern,通過發(fā)送AT命令到GSM Modern,使其發(fā)送相應的報警短信息到監(jiān)控中心。數據終端硬件結構如圖2所示。
圖2 數據終端硬件結構圖
WinCE嵌入式操作系統(tǒng)特點是使用了分層結構技術,使系統(tǒng)具有更好的實時性、可靠性、開放性,使應用程序和操作系統(tǒng)獨立于具體硬件,以適應各種特殊的應用環(huán)境。操作系統(tǒng)從邏輯上分為硬件層,OEM 層,操作系統(tǒng)層,應用程序層[2]?;谇度胧絎inCE開發(fā)平臺的定制主要是對操作系統(tǒng)層、OEM層進行定制。
微軟提供PB(Platform. Builder)作為定制WinCE操作系統(tǒng)的集成開發(fā)環(huán)境。PB環(huán)境支持多種功能模塊和硬件接口,可以根據目標設備的具體硬件配置進行WinCE的裁剪和定制。首先,通過安裝和創(chuàng)建設備驅動程序對以太網口、RS-232//485串口、顯示驅動、和電源驅動等硬件進行定制;然后,定制系統(tǒng)組件和服務,包括TCP/IP、FTP、Telnet等,并根據硬件配置和操作系統(tǒng)的應用特性修改配置文件;最后生成操作系統(tǒng)映像文件,將其下載到目標設備中運行。
消防報警數據采集是整個數據終端的核心環(huán)節(jié),通過 RS232/485/LAN等多種通訊接口方式,與各品牌的樓宇火災報警系統(tǒng)聯(lián)網。為了兼容不同廠家的通信協(xié)議,嵌入式消防數據終端的采用周期設為250ms。
以海灣公司的GST5000火災報警控制器為例,它采用的是目前在消防火災報警系統(tǒng)中比較常見的MODBUS RTU協(xié)議。每個回路可接240個設備,設備二次碼(共六位)編碼按照***001~***240設置,其中第三位為設備區(qū)號,后三位為設備一次碼,與寄存器對應關系為:設備區(qū)號*240+設備一次碼,對應相應的寄存器,001號設備對應寄存器0×40001。嵌入式消防數據終端通過RS485與GST5000連接,向其發(fā)送MODBUS通訊碼,可以查詢相應設備的工作狀態(tài)和控制它們的啟停。通過CRC-16校驗算法,確保通訊數據的可靠性,從而達到抗干擾的目的。
數據通訊用于完成嵌入式消防數據終端與上層服務器之間的通信,其主要功能包括:傳輸采集數據,接受遠程控制命令,控制消防系統(tǒng)設備運行狀態(tài),同步更新數據終端配置文件。數據通訊程序采用基于WinCE 的TCP/IP 協(xié)議,能夠保證在傳輸過程中數據的準確性和可靠性[3]。
在基于WinCE的TCP/IP協(xié)議中,當接收到監(jiān)控中心服務器控制命令時,數據終端首先調用 socket()函數建立流式套接字,然后調用bind()綁定本地地址,調用listen()函數進行通訊連接,連接成功后,服務器就調用 accept()函數接收連接請求,并建立連接,同時服務器啟動一個新線程,建立單獨的套接字實例與數據終端進行通訊。通信協(xié)議格式為:命令名稱,參數表。
數據終端與服務器進行數據傳輸和配置文件(主要關于數據終端連接的火災報警系統(tǒng)類型,數據通訊協(xié)議名稱及其它系統(tǒng)配置信息)。更新時,數據終端調用 socket()函數建立流式套接字,再調用 connect()函數,請求與服務器建立 TCP連接,成功建立連接后,同服務器進行數據傳輸和配置文件更新。
數據終端通過RS232與GSM Modern連接,采用德國西門子公司的TC35i模塊,具備GSM無線通信的全部功能,支持文本和PDU 模式的短消息編碼方式,基于相應的AT指令集對模塊進行控制。文本模式比較簡單,PDU模式是發(fā)送、接收手機SMS信息的一種通用方法,短信息正文經過十六進制進行編碼后被傳送。由于嵌入式消防數據終端需要把火災報警信息以及設備運行情況通過 GSM Modern發(fā)送出去,所以考慮采用PDU方式。
將RS232和GSM Modern用相連,并設置好各項參數。然后設置短信息發(fā)送格式 AT+CMGF=1<回車>,這里的“1”表明采用PDU模式。打開串行端口設備所使用的名稱要遵循一定的準則。即 COM后接要相應的端口號,后面加一個冒號。冒號是Windows CE 所必需的,它是為了區(qū)別于在Windows NT中用于設備驅動程序的命名規(guī)則[4]。以下是部分代碼段:
通過嵌入式消防數據終端的研制開發(fā),運用嵌入式技術及多種網絡通訊技術,實現對惠普重慶軟件研發(fā)基地火災報警系統(tǒng)設備狀態(tài)及報警信息的數據采集、協(xié)議轉換及網絡傳輸,使軟件研發(fā)中心與各級消防管理中心之間建立起高效的聯(lián)網監(jiān)控機制,并為同類系統(tǒng)的建設應用奠定了堅實的基礎。系統(tǒng)自 2008年3月正式投運以來,一直穩(wěn)定運行,滿足用戶需求。
[1]研華公司. UNO-1019用戶手冊
[2]鄧川云,樊慶文.基于嵌入式WinCE的遠程數據采集系統(tǒng).http://www.21ic.com/app/embed/200912/52183.htm, 2009.12
[3]Jeremy Bentham. 嵌入式系統(tǒng)Web 服務器:TCP/IP Lean.北京:機械工業(yè)出版社,2003.5:134~135
[4]周毓林,寧楊,付林林.Windows CE.net 內核定制及應用開發(fā)[M].北京:電子工業(yè)出版社,2005:159~160