陳麗媚 張學(xué)娜 易向東*
( 廣東第二師范學(xué)院,廣東 廣州510303)
隨著科學(xué)技術(shù)的發(fā)展,智能時代的到來,給我們的生活帶來了極大的便捷,智能家居逐漸走進(jìn)我們的生活中,而智能音箱更是被叫為“ 智能家居的入口”。 智能音箱的語音平臺很大一方面帶動了智能家居走向消費(fèi)者市場,伴隨著智能音箱的持續(xù)穩(wěn)定增長,全球智能家居設(shè)備出貨量也迎來了高速增長。[1]為此,本小組基于高質(zhì)量低成本的理念設(shè)計一款基于Arduino 的AI 語音識別智能音箱。
本文所設(shè)計的AI 語音識別智能音箱, 是一個以Arduino 軟件為處理器搭建的對藍(lán)牙音箱作出響應(yīng)的智能系統(tǒng)和以串口通信助手接收數(shù)據(jù)作出響應(yīng)而設(shè)計的。 系統(tǒng)軟件程序由初始化程序、語音播放程序、語音識別程序以及藍(lán)牙程序這幾個部分組成。
圖1 軟件工作流程圖
1.2.1 LD3320 語音識別模塊
LD3320 作為一款基于非特定人語音識別(SI-ASR) 技術(shù)的語音識別/聲控芯片, 集成了一系列與其功能相關(guān)的外部電路,包括ADC、DAC、麥克風(fēng)剪口、聲音輸出接口等, 使得LD3320 能夠在沒有任何外接輔助Flash、RAM 芯片的情況下直線語音識別/聲控/人機(jī)對話等功能。[2]
本設(shè)計中,運(yùn)用LD3320 語音識別模塊,識別指令,隨后根據(jù)指令做出相應(yīng)的反應(yīng), 為了清晰的看到LD3320 接收指令的狀態(tài), 在LD3320 模塊的外圍設(shè)備有一個指示燈, 上電之后呼叫“ 小愛”,指示燈亮起,當(dāng)二級指令說出之后,指示燈滅,隨后音箱根據(jù)二級指令做出相應(yīng)反應(yīng)。
圖2 LD3320 語音識別模塊
圖3 上電之后指示燈亮
1.2.2 藍(lán)牙模塊
藍(lán)牙模塊,是一種集成藍(lán)牙功能的PCBA 板,主要用于短距離無線通訊, 按功能分為藍(lán)牙數(shù)據(jù)模塊和藍(lán)牙語音模塊。 藍(lán)牙模塊是指集成藍(lán)牙功能的芯片基本電路集合, 用于無線網(wǎng)絡(luò)通訊,大致可分為三大類型:數(shù)據(jù)傳輸模塊、藍(lán)牙音頻模塊、藍(lán)牙音頻+數(shù)據(jù)二合一模塊等等。 一般模塊具有半成品的屬性,是在芯片的基礎(chǔ)上進(jìn)行過加工,以使后續(xù)應(yīng)用更為簡單。[3]
本設(shè)計中手機(jī)APP 鍵盤輸入數(shù)據(jù)發(fā)送到藍(lán)牙模塊中,藍(lán)牙模塊再將數(shù)據(jù)發(fā)送給arduino 單片機(jī)中, 隨即單片機(jī)讀取數(shù)據(jù),根據(jù)數(shù)據(jù)執(zhí)行對應(yīng)的指令。
圖4 藍(lán)牙模塊
圖5 藍(lán)牙界面
1.2.3 dfplayer 播放器模塊
dfplayer 播放器模塊是一款小巧且價格低廉的音樂播放器模塊。 本設(shè)計中采用的dfplayer 播放器模塊與語音模式相結(jié)合,實(shí)現(xiàn)了語音播放音樂的功能。 當(dāng)在語音模式下通過一級指令喚醒音箱,指示燈亮,二級指令對音箱說“ 播放音樂”的時候,指示燈滅,此時dfplayer 播放TF 卡根目錄下的第一首歌,當(dāng)喊出“ 上一曲”或者“ 下一曲”時,將會播放正在播放曲目的相應(yīng)上一曲或者下一曲。
搭建完硬件平臺之后,將代碼編譯,燒寫然后通過串口下載至開發(fā)板后,進(jìn)行測試。 首先在安靜的環(huán)境中對音箱說“ 小愛”,等待識別模塊響應(yīng)后, 左上角指示燈亮后, 對音箱說“ 播放音樂”,等待識別模塊響應(yīng)后,左上角指示燈滅后,隨即音箱開始唱歌,但是這時候再喊“ 下一曲”的指令就會發(fā)現(xiàn)音箱沒有反應(yīng),于是本小組猜想會不會是由于在放歌,導(dǎo)致環(huán)境變得嘈雜而指令無法被音箱識別到,為了驗(yàn)證該猜想,本小組做了以下兩個實(shí)驗(yàn)。
實(shí)驗(yàn)一: 在唱歌的時候湊近LD3320 模塊大聲地喊“ 下一曲”,發(fā)現(xiàn)音箱終于作出反應(yīng),播放下一首音樂。
實(shí)驗(yàn)二: 先把電源斷開掉, 然后在一個嘈雜地環(huán)境中通過“ 放歌”指令喚醒音箱,最終發(fā)現(xiàn)要喊的很大聲,音箱才對指令作出反應(yīng)。
經(jīng)過多次測試,驗(yàn)證猜想正確。 其次,在語音控制指令無法正確讀取到的時候, 發(fā)現(xiàn)裝置通過藍(lán)牙模式與音箱進(jìn)行連接后,在手機(jī)進(jìn)行操作發(fā)現(xiàn)可以得到理想的效果。
在實(shí)物檢測的過程中, 發(fā)現(xiàn)設(shè)計的音箱對指令的識別度很高,但也會出現(xiàn)無法識別的指令現(xiàn)象,造成的原因有:
3.1 發(fā)出指令的環(huán)境過于嘈雜,導(dǎo)致LD3320 模塊無法正確讀取指令從而不被讀取。
3.2 發(fā)音不準(zhǔn)確, 由于地方方言原因?qū)е掳l(fā)音不準(zhǔn)而不被LD3320 正確識別到,從而不被讀取。
本文主要對基于Arduino 的AI 語音識別智能音箱設(shè)計的硬件搭建和軟件設(shè)計方面作出了闡述。 同時也作出了實(shí)物并且經(jīng)過驗(yàn)證,確保了方案的可靠性以及可行性。 測試結(jié)果表明,本裝置可以通過語音識別指令實(shí)現(xiàn)功能,除此之外還可以通過藍(lán)牙模式用手機(jī)與裝置進(jìn)行連接, 用戶可在手機(jī)上對裝置進(jìn)行操作。 經(jīng)實(shí)驗(yàn)證明, 該音箱裝置的功能可以滿足用戶對音箱的基本需求,表明該裝置是有效的。 同時,該裝置還實(shí)現(xiàn)了本小組最初的設(shè)計目標(biāo):高質(zhì)量,低成本。