《電子技術(shù)應用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應用 > 基于ZigBee的機房環(huán)境遠程監(jiān)控系統(tǒng)的研究與實現(xiàn)
基于ZigBee的機房環(huán)境遠程監(jiān)控系統(tǒng)的研究與實現(xiàn)
來源:電子技術(shù)應用2012年第1期
練方興1, 鮑 鴻1, 龍盛鵬2
1. 廣東工業(yè)大學 自動化學院, 廣東 廣州510075; 2. 南方軟件有限公司, 廣東 廣州510055
摘要: 采用無線傳感網(wǎng)絡(luò)技術(shù)、嵌入式技術(shù)、網(wǎng)絡(luò)傳輸技術(shù)、數(shù)據(jù)采集及現(xiàn)場監(jiān)控技術(shù),以ARM9嵌入式計算機為核心單元,以WinCE實時多任務(wù)操作系統(tǒng)作為管理平臺,通過ZigBee無線網(wǎng)絡(luò)采集及傳送終端數(shù)據(jù),應用PHPRPC協(xié)議進行軟件間通信、數(shù)據(jù)交換,實現(xiàn)了基于Web遠程監(jiān)控。使機房監(jiān)控達到更高的實時性、安全性和穩(wěn)定性。
關(guān)鍵詞: ZigBee ARM9 PHPRPC Web
中圖分類號: TP274
文獻標識號: A
文章編號: 0258-7998(2012)01-0066-04
The research and realization of room remote environment monitoring based on ZigBee
Lian Fangxing1, Bao Hong1, Long Shengpeng2
1. College of Automation, Guangdong University of Technology, Guangzhou 510075, China; 2. Southern Software Inc. Guangzhou 510055, China
Abstract: This paper adopts embedded technology, network transmission technology, data acquisition and site monitoring technology. With ARM9 embedded computer as the core unit and WinCE real-time multitasking operating system as the management platform, using the ZigBee wireless network to get and transmit terminal data. Software communication, data exchange and remote monitoring are based on WEB with PHPRPC agreement. Room monitoring achieves higher real-time, security and stability.
Key words : ZigBee; ARM9; PHPRPC; Web

    隨著無線傳感網(wǎng)絡(luò)、信息技術(shù)的迅猛發(fā)展,互聯(lián)網(wǎng)的迅速普及和嵌入式系統(tǒng)的廣泛應用,計算機及網(wǎng)絡(luò)技術(shù)已經(jīng)滲透到了各行各業(yè)。整個社會對計算機信息系統(tǒng)的依賴在不斷地加深,信息傳輸更多采用網(wǎng)絡(luò)化與智能化。因而對于機房信息的實時性、安全性、穩(wěn)定性和維護管理方面提出更高的要求。

    ZigBee無線傳感網(wǎng)絡(luò)已經(jīng)在很多方面得到了廣泛的應用,并且可達到運行可靠穩(wěn)定。有些機房當中存在布線困難、擴展性和移植性差等問題。面對現(xiàn)有機房監(jiān)控系統(tǒng)的弊端和局限性,為了保證機房的安全運行,減輕機房維護人員負擔,降低系統(tǒng)成本,希望能有一套基于無線傳感器網(wǎng)絡(luò),安裝方便、運行穩(wěn)定可靠、維護簡單、移植性好、可遠距離監(jiān)控,同時具有經(jīng)濟性的數(shù)據(jù)實時采集的機房環(huán)境監(jiān)控系統(tǒng)。實現(xiàn)機房設(shè)備集中監(jiān)控,監(jiān)視各種設(shè)備的狀態(tài)及參數(shù),可診斷設(shè)備部件運行情況,在發(fā)生異常狀況或故障時發(fā)出警報,并支持通過瀏覽器遠程監(jiān)視設(shè)備運行的情況[1,2]。
