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