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