韓曉光 徐 瑜 趙志軍
(海軍陸戰(zhàn)學院 廣州 510430)
兩棲模擬訓練系統(tǒng)中語音通信模塊的設計與實現(xiàn)
韓曉光 徐 瑜 趙志軍
(海軍陸戰(zhàn)學院 廣州 510430)
論文首先闡述了語音通信模塊對于兩棲模擬訓練系統(tǒng)的重要意義,提出了語音通信模塊的功能需求;其次,介紹了語音通信模塊的基本架構及其工作流程;最后,對語音通信模塊開發(fā)過程中遇到的問題進行了分析,并提出解決方法,實際應用結果表明論文設計實現(xiàn)的通信模塊完全滿足兩棲模擬訓練系統(tǒng)的通信功能需求。
兩棲作戰(zhàn); 模擬訓練; 語音通信
Class Number TJ810
作戰(zhàn)指揮訓練是兩棲模擬訓練系統(tǒng)的重要功能之一,語音通信模塊是支撐作戰(zhàn)指揮訓練的重要模塊,由于兩棲模擬訓練指揮層級的復雜性和可變性,現(xiàn)有的語音通信設備和語音通信仿真軟件不能滿足兩棲模擬訓練系統(tǒng)的功能需求,開發(fā)符合兩棲模擬訓練系統(tǒng)功能需求的語音通信模塊,對于完善兩棲模擬訓練系統(tǒng)功能組成和提高訓練效益具有重要意義[1~2]。
語音通信模塊是兩棲模擬訓練系統(tǒng)中的訓練輔助模塊,在兩棲指揮模擬訓練過程中,用作兩棲模擬訓練系統(tǒng)中各席位之間的指揮通信仿真平臺,依據(jù)不同的訓練科目和組訓規(guī)模,語音通信模塊具有不同的通信層級結構,具體來講,兩棲模擬訓練系統(tǒng)中的語音通信模塊具備以下功能特點[3~5]:
1) 廣播功能
廣播功能是指一對多的單向語音傳輸功能,通常用于總導演的全體通播或者單方導演的本方通播,對于總導演的全體通播來講,無論各個訓練端在何種狀態(tài)下,均能收到總導演的廣播信息;對于單方導演的本方通播來講,無論本方各個訓練端在何種狀態(tài)下,均能收聽到本方導演的廣播信息,但是對方的任意客戶端不能接收到本方的廣播信息。
2) 分組功能
分組功能是指基于所屬方和指揮層級信息,依據(jù)語音通信模塊所在的席位屬性,對語音通信系統(tǒng)中各客戶端進行分組的功能,本系統(tǒng)中的語音通信模塊架構采用2級分組模式,第一級分組包括:總導演、單方導演、分隊指揮員,其中,總導演只有一級分組,單方導演又分為紅方導演、藍方導演等二級分組,分隊指揮員又分為水面艦艇分隊指揮員、登陸兵力分隊指揮員、航空兵力分隊指揮員等二級分組,根據(jù)客戶端所在的不同分組,賦予客戶端相應的訪問權限。
3) 點對點通信功能
點對點通信功能是指在通信規(guī)則允許的前提下,系統(tǒng)中的任意兩個通信終端可以隨時建立排外的專用通信通道,這種通道能夠動態(tài)生成和刪除,主要用于處理系統(tǒng)預設通信規(guī)則之外的通信請求。
語音通信模塊由一臺服務器和多臺客戶機組成,它們之間通過局域網(wǎng)進行連接。服務器是語音數(shù)據(jù)的交互中心,在整個系統(tǒng)運行過程中,語音通信系統(tǒng)服務端以后臺服務的形式運行在服務器上,在系統(tǒng)運行過程中并沒有前臺的界面,若要修改其運行參數(shù),可通過修改.xml格式的配置文件來完成,可修改的具體參數(shù)有以下幾項:
〈server-name〉兩棲模擬訓練系統(tǒng)〈/server-name〉;;語音服務器名稱
〈motd〉1〈/motd〉;;語音模式
〈max-users〉1000〈/max-users〉;;同時加入語音服務器的終端數(shù)量上限
〈auto-save〉true〈/auto-save〉;;是否記錄當前服務器連接的終端狀態(tài)
〈tcpport〉10333〈/tcpport〉;;TCP連接端口號
〈udpport〉10333〈/udpport〉;;UDP連接端口號
〈login-attempts〉0〈/login-attempts〉;;客戶端嘗試連接最大次數(shù),0表示不限制(以下幾項類似)
〈max-logins-per-ipaddr〉0〈/max-logins-per-ipaddr〉;;單個IP地址最多可連接終數(shù)量
〈bandwidth-limits〉;;帶寬速率限制
〈voicetx-limit〉0〈/voicetx-limit〉;;發(fā)送語音數(shù)據(jù)包帶寬速率限制
〈vidcaptx-limit〉0〈/vidcaptx-limit〉;;接收語音數(shù)據(jù)包帶寬速率限制
〈totaltx-limit〉0〈/totaltx-limit〉;;總語音數(shù)據(jù)包帶寬速率限制
〈/bandwidth-limits〉
〈user-timeout〉60〈/user-timeout〉;;客戶端心跳檢查時間間隔
客戶端是與用戶直接進行交互的前臺程序,按照配置的席位種類,可分為總導演客戶端、單(紅、藍等)方導演客戶端、各群隊指揮客戶端等,每個客戶端有多個通信進程實例,在不同的服務器通信頻道內(nèi)擔負著監(jiān)聽/廣播任務,它們之間的功能拓撲結構如圖1所示(注:圖中的箭頭方向表示語音數(shù)據(jù)的流向)。
圖1 語音通信模塊中各客戶端間的通信關系
關于圖1中通信關系的幾點說明:
1) 圖中僅列出紅藍雙方對抗時的語音通信關系,當有第三方加入訓練時,可參照紅藍方的通信關系進行布局,另外,各方的編隊通道除了水面艦艇還有航空兵、潛艇、陸戰(zhàn)兵力等,這些編隊的通信關系均可參照水面艦艇編隊通道的組織方法,這里不再單獨列出。
2) 各個客戶端可以同時監(jiān)聽多個通信頻道,但同一時間只能在一個通信頻道內(nèi)廣播,如:總導演可以監(jiān)聽所有通道,但同一時間只能在總導演通播通道內(nèi)或者專用通道內(nèi)進行廣播。
3) 在系統(tǒng)通信頻道組織結構的設計過程中,紅藍雙方的廣播通道是相互隔絕的,這樣可以確保紅藍雙方的語音通信互不影響,以保證紅藍雙方指揮的相對獨立性。
圖2 語音通信系統(tǒng)工作流程
系統(tǒng)的工作流程如圖2所示[6],在服務端啟動以后,客戶端創(chuàng)建連接實例并登錄到服務器,然后按照預設席位屬性加入到相應的語音通道內(nèi),在整個工作過程中,系統(tǒng)有斷線重連保護機制,以保證系統(tǒng)正常運行。
由于兩棲模擬訓練系統(tǒng)中語音通信模塊的特殊需求,在語音通信系統(tǒng)的開發(fā)過程中存在一些難題,這里,將遇到的問題和解決方法總結如下[7~10]:
1) 分組功能的實現(xiàn)方法
對客戶端進行分組是保證語音通信按照預定規(guī)則工作的必要條件,本文采用建立多個通道的方法,通過設定客戶端程序對不同通道的訪問權限和語音收發(fā)規(guī)則,間接實現(xiàn)對各語音客戶端的分組。以兩棲模擬訓練系統(tǒng)中紅方水面艦艇編隊指揮席位的語音通信客戶端為例,系統(tǒng)共創(chuàng)建五個實例進程,進程一加入總導演通播通道內(nèi)且僅具有監(jiān)聽屬性,用于監(jiān)聽總導演的播報信息;進程二加入紅方導演通播通道內(nèi)且僅具有監(jiān)聽屬性,用于監(jiān)聽本方導演的播報信息;進程三加入紅方水面艦艇通道內(nèi)且具有播報和監(jiān)聽屬性,用于進行本方編隊的指揮和協(xié)同;進程四根據(jù)操作人員需要加入特定的紅方通道內(nèi)具有播報和監(jiān)聽屬性,用于與其它席位通信;進程五加入席位自身的監(jiān)聽通道內(nèi)具有監(jiān)聽屬性并在其它席位呼叫時獲得播報屬性,用于處理本方其它席位的呼叫通信,其中,具有播報屬性的進程之間存在互斥關系,不會在同一時間工作。
2) 提高通信穩(wěn)定性的方法
由于訓練網(wǎng)絡中存在眾多的訓練終端,網(wǎng)絡帶寬的使用率較高,語音通信模塊難免受到影響,為提高語音通信系統(tǒng)使用的穩(wěn)定性,語音通信模塊使用了巡查和重連機制,巡查機制指客戶端每秒會向服務端發(fā)送帶有時間戳的數(shù)據(jù)包,服務端通過對比最后到的數(shù)據(jù)包時間戳和當前時間來判斷客戶端是否掉線,若客戶端掉線,服務端會發(fā)出重連指令;重連機制指客戶端在收到服務端發(fā)送的重連指令或通過異常處理機制捕獲到異常時,客戶端首先記錄當前各個實例進程的狀態(tài)(所在通道編號、播報、監(jiān)聽狀態(tài)等),然后按照圖2的流程重新連接至服務器,最后在恢復各個實例進程的狀態(tài),通過試驗表明,整個過程用時不到1s,完全不影響系統(tǒng)的正常使用。
3) 通用客戶端平臺的實現(xiàn)方法
不同的指揮訓練席位對語音通信模塊客戶端的需求不盡相同,而且這種需求是在不斷變化的,做成固定樣式的客戶端不能滿足系統(tǒng)需求,本文中的客戶端采用通用平臺的設計方法,可以根據(jù)配置文件指定的功能屬性,動態(tài)生成滿足需求的客戶端,其中,配置文件的部分內(nèi)容如圖3。
圖3 客戶端啟動配置文件的部分內(nèi)容
在具體使用過程中,通過修改以上配置文件內(nèi)容,動態(tài)生成滿足不同席位需求的客戶端程序,實現(xiàn)了客戶端平臺通用化的功能需求。
本文設計的語音通信模塊克服了以往兩棲模擬訓練系統(tǒng)中語音通信模塊存在的不足,完全實現(xiàn)了兩棲模擬訓練系統(tǒng)對語音通信模塊的功能需求,實際應用結果表明模塊具有界面友好、使用方便、占用帶寬小、通信質量好等特點,大大提高了訓練效益。
[1] 彭漢國,吉順祥,伍治海,等.基于PC的視音頻監(jiān)控系統(tǒng)設計與開發(fā)[J].艦船電子工程,2008,28(2):131-133.
[2] 賀思,劉德良,李正宙,等.短波電臺模擬訓練系統(tǒng)的設計與實現(xiàn)[J].通信技術,2011,44(4):85-86.
[3] 司聿宣,蘇遠興,楊正芳,等.分布式環(huán)境實時語音通訊系統(tǒng)的設計與實現(xiàn)[J].武漢工程大學學報,2012,34(5):60-63.
[4] 劉豫軍,夏聰.支持大規(guī)模語音實時通訊的分布式云服務安全架構設計研究[J].網(wǎng)絡安全技術與應用,2015,(5):121-122.
[5] 董志明,王凱,彭文成,等.新型指控通信裝備仿真訓練系統(tǒng)設計與實現(xiàn)[J].系統(tǒng)仿真學報,2010,22(1):93-95,101.
[6] 曾柏華.短波數(shù)字電臺模擬訓練器的設計與實現(xiàn)[D].成都:電子科技大學,2009.
[7] 謝鐵城,達新宇,劉蕓江,等.某電臺網(wǎng)絡模擬訓練系統(tǒng)的設計與實現(xiàn)[J].計算機測量與控制,2010,18(5):1151-1153.
[8] 魯遠曙.超短波通信在未來艦船編隊中應用分析[J].艦船電子工程,2008,(8):9-10.
[9] 聶衛(wèi)國.分布式作戰(zhàn)指揮模擬訓練系統(tǒng)中語音通信仿真研究[J].艦船電子工程,2015,(3):59-62.
[10] 張欣景,趙志軍,謝國新,等.通用超短波語音通信仿真模塊的設計與實現(xiàn)[J].艦船電子工程,2010,30(9):113-116.
Design and Implementation of Voice Communication Module in Amphibious Simulation Training System
HAN Xiaoguang XU Yu ZHAO Zhijun
(Naval Marinie Acadamy, Guangzhou 510430)
This paper describes why the voice communication module is important for amphibious training simulation system, puts forward the function requirements of voice communication module. Then, it introduces the basic structure of voice communication module and its working process. Finally, problems of the voice communication module in the development process are analyzed, and the solving method is put forward. Application results prove that the proposed communication module can satisfy the demand of communication function amphibious simulation training system.
amphibious warfare, simulation training, voice communication
2016年8月1日,
2016年9月19日
韓曉光,男,碩士,講師,研究方向:模擬訓練與仿真。徐瑜,男,博士,講師,研究方向:模擬訓練與仿真。趙志軍,男,副教授,研究方向:模擬訓練與仿真。
TJ810
10.3969/j.issn.1672-9730.2017.02.019