付 蔚 唐鵬光 李 倩
(重慶郵電大學(xué)工業(yè)物聯(lián)網(wǎng)與網(wǎng)絡(luò)化控制教育部重點(diǎn)實(shí)驗(yàn)室,重慶 400065)
智能家居是將家庭中各種通信設(shè)備、家用電器和安防設(shè)備連接成為一個(gè)家庭智能化系統(tǒng),以便對(duì)上述設(shè)備進(jìn)行監(jiān)視、控制管理和信息交換,提供安全、高效、舒適、便利的家居環(huán)境[1]。
傳統(tǒng)的智能家居控制仍然依賴于人工觸發(fā)式控制,語(yǔ)音控制技術(shù)的引入將使得智能家居的控制不再單調(diào)。無(wú)論用戶身處室內(nèi)或室外都可以通過語(yǔ)音控制技術(shù),實(shí)現(xiàn)對(duì)家庭內(nèi)部設(shè)備的控制。語(yǔ)音是語(yǔ)言的聲學(xué)表現(xiàn),是人類交流信息最自然、最有效、最方便的手段。語(yǔ)音控制技術(shù)的使用將“人與家居”整合在一起。語(yǔ)音控制技術(shù)將改變現(xiàn)有的用戶與家居設(shè)備的信息交流方式,解放用戶的雙手,使用戶的家居生活具備更人性化的魅力。語(yǔ)音控制技術(shù)讓人與機(jī)器之間的溝通交流更加智能化,用戶可以像與人說話一樣,用自然化的人類語(yǔ)言操作語(yǔ)音控制系統(tǒng),從而實(shí)現(xiàn)語(yǔ)音控制系統(tǒng)的人機(jī)交互。
本文設(shè)計(jì)的智能家居語(yǔ)音控制系統(tǒng)主要是采用先進(jìn)的非特定人語(yǔ)音識(shí)別[3]技術(shù),并結(jié)合對(duì)識(shí)別到的內(nèi)容解析和控制指令下發(fā)來實(shí)現(xiàn)對(duì)智能家居內(nèi)部可控設(shè)備的控制,為用戶打造更加貼心、舒適的個(gè)性化智能家居體驗(yàn)。
整個(gè)智能家居語(yǔ)音控制系統(tǒng)主要由移動(dòng)終端語(yǔ)音控制軟件和嵌入式便攜語(yǔ)音控制器兩部分構(gòu)成。
安裝有移動(dòng)終端語(yǔ)音控制軟件的終端在接收到本地語(yǔ)音信息后,通過網(wǎng)絡(luò)(3G、GPRS、WiFi)將本地語(yǔ)音信息發(fā)送到訊飛語(yǔ)音云進(jìn)行識(shí)別,再將云端反饋的數(shù)據(jù)解析并與本地設(shè)置指令匹配,獲得正確的控制指令。通過服務(wù)器和網(wǎng)關(guān)將這些指令轉(zhuǎn)發(fā)給相應(yīng)的設(shè)備進(jìn)行動(dòng)作指令的執(zhí)行,我們可以隨時(shí)隨地對(duì)家庭內(nèi)部設(shè)備進(jìn)行語(yǔ)音控制。
嵌入式便攜語(yǔ)音控制器在家庭內(nèi)部通過家庭網(wǎng)關(guān)融入到智能家居無(wú)線傳感網(wǎng)中,終端在本地獲取語(yǔ)音信息后進(jìn)行識(shí)別并將相應(yīng)的控制指令轉(zhuǎn)發(fā)給網(wǎng)關(guān),經(jīng)由網(wǎng)關(guān)和服務(wù)器轉(zhuǎn)發(fā)給相應(yīng)的設(shè)備進(jìn)行動(dòng)作指令的執(zhí)行[4]。
系統(tǒng)網(wǎng)絡(luò)拓樸結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖Fig.1 Structure of the system network topology
整個(gè)嵌入式便攜語(yǔ)音控制器的硬件電路主要包括MCU電路、語(yǔ)音識(shí)別電路、WSN電路和電源管理電路四個(gè)部分。由于嵌入式便攜語(yǔ)音控制終端必須具備便攜、微型化、低功耗的特點(diǎn)[5],這就要求MCU芯片具有更高的集成性和低功耗性,便于進(jìn)行低功耗功能設(shè)置。因此,MCU采用的芯片是基于 Cortex-M3架構(gòu)的STM32F103RX。
STM32F103RX芯片作為32位標(biāo)準(zhǔn)精簡(jiǎn)指令集(RISC)處理器,在通常8位和16位系統(tǒng)的存儲(chǔ)空間上發(fā)揮了ARM內(nèi)核的高性能;內(nèi)部集成了Flash存儲(chǔ)、SRAM、豐富的I/O接口和先進(jìn)的中斷響應(yīng)系統(tǒng)等,更加適合應(yīng)用在本方案中[6]。
本方案中的語(yǔ)音控制芯片采用的是ICRoute的LD3320,WSN通信采用的芯片是CC2430。終端經(jīng)由按鍵觸發(fā)啟動(dòng),MIC在接收到外部語(yǔ)音信息后,首先經(jīng)過語(yǔ)音識(shí)別模塊對(duì)信息進(jìn)行解析,以獲取需要的數(shù)據(jù);然后將數(shù)據(jù)通過串口發(fā)送給MCU,MCU經(jīng)過處理后解析出相應(yīng)的設(shè)備動(dòng)作指令;之后經(jīng)串口將信息發(fā)送給CC2430,最后發(fā)給家庭網(wǎng)關(guān),從而實(shí)現(xiàn)了對(duì)智能家居內(nèi)部可控家電的無(wú)線語(yǔ)音控制。語(yǔ)音控制器硬件框圖如圖2所示。
圖2 語(yǔ)音控制器硬件框圖Fig.2 Block diagram of the hardware of voice controller
2.1.1 語(yǔ)音識(shí)別模塊設(shè)計(jì)
語(yǔ)音識(shí)別模塊電路參照ICRoute發(fā)布的LD3320數(shù)據(jù)手冊(cè)進(jìn)行設(shè)計(jì)。芯片內(nèi)部集成了快速穩(wěn)定的優(yōu)化算法,不再需要外接Flash、RAM,大大簡(jiǎn)化了電路的設(shè)計(jì)。同時(shí)LD3320也不需要用戶在使用過程中事先訓(xùn)練和錄音來完成非特定人語(yǔ)音識(shí)別,識(shí)別準(zhǔn)確率也比較高。LD3320采用并行方式直接與STM32芯片相連,并均采用1 k Ω電阻上拉。A0用于數(shù)據(jù)段與地址段的判斷,控制信號(hào) RDB、WRB、CSB,復(fù)位信號(hào)RSTB和中斷返回信號(hào)INTB直接與STM32芯片相連。LD3320與STM32芯片采用同一個(gè)外部時(shí)鐘(8 MHz),發(fā)光二極管D1、D2都用于復(fù)位后的上電指示,MBS引腳接一個(gè)RC電路作為MIC偏置,用于保證能輸出一個(gè)浮動(dòng)電壓給 MIC[7]。
語(yǔ)音信息通過MIC輸入后先進(jìn)行頻譜分析,提取出聲音的語(yǔ)音特征信息;然后語(yǔ)音識(shí)別器將關(guān)鍵詞語(yǔ)列表中的數(shù)據(jù)與采集到的語(yǔ)音特征信息進(jìn)行對(duì)比匹配,找出其中得分最高的關(guān)鍵詞語(yǔ)作為語(yǔ)音識(shí)別結(jié)果輸出。
不要覺得寶寶吃得不多就反復(fù)喂、追喂、邊玩邊喂,從最開始添加輔食就應(yīng)當(dāng)培養(yǎng)好的用餐習(xí)慣,這樣以后的喂養(yǎng)會(huì)越來越省力。
LD3320芯片語(yǔ)音識(shí)別原理如圖3所示。
圖3 LD3320芯片語(yǔ)音識(shí)別原理圖Fig.3 Speech recognition principle of LD3320
2.1.2 WSN 通信電路設(shè)計(jì)
無(wú)線傳感網(wǎng)通信協(xié)議采用 820.15.4E[8],選用型號(hào)為CC2430的無(wú)線SOC芯片。該芯片有豐富的片上資源,其內(nèi)部已經(jīng)集成了必要的電路,使用時(shí)只需要采用較為簡(jiǎn)單的外圍電路,即可實(shí)現(xiàn)數(shù)據(jù)的無(wú)線收發(fā)。CC2430外圍電路原理圖如圖4所示。圖4中,Y1為 32.768 kHz晶振,其與兩個(gè)電容(C1、C2)組合構(gòu)成32.768 kHz晶振電路;Y2為32 MHz的晶振,其與兩個(gè)電容(C3、C4)組合構(gòu)成32 MHz晶振電路;電容C5和電感L1、L2、L3以及一個(gè)PCB微波傳輸線組合構(gòu)成WSN電路的非平衡變壓電路,外圍電壓都配置濾波電容,以保證芯片工作的穩(wěn)定性。整個(gè)電路設(shè)計(jì)滿足RF輸入/輸出匹配電阻(50 Ω)的指標(biāo)。另外,在電壓腳和地腳都增加了濾波電容,用于為芯片穩(wěn)定工作提供保障。
圖4 CC2430外圍電路原理圖Fig.4 The principle of CC2430 peripheral circuit
2.1.3 電源管理電路設(shè)計(jì)
由于嵌入式便攜移動(dòng)終端需要具備便攜、無(wú)線、低功耗等特性,所以在電源管理部分就采取了大容量、高性能的鋰電池供電。電源管理電路主要包括鋰電池充電電路、鋰電池保護(hù)電路、電壓轉(zhuǎn)換電路三個(gè)部分。其中,鋰電池充電電路主要采用了MAX1555芯片和相應(yīng)的電阻、電容來實(shí)現(xiàn)。鋰電池保護(hù)電路由FS8820P電池保護(hù)芯片、電阻、電容組成。由于終端硬件電路所用芯片工作電壓均為3.3 V,而鋰電池輸入電壓為0~4.2 V,所以需要采用MAX8881進(jìn)行電壓轉(zhuǎn)換。
①通用初始化和語(yǔ)音識(shí)別初始化:在初始化程序中,主要完成芯片的軟復(fù)位、模式設(shè)定、時(shí)鐘頻率設(shè)定、FIFO設(shè)定等相關(guān)操作。
②寫入識(shí)別列表:LD3320語(yǔ)音識(shí)別列表的規(guī)則是每個(gè)識(shí)別條目對(duì)應(yīng)一個(gè)特定的編號(hào)(編號(hào)可以相同,可以不連續(xù),但是數(shù)值要小于256),最多支持50個(gè)識(shí)別條目。每個(gè)識(shí)別條目是標(biāo)準(zhǔn)普通話的漢語(yǔ)拼音(小寫),每2個(gè)中文字之間用一個(gè)空格間隔。
③開始識(shí)別:開始識(shí)別程序的流程圖如圖5所示,此部分程序主要是設(shè)置幾個(gè)相關(guān)的寄存器。ADC通道即為麥克風(fēng)輸入通道,ADC增益也就是麥克風(fēng)音量,可設(shè)定值00H~7FH,ICRoute官方建議設(shè)置值為40H~6FH。ADC增益值越大,代表MIC音量越大,識(shí)別啟動(dòng)越敏感,但可能帶來更多誤識(shí)別;反之,ADC增益值越小,代表MIC音量越小,需要近距離說話才能啟動(dòng)識(shí)別功能,優(yōu)點(diǎn)是對(duì)遠(yuǎn)處的干擾語(yǔ)音沒有反應(yīng)。本方案采取的ADC增益值為44H。
圖5 開始識(shí)別程序流程圖Fig.5 The flowchart of recognition beginning process
④響應(yīng)中斷:當(dāng)麥克風(fēng)采集到聲音時(shí),就會(huì)產(chǎn)生一個(gè)中斷信號(hào)。而中斷程序要根據(jù)寄存器的值分析結(jié)果(BA寄存器的值為候選識(shí)別結(jié)果個(gè)數(shù),C5寄存器里的識(shí)別結(jié)果是得分最高、最可能正確的答案)。
為了給用戶提供更加貼心的語(yǔ)音控制服務(wù),本方案設(shè)計(jì)了對(duì)話管理模塊(通過定義二維數(shù)組實(shí)現(xiàn)),以存儲(chǔ)待識(shí)別語(yǔ)句和待執(zhí)行命令。根據(jù)LD3320芯片自身特點(diǎn),我們定義的對(duì)話管理數(shù)組如表1所示。
表1 對(duì)話管理模塊數(shù)組Tab.1 The design of dialogue management module array
本方案的移動(dòng)終端控制軟件主要基于IOS和Android兩大移動(dòng)操作系統(tǒng)的手機(jī)、平板電腦,將訊飛語(yǔ)音云引入移動(dòng)終端語(yǔ)音控制軟件開發(fā)中,不需要在本地建立大型語(yǔ)音庫(kù)。這種設(shè)計(jì)在簡(jiǎn)化軟件開發(fā)過程的同時(shí),又?jǐn)U大了軟件使用人群[8-10]。軟件工作流程圖如圖6所示。
圖6 移動(dòng)終端語(yǔ)音控制軟件流程圖Fig.6 Flowchart of mobile terminal voice control software
從圖6可以看出,當(dāng)開啟軟件后,首先要設(shè)置語(yǔ)音采樣率,一般手機(jī)都只支持8 kHz、16 kHz兩種采樣率。為了獲得更好的識(shí)別效果,默認(rèn)設(shè)置都為16 kHz,一些移動(dòng)終端平臺(tái)可能存在MIC性能參數(shù)不同,有的需要設(shè)置語(yǔ)音信息采樣率(8 kHz、11 kHz、16 kHz、22 kHz)。點(diǎn)擊上傳后,手機(jī)和平板先將本地家庭內(nèi)部的庫(kù)文件(名稱為Keys,默認(rèn)從SD卡讀取,如果SD卡中不存在,則讀取程序包aasets下的Keys)上傳至云端;然后,再將采集到的用戶本地語(yǔ)音信息上傳到云端進(jìn)行識(shí)別,識(shí)別后在云端與用戶家庭內(nèi)部庫(kù)文件進(jìn)行匹配,并反饋回終端(確保識(shí)別信息是家庭內(nèi)部已經(jīng)設(shè)置的指令內(nèi)容);最后,終端根據(jù)相應(yīng)的控制信息下發(fā)相應(yīng)的指令給服務(wù)器,服務(wù)器進(jìn)行動(dòng)作指令的接收與轉(zhuǎn)發(fā),進(jìn)而實(shí)現(xiàn)對(duì)智能家居內(nèi)部可控設(shè)備的控制。
針對(duì)嵌入式便攜移動(dòng)終端測(cè)試,目前主要對(duì)通信距離測(cè)試、射頻穿透性、識(shí)別準(zhǔn)確性三個(gè)方面進(jìn)行了測(cè)試[10],通過測(cè)試為終端后續(xù)的優(yōu)化設(shè)計(jì)奠定基礎(chǔ)。
4.1.1 通信距離測(cè)試
通信距離的測(cè)試是在設(shè)備帶天線增益情況下進(jìn)行的,嵌入式便攜移動(dòng)終端每一次語(yǔ)音識(shí)別都要將識(shí)別后的控制指令發(fā)送給網(wǎng)關(guān),所以我們?cè)诓煌嚯x下使用設(shè)備50次,記錄控制指令成功轉(zhuǎn)發(fā)給網(wǎng)關(guān)的次數(shù),得到設(shè)備在不同距離下的丟包率。測(cè)試結(jié)果如表2所示。
表2 通信距離測(cè)試結(jié)果Tab.2 The test results of communication distance
從表2可以看出,設(shè)備丟包率隨著通信距離的增加而變大。造成這一結(jié)果的原因是多方面的,不僅與測(cè)試環(huán)境中存在大氣、電磁干擾、空氣濕度、阻擋物、多徑損耗有關(guān),而且與天線增益、設(shè)備高度、性能匹配和協(xié)議自身原因都有一定的關(guān)系。
4.1.2 射頻穿透性測(cè)試
射頻穿透性測(cè)試主要是模擬設(shè)備與網(wǎng)關(guān)之間的墻體障礙物數(shù)目在0道、1道、2道不同情形下使用設(shè)備50次,記錄在不同情形下控制指令成功轉(zhuǎn)發(fā)給網(wǎng)關(guān)的次數(shù),得到設(shè)備在不同障礙物數(shù)目下的丟包率。測(cè)試結(jié)果如表3所示。
表3 射頻穿透性測(cè)試結(jié)果Tab.3 The results of RF penetration tests
從表3可以看出,在實(shí)際的家居環(huán)境中,隨著設(shè)備與網(wǎng)關(guān)之間墻體障礙物數(shù)目的減少,設(shè)備丟包率也隨之降低,其原因是在家居環(huán)境中物理空間的電磁干擾性小,并且采用高可靠性的無(wú)線組網(wǎng)協(xié)議,降低了設(shè)備組網(wǎng)在多障礙情況下的丟包率。
4.1.3 識(shí)別準(zhǔn)確性測(cè)試
識(shí)別準(zhǔn)確性的測(cè)試主要是選取男生和女生兩個(gè)不同音色的人分別在安靜環(huán)境和嘈雜環(huán)境兩種家庭場(chǎng)景中使用設(shè)備,分別記錄在不同情況下設(shè)備指令識(shí)別成功的準(zhǔn)確率。測(cè)試結(jié)果如表4所示。
表4 設(shè)備識(shí)別準(zhǔn)確性測(cè)試結(jié)果Tab.4 The results of device recognition accurateness
從表4可以看出,在安靜環(huán)境中,設(shè)備對(duì)非特定人的語(yǔ)音識(shí)別準(zhǔn)確率高達(dá)90%以上;在嘈雜環(huán)境中有所降低,這主要是由于雜音對(duì)語(yǔ)音信息的干擾造成。
移動(dòng)終端語(yǔ)音控制軟件主要借助訊飛語(yǔ)音云技術(shù)來實(shí)現(xiàn),終端設(shè)備需要聯(lián)網(wǎng),不同的網(wǎng)絡(luò)狀況會(huì)對(duì)識(shí)別結(jié)果造成一定的延時(shí)和誤差。我們?cè)谌N不同網(wǎng)絡(luò)類型下,針對(duì)男生和女生兩個(gè)不同音色的非特定人使用軟件進(jìn)行控制,分別記錄在不同網(wǎng)絡(luò)類型下設(shè)備識(shí)別的成功和平均延時(shí),測(cè)試結(jié)果如表5所示。
表5 移動(dòng)終端控制軟件功能測(cè)試結(jié)果Tab.5 The results of device recognition accurateness
從表5可以看出,在三種不同網(wǎng)絡(luò)類型下,軟件識(shí)別成功率和平均延時(shí)都有所不同,其中在WiFi網(wǎng)絡(luò)類型下,軟件識(shí)別成功率最高,平均延時(shí)最低;而在GPRS網(wǎng)絡(luò)類型下,識(shí)別成功率最低,平均延時(shí)最高,充分說明了移動(dòng)終端語(yǔ)音控制軟件受網(wǎng)絡(luò)質(zhì)量影響大。
本文結(jié)合實(shí)驗(yàn)室已有智能家居平臺(tái),通過對(duì)非特定人語(yǔ)音識(shí)別技術(shù)和相關(guān)軟硬件知識(shí)的研究,分別通過訊飛語(yǔ)音云技術(shù)和嵌入式非特定人語(yǔ)音識(shí)別技術(shù)設(shè)計(jì)了智能家居語(yǔ)音控制系統(tǒng),用以實(shí)現(xiàn)本地與遠(yuǎn)程多樣化的智能家居語(yǔ)音控制。目前,系統(tǒng)已經(jīng)應(yīng)用在實(shí)驗(yàn)室智能家居平臺(tái)中,用戶可以在室內(nèi)和室外兩種不同情境中通過本系統(tǒng)來實(shí)現(xiàn)對(duì)智能家居內(nèi)部可控設(shè)備的語(yǔ)音控制。從目前的使用狀況來看,系統(tǒng)的性能和功能都相對(duì)穩(wěn)定,但從物聯(lián)網(wǎng)技術(shù)[11]的長(zhǎng)遠(yuǎn)發(fā)展來說仍然需要進(jìn)一步的測(cè)試,再不斷地優(yōu)化和完善智能家居語(yǔ)音控制系統(tǒng)。
[1]高小平.中國(guó)智能家居的現(xiàn)狀及發(fā)展趨勢(shì)[J].低壓電器,2005(4):18-21.
[2]徐子豪,張騰飛.基于語(yǔ)音識(shí)別和無(wú)線傳感網(wǎng)絡(luò)的智能家居系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2012,20(1):180 -182.
[3]黃濤,胡賓.基于SPCE061A單片機(jī)的非特定人語(yǔ)音識(shí)別設(shè)計(jì)[J].微計(jì)算機(jī)信息,2006(6):19-21.
[4]William S.無(wú)線通信與網(wǎng)絡(luò)[M].2 版.何軍,譯.北京:清華大學(xué)出版社,2010:397 -403.
[5]Tompros S,Mouratidis N,Draaijer M,et al.Enabling application of energy saving appliances of the home environment[J].IEEE Network,2009,23(6):8 -16.
[6]陳福彬,伍毅,王鐵流.基于STM32的人行通道智能控制與管理系統(tǒng)設(shè)計(jì)[J].自動(dòng)化與儀表,2012(1):45-48.
[7]陳喜春.基于LD3320語(yǔ)音識(shí)別專用芯片實(shí)現(xiàn)的語(yǔ)音控制[J].電子技術(shù),2011(11):20-21.
[8]IEEE Std.IEEE 802.15.4 -2003 Part 15.4:wireless medium access control(MAC)and physical layer(PHY)specifications for low-rate wireless personal area networks(LR-WPANs)[EB/OL].[2012 -11-18].http://www.ZIGBEE.org.
[9]高戈坤.科大訊飛.移動(dòng)互聯(lián)網(wǎng)進(jìn)入語(yǔ)音時(shí)代[J].通信世界,2010(42):34.
[10]趙威威.嵌入式語(yǔ)音識(shí)別及控制技術(shù)在智能家居系統(tǒng)中的應(yīng)用[D].重慶:重慶大學(xué),2007.
[11]嚴(yán)萍,張興敢.基于物聯(lián)網(wǎng)技術(shù)的智能家居系統(tǒng)[J].南京大學(xué)學(xué)報(bào):自然科學(xué)版,2012(1):27-31.