基于語音識別技術(shù)和藍(lán)牙技術(shù)的數(shù)字化家庭綜合設(shè)計
掃描二維碼
隨時隨地手機(jī)看文章
語音識別技術(shù)是讓機(jī)器通過識別和理解過程把語音信號轉(zhuǎn)變?yōu)橄鄳?yīng)的文本或命令,其識別過程與人對語音識別處理過程基本上是一致的,包括語音特征提取、聲學(xué)模型與模式匹配(識別算法)、語言模型與語言處理三個部分。
語音識別系統(tǒng)根據(jù)口音辨識主要有以下2種:
(1) 特定發(fā)音人識別SD (Speaker Dependent)
(2) 非特定發(fā)音人識別SI( Speaker Independent)
藍(lán)牙技術(shù)(Bluetooth Technology)是一種短距 離無線通信技術(shù),它工作在免費(fèi)的ISM頻段(2.4GHz),采用跳頻/時分復(fù)用技術(shù),能實現(xiàn)點(diǎn)對多點(diǎn)的通信。通過藍(lán)牙無線傳輸?shù)姆绞娇梢詫⒁欢ǚ秶鷥?nèi)的數(shù)據(jù)設(shè)備或語音設(shè)備連接起來組成微微網(wǎng),使嵌有藍(lán)牙模塊的電子設(shè)備之間能實現(xiàn)方便快捷的通信。它的傳輸距離為10cm~10m,如果增加功率或是加上某些外設(shè)便可達(dá)到100m的傳輸距離,并且可穿透不同物質(zhì)以及在物質(zhì)間擴(kuò)散。藍(lán)牙采用無線接口來代替有線電纜連接,具有很強(qiáng)的移植性,適用于多種場合,它功耗低、成本低、對人體危害小,而且應(yīng)用簡單、容易實現(xiàn),所以易于推廣,成為構(gòu)建數(shù)字化家庭的理想技術(shù)。
設(shè)計方案
本系統(tǒng)中主控端采用SPCE061A單片機(jī)芯片完成語音識別和控制功能。BlueCore2 External芯片完成命令的發(fā)送。
總體上來說,本系統(tǒng)主控端分為兩個主要的方面,一個是語音識別模塊,另一個是藍(lán)牙無線通信模塊。
語音識別模塊部分采用了凌陽科技公司的SPCE061A單片機(jī)芯片來完成,該芯片是一款16位結(jié)構(gòu)的微控制器,工作電壓 VDD為2.4~3.6V(CPU), VDDH為2.4~5.5V(I/O),CPU時鐘 最高可達(dá)49.152MHz;內(nèi)置2K字SRAM、32K FLASH;可編程音頻處理;系統(tǒng)處于備用狀態(tài)下(時鐘 處于停止?fàn)顟B(tài)),耗電僅為2μA@3.6V;32位通用可編程輸入/輸出端口;14個中斷源可來自定時 器A / B時基,2個外部時鐘源輸入,鍵喚醒;具備觸鍵喚醒的功能;使用凌陽音頻編碼SACM-S480方式(壓縮比為80:3);3 2768Hz實時時鐘;單通道聲音模?數(shù)轉(zhuǎn)換器;聲音模?數(shù)轉(zhuǎn)換器輸入通道內(nèi)置麥克風(fēng)放大器 和自動增益控制(AGC )功能;具有低電壓復(fù)位(LVR)功能和低電壓監(jiān)測(LVD)功能;內(nèi)置在線仿真電路ICE(In- Circuit Emulator)接口;具有保密能力;具有WatchDog功能。
藍(lán)牙部分采用了CSR公司提供的單芯片解決方案。主控芯片為BlueCore2 External,有如下特點(diǎn):1.8V低電壓供電,0.18μm CMOS工藝,VFBGA封裝,芯片面積僅6*6mm;支持藍(lán)牙V1.2規(guī)范;芯片內(nèi)部集成 了完善的DSP藍(lán)牙基帶控制器,集成了通用的2.4GHz藍(lán)牙射頻終端以及藍(lán)牙信號自檢電路,無須外部PA,僅需非常簡單的外圍電路;內(nèi)嵌32kB RAM和16位精簡指令集微處理器,最多可外接8Mbit的FLASH用于存儲藍(lán)牙協(xié)議棧及藍(lán)牙應(yīng)用程序。
系統(tǒng)工作過程
由于本系統(tǒng)采用了特定發(fā)音人識別SD語音識別系統(tǒng),所以首先要對語音命令進(jìn)行訓(xùn)練。語音訓(xùn)練的過程其實就是語音特征模型的建立過程,首先錄入一條語音樣本,然后對樣本進(jìn)行采樣、量化、濾除噪音,對語音信號進(jìn)行線性預(yù)測分析,最終把語音信號用一個模型來表示,模型參數(shù)描述語音信號的波形和頻譜信息。然后再錄入一遍語音樣本,建模,對兩次的語音樣本的參數(shù)進(jìn)行匹配檢驗,如果滿足匹配條件,語音樣本錄入成功。
語音樣本錄入成功以后,當(dāng)開始識別時,其實也就是對發(fā)出的語音命令進(jìn)行建模,然后和語音樣本的模型參數(shù)進(jìn)行匹配檢驗。找到相匹配的語音樣本,返回識別結(jié)果。
SPCE061A單片機(jī)芯片完成語音命令的識別后,利用BSR_GetResult( )函數(shù)獲取識別結(jié)果。由于SPCE06 1A單片機(jī)芯片內(nèi)置2K字SRAM和32K FLASH,所以可共存儲3組命令,每組5條語音樣本,每次將一組語音樣本調(diào)入內(nèi)存,將輸入語音命令與該語音樣本比較產(chǎn)生識別結(jié)果,所以識別結(jié)果會返回是哪一組命令的第幾條語音樣本,然后根據(jù)識別結(jié)果來觸發(fā)相應(yīng)的命令。當(dāng)長時間沒有語音命令,該芯片將進(jìn)入休眠狀態(tài)以減少功耗。
SPCE061A單片機(jī)將識別結(jié)果通過I/O口傳遞給藍(lán)牙模塊,這里單片機(jī)SPCE061A有32個可編程I/O,但是藍(lán)牙模塊只有10個I/O口可以使用,因此將單片機(jī)的10個I/O口與藍(lán)牙的相應(yīng)I/O口連接,由于單片機(jī)和藍(lán)牙模塊的I/O口均可編程,則理論上可以產(chǎn)生1024種命令。
藍(lán)牙部分的開發(fā)基于藍(lán)牙串口應(yīng)用框架(Serial Port Profile ,SPP),采用了完全嵌入式模式,選擇BlueCore Virtual Machine Stack,應(yīng)用軟件在集成開發(fā)環(huán)境BlueLab中開發(fā)完成。
Bluelab開發(fā)工具包中,藍(lán)牙控制器應(yīng)用程序直接對連接管理(CM)進(jìn)行操作,在BlueCore Virtual Machine Stack的基礎(chǔ)上,實現(xiàn)串口應(yīng)用框架(SPP),完成對遠(yuǎn)端藍(lán)牙設(shè)備的查詢、鑒權(quán)、連接和控制信息發(fā)送過程。
Bluelab提供的虛擬機(jī)調(diào)度程序分配給控制器應(yīng)用程序和連接管理器(CM)不同的任務(wù)號,任務(wù)間采用消息隊列機(jī)制異步的發(fā)送消息進(jìn)行通信。
應(yīng)用程序通知連接管理器(CM)完成查詢、配對、連接等功能。PIO掃描程序完成控制信息的識別,通過與遠(yuǎn)端設(shè)備建立的ACL鏈路將控制信息發(fā)送出去。受控設(shè)備收到藍(lán)牙控制器的命令信息,從而完成藍(lán)牙控制器對受控設(shè)備的無線控制。
受控設(shè)備部分通過藍(lán)牙將命令接收過來,發(fā)送給設(shè)備的控制部分,設(shè)備執(zhí)行完命令后通過藍(lán)牙部分發(fā)送給主控設(shè)備一個完成信息,主控設(shè)備接收到完成信息后播放相應(yīng)的提示語音。
語音提示音儲存在SPCE061A單片機(jī)的片內(nèi)FLASH里,由于存儲空間所限,又要保證語音質(zhì)量,采用的語音提示音為SACM_S480格式,此格式的音頻文件壓縮后的編碼率為4.8Kbit/s、SACM_S480語音壓縮比為80:3,可以用凌陽科技公司提供的專業(yè)軟件對錄制的提示音進(jìn)行壓縮。
測試結(jié)果:
在語音識別部分錄入15條命令,分三組,每組五條,具體如下:
第一組:開始、電視、微波爐、燈、熱水器;
第二組:中央一套、中央二套、中央三套、中央四套、中央五套;
第三組:高功率、中高功率、中功率(焙烤、煨燒、文火)、中低功率(解凍)、低功率(保溫)。
由于電器的相關(guān)功能沒有跟進(jìn),所以并不能將這些完全實現(xiàn),只能在接收部分安置相應(yīng)的發(fā)光二極管表示命令發(fā)送狀態(tài)。
同時設(shè)想當(dāng)電器功能完成以后,會給控制部分發(fā)送一個回饋信號,比如微波爐食品加熱完畢,將會給控制器發(fā)送一個信號,控制部分將播放語音信息提示微波爐功能完成。因此,模擬電器部分在接到控制器控制信號一段時間后人為回饋一個完成信號。
將BlueCore2-External 芯片的藍(lán)牙發(fā)射功率級別設(shè)為Class2。控制部分與受控端藍(lán)牙模塊均使用藍(lán)牙模塊微帶天線,控制距離可達(dá)10米,控制器與受控端藍(lán)牙模塊均使用1.6dB的天線,控制距離可達(dá)30m。
將BlueCore2-External 芯片的藍(lán)牙發(fā) 射功率級別設(shè)為Class1??刂撇糠峙c受控端藍(lán)牙模塊均使用藍(lán)牙模塊微帶天線,控制距離可達(dá)60m,控制器與受控端藍(lán)牙模塊均使 用1.6dB的天線,控制距離可達(dá)150m。
總結(jié):
測試結(jié)果表明,語音模塊語音識別正確率可達(dá)95%以上,配有語音提示,使得操作沒有出現(xiàn)錯誤。藍(lán)牙模塊在命令的無線傳輸上也可以滿足實際距離等方面的需求。
本系統(tǒng)可以改進(jìn)的地方:
1 .本系統(tǒng)采用凌陽科技公司的SPCE061A單片機(jī)芯片,該芯片只有2K字內(nèi)置SRAM和32K內(nèi)置FLASH,凌陽科技公司最近剛推出SPCE061A的改進(jìn)版,這款芯片的內(nèi)置SRAM已擴(kuò)充到4K,使得每組的命令數(shù)可增加。
2 .本系統(tǒng)的藍(lán)牙部分暫時使用一對七模式,該模式主控端只能控制7個受控端,但是可以采用另外的藍(lán)牙系統(tǒng)提供微微網(wǎng)技術(shù)。微微網(wǎng)是由一組具有同一跳頻序列、在時序上同步的藍(lán)牙設(shè)備組成,包括兩種節(jié)點(diǎn):主節(jié)點(diǎn)和從節(jié)點(diǎn)。一個微微網(wǎng)中只能有1個主節(jié)點(diǎn),最多可以有7個活動的和255個休眠的從節(jié)點(diǎn)。這些休眠的從節(jié)點(diǎn)在信道上不活動,但是保持與主節(jié)點(diǎn)的同步,不用連接建立過程就可以變成活動狀態(tài),這就使得這個系統(tǒng)最多可以接入262個設(shè)備。
根據(jù)以上討論,可以發(fā)現(xiàn)本設(shè)計足以滿足低成本數(shù)字化家庭的語音控制需求。