基于分布式組件的監測網絡系統的設計與實現
隨著監測技術向自動化、智能化、網絡化的日益發展,監測管理的越來越復雜化,監測系統不斷被賦予新的內容和組織形式,從而對監測系統提出了更高的要求。該文設計并實現了一種基于分布式組件技術的監測網絡系統,能夠實現各種實時監測和非實時監測功能,具有良好的可擴展性,并實際應用于全國短波監測系統中。現代監測網絡系統由一套完整的信號檢測、傳送、分析、控制和顯示系統組成,配備了先進的監測設備以及相應的控制和自動監測軟件,并通過計算機和網絡實現互聯。
1 系統設計原則
? 為了提高系統響應性能和穩定性,增強代碼的可重用性,可擴展性和易維護性,最大程度地滿足用戶日益變化的需求,整個監測網絡系統設計原則為:基于分布式組件設計;基于三層結構模式設計:將設備驅動與網絡監測軟件分開;將數據流與業務流程分開;基于網絡化結構設計;基于標準化模塊設計。
? 基于分布式組件(DCOM)設計的軟件每一部分模塊都是一個獨立運行的程序,并可以運行于不同的計算機上。這樣可以使各軟件功能之間、各設備之間完全獨立。
? 基于三層結構模式設計,將設備驅動與網絡監測軟件分離開,使各部分完成各自的功能,盡可能地減少了各部分的耦合度。將數據流與業務流程分開,可以簡化業務流程的邏輯復雜性,從而可以降低軟件的開發難度,提高軟件開發效率。
?? 將監測網絡中的設備根據不同的監測中心、監測站進行樹型結構管理,既可以對用戶、設備、功能進行統一的管理,也可以避免因統一管理而帶來的網絡數據瓶頸。
?? 基于標準化模塊設計,使得各功能模塊獨立運行,一個模塊死掉,不影響其他無關模塊工作。
2 系統體系結構
2.1 監測系統組成
?? 監測網絡系統通過各種測量設備,能對溫度、流量、壓力還有無線電等各種信號進行測量,將采集到的數據通過網絡傳送到各級監測中心及監測站,并對其數據進行分析和處理,及時、準確地將信號測量情況反饋給監控人員,從而監測運行情況,對出現的異常情況作出及時的處理,指導決策。
?? 整個監測網絡系統由監測中心、各級監測站和監測站下的監測設備通過聯網組成。監測中心負責對各監測站進行控制,下達監測任務,是采集和處理數據的中心,由控制器、路由器、集線器/交換機、網絡適配器、MODEM及對應的監測軟件等組成,實時掌握整個監測網的運行狀態。監測站至少包括一個監測服務器、一個數據庫服務器和若干個監測設備,能夠接受監測中心的測量任務,實現對測量信號進行自動實時和非實時監測,并進行分析處理顯示,將數據發送到監測中心。監測站也可做成移動車載系統,通過無線網絡接入監測系統,靈活機動地完成各種監測任務。監測站下的各種監測設備實現具體的監測功能。
監測中心、各級監測站和監測設備組成一個局域網絡,進行樹型結構管理,實現各種監測功能,達到統一管理、分工合作、數據共享的目的。在監測站內部的數據通訊直接通過分布式組件來完成,而各個監測站之間的數據通訊的實現則是通過網絡通訊服務程序進行點對點通訊(PPP),這樣可以避免網絡設備統一管理而帶來的數據傳輸瓶頸問題。根據實際情況,用戶可以建成只有一個監測站的小型監測網絡系統,也可以擴建成全國監測網絡系統。
2.2 系統軟件結構
?? 整個監測網絡系統基于分布式組件設計,采取“客戶端-中間層-設備底層”三層結構形式。客戶端是監測系統的功能界面程序,主要完成與用戶的交互功能;中間層是工程的核心組件,主要負責命令與數據的分發以及設備和用戶的統一管理;底層設備封裝成組件形式,主要完成用戶的測量任務,并返回數據。圖1是監測系統整體框架結構圖。
?? 客戶端程序,從功能上來說是一個面向用戶的窗口,主要完成的功能有兩個:作為用戶和設備交互的窗口,向中間層發送命令和顯示中間層返回的數據;完成一些獨立于中間層的數據處理功能。
?? 中間層就象整個系統的中樞神經,其主要完成兩大功能:一是負責整個系統數據流的管理,向上接受客戶端輸入的測量命令和參數,并向客戶返回相應的測量數據和狀態,向下將測量命令和參數發送給底層設備,并接受設備返回的數據。二是設備管理和用戶管理,簡單的說就是對網絡中的設備和用戶進行統一管理。
設備底層主要是設備的DCOM封裝和與中間層的接口程序。
3 系統總體設計
3.1 客戶端程序設計
?? 怎樣設計界面友好,運行穩定,實時反應迅速的監測軟件是監測網絡系統的首要要求。監測網絡系統應用軟件的交互界面和功能直接反映了用戶的需求。
系統設計中采用基于分布式組件設計的模塊化設計:每項功能設計成相對獨立的功能模塊,每一部分模塊都是一個獨立運行的程序,模塊與模塊之間各自預留接口,通過調用接口的方式相互調用。這就要求每個模塊有自己獨立的參數、變量和過程;各個模塊的功能不重復,每個業務功能可以重復調用。模塊化設計的優點:利于開發分工、減少程序的開銷、提高代碼使用效率等。
??? 用戶功能界面主要是由用戶登陸模塊、任務管理模塊、命令控制模塊、測量參數設置模塊、監測數據顯示及分析模塊等組成。每一個獨立的模塊充分利用面向對象中類的思想來開發設計。在進行程序開發階段,分別對各個功能模塊進行開發、測試,實現和完善各項具體功能。當進行整體規劃的時候,就像堆砌房子一樣,調用一個一個的模塊,組成一個漂亮、實用、且可隨意變形的“房子”。
3.2 中間層設計
??? 中間層是整個系統的核心控制層,主要負責命令數據流的管理和設備管理與用戶管理。其中數據流的管理包括:數據的分發與管理、命令的排隊管理與分發、數據的分發與管理。
主要的數據流為數據請求過程:
(1)通過參數面板選擇測量參數,通過命令面板選擇功能操作,將命令直接編譯成設備認識的、能直接操作的二進制流,遞交給網絡通訊服務程序;
(2)網絡通訊服務程序將數據傳輸到對應的監測站數據管理服務程序(加到中間層隊列中);
(3)數據管理服務程序將命令數據流發送到對應的監測設備驅動服務程序;
(4)設備得到的監測結果返回到數據管理服務程序;
(5)數據管理服務程序將監測結果數據自動轉換成標準數據格式,遞交給網絡通訊服務程序;
(6)網絡通訊服務程序將結果數據返回給用戶界面;
(7)用戶界面將數據顯示出來或通過存儲過程保存到數據庫。
? 整個數據請求過程類似于“寫信→寄信→回信”過程。首先用戶界面按設備認識的格式寫好“信和信封”,然后通過中間層“寄”給設備,中間層將設備的“回信”轉換成標準格式返回給用戶界面。
3.3 設備底層設計
?? 底層設備以DCOM形式封裝,各設備間獨立運行。一旦設備出現意外問題詘口死機或斷網等,不影響其他設備工作。設備底層的開發主要包括兩部分:設備與中間層的DLL接口程序;設備的DCOM封裝。設備與中間層的接口程序:當加入新設備時,中間層程序不需要編譯,只需在底層的DLL中加入新的設備信息;底層DLL負責將上層命令翻譯成底層DCOM能夠識別的命令格式。
整個系統軟件分為五個部分的內容,即:
(1)用戶界面,他是瘦客戶端,可以安裝在需要監測的任意計算機上。
(2)登錄服務程序,安裝在監測中心的監測服務器上。
(3)數據流管理程序,也可稱中間層。包括數據管理服務程序和狀態管理服務程序,安裝在監測站的監測服務器上。
(4)設備驅動服務程序。
(5)網絡通訊服務程序,安裝在需要遠程訪問的任意計算機上。
?? 基于分布式組件設計,使軟件的各個部分可以完全獨立來封裝,形成一個可獨立運行的程序,使軟件的各部分可以運行于不同的計算機。這樣可以縮短設備的啟動時間,提高設備的運行效率,減少CPU占用率,可以使各軟件功能之間、各設備之間完全獨立。
4 系統測試
?? 軟件測試是保證軟件質量,提高軟件可靠性的關鍵。下面通過搭建全國短波監測系統中的單頻測向監測系統為例來進行測試和演示。
?? 無線電短波單頻測向系統由監測站下的監測服務器和接收機,測向儀等監測設備聯網組成,能對短波信號進行監測和測向,也可以通過幾個監測站進行聯合測向,提供對單一無線電信號的時域示向度測量和統計分析。由于監測網絡系統軟件的各個部分都封裝成標準化模塊形式,這樣就可以對其每一部分進行獨立的測試,包括軟件的功能和性能指標,從而實現對系統各個部分的可測可控。
?? 于是在監測系統的軟件開發過程中,就可以對完成的各個模塊進行獨立的單元測試。當開發人員編寫完代碼封裝成獨立功能模塊后,可以專門針對此模塊編寫簡單的測試程序,主要測試模塊各個接口實現的具體功能。最后通過調用各個功能模塊組成整個監測系統,進行整體的功能和性能測試。基于分布式組件設計的軟件每一部分模塊都是一個獨立運行的程序,對于開發完并通過測試的模塊,進行系統集成測試時,此模塊只需安裝,并不需要源代碼,降低了軟件重復開發的可能性,提高了代碼安全性。
??? 圖2是無線電短波單頻測向監測系統的監測界面顯示。開啟一個監測測試流程:首先用戶登陸系統,選擇監測臺站中的測向設備和測向功能,啟動測量,調用測向功能界面模塊。如圖2,在參數輸入面板上設置測量參數,點擊開始測量按鈕向設備發送“開始測量”命令,對接收到的監測數據通過分析處理顯示在界面上。也可以通過調用數據庫、文件、打印模塊來保存數據、打印文件等。另外,既可以啟動單個測量任務,也可以啟動多個不同的測量任務,各個測量任務之間互不影響。
?? 通過測試表明,整個監測網絡系統簡潔實用,易操作;設置監測任務類型、設置測量參數、運行及關閉程序的操作都非常簡單快捷;能夠實現實時監測和非實時監測功能;整個系統響應快速且運行穩定。
5 結語
?? 本文基于分布式組件技術和模塊化思想設計并實現了一個安全可靠、獨立性強、易于擴展的監測網絡系統。在整個監測系統軟件的開發和測試過程中,基于標準模塊化和分布式組件技術的設計思想有助于軟件從結構上實現弱耦合分解,可以極大地提高代碼的獨立性、重用性和可維護性,方便地實現系統的功能擴展,而且可以在不同的語言平臺上實現功能模塊的開發,從而使得并行開發過程變得更加容易、高效。整個監測網絡系統設計實用,易操作;監測功能完善,具有良好的可擴展性;系統運行快速穩定,并實現應用于全國短波監測網絡系統中。
評論
查看更多