馬永松,冉進剛,彭 健
(中電科航空電子有限公司,成都 611731)
機載語音通信系統一直是航空電子系統的最重要組成部分,在通飛航電系統中機載語音通信功能包括飛機內部各崗位之間的通話和空地通話.
中小型通航飛機通信參與成員比較少,大多采用對講方式;但是大型通航飛機(括大型水陸兩棲飛機、大型固定翼通用任務型飛機、民用重型直升機等)通信參與成員變多、執行的任務也更加復雜,在許多任務中要求不同任務崗位之間更緊密的協作[1].隨著國產大型通航飛機的研發,需要機載語音通信系統成為支持飛行員、觀察員、執行任務的各崗位、飛機狀態提示(告警音、各種提示音)以及地面指揮員之間進行的多邊語音交互的平臺.這對機載語音通信系統提出了更高的期望,如果能把所有的任務參與者都放在一個“會議”里,所有信息將在第一時間傳輸到各崗位,這對協作應對復雜任務和突發情況將極為有利.
本文提出了一套簡單實用的混音方法,并在此基礎上設計出了“有優先級、用戶可定制的機載會議系統”;不但大幅提升機載語音系統的性能,而且軟件簡單,開發成本低、耗時短、安全性高,對快速取得適航證、投入市場極為有利.
傳統的機載語音通信系統多采用對講模式.其優點包括:
(1)采用“你一言”、“我一語”的溝通方式,溝通清晰、準確;
(2)一般主駕駛員具有最高的通話優先級,隨時可以搶占通話信道.
但其缺點也很突出的: 參與成員不能太多、只能滿足相對簡單的任務交互.
隨著通航飛機的大型化、任務復雜化,對機載語音通信系統的要求也越來越高.這些飛機往往需要執行救援、滅火、空投等各種復雜任務.要完成這些復雜任務,需要包括駕艙(主駕駛、副駕駛、機械師、觀察員)、后艙任務艙(參與任務的各崗位)、飛機告警及各種提示音和地面指揮的有效協作.這就給語音通信系統提出了更高的要求,包括:
(1)系統可以工作在“會議模式”,容納更多成員參與通信,同時避免高優先級成員長時間占用信道,導致延誤;通信參與成員在通信建立之后隨時可以說話,每個通信參與成員能聽到所有成員(包括自己)的語音;
(2)系統是“用戶可實時定制”的;在任務進行中,由通信參與成員進行簡單的設定就可以完成新的定制;每個通信參與成員應該可以根據所在任務崗位的實際需要選擇重點收聽某路或者某幾路音源,突出重點避免次要音源的干擾.
(3)由于空地通信的特殊性,機上各崗位應該有權進行空地通信(但是其它機上乘員可以收聽到雙方的通話),以便在某些任務的關鍵階段,地面可以直接指揮對應崗位,而不是通過飛行員間接指揮.
(4)賦予關鍵成員(主駕)管理者角色,如有空地通話優先權、通話接入管理權等.
當前航電各LRU之間的基本都實現了總線通訊;隨著DSP、FPGA以及數字化語音處理芯片的成熟和穩定,機載語音通信系統也走入了數字化時代.這給實現理想的“有優先級、用戶可定制的機載會議系統”帶來了機遇,但同時也面臨許多挑戰:
(1)在民用航空領域,語音通信系統軟件對飛行安全有重要作用,屬于C級軟件.DO-178C對C級軟件的計劃、需求、開發、集成驗證、生命周期等有一系列規范,遵照這些規范進行軟件開發,更容易滿足適航要求、取得適航認證;但是嚴苛的開發規范也導致了更高的開發成本,在國內,一款C級民機機載軟件從計劃階段到取得適航證往往要數年時間.因此,滿足功能的情況下盡量的精簡設計,對于保證安全、節約開發成本、縮短開發時間極為重要.
(2)鑒于航電的特殊性,如果能不改變機載語音通信系統硬件體系架構,僅僅通過優化軟件算法,就可以實現“有優先級、用戶可定制的機載會議系統”,那么就可以最大限度的保證系統安全性、降低研發成本、控制研發周期,這就給軟件開發提出了很高的要求.
(3)在混音環境中,一般只能將混音后的音量整體調大或者調小.而“有優先級、用戶可定制的機載會議系統”要求各成員可以動態配置想要收聽的信息以及各分量權重,這要求軟件算法有所突破.
(4)機載語音通信系統需求對實時性、信噪比、系統穩定性等提出了明確的指標,要求軟件算法簡單實用而且工作穩定.
機載語音通信系統是CN系統的一部分,涉及眾多LRU(如圖1)[1],且由于CN系統的重要性,要將整個系統推翻重新設計其成本和耗費的時間是難以接受的.因此,本文正是在圖1所示系統上通過優化RIU軟件實現語音通信系統的品質提升.

