黃 燦
(武漢郵電科學研究院,430074;武漢虹信軟件有限責任公司,武漢,430074)
現存的調測軟件都是針對特定類型的無線接入設備,為了使無線接入設備的調測維護軟件有更好的通用性和靈活性,提高軟件利用率,本文采用C++語言和VC6.0開發環境,運用泛型化的設計思想和泛型編程的方法,將無線接入設備的類型參數化,使直放站和基站設備的調測維護軟件集成到了統一的平臺加以實現,操作時根據用戶所選設備類型便可適配出相應設備類型的調測系統。
泛型程序設計的思想和繼承不同,繼承只是單純的抽象。而泛型程序設計則是定義抽象的概念,并根據抽象的概念來編寫算法和數據結構,才是泛型程序設計的本質。
泛型編程就是以獨立于任何類型的形式編寫代碼,使用泛型時,需要具體程序實例提供使用的類型或值。泛型編程的代表作品STL即標準模板庫,是一種高效、泛型、可交互操作的軟件組件。它蘊涵著一種新的程序設計思想–泛型化設計。
無線接入設備泛型化調測維護平臺總體分為用戶層、協議適配層和通信層。
用戶層主要負責處理用戶界面實物,是程序與用戶交互的接口,接收用戶的各種輸入,處理后返回結果顯示給用戶。協議適配層主要完成泛型平臺的實例化以及所有與協議相關的工作。通信層負責完成所有與通信相關的功能。
調測維護平臺的主要完成的功能有適配功能、通信功能、交互信息顯示功能、設備調測功能等。設備調測功能具體內容包括:配置功能和告警功能。
配置功能又包括直放站設備配置參數查詢和設置、基站設備命令操作和配置文件的導入和導出。告警功能包括多種上報功能,可分為:開站上報、巡檢上報、配置變更上報及告警上報等。
在界面上選擇要監控的設備類型,界面層會根據所顯示的界面動態將數據更新到設備的參數對象中,交給協議適配層。協議適配層根據所選的設備類型從本地目錄中獲得設備的監控協議、配置文件、數據庫文件等,并傳給界面層進行顯示。與設備間的數據收發由通信層來完成。協議適配層根據幀頭,幀尾和協議版本號可判斷所要解析的協議,從通信層得到協議幀后對協議幀進行解析,協議幀的組幀工作由協議適配層完成,若需要發送協議幀,只需將協議幀組好交給通信層即可。
協議適配層完成了泛型化調測維護平臺最重要的工作——泛型化平臺的適配。泛型化平臺的適配是指根據用戶選擇的設備類型,運行相應設備類型的調測維護平臺。
在本層的設計中結合泛型化的設計思想,采用泛型編程的方法,將設備數據CUserData定義為類模板,使它支持不同設備類型的對象CRepeater直放站類或者CBaseStation基站類。在本地目錄中,根據設備類型的不同,在不同的路徑存儲相應設備類型的的配置文件、監控協議和數據庫文件等。用戶在界面選擇要調測的設備類型,系統根據輸入的設備類型分別調用加載配置文件接口、加載數據庫文件接口和加載協議文件接口,獲取相應的配置文件、數據庫文件和監控協議等數據以調用初始化設備接口初始化設備數據DevData,并將它輸出到界面層。
另外本層還負責完成所有與協議相關的工作——協議解析和協議組幀。本層的設計目標是使監控系統在協議適配層形成一個透明調用和訪問的統一接口。協議適配層采用面向對象的設計思想,將數據和操作分離。不同的監控協議設計成相應的類,分別繼承監控協議類共同組成的一個通用協議類CProtocol,在運行時根據派生協議類對象調用相應的組幀和解幀的實現方法。監控協議類中含有設備的監控參數對象,監控參數對象與監控協議中的監控參數一一對應。用戶進行不同的操作,只需對不同的監控量進行賦值,然后調用協議適配層的成員函數,由協議適配層來完成所有與協議相關工作。
VC里面有眾多的控件,為界面的實現提供了便捷,多樣的實現方式。本系統界面分為系統初始主界面和選擇設備類型后適配出的調測界面。結合公司現有的直放站本地調測軟件和基站本地調測軟件,分析兩者在界面布局上的共同之處,將本泛型化調測平臺的調測界面大致分為菜單欄、工具欄、設備管理樹、參量顯示、操作信息框、狀態欄等7個區域。當用戶在主界面選擇設備類型,點擊啟動按鈕后,界面層接收從協議適配層傳入的設備數據DevData分別調用菜單欄顯示接口、設備管理樹顯示接口、設備參量顯示區顯示接口、操作信息框顯示接口、狀態欄顯示接口和工具欄顯示接口實現各個區域的更新顯示,以啟動相應設備類型的調測維護平臺。
本調測系統支持的通信方式有三種,分別為串口通信、有線網口通信和PS域通信。
設計中將串口通信方式封裝成串口類,使用串口RS232。根據通信端口的關聯性,將有線網口通信方式和PS域通信方式封裝在一個類中,它們均使用了Socket類。
有線網口通信方式使用UDP協議,而PS域通信方式使用TCP協議。在PS域通信方式下,調測系統與調測維護平臺的接入方式有通過Internet接入和虛擬專用網絡接入兩種方式。本項目采用的是Internet接入方式,調測維護平臺使用固定的IP地址,設備端被動態分配IP地址。這種接入方式使用的是TCP/IP協議,此時由設備端發起連接請求,設備自動連接上PS域網,登錄到調測維護平臺上,調測維護平臺確認后開始通信。設備為了確保GPRS鏈路是連通狀態,每隔一定時間向調測維護平臺發送心跳包,調測維護平臺收到心跳包之后做出回應。
本文結合泛型化的設計思想,采用泛型編程的方法,對無線接入設備泛型化調測維護平臺進行了研究。詳細闡述了平臺的體系結構和功能,并給出了具體的設計方案。本研究有助于提高軟件的通用性和靈活性,降低軟件開發成本,并能顯著提高軟件利用率和操作人員的工作效率。
[1] 李師賢,蔣愛軍,梅曉勇,林瑛.C++ Primer中文版[M].北京:人民郵電出版社,2006.
[2] 奧斯滕.泛型編程與STL[M].北京:中國電力出版社,2003.
[3] 羅莉琴,詹祖橋.Windows網絡編程[M].北京:人民郵電出版社,2011.
[4] 劉海鵬.直放站操作維護管理系統的研究[D].北京:北京交通大學,2008.
[5] 甄云恒.基站告警監控系統的設計與實現[D].大連:大連理工大學,2013.