基于語音處理技術(shù)的智能小車的設(shè)計與制作_第1頁
基于語音處理技術(shù)的智能小車的設(shè)計與制作_第2頁
基于語音處理技術(shù)的智能小車的設(shè)計與制作_第3頁
基于語音處理技術(shù)的智能小車的設(shè)計與制作_第4頁
基于語音處理技術(shù)的智能小車的設(shè)計與制作_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、論文答辯基于語音處理技術(shù)的智能聲控小車的設(shè)計與制作組員: 梁成 馬秋鋒 陳佳杰 指導(dǎo)老師: 鮑小南 陳基偉 緒論1系統(tǒng)硬件設(shè)計2系統(tǒng)軟件設(shè)計3系統(tǒng)調(diào)試4總結(jié)5參考文獻(xiàn)6論文目目錄錄1緒論 語音處理技術(shù)是一門新興的技術(shù),它不僅包括語音的錄制和播放,還設(shè)計語音的壓縮編碼和解碼,語音的識別等各種技術(shù)。 借助于SPCE061A的語音特色,我們只做出了這款語音控制小車。小車不僅具有前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、停車等基本功能,同時配合SPCE061A的語音特色,實現(xiàn)語音控制功能。 智能小車也就是輪式機(jī)器人,具有廣泛的用途。尤其適合那些人類無法工作的環(huán)境,無人生產(chǎn)線、倉庫、服務(wù)機(jī)器人,航空航天等領(lǐng)域。作為20世

2、紀(jì)自動化領(lǐng)域的重大成就,機(jī)器人已經(jīng)和人類社會的生產(chǎn)、生活密不可分,因此為了使智能小車工作在最佳狀態(tài),進(jìn)一步研究其速度和方向的控制是非常有必要的。其次學(xué)習(xí)智能小車的控制也是對自己學(xué)習(xí)的一個檢測。對今后的學(xué)習(xí)和工作具有很大的幫助。我們用61單片機(jī)作為微控制器,設(shè)計這款聲控小車。1、該芯片擁有8路10位精度的ADC,其中路為音頻轉(zhuǎn)換通道,并且內(nèi)置有自動增益電路。這為實現(xiàn)語音錄入提供了方便的硬件條件。2、利用四個I/O端口分兩組分別實現(xiàn)兩個電機(jī)的正傳、反轉(zhuǎn)和停三態(tài)運(yùn)行。3、支持標(biāo)準(zhǔn)C語言編程,也支持C語言與匯編語言的互相調(diào)用。4、語音錄放的庫函數(shù),只要了解庫函數(shù)的使用,就可以很容易的完成語音的錄放、識

3、別等功能,這些都為軟件開發(fā)提供了方便的條件。5、工作電壓:內(nèi)核工作電壓VDD為3.0V3.6V(CPU),I/O口工作電壓VDDH為VDD5.5V(I/O)。6、使用凌陽音頻編碼SACM_S240方式(2.4K位/秒),能容納210秒的語音數(shù)據(jù);鎖相環(huán)PLL振蕩器提供系統(tǒng)時鐘信號;32768Hz實時時鐘。7、聲音模數(shù)轉(zhuǎn)換器輸入通道內(nèi)置麥克風(fēng)放大器和自動增益控制(AGC)功能。8、支持串口、并口傳輸。系統(tǒng)硬件設(shè)計2.1 61單片機(jī)簡介2系統(tǒng)硬件設(shè)計2.2 硬件實現(xiàn)方案2 SPCE061A精簡開發(fā)板、語音小車控制電路板。 圖中的語音輸入部分MIC_ IN、按鍵輸入KEY、聲音輸出部分的功率放大環(huán)節(jié)

