董鴻鵬,金 雷,王春財
(中國人民解放軍92728部隊, 上海 200040)
飛行模擬器能夠模擬航空器執行飛行任務時的飛行狀態、飛行環境和飛行條件,能給飛行員提供近似真實的操縱負荷、視覺、聽覺以及運動感覺,是提高飛行人員飛行訓練水平的重要裝備。而通過對各飛行模擬器間的聯網建設,能夠實現不同種類的飛行模擬器(如戰斗機、運輸機、直升機等),多臺模擬器分別扮演紅藍方進行聯網模擬實時空戰訓練的功能,能夠有效提高多機協同作戰的訓練水平,是提高我軍戰斗力的重要保障[1]。在飛行模擬器聯網建設中,語音通信系統建設是其中非常重要的一個方面,它是保證多臺飛行模擬器共同訓練過程中指揮命令能夠順利傳達的基礎,是聯網訓練任務能夠正常進行的前提保障[2]。本文結合具體的工程項目要求,根據聯網模擬器的系統鏈路結構,設計了一種聯網飛行模擬器語音通信系統的實現方法,開發了一種語音切換軟件。
飛行模擬器聯網網絡系統的主要功能是提供模擬器之間的互聯互通及網絡通信管理功能,包括數據傳輸、語音通信和網絡管理等。其中的網絡語音通信系統是模擬在飛行模擬器聯網訓練過程中總導調室、紅/藍方模擬指揮所與聯網模擬器相互之間的語音通話功能,是聯網模擬器建設的一個重要方面[3]。
聯網模擬器的語音通信系統,主要包括總導調室、紅藍方指揮所、紅藍方模擬器教練員、紅藍方模擬器飛行員四個方面,其各自職能為:
1) 總導調室:負責整個飛行模擬器聯網訓練想定的生成、訓練過程的監控、訓練勝負的評判和演習結果的講評,協調訓練過程各方人員間的指揮通信等;
2) 紅藍方指揮所:模擬地面指揮所進行指揮引導的功能,包括模擬指揮所領航臺系統和雷達臺,接收態勢數據,實現目標的雷達態勢和綜合態勢畫面顯示,并進行語音的指揮引導等;
3) 紅藍方模擬器教練員:根據訓練想定設置模擬器相關參數,監控模擬器飛行員的飛行動作,訓練后對飛行員進行指導講評;
4) 紅藍方模擬器飛行員:根據接受的命令操作模擬器進行飛行訓練。
為實現飛行模擬器聯網訓練的功能,必須具備語音通信系統,能夠模擬出總導調室、紅藍方模擬指揮所與聯網飛行模擬器相互之間的語音通話功能。語音通信系統結構如圖1所示,系統各個部分通過模擬器聯網網絡系統的主干網進行連接和通信。

圖1 語音通信系統結構示意圖
語音通信系統中每個聯網節點(總導調室,紅藍方模擬指揮所和飛機模擬器)將語音輸入到相應的語音計算機,然后語音計算機根據分組情況通過網絡發送給可通話的其他節點的語音計算機。語音計算機一般由各個分系統的網絡服務器來擔當,在總導調室的語音計算機為總語音計算機,其他節點語音計算機啟動后發送網絡命令給總語音計算機,總語音計算機根據作戰想定設置紅、藍方等。紅、藍方通過總語音計算機中轉實現各自音頻通訊互不干擾,同時又可跟總導調室進行語音通信。整個聯網語音通信系統的聲音收發邏輯關系如表1所示。

表1 聲音收發關系
語音通信系統包括軟件和硬件兩部分,硬件主要包括數字音頻處理服務器、計算機、網絡交換機、指揮話筒、揚聲器、耳機等,軟件是指數字音頻處理切換軟件。
負責總導調語音系統的計算機需安裝音頻切換軟件,計算機聲卡的輸入連接話筒,使用兩個通道的聲音輸出分別作為紅藍方聲音信號輸出。總導調通話鏈路圖如圖2,總導調語音系統的功能有:
1) 實時播放紅藍方模擬器人員的通話情況;
2) 實時播放紅藍方指揮所人員的通話情況;
3) 給系統中所有的人員發出語音廣播;
4) 按模擬器分組即紅、藍方角色設置語音通信的范圍。
紅藍方指揮所語音系統均需有一臺安裝語音切換軟件的計算機,該計算機的聲卡輸入連接話筒,輸出播放接收到的所有聲音。雙方指揮所語音系統功能主要有:
1) 實時播放本方模擬器人員的通話情況;
2) 給本方所有的人員發出語音廣播;
3) 設置本方模擬器的通信波道。
聯網模擬器語音系統由音頻處理器、模擬器信號采集計算機、聯網語音計算機組成,如圖3所示。模擬器語音系統中由模擬器信號采集計算機將采集的聲音操作相關信號通過UDP數據包,發給聯網語音計算機和音頻處理器。音頻處理器將一路輸入輸出語音連到聯網語音計算機,聯網語音計算機通過使用語音切換軟件,實現網絡語音通信[4]。

