李欣顏, 胡建軍, 龐鳳穎
(中國北方車輛研究所,北京 100072)
隨著信息科學(xué)技術(shù)的飛速發(fā)展,人機(jī)語音交互逐漸成為民用智能車載設(shè)備的標(biāo)配.隨著技術(shù)發(fā)展與未來信息化戰(zhàn)場的需要,其智能化程度也越來越高,人機(jī)交互也越來越復(fù)雜,任務(wù)負(fù)荷也越來越重,乘員迫切需要從紛繁復(fù)雜的任務(wù)中解脫出來.因此特種車輛也開始利用人機(jī)語音交互技術(shù),解放乘員的雙手和雙眼,提高人機(jī)交互效能,以滿足未來協(xié)同作戰(zhàn)需求.
特種車輛不同于民用車輛,車內(nèi)人機(jī)語音交互對象不局限于一個駕駛員,一般車內(nèi)有多少個乘員就有多少個語音交互設(shè)備,乘員根據(jù)不同需求所需要的語音交互設(shè)備也可能不同.特種車輛語音交互控制的最大障礙在于使用一個USB端口來驅(qū)動多個同類或不同類的語音交互設(shè)備進(jìn)行聲音采集與播報.現(xiàn)有的研究提出了一些方案,主要是利用單片機(jī)控制多路模擬開關(guān),但電路復(fù)雜且安裝調(diào)試繁瑣[1-2].鑒于此,提出了一種在同一PC機(jī)上基于USB-HUB的多路語音交互設(shè)備驅(qū)動控制系統(tǒng).由于該系統(tǒng)采用了通信串行USB總線,故具有真正的熱插拔、即插即用(PnP)功能[3-4],可以針對乘員不同的要求,實現(xiàn)不同情況下多語音交互設(shè)備的聲音采集與播放驅(qū)動控制.
多語音交互設(shè)備驅(qū)動控制系統(tǒng)包括一臺PC機(jī)、一個支持7路的USB-HUB和7個語音交互設(shè)備,系統(tǒng)連接如圖1所示.系統(tǒng)要求在同一PC機(jī)上實現(xiàn)對7個乘員的語音交互設(shè)備聲卡進(jìn)行驅(qū)動,這就需要在該PC機(jī)上實現(xiàn)能夠同時驅(qū)動7個乘員的語音交互設(shè)備,并根據(jù)乘員功能需求控制 2種聲卡類型的語音交互設(shè)備.該系統(tǒng)中,在PC機(jī)上使用一個USB-HUB帶動2個HeadSet-2CH聲卡類型的語音交互設(shè)備、5個USB PnP Sound Device類型的語音交互設(shè)備.
圖1 多語音交互設(shè)備驅(qū)動控制系統(tǒng)架構(gòu)示意圖
1)將USB-HUB連接到計算機(jī)后,按照USB-HUB的USB口的編號順序(USB1-USB7,見圖1),將同一類聲卡類型的其中一個語音交互設(shè)備插在USB-HUB的USB1口上,以獲取該聲卡類型的語音交互設(shè)備對應(yīng)USB1口的語音交互設(shè)備號,注意每次只插一個語音交互設(shè)備.
2)打開PC機(jī)機(jī)上的系統(tǒng)聲音信息界面,即可以看到該語音交互設(shè)備的聲卡的信息,如圖2所示.如該類語音交互設(shè)備的聲卡類型為USB PnP Sound Device,那么該類的語音交互設(shè)備在此USB-HUB的USB1口上的編號為33.
3)將該語音交互設(shè)備依次插在USB-HUB的USB2到USB7口上,依據(jù)步驟2可以分別獲取該類聲卡在USB2到USB7口的編號.
4)按照上述步驟1)~3),獲取另一種類型的語音交互設(shè)備在USB-HUB的USB1到USB7口上的編號.
5)將上述步驟獲取的兩類語音交互設(shè)備在USB-HUB的USB1到USB7口上的聲卡編號信息手動輸入文件中保存,形成語音交互設(shè)備聲卡的USB編號與USB-HUB的USB口編號的對應(yīng)表,將該對應(yīng)表保存在程序運行目錄下,如圖3所示.對應(yīng)表中間一列的1~7分別代表USB-HUB的USB1到USB7口編號,左邊一列的數(shù)字33、30、32、31、36、35、34分別代表聲卡類型為USB PnP Sound Device的語音交互設(shè)備在USB-HUB的USB1到USB7口上對應(yīng)的編號,右邊一列的數(shù)字15、14、13、12、11、10、9分別代表聲卡類型為HeadSet-2CH的語音交互設(shè)備在USB-HUB的USB1到USB7口上對應(yīng)的編號.
圖2 語音交互設(shè)備聲卡信息圖
圖3 聲卡編號與USB-HUB的USB口編號對應(yīng)表
在程序中,通過調(diào)用winmm.lib庫函數(shù)自動獲得語音交互設(shè)備在PC機(jī)上的聲卡系統(tǒng)編號與聲卡的USB編號對應(yīng)表[5].如圖4所示,左邊第一列的數(shù)字0、1、2、3、4、5、6表示的是PC機(jī)給語音交互設(shè)備分配的聲卡系統(tǒng)編號,共有7塊聲卡.右邊一列的信息表示語音交互設(shè)備的聲卡類型名稱和對應(yīng)USB口的編號,如33-USB PnP Sound Device,33即為聲卡在USB口的編號,USB PnP Sound Device為聲卡類型名稱,插在不同的USB口的語音交互設(shè)備的聲卡類型名稱相同,但聲卡USB編號不同.12-HeadSet-2CH為另一種語音交互設(shè)備的聲卡類型名稱和對應(yīng)的USB口編號.同一種聲卡類型的語音交互設(shè)備插在同一個USB口上,聲卡的類型名稱和USB編號是固定不變的.不同聲卡類型的語音交互設(shè)備插在同一個USB口上,聲卡的類型名稱和USB編號也都會不同.
圖4 聲卡系統(tǒng)編號與聲卡USB編號對應(yīng)表
將需要使用的7個語音交互設(shè)備全部插在與PC機(jī)相連的USB-HUB上,每個語音交互設(shè)備插在USB-HUB固定的USB口,通過編程,實現(xiàn)程序自動匹配并找到該聲卡的USB語音交互設(shè)備號,具體步驟如下:
1)程序啟動后,通過winmm.lib庫函數(shù)自動獲得語音交互設(shè)備聲卡系統(tǒng)編號與聲卡USB編號對應(yīng)表,生成文件如圖4所示.
2)通過2.1節(jié)步驟形成語音交互設(shè)備的USB編號與USB-HUB的USB口的對應(yīng)表(如圖3所示),并且保存在程序運行目錄下.
3)程序根據(jù)輸入的USB-HUB的USB口編號進(jìn)行自動匹配.以USB4為例:根據(jù)圖3可以得到USB-HUB的USB4口對應(yīng)的兩種不同聲卡類型的語音交互設(shè)備的聲卡USB設(shè)備編號分別為31和12;先用31在圖4找設(shè)備的USB編號為31的語音交互設(shè)備,無法找到后則再用12在圖4中找,結(jié)果找到USB編號為12的語音交互設(shè)備對應(yīng)的聲卡系統(tǒng)設(shè)備號為0,則USB4口上的語音交互設(shè)備的輸入(麥克風(fēng))輸出(揚聲器)設(shè)備號都為0.再舉一個輸入(麥克風(fēng))和輸出(揚聲器)是兩個設(shè)備號的例子,如假設(shè)語音交互設(shè)備輸入的USB口為5,根據(jù)圖3可以找到兩種語音交互設(shè)備的聲卡USB設(shè)備編號分別為36和11,用36在圖4可以找到聲卡USB編號為36的語音交互設(shè)備對應(yīng)的聲卡系統(tǒng)設(shè)備號3和4,則知道了插在USB5上的聲卡的輸入(麥克風(fēng))設(shè)備號為3,輸出(揚聲器)設(shè)備號為4.
4)重復(fù)步驟3,獲取每個插在USB-HUB的USB口的語音交互設(shè)備聲卡系統(tǒng)輸入編號和系統(tǒng)輸出編號.
找到該語音交互設(shè)備聲卡的系統(tǒng)輸入(麥克風(fēng))輸出(揚聲器)設(shè)備號后,該語音交互設(shè)備就可以被正常驅(qū)動.在聲音采集時調(diào)用該語音交互設(shè)備聲卡的系統(tǒng)的麥克風(fēng)設(shè)備號,即可以進(jìn)行聲音采集;在聲音播放時調(diào)用該語音交互設(shè)備聲卡對應(yīng)的系統(tǒng)揚聲器設(shè)備號,即可進(jìn)行聲音播放,其流程見圖5.
圖5 獲取語音交互設(shè)備聲卡的系統(tǒng)編號的流程圖
該方法已經(jīng)在某項目語音交互仿真系統(tǒng)通過考核驗證,該項目的語音交互仿真系統(tǒng)使用一個USB-HUB在一臺PC上同時驅(qū)動兩種類型的語音交互設(shè)備,驅(qū)動語音交互設(shè)備數(shù)量為7個,效果良好.
該系統(tǒng)架構(gòu)圖如圖1所示,系統(tǒng)軟件主要由乘員語音交互仿真控制界面和后臺服務(wù)程序兩部分組成.乘員語音交互仿真控制界面主要實現(xiàn)各種場景下各功能的可視化操控和狀態(tài)監(jiān)控;后臺服務(wù)程序主要實施各種策略及功能.系統(tǒng)測試結(jié)果示例如圖6所示.
由圖6可知,系統(tǒng)設(shè)計符合設(shè)計要求,多個語音交互設(shè)備實現(xiàn)同時驅(qū)動,語音交互設(shè)備控制準(zhǔn)確.
圖6 乘員語音交互仿真控制界面
本設(shè)計突破了以往一個PC機(jī)上只能控制單路或者雙路語音交互設(shè)備控制的限制,實現(xiàn)了在一臺PC上僅占用一個USB口就能夠驅(qū)動多個同類聲卡的USB語音交互設(shè)備或多個不同類型聲卡的語音交互設(shè)備,且驅(qū)動的語音交互設(shè)備的最大數(shù)量與選用的USB-HUB的USB口數(shù)量相等,即選用USB-HUB的USB口數(shù)量越多,能夠驅(qū)動的語音交互設(shè)備越多.驅(qū)動系統(tǒng)采用了通信串行USB總線和USB-HUB技術(shù),故采集速度較快,系統(tǒng)抗干擾能力強(qiáng),極大提高了語音交互質(zhì)量.試驗室測試結(jié)果表明,系統(tǒng)成本低廉,性價比高,穩(wěn)定性強(qiáng).