文獻標識號: A
文章編號: 0258-7998(2012)01-0066-04
隨著無線傳感網絡、信息技術的迅猛發展,互聯網的迅速普及和嵌入式系統的廣泛應用,計算機及網絡技術已經滲透到了各行各業。整個社會對計算機信息系統的依賴在不斷地加深,信息傳輸更多采用網絡化與智能化。因而對于機房信息的實時性、安全性、穩定性和維護管理方面提出更高的要求。
ZigBee無線傳感網絡已經在很多方面得到了廣泛的應用,并且可達到運行可靠穩定。有些機房當中存在布線困難、擴展性和移植性差等問題。面對現有機房監控系統的弊端和局限性,為了保證機房的安全運行,減輕機房維護人員負擔,降低系統成本,希望能有一套基于無線傳感器網絡,安裝方便、運行穩定可靠、維護簡單、移植性好、可遠距離監控,同時具有經濟性的數據實時采集的機房環境監控系統。實現機房設備集中監控,監視各種設備的狀態及參數,可診斷設備部件運行情況,在發生異常狀況或故障時發出警報,并支持通過瀏覽器遠程監視設備運行的情況[1,2]。
1 系統構架
整個系統分布部署拓撲圖如圖1所示,大致可以劃分為五部分:ZigBee無線傳感網絡,數據采集終端IDU(Integrated Data Unit)、嵌入式服務器端、報警端、監控中心與遠程瀏覽站。
ZigBee無線傳感網絡主要負責對環境設備(如空調、漏水、溫濕度、UPS、電量儀等)數據參數進行采集,以無線的方式進行數據傳輸,通過ZigBee協調處理器節點把采集到的數據上傳到IDU。IDU主要負責對數據進行整合,上報到嵌入式服務器,同時, IDU也可以直接通過RS232/RS485等有線的方式接入環境設備采集數據。嵌入式服務器負責對采集到的數據進行處理、存儲、分析和執行報警動作。報警設備主要有短信報警、電話報警、聲光報警和郵件報警。監控中心與遠程瀏覽站負責對機房的集中管理,采集機房傳來的實時信息,并以表格和狀態圖的方式顯示在監控中心計算機屏幕上。管理員可以通過遠程瀏覽站以WEB形式監控設備中的狀態數據,也可以通過遠程發命令來操縱監控設備實施開關等動作。
2 硬件設計
硬件部分是本監控系統的重要組成部分之一,其指標參數及可靠性決定了整個系統的性能。為了監控系統的需要,硬件要做到體積小、價格低、監控參數精度高、可靠性高、功耗低等[2]。
2.1 ZigBee無線傳感器
ZigBee模塊核心選擇CC2430芯片,它是由Chipcon公司推出的實現嵌入式ZigBee應用的片上系統,是一顆真正的系統芯片(SoC)CMOS解決方案。這種解決方案能夠提高性能并滿足以ZigBee為基礎的2.4 GHz ISM波段應用,并能滿足系統低成本、低功耗的要求。它結合一個高性能2.4 GHz DSSS(直接序列擴頻)射頻收發器核心和一顆工業級小巧高效的8051控制器。CC2430芯片需要很少的外圍部件配合就能實現信號的收發功能,且外設資源豐富。各個ZigBee終端節點主要是通過RS232/RS485與各設備(空調、UPS等)進行通信,采集各設備傳感器數據。
2.2 ARM9嵌入式系統
IDU和嵌入式服務器采用的都是軟硬件可裁減的嵌入式系統。嵌入式設備主控器件采用ARM9處理器。本系統運用的是三星S3C2440,片上有很多的資源,集成了各種常用的接口,如串口、SPI、I2C、USB、LCD、COMS、CAMERA,A/D、JTAG和系統總線等。根據本系統的需要,裁減后硬件系統及接口的主要組成部分如圖2所示,主要包括微控制器、RTC晶振、電源電路、復位電路、看門狗、大容量Flash/SDRAM、系統狀態指示、以太網口、RS485、RS232、USB口、JTAG接口和A/D口。S3C2440是基于ARM920T處理內核,具有低功耗、高度集成性特性,主頻400 MHz,最高533 MHz,這個工作頻率能夠使處理器輕松運行Windows CE,Linux等操作系統以及進行較為復雜的數據處理。選用64 MB SDRAM及256 MB Flash足夠滿足監控數據存儲及運行Windows CE操作系統的要求。在存儲不足的情況下可采用外界存儲器,例如SD卡、U盤等設備。
3 軟件設計
3.1 ZigBee程序設計
為了保證系統的可靠運行,必須選擇合適的網絡拓撲結構。ZigBee標準支持3種主要的自組織無線網絡類型, 即星型結構、網狀結構和簇狀結構[4]。本系統采用星型結構,星型拓撲結構只存在一個FFD(Full Functional Device)節點,各個 RFD(Reduced Function Device)節點共享信道,一定時間內只有一個RFD節點和FFD節點通信。本系統協調器與路由器均由FFD構成,它們均有建立ZigBee網絡的能力。協調器與路由器傳遞數據是雙向的,協調器一方面收集終端節點的數據包并發給IDU,另一方面也將IDU從串口發來的控制信息發送到對應的節點,路由器的工作是負責協調器與終端節點之間數據傳遞。ZigBee程序流程圖如圖3所示。
3.2 WinCE及Web應用程序設計
本系統后臺程序是基于WinCE/Win32上的應用程序,可在PC機和嵌入式計算機上部署。后臺采集程序、管理程序和服務器程序由Lazarus開發環境進行開發。Lazarus是一個基于Free Pascal的快速應用(RAD)的面向對象的Pascal集成開發環境,不像Java致力于“一次編寫,到處運行”,Lazarus和Free Pascal則致力于“一次編寫,到處編譯”。由于對上述所有平臺有完全相同的編譯器,這意味著使用者不需要重新編碼,就可以為不同的平臺開發相同的產品。因此,編譯后可以部署在不同的核心控制器和操作系統上,為一次開發多方面應用提供了方便,為不同的部署方案提供了靈活性。基于Web的遠程直觀可視化瀏覽界面采用的是基于C#的Microsoft Silverlight平臺進行開發。Microsoft Silverlight是一個跨瀏覽器、跨客戶平臺的技術,能夠設計、開發和發布有多媒體體驗與豐富交互的網絡交互程序,使整個界面具有很好的直觀性和良好的視覺效果。整個軟件系統構架如圖4所示。
整個軟件系統主要由四部分組成,數據采集終端(傳感服務)、服務器端(中間件器服務)、報警端(報警服務)和Web界面(Web服務)。四部分之間通過PHPRPC協議進行數據傳輸和交換。PHPRPC 是一個輕型的、安全的、跨網際的、跨語言的、跨平臺的、跨環境的、跨域的、支持復雜對象傳輸的、支持引用參數傳遞的、支持內容輸出重定向的、支持分級錯誤處理的、支持會話的、面向服務的高性能遠程過程調用協議。這使得彼此間的通信變得更加容易、方便、快速和穩定。PHPRPC是建立在Socket之上的,出于一種類比的愿望,在一臺機器上運行的主程序,可以調用遠程另一套機器上的子程序,就像本地調用。它是一種C/S開發方法,開發效率高且可靠。比起Socket其實現過程簡單,只需要少量的語句便可以實現遠程調用,從而提高了開發的效率和系統運行的穩定性及準確性。
傳感器服務,對于傳感器數據的采集是實時的,對每個設備的工作是獨立的。其流程圖如圖5(a)所示。中間件服務承擔著服務器的角色,是數據傳輸的中轉站,并且還負責對數據的檢查(數據和狀態是否達到報警值)、存儲和備份。其流程圖如圖5(b)所示。報警服務,它只是負責對服務器傳來的報警信息進行報警。 其流程圖如圖5(c)所示。Web服務運用Microsoft Silverlight平臺進行開發,它是微軟所發展的 Web前端應用程序開發解決方案,是微軟豐富型互聯網應用程序策略的主要應用程序開發平臺之一。能夠開發出具有專業圖形、音頻和視頻的Web應用程序,可達到界面直觀、豐富等效果。為了增強界面參數顯示的實時性,數據采集終端采集上報到服務器中,服務將把實時的數據保存在內存當中。Web通過PHPRPC協議從服務器中調回實時數據時,不是通過服務器查詢數據庫得到,而是通過服務器內存直接取回。這樣,通過內存訪問的形式不僅減輕了服務器的壓力,同時也提高數據更新的實時性,提高了整個系統的性能。
4 系統的調試與運行
本系統在某機房的支持下,投入調試運行,運行的性能達到了預期的要求。先開啟無線網絡協調處理器,然后開啟網絡路由節點和各個終端節點建立無線傳感網絡,運行嵌入式服務器和IDU采集終端。通過PC機運行遠程Web界面,運行測試達到很好的實時性、快速性、穩定性。
通過投入機房運行實踐證明,無線傳器網絡技術可以很好地應用到機房監控系統當中,而且具有很好的準確性、實時性、快速性和穩定性。由Silverlight開發的Web界面具有很好地直觀性、富交互性和動畫性。為了提高ZigBee無線傳感網絡數據傳輸的準確率和機房的抗干擾能力,加大傳輸距離,可以采取天線放高、增大發射功率、提高接收靈敏度等措施。使用中繼模塊縮短傳輸距離可以很好地提高整體性能。不用2.4 GHz,而使用低頻率傳輸,可使穿透能力增大很多。
ZigBee無線傳感網絡嵌入式技術應用領域愈來愈廣泛,硬件性能上也在不斷提升,不斷地在擴大應用領域。本系統的架構可以很好地移植到其他監控和數據采集系統等不同應用場合當中。
參考文獻
[1] 李念強,魏長智,潘建軍,等.數據采集技術與系統設計[M].北京:機械工業出版社,2009.
[2] 李淼,劉瀾濤,詹宏聃.遠程機房監控系統的設計與實現[J].中國教育網絡,2009(Z1):113-115.
[3] BEAUMONT S P. The SOC challenge[J]. IEEE Electronics & Communication Engineering Journal, 2001,13(6):234-235.
[4] 孫學巖.基于 Zigbee無線傳感器網絡的溫室測控系統[J].儀表技術與傳感器,2010(8):47-49.
[5] 趙展春.基于無線傳感器網絡的機房環境監控系統實現[J].計算機工程與設計,2008,29(7):1869-1871.