汪衍佳,沈 森,常文豪,宋 杰
(河南科技大學(xué)信息工程學(xué)院,河南 洛陽 471003)
隨著生活水平的不斷提高,人們對(duì)于家庭住宅的理解也發(fā)生了革命性的轉(zhuǎn)變。我們希望生活在一個(gè)舒適宜人、安全便利、智能化的高品位環(huán)境中,這樣智能家居便應(yīng)運(yùn)而生。將語音識(shí)別技術(shù)運(yùn)用到智能家居中,能夠?yàn)橹悄芗揖酉到y(tǒng)提供更加人性化的操作方式。所以,探索和研究智能家居語音識(shí)別控制系統(tǒng)對(duì)于改善人類生活具有積極意義。
現(xiàn)有智能家居語音識(shí)別控制系統(tǒng)通常需要對(duì)家居設(shè)備進(jìn)行改造,使用終端軟件控制相應(yīng)設(shè)備,成本較高。本文不對(duì)傳統(tǒng)電器進(jìn)行改造,而是通過使用額外設(shè)備間接控制電器設(shè)備,即可實(shí)現(xiàn)對(duì)電器設(shè)備的控制,相較同類產(chǎn)品而言,成本較低,可擴(kuò)展性強(qiáng),增加節(jié)點(diǎn)方便且易于實(shí)現(xiàn)。
系統(tǒng)分為本地控制中心系統(tǒng)和云端控制中心系統(tǒng),簡(jiǎn)稱為本地系統(tǒng)和云端系統(tǒng)。
本地系統(tǒng)為搭載linux系統(tǒng)的單片機(jī),負(fù)責(zé)語音信息預(yù)處理,并在處理后上傳傳給云端系統(tǒng);并對(duì)云端系統(tǒng)傳下發(fā)的信息進(jìn)行處理分類后控制相應(yīng)的終端節(jié)點(diǎn);同時(shí)本地系統(tǒng)還擁有一塊具有觸摸功能的TFT顯示屏,用來對(duì)整個(gè)系統(tǒng)進(jìn)行初始化以及設(shè)置相關(guān)的參數(shù)。
云端系統(tǒng)搭載linux,負(fù)責(zé)接收本地系統(tǒng)上傳的語音信號(hào),并將語音信號(hào)與云端的命令詞庫相匹配,將最佳的結(jié)果反饋至本地系統(tǒng),實(shí)現(xiàn)語音信號(hào)的解析。
本地系統(tǒng)和云端系統(tǒng)通過因特網(wǎng)進(jìn)行連接。此外,整個(gè)系統(tǒng)中還有兩個(gè)用于觸發(fā)系統(tǒng)工作的設(shè)備,一個(gè)是手持語音設(shè)備,用于在家里時(shí),用語音控制整個(gè)系統(tǒng),另一個(gè)是手機(jī)端的APP,用于不在家里時(shí)通過遠(yuǎn)程終端對(duì)家庭設(shè)備進(jìn)行控制。
系統(tǒng)原理框圖如圖1所示。
圖1 系統(tǒng)原理框圖
本地系統(tǒng)主要由CC3200主控模塊、語音識(shí)別模塊、無線通信模塊、控制終端節(jié)點(diǎn)等部分構(gòu)成。
該模塊為核心控制模塊,將輸入信號(hào)按對(duì)應(yīng)程序規(guī)則處理后輸出至各個(gè)模塊。
針對(duì)物聯(lián)網(wǎng)(IoT)應(yīng)用的SimpleLink CC3200器件是一款集成了高性能ARM Cortex-M4 MCU的無線MCU,此應(yīng)用MCU子系統(tǒng)包含一個(gè)運(yùn)行頻率為80MHz的行業(yè)標(biāo)準(zhǔn)ARM Cortex-M4內(nèi)核[1]。此器件包含多種外設(shè),其中包括一個(gè)快速并行攝像頭接口,I2S,SD/MMC,UART,SPI,I2C和四通道模數(shù)轉(zhuǎn)換器(ADC)。CC3200系列包括用于代碼和數(shù)據(jù)的靈活嵌入式RAM,以及具有外部串行閃存引導(dǎo)加載程序和外設(shè)驅(qū)動(dòng)程序的ROM。
該智能系統(tǒng)采用了科大訊飛公司推出的XFMT101模塊,它是科大訊飛新推出的初級(jí)智能語音方案,目前支持語音識(shí)別、語音合成、語音播放等語音功能。模塊支持UART作為通信接口,以ARM Cortex M3作為運(yùn)行平臺(tái),支持9 600 bps、19 200 bps、57 600 bps、115 200 bps等多個(gè)波特率,支持外擴(kuò)U盤或SD/TF卡作為外置存儲(chǔ),可以廣泛應(yīng)用多種智能硬件領(lǐng)域,如智能家電、智能穿戴等,為用戶提供便捷的語音識(shí)別解決方案[2]。
XFMT101板卡支持UART通訊方式,用戶上位機(jī)可通過UART接口與板卡進(jìn)行通訊。XFMT101模塊和CC3200主控單元UART接口硬件連接方式如圖2所示。
圖2 XFMT101模塊和CC3200連接圖
該模塊支持20個(gè)命令詞的識(shí)別,自帶有“打開燈光”、“關(guān)閉微波爐”、“開始”、“暫?!钡瘸S谜Z音,當(dāng)然也可以設(shè)置自定義命令詞,比如“拉開窗簾”、“我餓了”等等。模塊接收了語音信號(hào)并將其轉(zhuǎn)化為相關(guān)的電信號(hào)傳輸給主控模塊。
該模塊將命令信息傳送至終端接收裝置,并接收來自終端的信息,將其傳送至控制中心。CC3200 Wi-Fi網(wǎng)絡(luò)處理器(CC3100)可以提供快速安全的WLAN和因特網(wǎng)連接,支持站點(diǎn)、接入點(diǎn)和Wi-Fi直連3種模式。
Wi-Fi網(wǎng)絡(luò)處理器子系統(tǒng)特有一個(gè)Wi-Fi片上互聯(lián)網(wǎng)并且包含一個(gè)額外的專用ARM MCU,此MCU可完全免除應(yīng)用MCU的處理負(fù)擔(dān)。 這個(gè)子系統(tǒng)包含802.11 b/g/n射頻、基帶和具有強(qiáng)大加密引擎的MAC,以實(shí)現(xiàn)支持256位加密的快速、安全互聯(lián)網(wǎng)連接。CC3200器件支持基站、訪問點(diǎn)和Wi-Fi直接模式[3]。此器件還支持WPA2個(gè)人和企業(yè)安全性以及WPS2.0。Wi-Fi片上互聯(lián)網(wǎng)包括嵌入式TCP/IP和TLS/SSL堆棧,HTTP服務(wù)器和多個(gè)互聯(lián)網(wǎng)協(xié)議[4]。
控制終端采用STM32芯片搭建一個(gè)成本低、實(shí)用性強(qiáng)的智能控制交互系統(tǒng)。通過無線通信模塊與CC3200主控單元進(jìn)行通信,通過物理電路或紅外線直接控制家居設(shè)備[5]。同時(shí),在控制終端節(jié)點(diǎn)上放置相關(guān)傳感器,對(duì)一些安全問題進(jìn)行實(shí)時(shí)監(jiān)測(cè)。比如廚房煤氣,室內(nèi)溫度等。在廚房煤氣一氧化碳高于一定值后,返回信息至主控中心,提醒人去關(guān)閉煤氣,在室內(nèi)溫度高于或低于一定值后,自動(dòng)調(diào)整溫度或者提醒人去調(diào)整溫度,提高安全性。
云端系統(tǒng)[6]搭載linux,負(fù)責(zé)接收本地系統(tǒng)上傳的語音信號(hào),并和第三方API-語音解析平臺(tái),進(jìn)行通信,實(shí)現(xiàn)語音信號(hào)的解析以及完成語音交互;并將第三方處理過的信息下發(fā)本地系統(tǒng)。本地系統(tǒng)和云端系統(tǒng)通過因特網(wǎng)進(jìn)行連接。該系統(tǒng)后期還打算通過AI平臺(tái)提供人機(jī)智能交互功能,根據(jù)語音指令播放音樂,查車票,股票,進(jìn)行簡(jiǎn)單的語音對(duì)話等,使得系統(tǒng)具有一定的自學(xué)習(xí)能力,能自主根據(jù)用戶習(xí)慣對(duì)系統(tǒng)做出相應(yīng)改動(dòng),更貼近用戶習(xí)慣為用戶提供更好的操控體驗(yàn)。
該系統(tǒng)軟件設(shè)計(jì)同樣分為本地系統(tǒng)軟件設(shè)計(jì)和云端服務(wù)器軟件設(shè)計(jì)兩個(gè)方面,具體各部分設(shè)計(jì)如圖3所示。軟件設(shè)計(jì)采用的是TI公司的CCS應(yīng)用設(shè)計(jì)開發(fā),該應(yīng)用是CC3200芯片專用的開發(fā)軟件,編程方式靈活,可以提高軟件開發(fā)效率。
圖3 系統(tǒng)軟件設(shè)計(jì)
本地系統(tǒng)軟件設(shè)計(jì)分為四個(gè)部分。主控制系統(tǒng)軟件部分即CC3200主控單元的程序設(shè)計(jì),主要功能是完成系統(tǒng)的配置,數(shù)據(jù)的處理與傳輸。語音識(shí)別模塊軟件設(shè)計(jì)主要是對(duì)XFMT101模塊的初始化配置,以及命令詞的自定義化功能。無線通信模塊軟件設(shè)計(jì)是通過對(duì)Wi-Fi網(wǎng)絡(luò)處理器的配置,進(jìn)行數(shù)據(jù)傳輸,從而實(shí)現(xiàn)其他模塊之間的通信功能。終端節(jié)點(diǎn)軟件設(shè)計(jì)完成的是對(duì)各個(gè)終端節(jié)點(diǎn)的配置,以及對(duì)各傳感器上的信號(hào)進(jìn)行反饋。
云端服務(wù)器軟件設(shè)計(jì)分為兩個(gè)部分。服務(wù)器配置程序是對(duì)云端服務(wù)器的初始化配置和云端數(shù)據(jù)庫的程序設(shè)計(jì)。數(shù)據(jù)傳輸模塊軟件功能是進(jìn)行本地系統(tǒng)和云端系統(tǒng)的數(shù)據(jù)交互,以及和第三方API的通信。
主控制系統(tǒng)軟件程序主要功能之一是將語音信號(hào)轉(zhuǎn)化為相應(yīng)的操作碼,部分語音信號(hào)處理后的操作碼如表1所示,操作碼1011的意思即為把客廳的空調(diào)打開。
表1 部分語音信號(hào)處理后的操作碼
將本系統(tǒng)置于實(shí)際應(yīng)用環(huán)境中,經(jīng)過調(diào)試后,測(cè)試結(jié)果表明:系統(tǒng)運(yùn)行正常,終端節(jié)點(diǎn)上的幾個(gè)用于實(shí)驗(yàn)的燈均可正常打開與關(guān)閉。說明主控單元對(duì)語音信號(hào)的處理及傳輸均正常,系統(tǒng)配置無誤,后續(xù)只需增添新的終端控制節(jié)點(diǎn)和命令詞即可完成新的操作,不需要再對(duì)主系統(tǒng)進(jìn)行較大改動(dòng)。
圖4 接收到的部分語音信號(hào)數(shù)據(jù)
綜上所述,基于CC3200的智能家居語音識(shí)別控制系統(tǒng)綜合運(yùn)用了多種理論與技術(shù),能夠?qū)崿F(xiàn)對(duì)傳統(tǒng)家具的智能化改進(jìn),以達(dá)到易于控制、節(jié)能、低成本的目的,也為智能家居行業(yè)指出了一條新的方向。