圖1 機載語音通信系統框圖
由于CN系統中各LRU來自不同的廠家、接口各異,系統中涉及的主要語音格式包括A429數字音頻、RS422/RS485數字音頻、模擬音頻.RIU作為音頻接口和處理單元,是整個系統中樞,負責所有語音的信號、語音控制信號的收發和處理;也就是說RIU軟件的質量直接影響整個機載語音系統的品質.
RIU的外圍設備主要包括空地通信電臺、ACP/TACP(如圖2),其中ACP/TACP可以接入耳機和麥克風,也可以設置通信狀態和音量.

圖2 常見的ACP/TACP操作面板
軟件方案簡述如圖3[2],首先將所有語音輸入轉換成相同的數據格式并進行降噪處理[3],由于不同設備的采樣率和采樣精度的不同,可能對有些數據要進行裁剪或插值處理[4].當所有數據對齊后即可以按照既定的頻率進行混音,本文將著重對混音算法的兩個關鍵的環節進行闡釋,首先是任意輸出通道的混音算法,其次是多輸出通道的混音組織邏輯.

圖3 語音通信系統軟件方案簡圖
2.2.1 任意輸出通道的混音算法
傳統的混音算法有很多,但對于機載語音通信系統來說都有一些缺點.
式(1)[5]描述了最簡單的混音算法.直接將t時刻的語音輸入線性疊加,這種算法在通信信道容量是最大輸入音量的n倍(n是通信參與成員的數量)的時候顯得簡單實用;在復雜機載通信中,通信參與成員可能有近10路,信道容量要做到10倍余量是不可能的.

箝位算法(如式(3)和式(4))[5,6]引入了箝位機制避免溢出,當混音參與數量少、極少出現溢出的時候是極為實用的,箝位算法是對式(1)的有益改進和補充.
當Voice_sum[t]<Voice_max時,

當Voice_sum[t]≥|Voice_max|時,

平均值算法如式(4)[5,6].將語音輸入的線性疊加值除以n,避免了溢出問題的產生;但是如果多達10路的語音同時輸入,而每路音量又被縮減為原來的十分之一,可能會出現聽不清楚任何一方講話的情形.

針對機載環境的實際應用,本方案對混音算法進行了綜合改進.首先加入實時權重,如式(5)和(6)所示[6,7],In[i,t]是第i路輸入的t時刻的聲音強度,Volumei[j,t]是輸出到通道i的混音中來自j通道的輸入分量的t時刻音量,來自通道i所對應的ACP/TACP面板上的用戶配置.將權重因子fi[t]引入混音式(6),即得到的第i通道混音輸出Voice_sumi[t].這種算法解決了兩個問題:
(1)混音權重由聲音的輸入強度和混音接收端主動設置的音量組合決定,即通過音量配置就可以影響混音輸出中各個分量的權重.
(2)按照權重分配各輸入分量在混音中的占比,直接避免了混音溢出問題.

式(6)解決了混音溢出的問題,但是犧牲了混音輸出中各分量的音量.特別是在每路音量都比較小的時候最后的混音結果中分配給各分量的音量將更小,甚至小到影響收聽.在加入混音的通道比較少的時候,用戶可以通過調大某一路音量來適當的增加這一路輸入分量混音后的音量,但是如果混音輸入通道較多且要關注兩路以上的輸入的時候,這種彌補就顯得不足了.而另一方面不可能所有通道都以滿負載輸入,也不可能所有通道都選擇滿音量,所以Voice_sumi[t]的值可能遠小于通道負荷.所以,一方面混音后各分量音量大幅變小,另一方面通道又沒有滿負荷運行,造成了浪費;為解決這兩個問題,對算法進一步進行了改進,如圖4.

