周寶昌 謝智陽 梁景亮
摘要:隨著互聯(lián)網(wǎng)的飛速發(fā)展,科學(xué)技術(shù)面向新突破進(jìn)入良好發(fā)展的時(shí)代。人們的生活水平不斷提高,在選擇家庭電器的時(shí)候,也開始慢慢趨向智能化的生活體驗(yàn)。智能家居就是通智能化去控制家電,通過微電子技術(shù),實(shí)現(xiàn)對(duì)家庭電器的智能控制,從而實(shí)現(xiàn)家居的自動(dòng)化和信息化,不斷滿足人們的生活需求。本產(chǎn)品是以Arduino為中央控制器,配合一款LD3320的非特定語音識(shí)別模塊ASR M08-B和JQ8900-16P的語音播報(bào)模塊,實(shí)現(xiàn)對(duì)家庭燈光系統(tǒng)的語音控制,達(dá)到智能化。
關(guān)鍵詞:智能家居;語音識(shí)別系統(tǒng);Arduino;ASR M08-B;JQ8900-16P
中圖分類號(hào):TN912.34 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2019)09-0037-02
1 項(xiàng)目簡(jiǎn)介
本項(xiàng)目是基于Arduino中央控制器,通過語音識(shí)別模塊ASR M08-B采集并識(shí)別語音信息,語音模塊JQ8900-16P播放對(duì)應(yīng)的反饋語句,實(shí)現(xiàn)家庭燈光的智能語音控制系統(tǒng)。為了讓讀者更好的了解本項(xiàng)目智能家居系統(tǒng)的組成及原理,設(shè)計(jì)了一個(gè)交互式的展示動(dòng)畫,使讀者在了解基本組成和原理的同時(shí),以便更好的了解和學(xué)習(xí)Arduino單片機(jī)相關(guān)知識(shí)及ASR M08-B語音識(shí)別模塊的相關(guān)知識(shí)。
2 系統(tǒng)設(shè)計(jì)原理
系統(tǒng)原理圖1所示語音識(shí)別模塊ASR M08-B采集并識(shí)別語音信息,再將對(duì)應(yīng)語音的字符信號(hào)反饋至Arduino中控,中控系統(tǒng)通過識(shí)別和信息處理后發(fā)出對(duì)應(yīng)的控制信號(hào)去控制室內(nèi)的燈光的開與關(guān),同時(shí)輸出IO電平信號(hào)至JQ8900-16P語音模塊,控制語音識(shí)別模塊播放對(duì)應(yīng)的反饋語句,實(shí)現(xiàn)交互式的家庭燈光智能語音控制系統(tǒng)。
3 基于Arduino的語音識(shí)別系統(tǒng)硬件設(shè)計(jì)
3.1 Arduino單片機(jī)
Arduino是一款非常的便捷且容易上手開源的電子平臺(tái),包含硬件和軟件。對(duì)Arduino的編程是通過Arduino編程語言和Arduino開發(fā)環(huán)境來實(shí)現(xiàn)。
3.2 ASR M08-B語音識(shí)別模塊
ASR M08-B語音識(shí)別模塊,能進(jìn)行非特定語音識(shí)別,識(shí)別距離為3米,在本產(chǎn)品中模塊由Arduino的5V供電。模塊的語音識(shí)別率達(dá)到了85%-95%,模塊語音識(shí)別度遠(yuǎn)高于對(duì)應(yīng)市面上的其他模塊的識(shí)別度,ASR M08-B語音識(shí)別模塊采用了TTL串口通訊,且內(nèi)置了高清麥克風(fēng)用于接收語音信號(hào)。
ASR M08-B語音識(shí)別模塊支持三大識(shí)別檢測(cè)模式,可按需要進(jìn)行使用。
(1)循環(huán)檢測(cè)模式。持續(xù)檢測(cè)周圍語音信息,直到識(shí)別成功。
(2)口令檢測(cè)模式。通過兩個(gè)指令來控制一個(gè)動(dòng)作,要求賦予的兩個(gè)指令需在八秒內(nèi)同時(shí)檢測(cè)。
(3)按鈕檢測(cè)模式。觸發(fā)按鈕,八秒內(nèi)讀出語音指令,模塊識(shí)別,超過八秒模塊識(shí)別不到,需重新觸發(fā)按鈕。
3.3 JQ8900-16P語音播報(bào)模塊
JQ8900-16P語音模塊,它可以儲(chǔ)存音頻信息,并通串口輸出音頻,模塊的板子上集成有一個(gè)十六位的MCU,所選用的是SOC方案,并且采用了一款專門解碼音頻的ADSP,采用的是硬解碼的方式,能夠更加高效地確保系統(tǒng)的穩(wěn)定性和音質(zhì)。模塊的尺寸非常小巧方便使用。
3.4 揚(yáng)聲器
這是一個(gè)8Ω,0.5W,直徑為70.5mm的揚(yáng)聲器,這種電子積木非常小巧方便,適用于單片機(jī)開發(fā)實(shí)驗(yàn)使用。
在此系統(tǒng)中,通過JQ8900-16P語音識(shí)別模塊驅(qū)動(dòng)播報(bào)系統(tǒng)反饋情況的語音,實(shí)現(xiàn)交互式的語音識(shí)別體驗(yàn)。
3.5 實(shí)驗(yàn)材料(表1)
4 系統(tǒng)軟件設(shè)計(jì)
4.1 軟件設(shè)計(jì)
軟件設(shè)計(jì)流程分為三大部分,首先第一步是對(duì)ASR M08-B語音識(shí)別模塊進(jìn)行燈光控制指令編輯,使其具有分別控制四個(gè)室內(nèi)燈光開與關(guān)的控制語句。第二步,設(shè)置JQ8900-16P的語音模塊,設(shè)置對(duì)應(yīng)IO口的音頻。第三步,設(shè)計(jì)Arduino單片機(jī)中控程序,Arduino單片機(jī)接收由ASR M08-B語音識(shí)別模塊傳遞來的字符信號(hào),識(shí)別信號(hào)通過IO口電頻控制對(duì)應(yīng)燈光的亮滅,同時(shí)賦予JQ8900-16P對(duì)應(yīng)音頻IO口低電平信號(hào),播放系統(tǒng)執(zhí)行結(jié)果音頻信息。
4.2 程序設(shè)計(jì)
4.2.1 ASR-M08-B模塊設(shè)置
(1)對(duì)“ASR M08-B設(shè)置軟件 V3.2.exe”。
(2)在視口左上角選擇“串口號(hào)COM3”、選擇“打開串口”、并點(diǎn)選“十六進(jìn)制顯示”。
(3)語音識(shí)別模塊通過USB轉(zhuǎn)串口模塊連接至電腦。接線方法如下:
語音模塊TXD --> USB模塊RXD
語音模塊RXD --> USB模塊TXD
語音模塊GND --> USB模塊GND
語音模塊3V3 --> USB模塊5V
(4)選擇模塊模式“A”(循環(huán)檢測(cè)模式)端,這里最好觸發(fā)一次上面的大按鈕(按一次即可,為了確保模塊工作在正確的模式)。
(5)接著編輯指令信息,選擇添加關(guān)鍵詞,例如:(00,kai deng,001,$)這里所設(shè)置的kai deng就是開燈關(guān)鍵語句的拼音。
單擊發(fā)送,就可以將你所需要識(shí)別的語句添加至ASR M08-B語音識(shí)別模塊。接著可以對(duì)模塊進(jìn)行測(cè)試,對(duì)著模塊說“開燈”模塊會(huì)返回“0B”,表示正常。
依照此方法分別對(duì)整個(gè)系統(tǒng)的:客廳燈,陽臺(tái)燈,主臥室,洗手間燈,添加開關(guān)控制語句。
4.2.2 JQ8900-16P模塊設(shè)置
設(shè)置模塊連接USB更新所需要的音頻文件,文件名須為5位數(shù)字,該五位數(shù)既是該文件的曲目號(hào)。選曲播放指令(0 x b)靠此數(shù)字來識(shí)別。