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