文獻標識號: A
文章編號: 0258-7998(2012)01-0066-04
隨著無線傳感網(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.