1 系統(tǒng)構(gòu)架
    整個系統(tǒng)分布部署拓撲圖如圖1所示,大致可以劃分為五部分:ZigBee無線傳感網(wǎng)絡(luò),數(shù)據(jù)采集終端IDU(Integrated Data Unit)、嵌入式服務(wù)器端、報警端、監(jiān)控中心與遠程瀏覽站。

    ZigBee無線傳感網(wǎng)絡(luò)主要負責對環(huán)境設(shè)備(如空調(diào)、漏水、溫濕度、UPS、電量儀等)數(shù)據(jù)參數(shù)進行采集,以無線的方式進行數(shù)據(jù)傳輸,通過ZigBee協(xié)調(diào)處理器節(jié)點把采集到的數(shù)據(jù)上傳到IDU。IDU主要負責對數(shù)據(jù)進行整合,上報到嵌入式服務(wù)器,同時, IDU也可以直接通過RS232/RS485等有線的方式接入環(huán)境設(shè)備采集數(shù)據(jù)。嵌入式服務(wù)器負責對采集到的數(shù)據(jù)進行處理、存儲、分析和執(zhí)行報警動作。報警設(shè)備主要有短信報警、電話報警、聲光報警和郵件報警。監(jiān)控中心與遠程瀏覽站負責對機房的集中管理,采集機房傳來的實時信息,并以表格和狀態(tài)圖的方式顯示在監(jiān)控中心計算機屏幕上。管理員可以通過遠程瀏覽站以WEB形式監(jiān)控設(shè)備中的狀態(tài)數(shù)據(jù),也可以通過遠程發(fā)命令來操縱監(jiān)控設(shè)備實施開關(guān)等動作。
2 硬件設(shè)計
    硬件部分是本監(jiān)控系統(tǒng)的重要組成部分之一,其指標參數(shù)及可靠性決定了整個系統(tǒng)的性能。為了監(jiān)控系統(tǒng)的需要,硬件要做到體積小、價格低、監(jiān)控參數(shù)精度高、可靠性高、功耗低等[2]。
2.1 ZigBee無線傳感器
 ZigBee模塊核心選擇CC2430芯片,它是由Chipcon公司推出的實現(xiàn)嵌入式ZigBee應用的片上系統(tǒng),是一顆真正的系統(tǒng)芯片(SoC)CMOS解決方案。這種解決方案能夠提高性能并滿足以ZigBee為基礎(chǔ)的2.4 GHz ISM波段應用,并能滿足系統(tǒng)低成本、低功耗的要求。它結(jié)合一個高性能2.4 GHz DSSS(直接序列擴頻)射頻收發(fā)器核心和一顆工業(yè)級小巧高效的8051控制器。CC2430芯片需要很少的外圍部件配合就能實現(xiàn)信號的收發(fā)功能,且外設(shè)資源豐富。各個ZigBee終端節(jié)點主要是通過RS232/RS485與各設(shè)備(空調(diào)、UPS等)進行通信,采集各設(shè)備傳感器數(shù)據(jù)。
2.2 ARM9嵌入式系統(tǒng)

 


   IDU和嵌入式服務(wù)器采用的都是軟硬件可裁減的嵌入式系統(tǒng)。嵌入式設(shè)備主控器件采用ARM9處理器。本系統(tǒng)運用的是三星S3C2440,片上有很多的資源,集成了各種常用的接口,如串口、SPI、I2C、USB、LCD、COMS、CAMERA,A/D、JTAG和系統(tǒng)總線等。根據(jù)本系統(tǒng)的需要,裁減后硬件系統(tǒng)及接口的主要組成部分如圖2所示,主要包括微控制器、RTC晶振、電源電路、復位電路、看門狗、大容量Flash/SDRAM、系統(tǒng)狀態(tài)指示、以太網(wǎng)口、RS485、RS232、USB口、JTAG接口和A/D口。S3C2440是基于ARM920T處理內(nèi)核,具有低功耗、高度集成性特性,主頻400 MHz,最高533 MHz,這個工作頻率能夠使處理器輕松運行Windows CE,Linux等操作系統(tǒng)以及進行較為復雜的數(shù)據(jù)處理。選用64 MB SDRAM及256 MB Flash足夠滿足監(jiān)控數(shù)據(jù)存儲及運行Windows CE操作系統(tǒng)的要求。在存儲不足的情況下可采用外界存儲器,例如SD卡、U盤等設(shè)備。

