李波
摘要摘要:通過RS-232串行口,采用Visual Basic可視化編程語言編程,快速實現CDM-570L衛星調制解調器遠程監測控制。該程序應用于大型衛星通信地球站綜合管理系統中,為該型調制解調器衛星通信設備提供及時參數讀取和參數設置,并能夠完全控制設備操作。通過多串口卡或多串口服務器實現大型衛星站設備綜合集成管理,可以顯著提高設備管理效能。
關鍵詞關鍵詞:Visual Basic;RS-232串口;衛星調制解調器;遠程控制
DOIDOI:10.11907/rjdk.162853
中圖分類號:TP319
文獻標識碼:A文章編號文章編號:16727800(2017)05008603
0引言
EF DATA衛星調制解調器以其功能強大、性能可靠、操作簡單、價格低廉等諸多優勢在衛星通信行業被廣泛使用,其在信道編碼譯碼、調制規范性、定時準確性方面具有突出優勢。在設備控制方面,它是SDM-8000系列的升級換代產品。CDM570及CDM-570L在業務接口上提供V.35接口、RS-422接口、G.703接口、以太網接口等,在設備控制方面提供Web server管理方式、Telnet管理方式、RS-232串口管理方式、RS-485串口管理方式等各種環境下使用的完備的管理途徑。衛星通信專業工程技術人員一般采用Web Server管理方式,但是普通機房執勤人員采用Web Server管理方式會由于全英文界面、復雜專業詞匯、網絡訪問形式等而存在一定困難。
連接RS-232接口,通過編程實現發送與接收CDM-570L可以識別的控制命令,并通過提供簡化的最常使用的功能命令,通過漢字語言顯示界面提供給操作者,可以極大地方便操作人員使用,有效提高普通執勤人員操作該設備的效能。
1CDM-570L控制命令簡介
CDM-570/CDM-570L命令包括兩個方向:控制器到目標設備、目標設備到控制器。
控制器到目標設備命令結構[1]如圖1所示。
例如:<0135/TFQ=1840.2300{CR}
第一個字符<數據包開始;0135表示RS-485地址,如果使用RS-232接口控制設備,則地址為0000;/表示地址與命令之間的分隔符;TFQ表示3個字符格式的命令,意思是設置發送頻率值為一定數值;=表示發送頻率值設置,?表示發送頻率值查詢;1840.2300表示要設置的發送頻率值,以kHz為單位;最后一個字符為回車,ASCII碼為13。
目標設備到控制器命令結構如圖2所示。
例如:>0135/RSW=32{CR}{LF},各段字符的意義同上。
具體使用為交互式,從計算機到設備的命令,由設備回應到計算機,根據回應信息判斷設備是否正確接收命令。比如以下命令系列:
在程序實現中,難點在于理解調制方式、FEC類型、FEC比率之間的相互關聯,當選擇一種調制方式時,相應FEC類型被限定,當選定限定中的某一種FEC類型, 相應FEC比率被限定。因此,不能任意組合調制方式、FEC類型、FEC比例,否則設備回應錯誤信息。
Visual Basic為一種基于事件響應的編程語言,特別適合編寫此類點擊按鈕、程序響應動作的事件驅動類程序,在主程序部分采用6個分支的分支程序結構對應界面6個按鈕事件,采用及其簡化的程序結構,保證程序的可靠性和穩定性[2]。主程序主要流程如圖3所示。
該程序主要難點在于判斷調制解調方式、FEC類型、FEC比率三者之間的關聯性。首先判斷調制方式,在調制方式選定情況下,根據調制方式選擇可選的對應該調制方式的FEC類型;在選定FEC類型的情況下,根據FEC類型選擇該FEC類型支持的FEC比率。如果判斷錯誤,導致設置命令出錯,可能使調制解調器工作不正常(有關調制類型、FEC類型、FEC比例之間的關聯關系參見無線通信原理書籍中關于調制解調和信道糾錯編碼部分內容)。因此,對應每個命令,必須接受命令的返回信息,判斷命令執行情況。在上一命令執行完畢并執行正確的情況下,再執行下一條命令,從而保證所有命令按順序正確執行。調制解調參數的設置流程如圖4所示。
3程序關鍵代碼
遵循VB編程規律,首先調用MSComm控件,便于在程序中引用,通過對控件的讀寫操作,達到發送命令,接收數據的目的[3];然后對接收的數據進行處理,特別是數據格式方面的處理,可以借助串口調試助手詳細觀察接收數據的內容,并進行分析處理[4]。
4程序運行結果
該程序結構簡單、界面直觀、運行穩定可靠,在實際使用中,串口讀、寫命令之后加入10ms左右的間隔時間(Sleep 10),程序穩定性更加良好(在程序開始部分包含庫引用申明:Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long))。程序運行后主要功能界面如圖5所示。
程序運行后的界面圖中,6個功能按鈕分別對應主程序的6個分支事件,每個分支事件中包含該功能按鈕下所有參數的讀取和寫入操作,程序界面整體清爽干凈,易于操作使用。Visual Basic是一種基于事件驅動的可視化編程語言,編程效率高,適合非計算機編程人員使用,在本程序中選擇該語言可以顯著節省時間,降低工作難度,提高編程工作效率。
5結語
CDM-570L調制解調器提供基于RS-232接口的遠程控制,同時也提供基于Snmp、Telnet、Web、Console等接口的遠程狀態監視和控制方式,但是在對距離要求不嚴格的場合,采用RS-232接口遠程控制設備具有可靠性高、成熟性好、實現難度小、設備控制簡單等優點,這也是RS-232接口至今仍然在設備上使用的原因。程序應用直觀簡潔、操作簡便、界面友好,維護人員在接受簡單培訓的情況下就可以熟練操作。
參考文獻參考文獻:
[1]COMTECH EF DATA.CDM-570/570L installation and operation manualual[S].For Fireware Version 1.7 or Higher,2010.
[2]董萍.淺談基于MSComm控件實現VB串口通信[J].裝備制造技術,2007(2):5758.
[3]王曉嵐.基于VB6.0串口通信的氣壓測高系統數據采集實現[J].現代電子技術2010(3):116118.
[4]閆宏偉,潘宏俠.基于VB語言的串口通信系統設計[J].機電工程技術,2005(1):8588.
責任編輯(責任編輯:孫娟)