4、等已經(jīng)做到了精簡開發(fā)板61板上,為我們使用提供了很大的方便。在電機(jī)的驅(qū)動方面,采用全橋驅(qū)動技術(shù),利用四個I/O端口分兩組分別實現(xiàn)兩個電機(jī)的正傳、反轉(zhuǎn)和停三態(tài)運(yùn)行。+系統(tǒng)硬件設(shè)計2.3 電源電路2 電源部分的電路,由電池盒提供的 4.5V直流電經(jīng)SPY0029 后產(chǎn)生3.3V給整個系統(tǒng)供電。SPY0029 是電壓調(diào)整 IC,采用 CMOS 工藝,具有靜態(tài)電流低、驅(qū)動能力強(qiáng)、線性調(diào)整出色等特點。1 圖中的VDDH3為SPCE061A的 I/O電平參考,如果該點接SPCE061A(PLCC84 封裝,下面的介紹中當(dāng)出現(xiàn) SPCE061A的引腳描述時,均指此封裝的芯片)的51 腳,可使 I/O輸出高電

5、平為3.3V;VDDP為PLL鎖相環(huán)電源, 接SPCE061A的7腳; VDD和VDDA分別為數(shù)字電源與模擬電源,分別接SPCE061A的15腳和36腳; AVSS1是模擬地, 接SPCE061A的24腳; VSS是數(shù)字地, 接SPCE061A的38腳。AVSS2接音頻輸出電路的 AVSS2。2系統(tǒng)硬件設(shè)計2.4 音頻電路2音頻電路由音頻輸出和音頻輸入兩部分組成。下圖是音頻輸出電路圖。SPCE061A內(nèi)置2路10 位 精度的 DAC,只需要外接功放電路即可完成語音的播放。圖中的 SPY0030 是凌陽的一款音頻放大芯片,可以工作在2.46V范圍內(nèi),最大輸出功率可達(dá)700mW。 SPCE061A

6、 芯片中已經(jīng)集成了音頻輸入專用 ADC 以及 AGC 放大電路,因此芯片外部的電路比較簡單。1系統(tǒng)軟件設(shè)計3.1 訓(xùn)練子程序3名稱產(chǎn)名稱 當(dāng)程序檢測到訓(xùn)練標(biāo)志位BS_Flag內(nèi)容為0 xffff,就會要求操作者對它進(jìn)行訓(xùn)練操作,訓(xùn)練操作的過程如圖 6-3所示:訓(xùn)練采用兩次訓(xùn)練獲取結(jié)果的方式,以訓(xùn)練名字為例:小車首先會提示:給我取個名字吧,這時你可以告訴它一個名字(比如Jack);然后它會提示:請再說一遍,這時再次告訴它名字(Jack),如果兩次的聲音差別不大,小車就能夠成功的建立模型,名稱訓(xùn)練成功;如果沒能夠成功的建立模型,小車會告知失敗的原因并要求重新訓(xùn)練。成功訓(xùn)練名稱后會給出下一條待訓(xùn)練指

7、令提示音:前進(jìn),參照名稱訓(xùn)練方式訓(xùn)練前進(jìn)指令。依次訓(xùn)練小車的名稱前進(jìn)指令倒車指令左轉(zhuǎn)指令右轉(zhuǎn)指令,全部訓(xùn)練成功子程序返回,訓(xùn)練結(jié)束。系統(tǒng)軟件設(shè)計3.1 訓(xùn)練子程序3int TrainWord(int WordID, int RespondID)int res;PlayRespond(RespondID);while(1)res = BSR_Train(WordID,BSR_TRAIN_TWICE);if(res = 0) break;switch(res)case -1: /沒有檢測出聲音PlayRespond(5); return -1;case -2: / 需要重新訓(xùn)練一遍PlayResp

8、ond(4);break;case -3: / 環(huán)境太吵PlayRespond(5);return -1;case -4: / 數(shù)據(jù)庫滿 return -1;case -5: / 兩次檢測出聲音不同if(WordID = NAME_ID)PlayRespond(5); /兩次輸入名稱不同elsePlayRespond(5); /兩次輸入命令不同return -1;case -6: return -1;return 0;系統(tǒng)軟件設(shè)計3.2 動作子程序3 動作子程序包括:前進(jìn)、倒車、左拐、右拐、停車子程序; 前進(jìn):由小車的結(jié)構(gòu)原理和驅(qū)動電路分析知:只要IOB8為高電平,IOB9,IOB10,IOB

