王光艷,楊秀芬,周慧敏,于寶蕓
(天津商業大學 信息工程學院,天津 300134)
智能家居系統是物聯網技術的一種具體實現,目標是讓家居環境更加舒適、安全、環保和便捷,系統功能可以涵蓋家居功能的各個方面[1]。智能家居從2014年啟動至今,實現了從智能單品到系統整體的過渡,越來越多的人開始關注到這一領域[2]。家居設備的智能化自動管控是智能家居平臺的核心能力,理想的智能家居自動管控系統需要具備“服務無感化”、“服務精確化”和“服務智能化”等3個特征[3]。
語音信號處理技術在計算機接口與人機交互方面的應用最廣泛[4]。20世紀50年代語音交互技術開始在聲控設備方面進行研究嘗試,隨著語音技術的不斷發展,語音交互在移動終端的應用經歷了功能機階段到智能機器階段的跨步,許多語音交互類應用開始滲透到人類生活的方方面面。用戶可以通過設置多種模式,應用于生活的各個場景,當輕松說出“我要會客”、“準備就餐”、“我要出門了”、“打開影院模式”等即可調出對應的模式,并且能控制一系列電器。SCIUTO[5]等將這類智能家居系統模式統稱為“以會話智能體為中心的家居生態系統”。智能家居語音控制系統中,利用移動終端對智能家居進行遠程控制的技術日益用于生活中,人們可以通過手機發送指令,就能對家中的電器進行操作與監控[6]。
本論文以智能家居中的語音交互技術為切入點,以幫助老年人用聲音控制空調、燈和冰箱等常用家用電器的開關為研究對象,通過總結Zigbee、DSP和單片機等不同硬件技術的智能家居語音交互方案,綜合考慮系統的主要功能和操作便捷性,選擇單片機技術為硬件方案,基于百度 AI語音平臺,完成了聲控家電系統的方案設計,并基于Protues環境,進行了功能仿真。
語音是人機交互中的重要手段[7],人們通過語音輸入向機器傳遞意圖,機器根據語音執行對應的任務;用戶與系統建立通信,然后將執行結果反饋給用戶。整個過程完成了在表達、執行、表現和觀察四種狀態的轉換。本論文選擇的是語音與用戶界面結合的人機交互方式,它以語音為交互通道。語音交互的關鍵技術主要是語音合成技術和語音識別技術,而語音交互技術也是人機交互中的一部分。
人機交互(Human-Computer Interaction,HCI)是對計算機技術的設計和使用進行研究,即研究人和計算機之間的聯系。人機交互通過輸入和輸出設備完成機器與用戶的信息交換。交換過程完成了在表達、執行、表現和觀察四種狀態的轉換。其中最典型的交互模型—Norman模型[8],如圖1所示。

圖1 人機交互模型Fig.1 Human-computer interaction model
語音合成技術是將文本轉換成對應的語音。語音合成是TTS(Text-to-Speech)系統中最基本的模塊,TTS系統的組成結構如圖2所示。

圖2 TTS系統結構圖Fig.2 System structure diagram of TTS
語音合成的它的主要技術有:共振峰合成[9],線性預測編碼(LPC)[10],基音同步疊加(PSOLA)[11],LMA聲道模型[12]等,實際應用中會由于各自優缺點而結合使用。
文獻[8]采用知識圖譜技術對語音合成的研究文獻進行分析,指出:2006-2014年是語音合成的快速發展時期,2015年至今,是深入發展時期。理論研究的深入和向應用領域的拓展,是目前的研究趨勢。
語音識別技術是將人們的語音轉換為計算機可讀取的輸入,它融合了計算機科學、語言學、和電氣工程領域的知識和研究。
語音信號是一種非平穩的隨機復雜信號,根據任務所需建立不同的語音識別模型。目前具有代表性的語音識別方法主要有動態時間規整技術(DTW)[13]、隱馬爾可夫模型(HMM)[14-15]、矢量量化(VQ)[16]、支持向量機(SVM)[17]、人工神經網絡(ANN)等方法。這些語音識別的方法,在不同場景下依據各自優缺點都得到了廣泛應用。
目前智能家居語音控制硬件實現中涉及ZigBee、DSP、單片機、FPGA和嵌入式等相關技術,本論文主要對 ZigBee,DSP、單片機三種技術在智能家居中的應用案例進行分析,并基于單片機技術,完成系統設計。
ZigBee技術作為一種低距離、低功耗、低成本、短時延、大容量的無線個域網技術,應用在智能家居語音交互系統中,ZigBee的系統結構如圖3所示。

