馬永松,冉進(jìn)剛,彭 健
(中電科航空電子有限公司,成都 611731)
機(jī)載語音通信系統(tǒng)一直是航空電子系統(tǒng)的最重要組成部分,在通飛航電系統(tǒng)中機(jī)載語音通信功能包括飛機(jī)內(nèi)部各崗位之間的通話和空地通話.
中小型通航飛機(jī)通信參與成員比較少,大多采用對(duì)講方式;但是大型通航飛機(jī)(括大型水陸兩棲飛機(jī)、大型固定翼通用任務(wù)型飛機(jī)、民用重型直升機(jī)等)通信參與成員變多、執(zhí)行的任務(wù)也更加復(fù)雜,在許多任務(wù)中要求不同任務(wù)崗位之間更緊密的協(xié)作[1].隨著國產(chǎn)大型通航飛機(jī)的研發(fā),需要機(jī)載語音通信系統(tǒng)成為支持飛行員、觀察員、執(zhí)行任務(wù)的各崗位、飛機(jī)狀態(tài)提示(告警音、各種提示音)以及地面指揮員之間進(jìn)行的多邊語音交互的平臺(tái).這對(duì)機(jī)載語音通信系統(tǒng)提出了更高的期望,如果能把所有的任務(wù)參與者都放在一個(gè)“會(huì)議”里,所有信息將在第一時(shí)間傳輸?shù)礁鲘徫?這對(duì)協(xié)作應(yīng)對(duì)復(fù)雜任務(wù)和突發(fā)情況將極為有利.
本文提出了一套簡單實(shí)用的混音方法,并在此基礎(chǔ)上設(shè)計(jì)出了“有優(yōu)先級(jí)、用戶可定制的機(jī)載會(huì)議系統(tǒng)”;不但大幅提升機(jī)載語音系統(tǒng)的性能,而且軟件簡單,開發(fā)成本低、耗時(shí)短、安全性高,對(duì)快速取得適航證、投入市場極為有利.
傳統(tǒng)的機(jī)載語音通信系統(tǒng)多采用對(duì)講模式.其優(yōu)點(diǎn)包括:
(1)采用“你一言”、“我一語”的溝通方式,溝通清晰、準(zhǔn)確;
(2)一般主駕駛員具有最高的通話優(yōu)先級(jí),隨時(shí)可以搶占通話信道.
但其缺點(diǎn)也很突出的: 參與成員不能太多、只能滿足相對(duì)簡單的任務(wù)交互.
隨著通航飛機(jī)的大型化、任務(wù)復(fù)雜化,對(duì)機(jī)載語音通信系統(tǒng)的要求也越來越高.這些飛機(jī)往往需要執(zhí)行救援、滅火、空投等各種復(fù)雜任務(wù).要完成這些復(fù)雜任務(wù),需要包括駕艙(主駕駛、副駕駛、機(jī)械師、觀察員)、后艙任務(wù)艙(參與任務(wù)的各崗位)、飛機(jī)告警及各種提示音和地面指揮的有效協(xié)作.這就給語音通信系統(tǒng)提出了更高的要求,包括:
(1)系統(tǒng)可以工作在“會(huì)議模式”,容納更多成員參與通信,同時(shí)避免高優(yōu)先級(jí)成員長時(shí)間占用信道,導(dǎo)致延誤;通信參與成員在通信建立之后隨時(shí)可以說話,每個(gè)通信參與成員能聽到所有成員(包括自己)的語音;
(2)系統(tǒng)是“用戶可實(shí)時(shí)定制”的;在任務(wù)進(jìn)行中,由通信參與成員進(jìn)行簡單的設(shè)定就可以完成新的定制;每個(gè)通信參與成員應(yīng)該可以根據(jù)所在任務(wù)崗位的實(shí)際需要選擇重點(diǎn)收聽某路或者某幾路音源,突出重點(diǎn)避免次要音源的干擾.
(3)由于空地通信的特殊性,機(jī)上各崗位應(yīng)該有權(quán)進(jìn)行空地通信(但是其它機(jī)上乘員可以收聽到雙方的通話),以便在某些任務(wù)的關(guān)鍵階段,地面可以直接指揮對(duì)應(yīng)崗位,而不是通過飛行員間接指揮.
(4)賦予關(guān)鍵成員(主駕)管理者角色,如有空地通話優(yōu)先權(quán)、通話接入管理權(quán)等.
當(dāng)前航電各LRU之間的基本都實(shí)現(xiàn)了總線通訊;隨著DSP、FPGA以及數(shù)字化語音處理芯片的成熟和穩(wěn)定,機(jī)載語音通信系統(tǒng)也走入了數(shù)字化時(shí)代.這給實(shí)現(xiàn)理想的“有優(yōu)先級(jí)、用戶可定制的機(jī)載會(huì)議系統(tǒng)”帶來了機(jī)遇,但同時(shí)也面臨許多挑戰(zhàn):
(1)在民用航空領(lǐng)域,語音通信系統(tǒng)軟件對(duì)飛行安全有重要作用,屬于C級(jí)軟件.DO-178C對(duì)C級(jí)軟件的計(jì)劃、需求、開發(fā)、集成驗(yàn)證、生命周期等有一系列規(guī)范,遵照這些規(guī)范進(jìn)行軟件開發(fā),更容易滿足適航要求、取得適航認(rèn)證;但是嚴(yán)苛的開發(fā)規(guī)范也導(dǎo)致了更高的開發(fā)成本,在國內(nèi),一款C級(jí)民機(jī)機(jī)載軟件從計(jì)劃階段到取得適航證往往要數(shù)年時(shí)間.因此,滿足功能的情況下盡量的精簡設(shè)計(jì),對(duì)于保證安全、節(jié)約開發(fā)成本、縮短開發(fā)時(shí)間極為重要.
(2)鑒于航電的特殊性,如果能不改變機(jī)載語音通信系統(tǒng)硬件體系架構(gòu),僅僅通過優(yōu)化軟件算法,就可以實(shí)現(xiàn)“有優(yōu)先級(jí)、用戶可定制的機(jī)載會(huì)議系統(tǒng)”,那么就可以最大限度的保證系統(tǒng)安全性、降低研發(fā)成本、控制研發(fā)周期,這就給軟件開發(fā)提出了很高的要求.
(3)在混音環(huán)境中,一般只能將混音后的音量整體調(diào)大或者調(diào)小.而“有優(yōu)先級(jí)、用戶可定制的機(jī)載會(huì)議系統(tǒng)”要求各成員可以動(dòng)態(tài)配置想要收聽的信息以及各分量權(quán)重,這要求軟件算法有所突破.
(4)機(jī)載語音通信系統(tǒng)需求對(duì)實(shí)時(shí)性、信噪比、系統(tǒng)穩(wěn)定性等提出了明確的指標(biāo),要求軟件算法簡單實(shí)用而且工作穩(wěn)定.
機(jī)載語音通信系統(tǒng)是CN系統(tǒng)的一部分,涉及眾多LRU(如圖1)[1],且由于CN系統(tǒng)的重要性,要將整個(gè)系統(tǒng)推翻重新設(shè)計(jì)其成本和耗費(fèi)的時(shí)間是難以接受的.因此,本文正是在圖1所示系統(tǒng)上通過優(yōu)化RIU軟件實(shí)現(xiàn)語音通信系統(tǒng)的品質(zhì)提升.
圖1 機(jī)載語音通信系統(tǒng)框圖
由于CN系統(tǒng)中各LRU來自不同的廠家、接口各異,系統(tǒng)中涉及的主要語音格式包括A429數(shù)字音頻、RS422/RS485數(shù)字音頻、模擬音頻.RIU作為音頻接口和處理單元,是整個(gè)系統(tǒng)中樞,負(fù)責(zé)所有語音的信號(hào)、語音控制信號(hào)的收發(fā)和處理;也就是說RIU軟件的質(zhì)量直接影響整個(gè)機(jī)載語音系統(tǒng)的品質(zhì).
RIU的外圍設(shè)備主要包括空地通信電臺(tái)、ACP/TACP(如圖2),其中ACP/TACP可以接入耳機(jī)和麥克風(fēng),也可以設(shè)置通信狀態(tài)和音量.
圖2 常見的ACP/TACP操作面板
軟件方案簡述如圖3[2],首先將所有語音輸入轉(zhuǎn)換成相同的數(shù)據(jù)格式并進(jìn)行降噪處理[3],由于不同設(shè)備的采樣率和采樣精度的不同,可能對(duì)有些數(shù)據(jù)要進(jìn)行裁剪或插值處理[4].當(dāng)所有數(shù)據(jù)對(duì)齊后即可以按照既定的頻率進(jìn)行混音,本文將著重對(duì)混音算法的兩個(gè)關(guān)鍵的環(huán)節(jié)進(jìn)行闡釋,首先是任意輸出通道的混音算法,其次是多輸出通道的混音組織邏輯.
圖3 語音通信系統(tǒng)軟件方案簡圖
2.2.1 任意輸出通道的混音算法
傳統(tǒng)的混音算法有很多,但對(duì)于機(jī)載語音通信系統(tǒng)來說都有一些缺點(diǎn).
式(1)[5]描述了最簡單的混音算法.直接將t時(shí)刻的語音輸入線性疊加,這種算法在通信信道容量是最大輸入音量的n倍(n是通信參與成員的數(shù)量)的時(shí)候顯得簡單實(shí)用;在復(fù)雜機(jī)載通信中,通信參與成員可能有近10路,信道容量要做到10倍余量是不可能的.
箝位算法(如式(3)和式(4))[5,6]引入了箝位機(jī)制避免溢出,當(dāng)混音參與數(shù)量少、極少出現(xiàn)溢出的時(shí)候是極為實(shí)用的,箝位算法是對(duì)式(1)的有益改進(jìn)和補(bǔ)充.
當(dāng)Voice_sum[t]<Voice_max時(shí),
當(dāng)Voice_sum[t]≥|Voice_max|時(shí),
平均值算法如式(4)[5,6].將語音輸入的線性疊加值除以n,避免了溢出問題的產(chǎn)生;但是如果多達(dá)10路的語音同時(shí)輸入,而每路音量又被縮減為原來的十分之一,可能會(huì)出現(xiàn)聽不清楚任何一方講話的情形.
針對(duì)機(jī)載環(huán)境的實(shí)際應(yīng)用,本方案對(duì)混音算法進(jìn)行了綜合改進(jìn).首先加入實(shí)時(shí)權(quán)重,如式(5)和(6)所示[6,7],In[i,t]是第i路輸入的t時(shí)刻的聲音強(qiáng)度,Volumei[j,t]是輸出到通道i的混音中來自j通道的輸入分量的t時(shí)刻音量,來自通道i所對(duì)應(yīng)的ACP/TACP面板上的用戶配置.將權(quán)重因子fi[t]引入混音式(6),即得到的第i通道混音輸出Voice_sumi[t].這種算法解決了兩個(gè)問題:
(1)混音權(quán)重由聲音的輸入強(qiáng)度和混音接收端主動(dòng)設(shè)置的音量組合決定,即通過音量配置就可以影響混音輸出中各個(gè)分量的權(quán)重.
(2)按照權(quán)重分配各輸入分量在混音中的占比,直接避免了混音溢出問題.
式(6)解決了混音溢出的問題,但是犧牲了混音輸出中各分量的音量.特別是在每路音量都比較小的時(shí)候最后的混音結(jié)果中分配給各分量的音量將更小,甚至小到影響收聽.在加入混音的通道比較少的時(shí)候,用戶可以通過調(diào)大某一路音量來適當(dāng)?shù)脑黾舆@一路輸入分量混音后的音量,但是如果混音輸入通道較多且要關(guān)注兩路以上的輸入的時(shí)候,這種彌補(bǔ)就顯得不足了.而另一方面不可能所有通道都以滿負(fù)載輸入,也不可能所有通道都選擇滿音量,所以Voice_sumi[t]的值可能遠(yuǎn)小于通道負(fù)荷.所以,一方面混音后各分量音量大幅變小,另一方面通道又沒有滿負(fù)荷運(yùn)行,造成了浪費(fèi);為解決這兩個(gè)問題,對(duì)算法進(jìn)一步進(jìn)行了改進(jìn),如圖4.
圖4 任意通道混音算法流程圖
圖4中,Ki是放大系數(shù)、Voice_max是軟件限位值,Voice_sumi[t]和Voice_max的比較結(jié)果會(huì)觸發(fā)鉗位因子gi動(dòng)態(tài)變化從而漸進(jìn)的修正最終的Voice_sumi[t][8].
Ki、Voice_max是兩個(gè)經(jīng)驗(yàn)值,需要綜合音頻系統(tǒng)信道的帶寬和各通道混音的典型輸入情況確定.恰當(dāng)?shù)腒i值可以讓最大混音輸出值處于溢出臨界狀態(tài),最大限度利用信道寬度;而Voice_max和gi的配合最大限度限制了在混音分量加入或者退出時(shí)音量的陡變.總之,按照這個(gè)算法得到的混音輸出值達(dá)到了如下目的:
(1)有新的分量加入/退出混音時(shí),不會(huì)導(dǎo)致混音輸出值瞬間增大/減小;無論混音參與分量如何變化,最終輸出的音量都將循序增加/減小,發(fā)送若干包后再趨于穩(wěn)定;
(2)通過實(shí)驗(yàn),選擇恰當(dāng)?shù)腒i值,可以保證混音輸出基本不會(huì)溢出,只有在聲音陡變時(shí)可能會(huì)短時(shí)間工作在臨界狀態(tài),但是也能很快回到Voice_max附近,不會(huì)產(chǎn)生超出指標(biāo)范圍的噪音.
(3)通過音量調(diào)節(jié)實(shí)現(xiàn)了混音權(quán)重分配.當(dāng)某個(gè)輸入分量被調(diào)大時(shí),會(huì)擠占其它輸入分量的信道資源,從而獲得重點(diǎn)關(guān)注.
(4)混音算法沒有造成明顯的延時(shí),實(shí)時(shí)性良好.
2.2.2 多輸出通道混音組織邏輯算法的另外一個(gè)難點(diǎn)是系統(tǒng)中有多個(gè)通道需要同時(shí)輸出混音,并且每個(gè)通道的混音設(shè)定是其對(duì)應(yīng)的ACP/TACP自行定制的.為實(shí)現(xiàn)這一功能,系統(tǒng)為每一個(gè)輸出通道維護(hù)了一張音量/權(quán)重配置表,配置表的內(nèi)容根據(jù)對(duì)應(yīng)輸出通道的設(shè)置(來自ACP/TACP)實(shí)時(shí)更新.CPU調(diào)用任意輸出通道混音算法依次輪詢每張配置表,即可得到各個(gè)通道定制的混音輸出值,流程如圖5.
圖5 多通道混音組織邏輯流程圖
系統(tǒng)采用了運(yùn)算速率高達(dá)2400MFLOPS的DSP,而我們的混音周期是毫秒級(jí)的、混音輸出通道一般不會(huì)超出10個(gè),所以技術(shù)上是可行的.系統(tǒng)所需要提供的主要資源就是給每一個(gè)通道維護(hù)一個(gè)音量/權(quán)重配置表.至此在新增加極少資源的情況下就可以實(shí)現(xiàn)“有優(yōu)先級(jí)、用戶可定制的機(jī)載會(huì)議系統(tǒng)”的預(yù)期目標(biāo).
本方案中多通道混音組織邏輯新增的代碼量不超過10%,整個(gè)混音方案總代碼量不超過2000行,對(duì)于開發(fā)成本高昂的C級(jí)航空軟件來說本方案是簡潔有效的.
機(jī)載語音通信系統(tǒng)有一些高優(yōu)先級(jí)的提示音和告警音需要突出展現(xiàn),如圖6所示.來自中央告警計(jì)算機(jī)的告警音具有最高優(yōu)先級(jí),應(yīng)當(dāng)被實(shí)時(shí)的清晰無疑的播報(bào)出來.當(dāng)有中央告警音到來(離散信號(hào)有效)時(shí),后艙呼叫和地面呼叫被同時(shí)抑制.告警音提示音混音被分為兩路,一路獨(dú)占信道,以最大音量發(fā)送到機(jī)載廣播;另一路作為混音輸入加入到混音中,但是軟件賦予這一路輸入較高的權(quán)重(設(shè)整個(gè)信道權(quán)重為1,這里賦予其0.6的權(quán)重),不能被調(diào)節(jié).當(dāng)告警、提示音有輸入時(shí),各個(gè)終端聽到的結(jié)果就是其它音頻分量音量瞬間降低,告警音提示音混音被凸顯出來,直到告警音提示音混音值為0(關(guān)斷閾值).
圖6 提示音和告警音混音
另外,本設(shè)計(jì)中主駕(設(shè)為ACP1)負(fù)責(zé)會(huì)議的管理,處理接入請(qǐng)求和掛斷請(qǐng)求.由于空地通話的特殊性,地面可能要求單獨(dú)和某個(gè)終端通話、也可能要求收聽機(jī)上會(huì)議,ACP1有優(yōu)先搶占和地面通話的權(quán)限.
所有輸入通道均輸入1 kHz的等相位的單音、且所有通道音量開到最大時(shí),測試結(jié)果如表1和圖7所示.結(jié)果顯示:
(1)混音輸入值幅度的變化對(duì)混音輸出幅度(穩(wěn)定后的值)基本不產(chǎn)生影響,混音輸出幅度由對(duì)應(yīng)輸出通道的音量設(shè)置決定;
(2)混音輸出失真率小于3%,并且隨輸入音量的增大而減小,滿足需求.
表1 混音輸出幅度和失真率測試統(tǒng)計(jì)表
圖7 混音輸出幅度和失真率測試結(jié)果截圖示例
在圖8所示的語音通信系統(tǒng)硬件平臺(tái)上測試了本文描述的混音方法設(shè)計(jì)的機(jī)載會(huì)議系統(tǒng).測試結(jié)果顯示,系統(tǒng)功能工作正常,性能良好.達(dá)到以下預(yù)期效果:
(1)ACP/TACP面板上旋鈕可以實(shí)時(shí)調(diào)整各個(gè)語音輸入通道的音量/權(quán)重占比,達(dá)到清晰關(guān)注某一個(gè)或者幾個(gè)輸入分量的目的,不存在混音路數(shù)太多,導(dǎo)致每一路都聽不清的情形,達(dá)到預(yù)定目的;
(2)在混音分量加入退出或者用戶快速調(diào)整音量時(shí),混音輸出中各個(gè)分量沒有明顯的音量突變,音量調(diào)整漸進(jìn)柔和;
(3)在有告警到來時(shí),混音中其它分量陡然變小、告警音被凸顯,提示作用十分明顯;
(4)所有音量均開到最大時(shí)執(zhí)行混音分量加入或者退出沒有引入明顯噪音,沒有削峰現(xiàn)象;
(5)從音頻信號(hào)輸入到混音輸出信號(hào)延遲小于5 ms,不影響實(shí)時(shí)交流.
圖8 通信導(dǎo)航系統(tǒng)地面測試平臺(tái)
本文采用的算法簡潔,非常符合高安全性要求的航空軟件的設(shè)計(jì)思路.這種簡單明了的設(shè)計(jì)縮短了產(chǎn)品開發(fā)周期、對(duì)快速取得適航證有相當(dāng)積極的意義,有利于產(chǎn)品快速進(jìn)入市場,有利于加速追趕國際先進(jìn)航電軟件.
本文描述的算法是基于國內(nèi)主流CN系統(tǒng)平臺(tái)實(shí)現(xiàn)的,既能代表未來機(jī)載語音通信系統(tǒng)的發(fā)展方向,同時(shí)又能兼顧成本、向后兼容,有利于快速類似CN系統(tǒng)上移植.