9、11全部為低電平即可實現(xiàn)小車的前進(jìn)。前進(jìn)子程序包括語音提示、置端口數(shù)據(jù)、啟動定時器操作,左轉(zhuǎn):由小車的結(jié)構(gòu)原理分析和驅(qū)動電路分析知:小車左轉(zhuǎn)需要兩個條件:1.前輪左偏2.后輪前進(jìn),這時對應(yīng)的I/O狀態(tài)為:IOB8、IOB10為高電平,IOB9、IOB11為低電平。左轉(zhuǎn)子程序包括語音提示、置端口數(shù)據(jù)、啟動定時器操作右轉(zhuǎn):由小車的結(jié)構(gòu)原理分析和驅(qū)動電路分析知:小車右轉(zhuǎn)需要兩個條件:1.前輪右偏2.后輪前進(jìn),這時對應(yīng)的I/O狀態(tài)為:IOB8、IOB11為高電平,IOB9、IOB10為低電平。右轉(zhuǎn)子程序包括語音提示、置端口數(shù)據(jù)、啟動定時器操作。系統(tǒng)軟件設(shè)計3.2 動作子程序3void F_GoAhea

10、dCtr(int n) /前進(jìn) int i,j ; for(j=0;jn;j+)ClearWatchDog();i=i&0 x00c0;i=i|0 x2800;*P_IOB_Data=i;F_Delay(90);i=i&0 x00c0;i=i|0 x0000;*P_IOB_Data=i;F_Delay(60); void F_BackUpCtr(int n) /倒退 int i,j ; ClearWatchDog(); for(j=0;jn;j+)i=i&0 x00c0;i=i|0 x1400;*P_IOB_Data=i;F_Delay(90);i=i&0 x0

11、0c0;i=i|0 x0000;*P_IOB_Data=i;F_Delay(60); 。void F_TurnLeftCtr(int n) /左轉(zhuǎn) int i,j ;ClearWatchDog(); for(j=0;jn;j+)i=i&0 x00c0;i=i|0 x2400;*P_IOB_Data=i;F_Delay(90);i=i&0 x00c0;i=i|0 x0000;*P_IOB_Data=i;F_Delay(60); void F_TurnRightCtr(int n)/右轉(zhuǎn)int i,j ;ClearWatchDog(); for(j=0;jn;j+)i=i&

12、0 x00c0;i=i|0 x1800;*P_IOB_Data=i;F_Delay(90);i=i&0 x00c0;i=i|0 x0000;*P_IOB_Data=i;F_Delay(60); void F_StopCtr() /停止int i,j ; ClearWatchDog();i=i&0 x00c0;i=i|0 x0000;系統(tǒng)軟件設(shè)計3.3 系統(tǒng)總體程序3 語音識別小車的主程序流程如圖所示,分為四大部分:初始化部分、訓(xùn)練部分、識別部分、重訓(xùn)操作。初始化部分初始化部分:初始化操作將IOB8IOB11設(shè)置為輸出端,用以控制電機(jī)。必要時還要有對應(yīng)的輸入端設(shè)置和PWM端口設(shè)置

13、等。訓(xùn)練部分訓(xùn)練部分:訓(xùn)練部分完成的工作就是建立語音模型。程序一開始判斷車是否被訓(xùn)練過,如果沒有訓(xùn)練過則要求對其進(jìn)行訓(xùn)練,并且會在訓(xùn)練成功之后將訓(xùn)練的模型存儲到Flash,在以后使用時不需要重新訓(xùn)練;如果已經(jīng)訓(xùn)練過會把存儲在Flash中的模型調(diào)出來裝載到辨識器中。識別部分識別部分:在識別環(huán)節(jié)當(dāng)中,如果辨識結(jié)果是名字,停止當(dāng)前的動作并進(jìn)入待命狀態(tài),然后等待動作命令。如果辨識結(jié)果為動作指令小車會語音告知相應(yīng)動作并執(zhí)行該動作,在運(yùn)動過程中可以通過呼叫小車的名字使小車停下來。重訓(xùn)重訓(xùn)操作操作:考慮到有重新訓(xùn)練的需求,設(shè)置了重新訓(xùn)練的按鍵(61板的KEY3),循環(huán)描該按鍵,一旦檢測到此鍵按下,則將擦除訓(xùn)