3 軟件設(shè)計
3.1 ZigBee程序設(shè)計

  為了保證系統(tǒng)的可靠運行,必須選擇合適的網(wǎng)絡(luò)拓撲結(jié)構(gòu)。ZigBee標準支持3種主要的自組織無線網(wǎng)絡(luò)類型, 即星型結(jié)構(gòu)、網(wǎng)狀結(jié)構(gòu)和簇狀結(jié)構(gòu)[4]。本系統(tǒng)采用星型結(jié)構(gòu),星型拓撲結(jié)構(gòu)只存在一個FFD(Full Functional Device)節(jié)點,各個 RFD(Reduced Function Device)節(jié)點共享信道,一定時間內(nèi)只有一個RFD節(jié)點和FFD節(jié)點通信。本系統(tǒng)協(xié)調(diào)器與路由器均由FFD構(gòu)成,它們均有建立ZigBee網(wǎng)絡(luò)的能力。協(xié)調(diào)器與路由器傳遞數(shù)據(jù)是雙向的,協(xié)調(diào)器一方面收集終端節(jié)點的數(shù)據(jù)包并發(fā)給IDU,另一方面也將IDU從串口發(fā)來的控制信息發(fā)送到對應的節(jié)點,路由器的工作是負責協(xié)調(diào)器與終端節(jié)點之間數(shù)據(jù)傳遞。ZigBee程序流程圖如圖3所示。

3.2 WinCE及Web應用程序設(shè)計
    本系統(tǒng)后臺程序是基于WinCE/Win32上的應用程序,可在PC機和嵌入式計算機上部署。后臺采集程序、管理程序和服務(wù)器程序由Lazarus開發(fā)環(huán)境進行開發(fā)。Lazarus是一個基于Free Pascal的快速應用(RAD)的面向?qū)ο蟮腜ascal集成開發(fā)環(huán)境,不像Java致力于“一次編寫,到處運行”,Lazarus和Free Pascal則致力于“一次編寫,到處編譯”。由于對上述所有平臺有完全相同的編譯器,這意味著使用者不需要重新編碼,就可以為不同的平臺開發(fā)相同的產(chǎn)品。因此,編譯后可以部署在不同的核心控制器和操作系統(tǒng)上,為一次開發(fā)多方面應用提供了方便,為不同的部署方案提供了靈活性。基于Web的遠程直觀可視化瀏覽界面采用的是基于C#的Microsoft Silverlight平臺進行開發(fā)。Microsoft Silverlight是一個跨瀏覽器、跨客戶平臺的技術(shù),能夠設(shè)計、開發(fā)和發(fā)布有多媒體體驗與豐富交互的網(wǎng)絡(luò)交互程序,使整個界面具有很好的直觀性和良好的視覺效果。整個軟件系統(tǒng)構(gòu)架如圖4所示。

    整個軟件系統(tǒng)主要由四部分組成,數(shù)據(jù)采集終端(傳感服務(wù))、服務(wù)器端(中間件器服務(wù))、報警端(報警服務(wù))和Web界面(Web服務(wù))。四部分之間通過PHPRPC協(xié)議進行數(shù)據(jù)傳輸和交換。PHPRPC 是一個輕型的、安全的、跨網(wǎng)際的、跨語言的、跨平臺的、跨環(huán)境的、跨域的、支持復雜對象傳輸?shù)?、支持引用參?shù)傳遞的、支持內(nèi)容輸出重定向的、支持分級錯誤處理的、支持會話的、面向服務(wù)的高性能遠程過程調(diào)用協(xié)議。這使得彼此間的通信變得更加容易、方便、快速和穩(wěn)定。PHPRPC是建立在Socket之上的,出于一種類比的愿望,在一臺機器上運行的主程序,可以調(diào)用遠程另一套機器上的子程序,就像本地調(diào)用。它是一種C/S開發(fā)方法,開發(fā)效率高且可靠。比起Socket其實現(xiàn)過程簡單,只需要少量的語句便可以實現(xiàn)遠程調(diào)用,從而提高了開發(fā)的效率和系統(tǒng)運行的穩(wěn)定性及準確性。
    傳感器服務(wù),對于傳感器數(shù)據(jù)的采集是實時的,對每個設(shè)備的工作是獨立的。其流程圖如圖5(a)所示。中間件服務(wù)承擔著服務(wù)器的角色,是數(shù)據(jù)傳輸?shù)闹修D(zhuǎn)站,并且還負責對數(shù)據(jù)的檢查(數(shù)據(jù)和狀態(tài)是否達到報警值)、存儲和備份。其流程圖如圖5(b)所示。報警服務(wù),它只是負責對服務(wù)器傳來的報警信息進行報警。 其流程圖如圖5(c)所示。Web服務(wù)運用Microsoft Silverlight平臺進行開發(fā),它是微軟所發(fā)展的 Web前端應用程序開發(fā)解決方案,是微軟豐富型互聯(lián)網(wǎng)應用程序策略的主要應用程序開發(fā)平臺之一。能夠開發(fā)出具有專業(yè)圖形、音頻和視頻的Web應用程序,可達到界面直觀、豐富等效果。為了增強界面參數(shù)顯示的實時性,數(shù)據(jù)采集終端采集上報到服務(wù)器中,服務(wù)將把實時的數(shù)據(jù)保存在內(nèi)存當中。Web通過PHPRPC協(xié)議從服務(wù)器中調(diào)回實時數(shù)據(jù)時,不是通過服務(wù)器查詢數(shù)據(jù)庫得到,而是通過服務(wù)器內(nèi)存直接取回。這樣,通過內(nèi)存訪問的形式不僅減輕了服務(wù)器的壓力,同時也提高數(shù)據(jù)更新的實時性,提高了整個系統(tǒng)的性能。


