摘 要 本文在研究艾默生UPS接口協議的基礎上,通過和UPS進行通訊,獲取UPS的狀態信息,設計并開發出一套能夠獲取UPS實時狀態數據的監視系統。
【關鍵詞】艾默生UPS 狀態監視 數據采集
本文主要針對艾默生UPS狀態信息的采集與監視進行研究,并對監控信號通訊協議進行分析,開發出艾默生UPS狀態監視系統。本文闡述了艾默生UPS狀態監視系統開發的三個主要研究方面:
(1)UPS的主要結構;
(2)通過對監控信號通訊協議的分析找到UPS的狀態信息的采集點,以及對于采集到的狀態信息如何解碼;
(3)監控系統的軟件設計。
1 艾默生UPS的結構
如圖1所示,UL33系列 UPS的結構主要包括:REC(整流模塊)和INV(逆變模塊)組成的 交流- 直流- 交流變換主回路,旁路靜態開關, Q3 BP(維修旁路空開),TR2(輸出隔離變壓器),逆變靜態開關,蓄電池組以及Q1(輸入),Q5(輸出空開)等。
2 監控信號通訊協議分析
UPS有RS232的串口用于通訊,可以將監控終端通過串口和UPS相連,采用詢問應答的方式進行通訊,監控終端向UPS每發送一次命令信息,UPS向監控終端返回一個應答信息。通訊信息的基本格式如表1,基本格式的注解見表2。
其中CID1為控制標識碼,對于UPS該碼值為2AH,CID2為命令信息,對于監控終端向UPS發出的詢問信息來說,CID2的值表示監控終端詢問的項目,UPS收到監控終端的詢問信息后,再根據CID2值所反應的詢問項目作出相應的應答。
例如當監控終端發出的命令信息中CID2的值為41H時(如表3),表示監控終端想獲取模擬量量化數據,然后UPS再向監控終端發出響應信息(如表4),并在響應信息中以特定的格式包含模擬量量化數據的信息(如表5)。
DATAINFO由RTN GROUP,DATAFLAG與DATAF組成,RTN GROUP是與COMMAND GROUP對應一致的,DATAF為UPS遙測量內容。
遙測內容見表5。
例如:當監控終端向UPS發送命令信息7E 20 01 40 41 E002 01 FD3C 0D時,表示詢問UPS的系統模擬量量化數據。當UPS收到該條命令信息后會以“表4相應信息”中的格式向監控終端返回一條應答信息。
在基本格式中除SOI和EOI這兩項是直接以十六進制解釋(SOI=7EH,EOI=0DH),十六進制傳輸外,其余的項目都是以十六進制解釋,然后以十六進制轉ASCII碼的方式進行傳輸,每個字節用兩個ASCII碼表示,即低四位用一個ASCII碼表示,高四位用一個ASCII碼表示。例如: CID2=4BH,傳輸時先傳送高位“4”的 ASCII碼34H,再傳送低位“B” 的 ASCII碼42H。所以對該應答碼解碼,全部用十六進制解釋后的應答解碼如表6。
其信息長度:96個ASCI碼
然后從DATAINFO信息中按照表5中的格式依次解析出“交流輸入相電壓A”、“交流輸入相電壓B”、“交流輸入相電壓C”、“交流輸出相電壓A”、“交流輸出相電壓B”、“交流輸出相電壓C”、……等等變量的浮點值。
通過以上分析可知:按照UPS監控信號的通信協議,可以編寫監控軟件與UPS進行通訊,從而獲取UPS的應答信息,然后根據通訊協議編寫解碼模塊對收到的應答信息進行解碼,即可獲得UPS的狀態信息。
3 軟件設計
軟件選用C#語言進行編程,分為三個主要的功能模塊:
3.1 詢問模塊
該模塊對UPS發送詢問命令信息,把需要發送的命令放入一個數組中,然后循環從數組中取出命令信息進行發送。
3.2 接收和解碼模塊
該模塊對收到的來自UPS的應答信息進行接收和解碼,得到相應的UPS參數。
3.3 |UI模塊
該模塊把解碼后得到的UPS參數在界面中顯示出來。
軟件的顯示界面如圖2所示。
4 結語
本文選用C#語言進行編程,通過對艾默生UPS通訊協議的研究,設計并開發出一套艾默生UPS狀態監視系統。可以在一臺普通電腦上安裝該軟件,利用串口連接UPS就能很方便地查看UPS設備運行狀況。
參考文獻
[1]廖錚 SELEX雷達狀態監視系統的設計[J].科學時代,2015(05).
[2]UL33后臺協議V150(客戶版).
作者單位
中南空管局技術保障中心 廣東省廣州市 510405