1、問題的提出 通信電源是通信網絡的動力基礎。隨著我國電信事業的迅速發展,通信網絡規模的不斷擴大,需要操作與維護的設備種類和數量大幅度提高,設備的技術含量和復雜度也越來越高,以前的人工監測方式已無法滿足正常的工作要求。上世紀90年代初原郵電部提出了對通信電源設備及環境進行集中監控的要求,即通過對通信電源及環境進行遙測、遙信和遙控,最終實現少人值守或無人值守,以提高設備維護質量,降低運行維護費用,同時保證系統處于良好的運行工作狀態,從而大幅度提高整體運行效率,提高通信質量及電源系統的管理水平。 近年來,隨著計算機互聯網絡的迅速發展,通信與計算機互相促進,越來越多的智能通信設備在通信局站投入使用,為通信電源的集中監控和科學管理打下了良好的基礎。通過這些智能設備所提供的通信接口(如串口服務器)直接通過Internet將其接入通信電源集中監控管理系統,可實時獲取設備運行的各種參數和實時數據,發送遙控命令,進行參數設置,同時獲取設備的告警信息和運行狀態,而不必再加額外的傳感器、變送器和控制器,但這一切都需要精簡高效的通信協議支持。 2、監控系統組成和體系結構 2.1監控系統的基本組成和結構 電源設備通過協議轉換器將采集到的數據傳到監控中心,監控中心再將數據存入數據庫,以方便隨時查詢。監控系統的組成如圖1所示。 圖1監控系統的組成 2.2監控系統的網絡結構 通信電源集中監控系統是由不同層次、不同功能的計算機和通信設備組成的一個計算機網絡,采用Internet的數據傳輸模式,監控中心對各支局進行不間斷的巡檢,向串口服務器發送數據采集、遙測和遙控指令,串口服務器接受指令后將各監控模塊采集的設備運行的各種參數和實時數據轉化為服從TCP/IP協議的數據,發送回監控中心,存入數據庫服務器以支持遠程數據瀏覽和查詢及數據統計工作,如設備出現故障可自動報警,其監控網絡結構如圖2所示。 圖2監控網絡結構 2.3監控系統的軟件結構 通訊電源監控系統的界面如圖3所示,其模塊組成如圖4所示。 圖3 通訊電源監控系統的主界面 圖4 通訊電源監控系統的功能模塊 基礎設定模塊是用于人員的權限設置,監控中心和各局站的參數設置;實時監控模塊主要是監測電源相關運行數據,例如電流、電壓等,設備出現故障可進行聲音和圖像告警;數據采集模塊是完成通信電源監測數據的采集并將其寫入數據庫;數據庫維護模塊則是完成數據庫的管理;曲線圖表模塊是采用曲線的方式顯示通信電源在某一段時間范圍的實時數據,如電壓、電流的變動情況;數據查詢模塊可根據用戶要求查詢通信電源的實時運行數據、告警信息、遙控命令、月統計和值班狀況等信息,并可輸出相關報表。 3、通信協議設計與實現 二十一世紀是一個以網絡為核心的信息時代,TCP/IP Internet協議簇已經成為計算機工業中開放系統互聯的事實上的標準。 3.1監控系統通信協議要求 監控系統的底層由硬件組成,為了更好的傳輸數據,將二進制數據轉換為網絡數據流,這一過程由串口服務器完成。 監控系統智能設備接入方式主要有直接接入方式和協議轉換器接入方式。協議轉換器簡化監控系統前端處理過程,提高系統總體實時性。本系統采用的協議轉換器即為串口服務器。 監控系統通訊協議對系統的性能影響非常大。制定協議主要考慮對監控量的數量和類別的要求;對實時性的要求;對可靠性的要求;對協議的可擴充性、兼容性的要求;對適用性的要求。通訊協議要無二義性,通訊協議必須能夠提供可靠的、高效的通訊。 3.2通信協議的設計 為了統一智能設備通訊協議,方便接入監控系統,原電信總局于1999年頒布了《通信局(站)電源、空調及環境集中監控管理系統前端智能設備通訊協議》(中國電信交換[1999]625號)作為標準協議,2003年信息產業部又以該協議為基礎制定監控系統智能設備通信協議的行業標準。 作為通訊電源的統一通訊標準,這一協議得到了廣泛的應用。假設我們要傳遞的信息為00,則其信息幀的基本格式如下: 這種方式處理簡單,僅用一條命令就可以獲取大量的信息,但當監控系統僅需要了解其中少量數據內容時,許多無用的卻依然占據著傳輸時間的數據,勢必降低了效率。 因此很多公司有自己的通訊協議,他們直接采用二進制編碼,即網絡流中的數據不是ACSII格式的數據,而是數據本身,并且盡量減少冗余的數據。 3.3通信協議的實現過程 本系統的智能設備采用協議轉換器(串口服務器)方式接入,傳輸協議采用《智能設備通訊協議》和企業自定義的傳輸協議(由于涉及企業的技術保密要求,本文中沒作介紹),編程語言為C#,編程環境為Microsoft Visual Studio .NET 2003。 在Internet中,TCP連接是常見的方式,用這種連接方式可以方便地在互聯網中傳遞數據,只要事先知道串口服務器的IP地址和端口,實現通訊協議的程序如下: TcpClient myClient; //TCP連接套接字 NetworkStream myStream; //獲取網絡流 public bool ConectStation(string ip,int port) { //連接局站函數,連接成功返回true,失敗則返回false try { myClient= new TcpClient(ip,port); myStream="myClient".GetStream(); return true; } catch { return false; } } 由于采用串口服務器,只需將傳輸數據的ASCII碼轉換為網絡數據流,即可利用TCP/IP協議的可靠連接TCP連接傳輸二進制流,程序如下: String stationNo; //局站號 String version; //版本號 AsyncCallback outcallback="new" AsyncCallback(this.OnCompleteWrite); //網絡流傳輸的異步調用 public void SetDChksum (); //求CHKSUM public void StartSend() { char soi=(char)0x7E; //開始字節 char eoi=(char)0x0D; //結束字節 string check="version"+stationNo+commandCode; //版本號+局站號+命令代碼,需進行校驗 string send="soi"+check+SetDChksum(check)+eoi; //發送數據字符串 byte[] outbuffer="Encoding".ASCII.GetBytes(send); //將數據字符串轉化成字節數據流 try { myStream.BeginWrite(outbuffer,0,outbuffer.Length,outcallback,null); } catch { //發送數據失敗的數據處理 } } 4 結束語 網絡技術、通信技術、計算機技術的快速發展,為通信電源監控系統的進一步發展和完善提供了條件。本系統正是結合這些最新技術,實現了對通信電源的遙測、遙信和遙控,并實現了對通信電源運行數據的遠程Web瀏覽。本系統已在實際通訊電源監控中采用,收到了良好的效果。 |