圖3 基于ZigBee的語音交互系統硬件結構圖Fig.3 Hardware structure diagram of voice interaction system based on ZigBee
根據圖 3可以看出,它通過無線局域網絡讓手機或PC終端子系統與網關主機之間進行通信,并通過網關控制器來控制所需要控制的設備并顯示傳感器采集的信息,實現語音識別對家電設備的遠程控制。
DSP應用包括音頻和語音處理、聲納、雷達和其他傳感器陣列處理、譜密度估計、統計信號處理、數字圖像處理、電信信號處理、控制系統、生物醫學工程、地震學等等。應用在智能家居語音交互系統中,系統結構如圖4所示。

圖4 基于DSP的語音交互系統硬件結構圖Fig.4 Hardware structure diagram of voice interaction system based on DSP
根據圖4可以看出,模擬語音信號通過A/D轉換成數字信號,然后發送給DSP處理單元進行數字信號處理,完成整個識別過程。在識別中使用的部分臨時數據和模板庫數據存儲在外部存儲器的SRAM和Flash中,最終的識別結果通過DSP芯片通信機制傳送到MCU,從而對應于識別的控制操作。為了實現DSP芯片與MCU之間的速度匹配和電平匹配,接口電路應作為連接。電源模塊實現了整個數字電路的供電。硬件復位電路確保系統被正確復位以完成系統資源的初始化。
LD3320可以直接集成語音識別模塊和外部的電路,如A/D和D/A轉換器、麥克風接口、語音輸入和輸出接口,從而實現語音識別、聲音控制和人與計算機對話等功能。應用在智能家居語音交互系統中,一般它的系統結構如圖5所示。

圖5 基于單片機的語音交互系統硬件結構圖Fig.5 Hardware structure diagram of voice interaction system based on MCU
圖 5中的單片機語音交互系統的硬件部分包括電源、單片機、LD3320芯片、繼電器等。通過LD3320芯片實現語音識別。系統的總體控制由主控單片機實現,包括 LD3320芯片的初始化。通過麥克風把人們的語音指令發送到 LD3320語音識別模塊。經LD3320語音識別模塊識別處理后,將識別結果發送到主控單片機。主控單片機將根據識別結果控制對應的設備。如果無法識別語音命令,LD3320語音模塊將由單片機重新輸入到新的識別過程中。
根據對智能家居的語音交互系統需求分析,適用于語音交互系統的語音交互方案需要具有以下特點:
(1)聲音喚醒。語音交互功能應該能夠快速、輕松地啟動。
(2)全局命令。語音命令應該脫離于圖形界面,并且是一個完善的人機交互的接口。
(3)完美的語音交互。通過一個簡單的語音提示,信息可以通過語音在必要的位置和時間反饋給用戶,而無需進入屏幕。
(4)音頻任務調度。語音交互系統應協調音頻和語音識別,避免語音識別過程中的音頻輸出干擾,并管理音頻任務之間的切換。
(5)與機器高度集成。語音交互已經成為家庭智能設備的基本輸入/輸出系統,可以與圖形界面獨立。
(6)具有良好的識別接口。應用程序可以很容易地實現語音識別響應。
(7)系統處理的準確性和及時性。語音識別應能準確、及時地對語音輸入作出反應。
(8)適應性和可移植性。語音交互系統應該采用模塊化的措施來保證系統的適應性和可移植性。
(9)可伸縮性。設備新添加語音指令時,其操作需簡潔容易。
智能家居語音控制家電可為用戶提供便捷的居家服務,本方案將實現應用對非特定人的語音指令識別,具體功能如下:
(1)系統設計完成對家電開關的開啟或關閉控制,相互之間不存在干擾;
(2)家電開關的開啟和關閉有對應的指示燈提示,通過繼電器控制指示燈來模擬對應電器的開啟和關閉;
(3)系統可以接收到手機藍牙發送的已經識別和處理的語音指令,然后能夠正確的解析指令。
聲控家電系統的網絡拓撲結構如圖 6所示。在移動終端的語音控制軟件接收到語音信息后,通過網絡將語音信息傳輸到百度語音平臺進行語音識別和語音處理,之后將從百度AI語音平臺[18]反饋回的數據進行解析以及與本地的語音指令庫匹配,獲取到正確的指令,最后通過藍牙把獲取的指令傳輸給主控單片機,讓指定設備執行指令。

圖6 系統的網絡拓撲結構圖Fig.6 Network topology diagram of the system
整個系統開發過程包括兩個部分,分別是硬件電路設計(下位機)和軟件程序設計(上位機)。
硬件部分(下位機)的主控芯片采用了STC89C52單片機,結合HC-05藍牙模塊,通過硬件部分編程和電路設計結合完成語音控制家電開關系統的設計。語音控制系 統硬件部分(下位機)的整體框架如圖7所示。

