基于AVR和51單片機的機器魚語音控制系統(tǒng)設(shè)計與實現(xiàn)
摘要:為了實現(xiàn)人和機器魚之間的交流,提出一種基于AVR和51單片機語音控制識別系統(tǒng)設(shè)計。在理論分析和實驗觀察基礎(chǔ)上,設(shè)計了51單片機主控M-LD3320語音識別模塊的語音識別系統(tǒng),以及AVR主控魚體產(chǎn)生魚體波的動力系統(tǒng)。語音識別系統(tǒng)識別到語音,就通過WAP200B無線通訊模塊將命令傳送給魚體的動力系統(tǒng),AVR再根據(jù)命令產(chǎn)生相應(yīng)的魚體波。實驗結(jié)果表明,該方案可以實現(xiàn)語音控制機器魚。
關(guān)鍵詞:LD3320語音識別;WAP200B無線通訊;ATmega128單片機;魚體波;51單片機
近年來,海洋資源開發(fā)日趨焦點,機器魚作為一項現(xiàn)代化的新成果,具有廣泛的現(xiàn)實意義,它可以更逼真的模擬魚的游動原理,在水下的運動更符合流體力學(xué)原理,具有更好的加速和轉(zhuǎn)向能力,利用它可以探測海洋資源,尋找和檢測海域中受污染的地方,也可以用來勘探地形等等。隨著科技的發(fā)展,人類對智能化產(chǎn)品的研究步伐在不斷加快。但是,作為一項比較新的產(chǎn)品,機器魚的智能化程度還遠遠不夠,伴隨著研究的加深,機器魚的功能也會更趨完善。語音識別作為一門交叉學(xué)科,它的出現(xiàn)實現(xiàn)了長期以來人們渴望與機器交流的夢想。語音識別技術(shù)就是讓機器通過識別和理解過程把語音信號轉(zhuǎn)變?yōu)橄鄳?yīng)的文本或命令的高技術(shù)。近年來,語音識別技術(shù)發(fā)展迅速,取得顯著進步,并且已經(jīng)開始被應(yīng)用于通信、家庭服務(wù)、汽車電子、醫(yī)療、家電、消費電子產(chǎn)品等各個領(lǐng)域。截至目前,還沒有出現(xiàn)針對語音識別系統(tǒng)和機器魚結(jié)合的設(shè)計。本文實現(xiàn)了機器魚和語音識別系統(tǒng)結(jié)合的硬件設(shè)計。
1 芯片介紹
1.1 LD3320語音芯片介紹
LD3320是一顆基于ASR技術(shù)非特定人語音識別的語音識別芯片。語音識別ASR技術(shù),是基于關(guān)鍵詞語列表識別的技術(shù)。只需要軟件編輯好要識別的關(guān)鍵詞語列表,并把這些關(guān)鍵詞語以字符形式傳送到芯片內(nèi)部,就可以對人說出的關(guān)鍵詞語進行識別,不需要作任何錄音。比如,在51單片機編程中,簡單地設(shè)置語音芯片的寄存器,諸如把“ni hao”這樣的識別關(guān)鍵詞動態(tài)地傳入芯片中,芯片就可以識別這個關(guān)鍵詞語了。并且在同一時刻,最多可以在50條關(guān)鍵詞語中進行識別,可以根據(jù)場景需要,在終端隨時編輯和更新這50條關(guān)鍵詞語。另外,芯片上集成了高精度的D/A和A/D接口,并且接有Flash和RAM,只需把麥克風(fēng)接在芯片的AD引腳上即可實現(xiàn)語音識別/聲控/人機對話功能。
1.2 AVR芯片介紹
本例使用ATmega128單片機作為魚體控制芯片,ATmega128具有以下特點:低功耗的8位微處理器,有133條指令,且大多數(shù)指令可以在一個時鐘周期內(nèi)完成;53個可編程I/O口線;128K字節(jié)的系統(tǒng)內(nèi)可編程Flash;4K字節(jié)的EEPROM;優(yōu)化的外部存儲器空間多達64K字節(jié);兩個帶有獨立預(yù)分頻器和比較器的8位定時器/計數(shù)器;兩個帶有預(yù)分頻器、比較功能和捕捉功能的16位定時器/計數(shù)器;兩路8位PWM;6路分辨率可變(2到16位)的PWM;兩個可編程的串行USART;8路10位的ADC。
2 硬件設(shè)計實現(xiàn)
2.1 整體設(shè)計方案
語音識別系統(tǒng)識別到語音數(shù)據(jù)會產(chǎn)生一個中斷信號給51單片機,然后單片機通過程序判斷語音數(shù)據(jù)的正確性(可能是噪音),如果正確就通過P0口讀取語音數(shù)據(jù),并且將數(shù)據(jù)通過WAP200B無線通訊模塊發(fā)送給魚體主控芯片AVR單片機,此時AVR就可以根據(jù)命令產(chǎn)生相應(yīng)占空比的PWM波。整體方案設(shè)計如圖1所示。
2.2 語音控制部分
M-LD3320進行語音識別時,需要有較高純凈度的3.3V直流電源供電和合適的晶振信號(我們使用了12M正方形有源晶振)。使用51單片機編寫程序主控LD3320芯片,來實現(xiàn)語音識別功能。同時必須保證51單片機和語音模塊的最終供電電源統(tǒng)一。
麥克風(fēng)采集到聲音,不管是否識別到正常結(jié)果,芯片都會產(chǎn)生一個中斷信號通過IRO管腳返回給51單片機,并且將數(shù)據(jù)通過ICR_P0~ICR_P7傳送給51單片機進行處理,然后中斷程序要根據(jù)寄存器的值分析結(jié)果,如果識別成功,就將識別得到的數(shù)據(jù)通過無線通訊模塊發(fā)送出去。由于本文在語音模塊傳送數(shù)據(jù)給MCU時采用并行方式,所以MD直接接地,如果采用串行方式需要使MD管腳置高。它與51單片機(基于STC89C52)的連接示意圖如圖2所示。
評論