基于SMS通信的UPS監(jiān)控系統(tǒng)設(shè)計
1.3 GSM通信模塊
目前,許多GSM通信設(shè)備廠商都生產(chǎn)GSM通信模塊,如Wavecom公司的WM02系列和兩門子公司的TC35系列,這些模塊的功能、用法基本都相同。本系統(tǒng)在前期開發(fā)時使用Wavecom公司的Wismo2c模塊,后期投入使用時使用西門子公司的TC35I模塊。這2種模塊都是符合E-GSM900/GSM1800(或E-GSM900/GSM1900)標準的第2代無線雙頻通信模塊,并且符合GSM 07.07與07.05的AT控制命令。
2.2 監(jiān)控中心的軟件設(shè)計
2.2.1 數(shù)據(jù)傳輸?shù)膸Y(jié)構(gòu)
數(shù)據(jù)傳輸需要遵循一定的協(xié)議,也就是要規(guī)定通信的幀結(jié)構(gòu)。本系統(tǒng)使用的數(shù)據(jù)幀結(jié)構(gòu)有以下兩類:
a) 監(jiān)控中心發(fā)送數(shù)據(jù)給遠程監(jiān)控點的數(shù)據(jù)幀結(jié)構(gòu),如圖3所示。其中:命令類型是用來區(qū)分發(fā)送給遠程監(jiān)控點的命令是設(shè)置命令還是查詢命令,如果是設(shè)置命令,開始字和校驗字就不是必須的。
b) 遠程監(jiān)控點發(fā)送數(shù)據(jù)給監(jiān)控中心和值班人員的數(shù)據(jù)幀結(jié)構(gòu),如圖4所示。其中:返回的數(shù)據(jù)類型有3種:第1種是返回查詢的狀態(tài)信息;第2種是返回設(shè)置命令的確認信息,沒有開始字和校驗字;第3種是返回報警信息,如果是報警信息,則把數(shù)據(jù)發(fā)送給監(jiān)控中心的同時,還將發(fā)送給值班人員。
2.2.2 監(jiān)控中心的程序設(shè)計
在本系統(tǒng)中,監(jiān)控中心采用VB語言進行編程,PC機與GSM通信模塊之間通過AT指令進行通信。圖5是監(jiān)控中心程序流程圖。
主程序通過按鈕選擇分成初始化設(shè)置子程序、發(fā)送查詢命令子程序、接收數(shù)據(jù)子程序和修改用戶信息子程序4個部分。
初始化設(shè)置子程序首先通過串口發(fā)送AT指令對監(jiān)控中心的GSM通信模塊初始化,其次對遠程監(jiān)控點初始化。初始化遠程監(jiān)控點命令發(fā)送后,程序會自動轉(zhuǎn)向接收數(shù)據(jù)子程序模塊,等待接收確認信息,如果確認信息是錯誤的,則可重新發(fā)送初始化命令。對遠程監(jiān)控點的設(shè)置只要一次,不必每次運行軟件都設(shè)置。
發(fā)送查詢命令子程序根據(jù)UPS的類型分成查詢單進單出UPS子程序、查詢?nèi)M單出UPS子程序和查詢?nèi)M三出UPS子程序3部分。主要功能是發(fā)送查詢命令給遠程監(jiān)控點,以獲取需要的狀態(tài)信息。同樣,發(fā)送命令后,轉(zhuǎn)向接收數(shù)據(jù)子程序,等待數(shù)據(jù)返回。
接收數(shù)據(jù)子程序主要用于接收遠程監(jiān)控點返回的數(shù)據(jù)。UPS可能隨時發(fā)生故障,因此,在不進行其他操作的情況下,接收數(shù)據(jù)子程序總是運行的,這樣可及時得到遠程監(jiān)控點返回的報警信息。接收數(shù)據(jù)子程序會把接收到的有用信息存進數(shù)據(jù)庫,作為歷史記錄。
修改用戶信息子程序主要用來設(shè)置打開此軟件的用戶名和密碼,防止不法人員登錄進行破壞性操作。
由于每臺UPS都配備一張SIM卡,因此本系統(tǒng)通過SIM卡來識別UPS。在此系統(tǒng)中,事先把SIM卡號碼存進數(shù)據(jù)庫,通過循環(huán)的方式可以同時對多臺UPS進行設(shè)置和發(fā)送查詢命令,給管理帶來極大的方便。本系統(tǒng)采用單字節(jié)讀取串口緩沖區(qū),如果短消息到來而系統(tǒng)又在發(fā)送數(shù)據(jù),則先把短消息編號存進數(shù)組,等空閑之時再根據(jù)短消息編號自動去讀取短消息,從而實現(xiàn)群發(fā)群收的功能。由于SIM卡存儲的短消息數(shù)量有限,因此數(shù)據(jù)一旦存進數(shù)據(jù)庫,程序就自動發(fā)送命令把SIM卡上的短消息刪除。
光控開關(guān)相關(guān)文章:光控開關(guān)原理 聲光控開關(guān)相關(guān)文章:聲光控開關(guān)原理
評論