圖7 系統硬件框圖Fig.7 System hardware block diagram
此系統主要電路模塊包括:單片機控制模塊、繼電器開關電路、電源模塊、HC-05藍牙模塊。在整個下位機硬件部分,可以看到要實現語音對設備的控制主要依賴的是單片機控制模塊,它通過串口與HC-05藍牙模塊連接,接收來自上位機的指令,此模塊電路主要由主控單片機、復位電路、晶振電路組成,此部分電路的Protues仿真圖如圖8所示。

圖8 主控模塊仿真電路圖Fig.8 Simulation circuit diagram of main control module
HC-05芯片是一種高性能的藍牙主從式串行通信模塊,可與手機、電腦等多種智能終端配套使用,并與5V和3.3V的MCU系統兼容。它易于連接和靈活,并且具有高的成本性能。藍牙通信電路采用HC-05模塊作為核心,利用外圍電路完成藍牙通信電路的設計。系統電源模塊電路包括穩壓電路、電壓調節器輸出電路、功率輸出指示電路和電源濾波電路。系統電器的控制電路由繼電器控制。繼電器控制電路采用弱功率控制強功率的原理。主控單片機通過控制繼電器的吸合和斷開控制外部設備的連接。
論文主要針對上位機APP軟件部分進行程序開發,將語音識別及處理模塊引入移動終端語音控制軟件開發中,不需要在本地建立大型語音庫,拓展性強。這種設計在簡化軟件開發過程的同時,又擴大了系統使用人群。基于上面提及的功能特性,本次方案選用了百度AI開放平臺中的語音識別技術,它在智能家居中的語音識別以及語義理解方面都能很好的實現語音對設備的控制。百度AI平臺參數說明如表1,百度AI平臺在兼容性方面的要求如表2。

表1 百度AI平臺參數說明Tab.1 Parameter description of Baidu AI platform

表2 百度AI平臺兼容性要求Tab.2 Compatibility requirements of Baidu AI platform
本論文基于智能家居的語音交互模塊開發了一個識別指令的應用,實現其在 Android手機中的運行,此應用使用的集成開發環境是eclipse,調用了百度語音識別 技術的接口,軟件部分的程序設計流程圖見圖9。

圖9 程序設計流程圖Fig.9 Program design flow chart
首先要進行類注冊等程序初始化,然后對于輸入語音,基于百度AI語音平臺中的語音識別技術,進行語音庫匹配和語義理解,聲控命令的識別結果通過藍牙通信模塊,傳遞給單片機,用以控制家居按照命令進行正確操作。如果輸入語音不是預置命令,匹配錯誤,則返回輸入端,重新進行語音輸入,移動端APP開發的部分代碼如下:
注冊自己的輸出事件類

// 引擎就緒,可以說話,一般在收到此事件后通過UI通知用戶可以說話了
}


手機APP的指令識別結果的部分功能展示如圖10所示,可以實現燈、電視、空調等常用家用電器的遠程聲控開關控制。此過程操作簡單,主要打開APP,直接說出命令即可。

圖10 移動端APP識別效果圖Fig.10 Mobile terminal APP recognition effect diagram
基于Protues環境,對以上設計的語音交互聲控家電系統的主要功能進行了仿真,由于藍牙模塊無法在Protues中進行仿真,因此這里以開關控制代替,設計了一個繼電器控制燈泡的仿真。當打開手機APP,點擊“Hold and Speak”,說出“開燈”指令后,則燈泡亮起,同時繼電器打開狀態提示燈亮起,仿真結果如圖11所示;當發出“關燈”指令時,則開關關閉,燈泡熄滅,關閉狀態提示燈亮起,仿真結果如圖12所示。

圖11 開燈狀態功能仿真Fig.11 Functional simulation of Light-on state

圖12 關燈狀態功能仿真Fig.12 Functional simulation of Light-off state
本論文主要研究了以會話智能體為核心的智能家居生態系統中的相關技術原理和軟硬件實現方案,闡述了語音交互中的語音識別和語音合成等相關技術,總結了基于DSP、Zigbee和單片機的幾種語音交互硬件實現方案。以聲控家電系統為具體的應用場景,以老年人為應用對象,側重于操作的簡便性,借助于百度AI開放語音識別平臺,結合移動端APP軟件開發,基于單片機和藍牙通信技術,完成了該語音交互系統的功能需求分析、總體方案規劃和軟硬件系統設計。最后,基于Protues仿真環境,完成了聲控燈泡開關的電路設計和部分功能仿真。而其他家用電器的開關,均可采用相同的控制流程,完成設計。本論文所提出的設計方案具有可移植性和可擴展性,從而為語音交互的應用以及后期進一步的研究提供一定的參考。
可以預見,在不久的將來,隨著語音技術的不斷進步,研究的不斷深入,語音系統將走近大眾,走近生活的方方面面,各種各樣的智能語音交互產品將出現在市場上,人們也將可以隨心所欲的進行語言表達并且機器能聽懂作出反饋。