4 系統(tǒng)的調(diào)試與運行
     本系統(tǒng)在某機房的支持下,投入調(diào)試運行,運行的性能達到了預期的要求。先開啟無線網(wǎng)絡(luò)協(xié)調(diào)處理器,然后開啟網(wǎng)絡(luò)路由節(jié)點和各個終端節(jié)點建立無線傳感網(wǎng)絡(luò),運行嵌入式服務(wù)器和IDU采集終端。通過PC機運行遠程Web界面,運行測試達到很好的實時性、快速性、穩(wěn)定性。
    通過投入機房運行實踐證明,無線傳器網(wǎng)絡(luò)技術(shù)可以很好地應用到機房監(jiān)控系統(tǒng)當中,而且具有很好的準確性、實時性、快速性和穩(wěn)定性。由Silverlight開發(fā)的Web界面具有很好地直觀性、富交互性和動畫性。為了提高ZigBee無線傳感網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臏蚀_率和機房的抗干擾能力,加大傳輸距離,可以采取天線放高、增大發(fā)射功率、提高接收靈敏度等措施。使用中繼模塊縮短傳輸距離可以很好地提高整體性能。不用2.4 GHz,而使用低頻率傳輸,可使穿透能力增大很多。
    ZigBee無線傳感網(wǎng)絡(luò)嵌入式技術(shù)應用領(lǐng)域愈來愈廣泛,硬件性能上也在不斷提升,不斷地在擴大應用領(lǐng)域。本系統(tǒng)的架構(gòu)可以很好地移植到其他監(jiān)控和數(shù)據(jù)采集系統(tǒng)等不同應用場合當中。
參考文獻
[1] 李念強,魏長智,潘建軍,等.數(shù)據(jù)采集技術(shù)與系統(tǒng)設(shè)計[M].北京:機械工業(yè)出版社,2009.
[2] 李淼,劉瀾濤,詹宏聃.遠程機房監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)[J].中國教育網(wǎng)絡(luò),2009(Z1):113-115.
[3] BEAUMONT S P. The SOC challenge[J]. IEEE Electronics & Communication Engineering Journal, 2001,13(6):234-235.
[4] 孫學巖.基于 Zigbee無線傳感器網(wǎng)絡(luò)的溫室測控系統(tǒng)[J].儀表技術(shù)與傳感器,2010(8):47-49.
[5] 趙展春.基于無線傳感器網(wǎng)絡(luò)的機房環(huán)境監(jiān)控系統(tǒng)實現(xiàn)[J].計算機工程與設(shè)計,2008,29(7):1869-1871.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。