0 引言
隨著信息化程度的不斷提高,機(jī)房計(jì)算機(jī)系統(tǒng)設(shè)備的數(shù)量與日俱增,其環(huán)境設(shè)備也日益增多,機(jī)房環(huán)境設(shè)備(如供配電系統(tǒng)、UPS電源、空調(diào)、消防系統(tǒng)、保安系統(tǒng)等)必須時(shí)時(shí)刻刻為計(jì)算機(jī)系統(tǒng)提供正常的運(yùn)行環(huán)境。因此,對(duì)機(jī)房環(huán)境實(shí)施監(jiān)控就顯得尤為重要。而傳統(tǒng)的機(jī)房多采用人工值守的監(jiān)控方式,費(fèi)時(shí)費(fèi)力,且往往達(dá)不到實(shí)時(shí)、全天候、全方位監(jiān)控的目的。因此,便捷的、可靠的、安全的機(jī)房監(jiān)控系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)顯得尤為重要。
機(jī)房智能監(jiān)控系統(tǒng)主要是對(duì)機(jī)房設(shè)備的運(yùn)行狀態(tài)、溫度、濕度、潔凈度以及供電的電壓、電流、頻率、配電系統(tǒng)的開(kāi)關(guān)狀態(tài)、測(cè)漏系統(tǒng)等進(jìn)行實(shí)時(shí)監(jiān)控并記錄歷史數(shù)據(jù),從而實(shí)現(xiàn)對(duì)機(jī)房各項(xiàng)環(huán)境參數(shù)的實(shí)時(shí)監(jiān)控功能,對(duì)存在的安全隱患能夠及時(shí)報(bào)警,并自動(dòng)采取對(duì)應(yīng)的應(yīng)急措施,為機(jī)房高效的管理和安全運(yùn)行提供有力保障。
1 系統(tǒng)框架設(shè)計(jì)
中心機(jī)房智能控制器采用嵌入式操作系統(tǒng),內(nèi)嵌數(shù)據(jù)庫(kù),采用RS485總線接口。嵌入式操作系統(tǒng)穩(wěn)定可靠、可擴(kuò)展性強(qiáng);通過(guò)嵌入式系統(tǒng)中內(nèi)嵌的數(shù)據(jù)庫(kù),可以方便地對(duì)采集的數(shù)據(jù)進(jìn)行歸類、分析及處理:RS485總線接口通信距離遠(yuǎn)、穩(wěn)定,可以支持32個(gè)節(jié)點(diǎn)的數(shù)據(jù)傳輸。
中心機(jī)房智能控制器采用B/S架構(gòu),內(nèi)嵌Web服務(wù)器。管理員可以通過(guò)上位機(jī)直接訪問(wèn)嵌入式集成智能控制器的Web服務(wù)器,直接通過(guò)網(wǎng)頁(yè)對(duì)智能控制器中的數(shù)據(jù)進(jìn)行查看和修改,從而大大減少了用戶的工作量及成本。Web服務(wù)器可以圖表的形式顯示用戶需要查看的數(shù)據(jù),并可以對(duì)于處在不同范圍內(nèi)的數(shù)據(jù)采用不同的顏色進(jìn)行顯示,以示區(qū)別。顯示內(nèi)容直觀、便捷、美觀,增強(qiáng)了系統(tǒng)的用戶體驗(yàn)。
圖1所示是中心機(jī)房控制系統(tǒng)結(jié)構(gòu)圖。本系統(tǒng)通過(guò)各類傳感器實(shí)時(shí)監(jiān)測(cè)和采集機(jī)房環(huán)境數(shù)據(jù),并將這些數(shù)據(jù)反饋給中心機(jī)房,以便工作人員對(duì)采集到的數(shù)據(jù)進(jìn)行分析和評(píng)估。一旦數(shù)據(jù)(例如溫度、水壓)超過(guò)了預(yù)設(shè)的限定值,智能控制器集成的GPRS模塊就會(huì)自動(dòng)發(fā)送報(bào)警信息到機(jī)房管理人員的手機(jī)上,機(jī)房管理人員就能根據(jù)報(bào)警信息追蹤到問(wèn)題現(xiàn)場(chǎng),以便及時(shí)采取應(yīng)對(duì)措施。
2 系統(tǒng)硬件平臺(tái)設(shè)計(jì)
圖2所示是中心機(jī)房智能控制器硬件框圖。本系統(tǒng)中心機(jī)房智能控制器的硬件主要由11個(gè)模塊組成:CPU處理器模塊、內(nèi)存模塊、NAND FLASH模塊、NOR FLASH模塊、電源模塊、GPRS模塊、RS485總線接口、以太網(wǎng)接口、USB接口、擴(kuò)展串口、預(yù)留GPIO接口。其中,CPU處理器模塊、內(nèi)存模塊、NAND FLASH模塊、NOR FLASH模塊集成在mini6410核心板上;自制外圍板包含有DM9000網(wǎng)卡模塊、3路USB擴(kuò)展接口模塊、8路A/D采集模塊、8路數(shù)字信號(hào)采集模塊、兩路RS485接口模塊以及擴(kuò)展的兩路串口模塊。
2.1 網(wǎng)卡模塊
網(wǎng)卡模塊采用DM9000網(wǎng)卡芯片,可以自適應(yīng)10/100M網(wǎng)絡(luò),RJ45連接頭內(nèi)部已經(jīng)包含了耦合線圈,因此不必另接網(wǎng)絡(luò)變壓器,而是使用普通的網(wǎng)線直連路由器或者交換機(jī)即可實(shí)現(xiàn)以太網(wǎng)的接口。
2.2 USB模塊
USB模塊對(duì)mini6410核心板的USB接口進(jìn)行了外擴(kuò),外擴(kuò)的USB接口可以接USB攝像頭、USB鍵盤(pán)、USB鼠標(biāo)、優(yōu)盤(pán)等常見(jiàn)的USB外設(shè),還可以接USBHub進(jìn)行擴(kuò)展,各個(gè)OS均已經(jīng)自帶USBHub驅(qū)動(dòng),因此不必另外編寫(xiě)或配置。本系統(tǒng)的USB接口外接GPRS模塊,因此,可將異常的監(jiān)測(cè)結(jié)果實(shí)時(shí)通過(guò)外接的GPRS模塊以短信的形式發(fā)送到管理員的手機(jī)上。
2.3 模擬信號(hào)采集模塊
通過(guò)模擬信號(hào)采集模塊,可將溫濕度傳感器輸出的模擬信號(hào)經(jīng)過(guò)限幅、濾波等調(diào)整后,輸入給S3C6410的A/D轉(zhuǎn)換通道,同時(shí)將模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)進(jìn)行分析和處理。
2.4 數(shù)字信號(hào)采集模塊
數(shù)字信號(hào)采集模塊,可將數(shù)字信號(hào)經(jīng)過(guò)光耦進(jìn)行限幅處理后,經(jīng)鎖存器傳遞給S3C6410的中斷輸入引腳,以便CPU能及時(shí)地對(duì)相應(yīng)的數(shù)字信號(hào)進(jìn)行分析、處理和響應(yīng)。
2.5 RS485接口
RS485接口組成的半雙工網(wǎng)絡(luò)為兩線制,多采用屏蔽雙絞線傳輸。接線方式為總線式拓?fù)浣Y(jié)構(gòu),在同一總線上最多可以掛接32個(gè)節(jié)點(diǎn)。在RS485通信網(wǎng)絡(luò)中采用的是主從通信方式,可同時(shí)與多臺(tái)智能設(shè)備進(jìn)行通信,如UPS設(shè)備、配電柜等。
2.6 串口模塊
S3C6410共引出有4個(gè)串口,其中兩路串口轉(zhuǎn)RS485供智能設(shè)備通信,余下兩路串口轉(zhuǎn)接成RS232接口,一路外接撥號(hào)器,余下一路為調(diào)試預(yù)留接口。
3 系統(tǒng)軟件平臺(tái)設(shè)計(jì)
圖3所示是本系統(tǒng)中的B/S架構(gòu)框圖。本系統(tǒng)采用B/S(Browser/Server)結(jié)構(gòu),即瀏覽器和服務(wù)器結(jié)構(gòu)。系統(tǒng)分為表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)庫(kù)層三層結(jié)構(gòu)。表示層位于客戶端,即Internet Explore等Web瀏覽器,用于在客戶端瀏覽器中顯示用戶界面,該層可以調(diào)用由業(yè)務(wù)邏輯層提供的業(yè)務(wù)方法;業(yè)務(wù)邏輯層是系統(tǒng)核心部分,主要擔(dān)當(dāng)業(yè)務(wù)的邏輯處理任務(wù),包括處理表示層的數(shù)據(jù)請(qǐng)求,在為表示層提供業(yè)務(wù)功能的同時(shí),通過(guò)數(shù)據(jù)庫(kù)層來(lái)訪問(wèn)數(shù)據(jù)庫(kù);數(shù)據(jù)庫(kù)層位于底層,主要用來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)的交互,包括查詢、插入、修改和刪除數(shù)據(jù)庫(kù)中數(shù)據(jù)的功能。
3.1 嵌入式系統(tǒng)(Linux)
嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,適用于應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗有嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。
本系統(tǒng)采用自裁剪的Linux2.6.38內(nèi)核+UBIFS文件系統(tǒng)來(lái)構(gòu)建操作系統(tǒng),并且為數(shù)字信號(hào)采集、模擬信號(hào)采集、繼電器控制等模塊分別編寫(xiě)了GPIO及A/D驅(qū)動(dòng)程序。Linux作為主流的嵌入式操作系統(tǒng)具有以下優(yōu)勢(shì):
(1)小巧而功能完善的內(nèi)核;
(2)充分滿足硬件設(shè)備的實(shí)時(shí)性要求;
(3)具有很高的適應(yīng)勝和可靠性;
(4)具有成熟的開(kāi)發(fā)工具。
3.2 嵌入式數(shù)據(jù)庫(kù)(SOLite)
嵌入式數(shù)據(jù)庫(kù)可用于多種嵌入式操作系統(tǒng)。它將數(shù)據(jù)庫(kù)與操作系統(tǒng)的具體應(yīng)用集成在一起,由程序直接調(diào)用相應(yīng)的API去實(shí)現(xiàn)對(duì)數(shù)據(jù)的存取操作。嵌入式數(shù)據(jù)庫(kù)可以解決嵌入式系統(tǒng)內(nèi)數(shù)據(jù)處理量不斷增加、數(shù)據(jù)操作效率要求較高等問(wèn)題。
本系統(tǒng)選用的是嵌入式數(shù)據(jù)庫(kù)SQLite。SQLite是一款專門(mén)為嵌入式設(shè)備設(shè)計(jì)的輕型文件數(shù)據(jù)庫(kù),它占用資源非常低,在嵌入式設(shè)備中,只需要幾百KB的內(nèi)存就足夠了,并且能夠支持Windows/Linux/Unix等主流操作系統(tǒng),同時(shí)能夠跟很多程序語(yǔ)言相結(jié)合,比如C&C++、C#、PHP和Java等。
3.3 嵌入式Web服務(wù)器(apache)
嵌入式Web服務(wù)器可以對(duì)遠(yuǎn)程設(shè)備進(jìn)行監(jiān)控,用戶可通過(guò)網(wǎng)絡(luò)遠(yuǎn)程訪問(wèn)Web服務(wù)器來(lái)實(shí)現(xiàn)數(shù)據(jù)的采集和歷史數(shù)據(jù)的查詢,也可以通過(guò)各種接口對(duì)遠(yuǎn)程設(shè)備進(jìn)行控制,從而實(shí)現(xiàn)遠(yuǎn)程監(jiān)控,還可以向監(jiān)控現(xiàn)場(chǎng)發(fā)送指令。此外,也可以根據(jù)需要添加新的控制功能,而無(wú)需對(duì)Web眼務(wù)器的框架進(jìn)行大的改動(dòng)。
通過(guò)移植apache web服務(wù)器和PHP運(yùn)行環(huán)境,本系統(tǒng)可獨(dú)立運(yùn)行支持PHP語(yǔ)言的Web服務(wù)器,以方便用戶通過(guò)瀏覽器查看所有監(jiān)控?cái)?shù)據(jù)及報(bào)警情況。至此,基于B/S架構(gòu)的嵌入式系統(tǒng)已搭建完成。
4 系統(tǒng)應(yīng)用程序設(shè)計(jì)
本系統(tǒng)所用驅(qū)動(dòng)全部裁剪自內(nèi)核,基于驅(qū)動(dòng)的應(yīng)用程序及數(shù)據(jù)庫(kù)、apache服務(wù)器均采用開(kāi)機(jī)自運(yùn)行的方式啟動(dòng)。因此,初始化時(shí)只需簡(jiǎn)單的網(wǎng)絡(luò)配置,后期系統(tǒng)上電即可使用,數(shù)據(jù)庫(kù)中數(shù)據(jù)的管理、維護(hù)均通過(guò)網(wǎng)頁(yè)完成,操作簡(jiǎn)捷、方便。
4.1 A/D采集程序
對(duì)采集到的模擬信號(hào),通過(guò)A/D轉(zhuǎn)換,并根據(jù)網(wǎng)頁(yè)的配置,可對(duì)數(shù)據(jù)進(jìn)行等比例計(jì)算,同時(shí)對(duì)計(jì)算的結(jié)果進(jìn)行分析比較,以將波動(dòng)較大的數(shù)據(jù)定時(shí)寫(xiě)入數(shù)據(jù)庫(kù),也可以對(duì)超過(guò)臨界值的數(shù)據(jù)進(jìn)行報(bào)警處理。
4.2 數(shù)字信號(hào)采集程序
數(shù)字信號(hào)采集程序與A/D采集程序的處理流程類似,也是對(duì)采集到的數(shù)字信號(hào)進(jìn)行處理,并將有變化的數(shù)據(jù)寫(xiě)入數(shù)據(jù)庫(kù),對(duì)超過(guò)預(yù)設(shè)值的數(shù)據(jù)進(jìn)行報(bào)警處理。
4.3 智能設(shè)備通信程序
本系統(tǒng)與智能設(shè)備的通信主要通過(guò)RS485模塊,采用MODBUS協(xié)議,對(duì)常用的設(shè)備,智能設(shè)備通信程序封裝了對(duì)應(yīng)的協(xié)議結(jié)構(gòu),并對(duì)需要檢測(cè)的數(shù)據(jù)進(jìn)行計(jì)算處理,同時(shí)將有波動(dòng)的數(shù)據(jù)寫(xiě)入數(shù)據(jù)庫(kù),對(duì)超過(guò)預(yù)設(shè)值的數(shù)據(jù)進(jìn)行報(bào)警處理。
4. 4 看門(mén)狗程序
通過(guò)系統(tǒng)中的看門(mén)狗應(yīng)用程序可以大大增加軟件系統(tǒng)的可靠性。當(dāng)程序出現(xiàn)異常時(shí),看門(mén)狗程序能夠迅速捕獲到異常,并且快速重啟系統(tǒng)。
4.5 報(bào)警監(jiān)控程序
本系統(tǒng)主要是監(jiān)控機(jī)房的各項(xiàng)指標(biāo),在指標(biāo)超過(guò)安全范圍時(shí)發(fā)出警報(bào),以保證機(jī)房數(shù)據(jù)、信息等重要資源的安全。報(bào)警分為頁(yè)面告警、短信報(bào)警、電話報(bào)警、蜂鳴器告警等四種,用戶可以根據(jù)需求進(jìn)行裁剪。其中,短信報(bào)警采用3G模塊進(jìn)行報(bào)警,電話報(bào)警則采用電話撥號(hào)器SMS報(bào)警。
5 結(jié)語(yǔ)
機(jī)房監(jiān)控系統(tǒng)廣泛應(yīng)用于各行業(yè)領(lǐng)域的監(jiān)控,確保機(jī)房設(shè)備的穩(wěn)定運(yùn)行,提高機(jī)房管理的安全性能和可靠程度,實(shí)現(xiàn)機(jī)房的科學(xué)管理?;贐/S架構(gòu)的機(jī)房智能監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),可將Web服務(wù)器移植到嵌入式設(shè)備,因而操作簡(jiǎn)單,能夠全天候地對(duì)機(jī)房設(shè)備的運(yùn)行狀態(tài)、溫度、濕度、潔凈度、供電的電壓、電流、頻率、配電系統(tǒng)的開(kāi)關(guān)狀態(tài)等進(jìn)行實(shí)時(shí)監(jiān)控。該系統(tǒng)一方面可以記錄各項(xiàng)歷史數(shù)據(jù),能夠方便用戶對(duì)各項(xiàng)數(shù)據(jù)進(jìn)行分析、判斷;另一方面,可實(shí)現(xiàn)對(duì)機(jī)房各項(xiàng)環(huán)境參數(shù)的實(shí)時(shí)監(jiān)控功能,對(duì)存在的安全隱患能夠及時(shí)報(bào)警,并采取對(duì)應(yīng)的應(yīng)急措施,為機(jī)房高效的管理和安全運(yùn)營(yíng)提供有力的保證。