智能化正在影響著人們的生活,給人們帶來越來越便利的生活條件。為使智能化更好服務(wù)生活,設(shè)計(jì)了一個(gè)基于語音控制的智能家居系統(tǒng),通過打開Android手機(jī)APP,啟用語音喚醒功能,通過關(guān)鍵詞喚醒實(shí)現(xiàn)語音識別功能,識別出用戶的指令,把識別出來的命令語句發(fā)送給服務(wù)器,通過服務(wù)器轉(zhuǎn)發(fā)給已經(jīng)上線的控制器端,從而實(shí)現(xiàn)整個(gè)控制過程。經(jīng)實(shí)際測試,該系統(tǒng)是可靠實(shí)用,操作方便。
《家具與室內(nèi)裝飾》雜志是選取行業(yè)內(nèi)專家,刊登權(quán)威的專業(yè)論文,促進(jìn)家具與室內(nèi)裝飾業(yè)的發(fā)展與提高。主要以學(xué)術(shù)論壇、學(xué)術(shù)實(shí)踐為主導(dǎo)。曾用刊名:家具世界。
1 背景
家居智能化正在慢慢影響著人們的生活,給人們帶來越來越多的便利條件。智能家居的控制方式從傳輸媒質(zhì)的角度來說,存在有線控制方式;從控制終端上來說有鍵盤、紅外遙控器、計(jì)算機(jī)終端、移動(dòng)設(shè)備等方式。智能手機(jī)通過無線方式對家居系統(tǒng)進(jìn)行控制,快捷、方便、靈活,因此移動(dòng)端控制將是智能家居的發(fā)展趨勢。Android系統(tǒng)主要用于移動(dòng)設(shè)備開發(fā),憑借開源,免費(fèi)和豐富的硬件選擇,其已經(jīng)成為使用最多的移動(dòng)端操作系統(tǒng)。隨著技術(shù)的進(jìn)步,百度公司推出語音識別Android SDK(離在線),給開發(fā)者提供一個(gè)語音識別的接口,通過云端的識別,給開發(fā)者返回識別結(jié)果,使開發(fā)者能夠使用語音進(jìn)行二次開發(fā)。
語音控制具有非接觸、非侵入性和易于使用的特點(diǎn),是智能家居的一個(gè)新的方向。該設(shè)計(jì)是基于語音控制的智能家居系統(tǒng),采用基于Android平臺的移動(dòng)設(shè)備作為控制終端,STM32模塊作為執(zhí)行設(shè)備的主控板,通過服務(wù)器命令轉(zhuǎn)發(fā),實(shí)現(xiàn)了用語音命令通過Android移動(dòng)設(shè)備對家居的設(shè)備控制。
2 系統(tǒng)概述
語音控制的智能家居系統(tǒng)框圖如圖1所示,包括Android移動(dòng)設(shè)備端、云端的百度語音接口、云服務(wù)器端、執(zhí)行設(shè)備的主控板及其所屬功能模塊。其中Android移動(dòng)端設(shè)備提供人機(jī)交互界面,輸入語音信息;云端的百度語音接口進(jìn)行云端語音解析并返還解析出的字符串給Android移動(dòng)端設(shè)備;云服務(wù)器端控制網(wǎng)絡(luò)數(shù)據(jù)傳輸及其數(shù)據(jù)存儲;STM32控制板負(fù)責(zé)接收服務(wù)器轉(zhuǎn)發(fā)過來的命令,對家居中的各個(gè)功能模塊進(jìn)行控制,并把功能模塊各控制狀態(tài)返回給服務(wù)器。各功能模塊功能包括窗簾,插座,室內(nèi)燈等家居設(shè)備和溫濕度傳感器。
該設(shè)計(jì)通過語音喚醒功能實(shí)現(xiàn)語音識別,通過從云端返回的字符串,判斷出用戶的命令,把命令發(fā)送給服務(wù)器,由服務(wù)器把命令轉(zhuǎn)發(fā)給已經(jīng)上線的控制器端,從而執(zhí)行用戶命令,實(shí)現(xiàn)智能家居的語音控制。
3 控制終端APP的設(shè)計(jì)與實(shí)現(xiàn)
3.1 控制終端APP功能框架設(shè)計(jì)
其APP的功能框架如圖2所示,其功能分為四個(gè)部分,本別是賬戶的登錄與注銷功能,語音喚醒功能語音識別功能以及按鍵控制功能。賬號的登錄是通過在服務(wù)器端添加賬戶獲得訪問權(quán)限,登陸之后獲得控制權(quán)限;語音喚醒功能是通過特定詞喚醒,無須按鍵觸摸,進(jìn)入語音識界面;語音識別界面則需要進(jìn)行按鈕進(jìn)行觸發(fā);按鍵控制是用按鈕進(jìn)行功能控制。
3.2控制終端APP程序設(shè)計(jì)流程
1)賬號登錄。如圖3所示是用戶的登錄流程圖,通過讀取用戶名和密碼,當(dāng)用戶名和密碼不為空時(shí),向服務(wù)器發(fā)送一個(gè)post請求,當(dāng)其賬戶名密碼正確時(shí),就返回一個(gè)登錄成功的狀態(tài)值,這時(shí)界面跳轉(zhuǎn)到用戶主界面;當(dāng)輸入錯(cuò)誤的賬戶名和密碼時(shí),界面不進(jìn)行跳轉(zhuǎn),并提示賬戶名或者密碼錯(cuò)誤的提示。
2)語音喚醒功能。在此功能界面中,無須手動(dòng)控制,通過檢測關(guān)鍵詞,喚醒語音識別功能。通過創(chuàng)建喚醒管理器,注冊喚醒事件監(jiān)聽器,當(dāng)有喚醒詞出現(xiàn)時(shí),進(jìn)入處理事件,在處理事件中跳轉(zhuǎn)到語音識別界面,啟動(dòng)錄音,等待使用者說話,等語音輸入結(jié)束,進(jìn)行預(yù)處理,通過百度語音接口上傳到服務(wù)器并獲取識別出來的字符串。
3)語音識別。通過設(shè)置按鈕點(diǎn)擊事件,啟動(dòng)語音識別功能,具體實(shí)現(xiàn)功能同上。和語音喚醒的區(qū)別在于啟動(dòng)方式不同。
4)按鍵控制。通過語音控制雖然比較方便,但是在一些需要安靜的環(huán)境里,語音控制是合適的,因此使用按鈕進(jìn)行控制是不錯(cuò)的選擇。
3.3 UI界面設(shè)計(jì)
語音控制智能家居的登錄界面和功能界面如圖4所示。登錄界面是輸入用戶名和密碼,點(diǎn)擊登錄后,向服務(wù)器發(fā)送登錄請求,登錄成功后界面跳轉(zhuǎn)到功能主界面;點(diǎn)擊語音喚醒功能后,跳轉(zhuǎn)到語音喚醒界面,通過語音喚醒關(guān)鍵詞,喚醒語音識別功能,直接進(jìn)行語音識別,無須按鈕控制;也可以直接點(diǎn)擊語音喚醒,通過點(diǎn)擊開始進(jìn)行語音識別。語音識別之后返回的結(jié)果經(jīng)過處理之后通過HTTP協(xié)議中的post函數(shù)發(fā)送給服務(wù)器,通過服務(wù)器把命令轉(zhuǎn)發(fā)給控制器實(shí)現(xiàn)遠(yuǎn)程控制功能。
4 STM32控制終端
4.1 通信模塊
ESP8266是一款高性能的UART-WiFi串口無線模塊,由它解決STM32聯(lián)入網(wǎng)絡(luò)的問題。ESP8266通過連接路由器,并入網(wǎng)絡(luò),從而可以訪問云服務(wù)器,在透明傳輸模式下,作為TCP客戶端同服務(wù)器進(jìn)行交互;另一方面,ESP8266通過串口同STM32進(jìn)行交互,從而完成從手機(jī)端通過語音對控制器終端的控制。
圖5是ESP8266和服務(wù)器交互前的設(shè)置流程。為了清晰地展現(xiàn)這一過程,使用了串口調(diào)試助手進(jìn)行演示。經(jīng)過設(shè)置之后,ESP8266就能和服務(wù)器進(jìn)行通信了,這樣就可以通過手機(jī)進(jìn)行語音控制,把控制信息傳送到STM32中,從而實(shí)現(xiàn)對家居的功能控制。
4.2 STM32控制模塊
圖6是STM32的主控板,包括STM32F103C8T6最小系統(tǒng)板,Nokia5110顯示屏和ESP8266UART-WiFi串口無線模塊。單片機(jī)通過串口同ESP8266進(jìn)行交互,得到控制命令,對命令進(jìn)行處理,從而完成對終端的控制。
5 結(jié)束語
該文設(shè)計(jì)的基于語音控制的智能家居系統(tǒng)相比較其他方式有以下優(yōu)勢:①基于語音控制,更加智能化。②基于移動(dòng)端的遠(yuǎn)程控制,可以隨時(shí)隨地對控制器進(jìn)行控制。③使用的是Android系統(tǒng),更易于推廣。經(jīng)實(shí)際測試,本系統(tǒng)能夠達(dá)到預(yù)期的效果,對于智能家居的發(fā)展具有一定的意義。
參考文獻(xiàn):
[1] 禹謝華,鄧林茂,張曉云,等.基于Android與Arduino智能家居控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].山東農(nóng)業(yè)大學(xué)學(xué)報(bào):自然科學(xué)版,2017(4).
[2] 楊玲,陳偉康,程勇,等.基于Android的智能家居系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].信息技術(shù), 2017(7).
[3] 李中平,邱健峰,李璐,等. Android手機(jī)遠(yuǎn)程控制關(guān)鍵技術(shù)分析[J].計(jì)算機(jī)應(yīng)用與軟件, 2013(4).
論文指導(dǎo) >
SCI期刊推薦 >
論文常見問題 >
SCI常見問題 >