14、練標(biāo)志位(0 xe000單元),并等待復(fù)位。復(fù)位智能小車的聲控、遙控與避障的實現(xiàn)9 后,程序重新執(zhí)行,當(dāng)檢測到訓(xùn)練標(biāo)志位為0 xffff時會要求重新對其進(jìn)行訓(xùn)練。系統(tǒng)軟件設(shè)計3.3 系統(tǒng)總體程序 3主程序系統(tǒng)調(diào)試4.1 編程軟件unspIDE4 unspIDE是由凌陽科技提供的一個集成開發(fā)環(huán)境,它集程序的編譯、編輯、鏈接、調(diào)試和仿真等功能為一體。具有友好的交易界面,下拉菜單、快捷鍵和快速訪問命令列表等。是程序設(shè)計工作更加方便、高效。此外,它的仿真功能可以不連接仿正版,模擬硬件的部分功能來調(diào)試程序。 1打開IDE編程軟件。2選擇FILE,OPENPROJECT,在打開對話框內(nèi)選擇需要打開的工程3

15、workspace窗口顯示在工具的左半邊,在這個窗口內(nèi),用戶可以看到當(dāng)前工程所包含的文件4選擇built,rebuiltALL,進(jìn)行源文件的的編譯和鏈接。編譯和鏈接過程里的錯誤顯示在output窗口內(nèi)6選擇built,startdebug,download,把程序加載到內(nèi)存,然后,用戶可以用debug菜單內(nèi)所調(diào)試的命令來調(diào)試和運(yùn)行程序。選擇built,startdebug,GO,在調(diào)試器內(nèi)運(yùn)行程序。65%25%系統(tǒng)調(diào)試4.2 調(diào)試過程4 首先我們打開編程軟件,然后建了一個新的工程。把程序?qū)懙杰浖厦?,然后?jīng)過編譯沒有錯誤,把程序通過并口下載到單片機(jī)里面。 在訓(xùn)練階段,應(yīng)用單片機(jī)對采集到的語音樣

16、本進(jìn)行分析處理,從中提取出語音特征信息,建立一個特征模型;在識別階段,使用單片機(jī)對采集到的語音樣本進(jìn)行類似的分析處理,提取出語音的特征信息,然后將這個特征信息模型與已有的特征模型進(jìn)行對比,如果二者達(dá)到了一定的匹配度,則輸入的語音被識別。系統(tǒng)調(diào)試4.3 調(diào)試結(jié)果4 1可以通過簡單的I/O口操作的語音特色實現(xiàn)小車的前進(jìn)后退、左轉(zhuǎn)右轉(zhuǎn)等功能。 2配合SPCE061A的語言特色,利用系統(tǒng)的語音播放和語音識別資源,實現(xiàn)語音控制的功能。 3可以在行走過程中聲控改變小車運(yùn)行狀態(tài)。 4在超出語音控制范圍時能夠自動停車??偨Y(jié)5 首先要感謝學(xué)校給我們安排了這么有意義的一門課程,通過這門課程的學(xué)習(xí),不僅在專業(yè)知識上

17、得到了一定程度的提升,而且在團(tuán)隊合作、為人處世上也有了新的見解。 我們對單片機(jī)有了更多的認(rèn)識,而且我們選擇了一個課上沒有學(xué)過的61單片機(jī)進(jìn)行對小車的設(shè)計與制作。我們學(xué)到了很多未曾設(shè)計的領(lǐng)域。特別是語音控制這一塊,我相信這一定對我們未來的工作有一定程度的幫助。雖然在學(xué)習(xí)的過程中遇到很多的困難,但是我們并沒有退縮。從來沒有想過要換一個項目做,我們在黑暗中摸索著,即使有時候會碰壁,但是我們也沒有放棄,而是即使糾正自己的錯誤。慢慢地就學(xué)到了很多,一步一步完成了小車的設(shè)計與制作。 最開心的事情還是和隊友在一起的時光,我們一起討論,一起爭辯,一起鉆研。三個人各抒己見,許多問題迎刃而解,這也許就是合作的力量吧。當(dāng)然有合作就離不開分工,每個人都有主要負(fù)責(zé)的部分,這樣才能夠更加有效率完成工作。 最讓我感動的就是

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論