圖3 模擬器語音系統組成
為滿足上述語音系統所需的功能要求,設計了一種數字音頻切換軟件,能夠實現對數字音頻的聯網控制。該軟件是基于微軟.NET平臺進行開發,保證軟件的適應性和先進性[5-6]。
數字音頻切換軟件主要由通訊模塊、音頻切換模塊和音頻配置模塊等三個模塊組成。軟件的結構圖如圖4所示。

圖4 音頻切換軟件結構
軟件使用UDP網絡通信協議,將用戶命令通過Socket通訊發送至模擬器,再利用Socket通訊方式接收模擬器反饋的命令執行狀態和音頻設備當前狀態,并將信息轉發至音頻切換模塊,音頻切換模塊將信息在界面上展示。
音頻切換模塊啟動時首先從數據庫中查詢配置好的音頻設備信息,根據音頻設備信息的通道類型、編號和名稱,在顯示界面顯示。當用戶在操作界面點擊相應的打開或者關閉音頻通道按鈕時,模塊根據用戶的點擊按鈕,生成打開或關閉命令消息,通過調用通信模塊將命令發送至模擬器。本模塊對通信模塊將收到的反饋信息進行處理,將其和發送命令共同在軟件顯示界面上進行狀態更新展示。音頻切換顯示界面如圖5所示。

圖5 音頻切換顯示界面
軟件界面中的左通道區域顯示所有的左通道音頻設備信息,右通道區域顯示所有的右通道音頻設備信息,用戶可將左右通道區域自行定義為主機和從機區域。鏈接信息下方文本框顯示用戶發送的命令、命令的反饋信息詳情。用戶可通過本功能實現將相應音頻設備從通話狀態切換至空閑狀態或從空閑狀態切換至通話狀態。
音頻設備顏色標識:藍色表示主機空閑狀態;綠色表示主機通話狀態;橙色表示從機空閑狀態;紅色表示從機通話狀態。
音頻配置模塊主要功能是從數據庫信息中查詢當前配置好的音頻設備,并對其進行增加、刪除和修改可用的音頻設備,生成的音頻設備數據庫文件供音頻切換模塊使用,軟件界面如圖6所示。

圖6 音頻設備配置界面
音頻設備數據庫使用小型關系型SQLite數據庫來存儲可用的音頻設備信息。SQLite數據庫是一種嵌入式開源的關系型數據庫,具有零配置、無服務器、自包含等特點,能方便、快捷地實現對音頻設備信息的增加、刪除和修改[7]。
經過實際測試證明,本文設計的語音通信系統能夠滿足飛行模擬器聯網訓練的使用需求,多方通話過程中語音數據流正常,語音質量良好,語音延遲小于100 ms,滿足系統設計的指標要求,在飛行模擬器聯網訓練中收到良好效果。
[1] 張偉,閆景波.飛機模擬器與模擬訓練[M].北京:航空工業出版社,2017.
[2] 高煊,鄭康平.飛行模擬系統中分布交互式視景的設計與實現[J].指揮控制與仿真,2013,35(5):84-87.
[3] 李雪青,艾祖亮,王再奎,等.飛行模擬器聯網訓練系統[J].計算機系統應用,2017,26(4):54-60.
[4] 司聿宣,蘇遠興,楊正芳.分布式環境實時語音通訊系統的設計與實現[J].武漢工程大學學報,2012,34(5):60-63.
[5] 李寧溪,張峽.基于LAN的語音通訊軟件設計[J].計算機工程與應用,2003(4):137-139.
[6] 李建忠.Microsoft.Net框架程序設計[M].北京:清華大學出版社,2003.
[7] MICHAEL O.The Definitive Guide to SQLite[M].US:APress,2006.
[8] 鄧晴鶯,李國翬,王寶奇,等. 某飛行模擬器視景系統的設計與實現[J].兵工自動化,2016(8):75-79.