圖4 任意通道混音算法流程圖
圖4中,Ki是放大系數、Voice_max是軟件限位值,Voice_sumi[t]和Voice_max的比較結果會觸發鉗位因子gi動態變化從而漸進的修正最終的Voice_sumi[t][8].
Ki、Voice_max是兩個經驗值,需要綜合音頻系統信道的帶寬和各通道混音的典型輸入情況確定.恰當的Ki值可以讓最大混音輸出值處于溢出臨界狀態,最大限度利用信道寬度;而Voice_max和gi的配合最大限度限制了在混音分量加入或者退出時音量的陡變.總之,按照這個算法得到的混音輸出值達到了如下目的:
(1)有新的分量加入/退出混音時,不會導致混音輸出值瞬間增大/減小;無論混音參與分量如何變化,最終輸出的音量都將循序增加/減小,發送若干包后再趨于穩定;
(2)通過實驗,選擇恰當的Ki值,可以保證混音輸出基本不會溢出,只有在聲音陡變時可能會短時間工作在臨界狀態,但是也能很快回到Voice_max附近,不會產生超出指標范圍的噪音.
(3)通過音量調節實現了混音權重分配.當某個輸入分量被調大時,會擠占其它輸入分量的信道資源,從而獲得重點關注.
(4)混音算法沒有造成明顯的延時,實時性良好.
2.2.2 多輸出通道混音組織邏輯算法的另外一個難點是系統中有多個通道需要同時輸出混音,并且每個通道的混音設定是其對應的ACP/TACP自行定制的.為實現這一功能,系統為每一個輸出通道維護了一張音量/權重配置表,配置表的內容根據對應輸出通道的設置(來自ACP/TACP)實時更新.CPU調用任意輸出通道混音算法依次輪詢每張配置表,即可得到各個通道定制的混音輸出值,流程如圖5.

圖5 多通道混音組織邏輯流程圖
系統采用了運算速率高達2400MFLOPS的DSP,而我們的混音周期是毫秒級的、混音輸出通道一般不會超出10個,所以技術上是可行的.系統所需要提供的主要資源就是給每一個通道維護一個音量/權重配置表.至此在新增加極少資源的情況下就可以實現“有優先級、用戶可定制的機載會議系統”的預期目標.
本方案中多通道混音組織邏輯新增的代碼量不超過10%,整個混音方案總代碼量不超過2000行,對于開發成本高昂的C級航空軟件來說本方案是簡潔有效的.
機載語音通信系統有一些高優先級的提示音和告警音需要突出展現,如圖6所示.來自中央告警計算機的告警音具有最高優先級,應當被實時的清晰無疑的播報出來.當有中央告警音到來(離散信號有效)時,后艙呼叫和地面呼叫被同時抑制.告警音提示音混音被分為兩路,一路獨占信道,以最大音量發送到機載廣播;另一路作為混音輸入加入到混音中,但是軟件賦予這一路輸入較高的權重(設整個信道權重為1,這里賦予其0.6的權重),不能被調節.當告警、提示音有輸入時,各個終端聽到的結果就是其它音頻分量音量瞬間降低,告警音提示音混音被凸顯出來,直到告警音提示音混音值為0(關斷閾值).

圖6 提示音和告警音混音
另外,本設計中主駕(設為ACP1)負責會議的管理,處理接入請求和掛斷請求.由于空地通話的特殊性,地面可能要求單獨和某個終端通話、也可能要求收聽機上會議,ACP1有優先搶占和地面通話的權限.
所有輸入通道均輸入1 kHz的等相位的單音、且所有通道音量開到最大時,測試結果如表1和圖7所示.結果顯示:
(1)混音輸入值幅度的變化對混音輸出幅度(穩定后的值)基本不產生影響,混音輸出幅度由對應輸出通道的音量設置決定;
(2)混音輸出失真率小于3%,并且隨輸入音量的增大而減小,滿足需求.

表1 混音輸出幅度和失真率測試統計表

圖7 混音輸出幅度和失真率測試結果截圖示例
在圖8所示的語音通信系統硬件平臺上測試了本文描述的混音方法設計的機載會議系統.測試結果顯示,系統功能工作正常,性能良好.達到以下預期效果:
(1)ACP/TACP面板上旋鈕可以實時調整各個語音輸入通道的音量/權重占比,達到清晰關注某一個或者幾個輸入分量的目的,不存在混音路數太多,導致每一路都聽不清的情形,達到預定目的;
(2)在混音分量加入退出或者用戶快速調整音量時,混音輸出中各個分量沒有明顯的音量突變,音量調整漸進柔和;
(3)在有告警到來時,混音中其它分量陡然變小、告警音被凸顯,提示作用十分明顯;
(4)所有音量均開到最大時執行混音分量加入或者退出沒有引入明顯噪音,沒有削峰現象;
(5)從音頻信號輸入到混音輸出信號延遲小于5 ms,不影響實時交流.

圖8 通信導航系統地面測試平臺
本文采用的算法簡潔,非常符合高安全性要求的航空軟件的設計思路.這種簡單明了的設計縮短了產品開發周期、對快速取得適航證有相當積極的意義,有利于產品快速進入市場,有利于加速追趕國際先進航電軟件.
本文描述的算法是基于國內主流CN系統平臺實現的,既能代表未來機載語音通信系統的發展方向,同時又能兼顧成本、向后兼容,有利于快速類似CN系統上移植.