南開大學(xué)濱海學(xué)院 馬浚剛 朱振興 楊夢龍 曾慶之
在互聯(lián)網(wǎng)和自動(dòng)化技術(shù)不斷發(fā)展的影響下,智能家居已經(jīng)成為了當(dāng)今物聯(lián)網(wǎng)技術(shù)發(fā)展的重要熱點(diǎn)方向之一。本設(shè)計(jì)基于OWL Micro F1開發(fā)板,以STM32F103C8T6為核心,利用語音識別模塊ASR-M08B、語音播報(bào)模塊WT2003S-16和SG90模擬舵機(jī)實(shí)現(xiàn)垃圾桶的智能化聲音識別和語音控制,完成不同語音指令控制對應(yīng)垃圾桶垃圾蓋的自動(dòng)閉和和對垃圾種類進(jìn)行語音播報(bào),實(shí)現(xiàn)人機(jī)交互。通過在模擬工作環(huán)境下對于設(shè)計(jì)正確識別率進(jìn)行檢測,統(tǒng)計(jì)出垃圾桶在正常工作環(huán)境中的正確識別的概率達(dá)到89.4%,可以在4m距離內(nèi)有效完成設(shè)計(jì)動(dòng)作和功能。
智能垃圾桶是利用自動(dòng)化控制技術(shù)、互聯(lián)網(wǎng)技術(shù)開發(fā)、新型的傳感器檢測裝置和機(jī)械傳動(dòng)裝置對傳統(tǒng)的垃圾桶進(jìn)行的改造,隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,開始慢慢出現(xiàn)符合市場需求的智能家居產(chǎn)品。例如我們所制作的智能垃圾桶,其能夠拾取人體的熱紅外信號,然后通過智能垃圾桶內(nèi)置的單片機(jī)芯片進(jìn)行處理數(shù)據(jù);通過控制裝置或傳統(tǒng)的機(jī)械裝置,實(shí)現(xiàn)智能垃圾桶的智能開合,同時(shí)無需進(jìn)行接觸。但隨著智能垃圾桶行業(yè)的不斷發(fā)展和進(jìn)步,其系統(tǒng)一般具有自動(dòng)開合、填充物超過警戒線后自動(dòng)報(bào)警等功能,但是這已經(jīng)不能滿足用戶的需求。此外,由于目前紅外熱釋光傳感器的感知距離有限,使得許多智能垃圾桶對人類的感知距離不足1m,無法實(shí)現(xiàn)人機(jī)更有效的互動(dòng),與我們對于設(shè)計(jì)智能家居的理念背道而馳。我們本次設(shè)計(jì)采用STM32F103C8T6單片機(jī)作為系統(tǒng)的控制核心,采用ASS-M08B模塊、語音識別模塊WT2003S-16和SG90模擬舵機(jī)實(shí)現(xiàn)垃圾桶的智能語音識別和語音控制,實(shí)現(xiàn)了各種語音命令對于控制相應(yīng)垃圾桶蓋的自動(dòng)開合和對垃圾種類進(jìn)行語音播報(bào),從而實(shí)現(xiàn)我們所需要的人機(jī)交互。
ASR-M08B的語音識別部分采用的是LD3320芯片,然后集成了通過STC11L16XE的單片機(jī)做的一些指令、數(shù)據(jù)處理,相比于其他的LD3320的模塊,操作更加簡單,用戶不需要進(jìn)行太多的編程,直接串口發(fā)送指令設(shè)置關(guān)鍵詞即可識別。ASR-M08B模塊是支持三種識別檢測模式的,即:循環(huán)檢測模塊、口令檢測模式和按鈕檢測模式,在我們這個(gè)智能垃圾桶項(xiàng)目中,我們使用的是“口令檢測模式”,所謂的“口令檢測模式”,就意味著,我們先要對上口令,才能夠進(jìn)行下一步操作。
這個(gè)“語音播報(bào)模塊”是集成到了OWL Micro F1擴(kuò)展板上,主芯片使用的是WT2003S-16S這一MP3芯片的模擬U盤版本,其只支持SP-FLASH,可通過USB接口連接到電腦,直接將電腦里面的語音下載到FLASH模擬的可移動(dòng)盤符中(模擬U盤),以實(shí)現(xiàn)指定地址播放、指定插播地址播放、音量級數(shù)、上下曲、播放停止、循環(huán)模式等。
其工作原理是:舵機(jī)內(nèi)部中有一個(gè)參考電壓,微處理器產(chǎn)生的PWM信號通過信號線進(jìn)入舵機(jī),產(chǎn)生直流偏置電壓,與舵機(jī)基準(zhǔn)電壓比較,從而獲得輸出的電壓差。正負(fù)的電壓差用來驅(qū)動(dòng)芯片,從而決定了正反轉(zhuǎn)方向。當(dāng)轉(zhuǎn)向控制裝置開始轉(zhuǎn)動(dòng)時(shí),電位計(jì)由轉(zhuǎn)向控制裝置內(nèi)的級聯(lián)減速器驅(qū)動(dòng),使電壓差為零,發(fā)動(dòng)機(jī)停止旋轉(zhuǎn)。所以在每個(gè)垃圾桶上,都安裝了一個(gè)SG90的舵機(jī),舵機(jī)用熱熔膠固定在了垃圾桶上,通過杠桿原理的簡單運(yùn)用,舵機(jī)旋轉(zhuǎn)帶動(dòng)垃圾桶的上蓋進(jìn)行開合動(dòng)作。
首先將ASR-M08B設(shè)置軟件將語音識別模塊里面的所有指令全部擦除,之后添加關(guān)鍵詞,在“ASR-M08B設(shè)置軟件”的“數(shù)據(jù)發(fā)送區(qū)”發(fā)送喚醒指令(一級指令)“00,la ji tong,254,$”,如果出現(xiàn)“寫入成功!”,喚醒指令的關(guān)鍵詞就設(shè)置完成,其余二級指令同理寫入。需要注意“00”為關(guān)鍵詞所在的行,如果只有一位數(shù)時(shí),前面十位一定要0補(bǔ)齊;“l(fā)a ji tong”為識別的詞語其拼音之間需要用空格隔開;“254”是規(guī)定為口令模式中的口令,此外二級指令中“255”是規(guī)定的屏蔽詞,用來屏蔽本項(xiàng)目中語音播報(bào)的“可回收垃圾”等幾條語音,使其不被語音識別模塊識別到。ASR-M08B語音識別操作流程如圖1所示。
圖1 ASR-M08B語音識別操作流程圖
首先用Micro USB線將擴(kuò)展板跟電腦連接,在電腦盤符里面,將出現(xiàn)模塊的FLASH格式化,通過“語音文字轉(zhuǎn)換軟件”生成音頻文件,再將音頻文件按生成順序依次復(fù)制到語音播報(bào)模塊當(dāng)中,若不按順序,則會(huì)造成語音播報(bào)時(shí)的混亂。之后進(jìn)行測試音頻語音播報(bào),通過USB轉(zhuǎn)TTL模塊給OWL Micro F1擴(kuò)展板供電,在串口調(diào)試助手中輸入“指定SPIFLASH索引播放”功能的指令幀格式(如表1),如果語音播報(bào)模塊在播報(bào)“可回收垃圾”音頻,同時(shí),串口助手也會(huì)返一個(gè)“00”字符(第一條音頻文件),則說明語音播報(bào)模塊調(diào)試成功。
表1 指令幀格式碼
SG90要求控制舵機(jī)的PWM信號頻率在50Hz左右,即周期為20ms的PWM信號,當(dāng)該信號的高電平部分在0.5ms~2.5ms之間時(shí),對應(yīng)舵機(jī)轉(zhuǎn)動(dòng)的角度,具體對應(yīng)情況如表2。
表2 脈寬與轉(zhuǎn)動(dòng)角度關(guān)系表
圖2 系統(tǒng)流程圖
在系統(tǒng)故障搜索中,首先,系統(tǒng)中的每個(gè)模塊都是獨(dú)立的,以確保它能夠獨(dú)立工作。在這種情況下,將搜索到的所有模塊集成到軟件部分,然后進(jìn)行總體功能搜索和參數(shù)改進(jìn)。其次是模塊的安裝,根據(jù)每個(gè)模塊的大小和尺寸確定安裝位置。比如SG90舵機(jī),其體積較小可以用熱熔膠固定在了垃圾桶背面方便控制垃圾蓋。特別注意的是,由于離線式語音識別芯片ASR-M08B的局限性,導(dǎo)致了識別率只能在90%左右,與在線式語音識別芯片還是有一定差距其次關(guān)鍵詞數(shù)量有限(最多50條),致使能夠?qū)懭氲年P(guān)鍵詞數(shù)量不多,有一定的局限性。
結(jié)束語:設(shè)計(jì)針對現(xiàn)有智能垃圾桶無法滿足智能家居的要求,我們提出將語音識別和語音播報(bào)結(jié)合起來,并使用非特定的語音識別芯片。例如:使用ASR-M08B芯片的智能控制,可以有效的幫助我們評估垃圾的種類,做好垃圾的分類。因此,有必要進(jìn)一步研究和改進(jìn)非特定語音識別算法,提高與語音識別的有效距離和語音識別的成功率。垃圾分類是一項(xiàng)國家工程,不僅需要政府的行動(dòng),還需要相關(guān)社會(huì)組織、企業(yè)、群眾等的合作,作為條例的實(shí)施者,要積極參加環(huán)保講座,學(xué)習(xí)環(huán)保和垃圾分類的相關(guān)知識,培養(yǎng)自己的環(huán)保理念,理解條例精神,使條例得以貫徹執(zhí)行。