【正文】
版。學(xué)校可以公布論文(設(shè)計)的全部或部分內(nèi)容。 它的CPU內(nèi)核采用16位具有DSP功能的微處理器芯片,而且CPU可最高工作在49MHz的主頻下,能夠非常容易地、快速地處理復(fù)雜的數(shù)字信號,因此與其他類型的單片機相比,在數(shù)字語音處理方面SPCE061A更具有優(yōu)勢。語音識別的目的是通過語音,使機器人了解人的意思從而執(zhí)行相應(yīng)的命令,完成相應(yīng)的動作?;谝陨蠙C器人的發(fā)展方向,該設(shè)計制作了一個以凌陽單片機為核心的智能機器人軟件系統(tǒng)。該系統(tǒng)利用凌陽單片機在數(shù)字信號處理及語音處理方面的優(yōu)越性,通過語音辨識技術(shù),可以讓機器人在語音指令控制下實現(xiàn)前進,后退,跳舞,發(fā)射以及連續(xù)發(fā)射飛盤等多種功能。 關(guān)鍵詞:SPCE061A單片機;機器人;語音識別 ABSTRACTSunplus 16bit SPCE061ASCM is embedded with 32K word Flash and 2K word SRAM,with builtin 10bit ADC and DAC as well as more than 14 interrupt sources. The core of its CPU is a 16bit microprocessor chip which has the function of DSP. Besides,the CPU can work with a frequency up to 49 MHz,and process plex digital signals easily and quickly. Therefore,pared with other types of SCM,SPCE061A has more advantages in speech processing. Today,the development of robots bee more and more intelligent and humane,and the voice is the most natural munication between the robot,the most convenient means. The purpose of speech recognition by voice,so that people understand the meaning of the machine to perform the appropriate order,plete the appropriate action. Realize intelligent robots and advanced. Based on the above direction of the robot,which designed a microcontroller core with Sunplus intelligent robot software system. System includes voice recognition module,the voice playback module and the robot motion control module. The system uses Sunplus microcontrollers in digital signal processing and speech processing advantages,through voice recognition technology allows voice mands to control the robot to achieve forward,backward,dancing,launch and continuously firing Frisbee and other features. After training,the training of people can use various mands to the robot to plete a number of interesting action,making more intelligent humanputer interaction. Keywords: SPCE061A SCM ; Robot ; Speech Recognition目 錄前 言 1第一章 系統(tǒng)總體方案設(shè)計 2第二章 硬件系統(tǒng)設(shè)計 3 SPCE061A的簡介 3 概述 3 SPCE061A結(jié)構(gòu)圖 3 芯片性能 4 SPCE061A 最小系統(tǒng) 5 適用于語音信號處理的主要特點 5 機器人 6 主要功能: 6 實物圖 6 注意事項 6 硬件驅(qū)動電路 7 8 機器人線路的辨認 8 機器人電機線路、電源線路與驅(qū)動電路板的連接 8第三章 系統(tǒng)軟件設(shè)計 10 程序分析 10 擦除Flash模塊 10 位操作模塊 10 語音播放函數(shù) 10 走路、跳舞等其它函數(shù)模塊 11 API函數(shù)的介紹 12 初始化過程 12 訓(xùn)練過程 13 識別過程 13 其它語音識別API介紹 14 下載程序并調(diào)試檢測 15第四章 語音識別技術(shù) 18 語音識別基本原理 18 語音合成技術(shù) 18結(jié)束語 19參考文獻 20附表A 程序流程圖 22附錄B 23致 謝 30 瓊州學(xué)院本科畢業(yè)論文 (設(shè)計)前 言近年來,消費類電子產(chǎn)品中智能化趨勢日益明顯,其中語音識別技術(shù)的應(yīng)用起到了關(guān)鍵的作用 。隨著科學(xué)技術(shù)的快速發(fā)展和人們物質(zhì)生活水平要求的提高,機器人已經(jīng)漸漸地融入人們生活的各個領(lǐng)域,去代替或者協(xié)助人們?nèi)ネ瓿筛呶#爆嵒蛘邘椭鷼堈先巳旱墓ぷ?。目前,語音識別技術(shù)己經(jīng)在諸多領(lǐng)域得到應(yīng)用。語音識別技術(shù)就是讓機器通過識別和理解過程把語音信號轉(zhuǎn)變?yōu)橄鄳?yīng)的文本或命令的一種技術(shù),其根本目的是研究出一種具有聽覺功能的機器,這種機器能直接接受人的語音,理解人的意圖,并做出相應(yīng)的反應(yīng)。將語音識別技術(shù)引入機器人領(lǐng)域解決人機交流障礙勢在必行。我國在語音機器人領(lǐng)域發(fā)展進步很快,如凌陽智能語音識別機器人,以凌陽單片機SPCE061A為核心,改裝市場上的玩具機器人,使改裝后的機器人具有語音識別能力,通過語音命令對其進行控制,這也正是本課題所研究的。采用了先進的非特定人語音識別技術(shù),對口音和噪聲不敏感。在語音交流的過程中,抗噪音能力得到了很大的提高。第一章 系統(tǒng)總體方案設(shè)計機器人共有五個直流電機。發(fā)射電機和推進電機的轉(zhuǎn)動方向是固定的。推進電機的任務(wù)就是把發(fā)射所需要的飛盤從存儲倉輸送到發(fā)射轉(zhuǎn)盤位置。電機轉(zhuǎn)動一圈,機簧就會彈射一下,從而完成輸送飛盤的任務(wù)。如圖 所示: 系統(tǒng)的總體框圖系統(tǒng)主要由 61 板與機器人驅(qū)動電路構(gòu)成。另外增加了特定人語音識別的功能,通過命令來控制機器人,使機器人智能化。它的內(nèi)核采用本公司最新推出的(Microcontroller and Signal Processor)16位微處理器芯片(簡稱“0nSPT39。SPCE061 A既具有體積小、集成度高、可靠性好的特點,又具有較強的中斷處理能力、高性能的價格比和功能強、效率高的指令系統(tǒng)及低功耗、低電壓的特點,以u39。 SPCE061A結(jié)構(gòu)圖 SPCE061A 的結(jié)構(gòu)如圖 : SPCE061A的結(jié)構(gòu) 芯片性能SPCE061A的主要性能特點如下:(1)16位u39。 SPCE061A 最小系統(tǒng)SPCE061A最小系統(tǒng)當中,包括SPCE061A芯片外圍的基本模塊,有:晶振輸入模塊(OSC)、鎖相環(huán)外圍電路(PLL)、復(fù)位電路(RESET)、指示燈(LED)等。nSP的DSP運算功能配合使用,就可方便地實現(xiàn)語音識別功能,從而使其能更好地用于聲控和語音識別領(lǐng)域。 硬件驅(qū)動電路:左右腿、脖子電機驅(qū)動加速度、發(fā)射電機驅(qū)動 機器人驅(qū)動電路原理圖機器人驅(qū)動電路采用功率較大的三極管搭成H 橋來驅(qū)動電機,可以實現(xiàn)電機的正向旋轉(zhuǎn)與電機的反向旋轉(zhuǎn)。另外用了一個三極管驅(qū)動單向旋轉(zhuǎn)的電機,包括加速電機與發(fā)射電機,驅(qū)動電路比較簡單??梢愿鶕?jù)顏色和部位辨別線路的作用,下面分別介紹:該機器人載體共有5個電機,腿部有2個電機,控制機器人的行走方向;胸部有1個電機,控制機器人的頭部轉(zhuǎn)向;頭部有2個電機,1個是加速電機,1個是發(fā)射電機,配合使用可以發(fā)射簧片。腿部電機:粉色(或相近顏色)和黑色一組,藍色和淺藍色(或相近顏色)一組。頭部發(fā)射電機:藍色和淺藍色連線。眼睛連線:白色和土黃色的連線。電源連線:紅色的是正極,黑色的是負極。其中標號的意義為:M表示Motor,電機的意思,L表示Left,左邊,M_L1合起來就是左腿電機的意思,同理M_L2是另一條左腿電機連線。中間的標號VCC與M_J1是連接加速電機的兩個接口。根據(jù)前面電機連線的辨認,該電機是黑色和綠色的連線或者是棕色和綠色的連線,一般黑色或棕色的連線接VCC,綠色的連線接M_J1。焊接完畢,機器人按拆的反過程裝上,把電池盒蓋稍作處理,固定背板,在背板上固定61板,組裝就完成了。程序流程圖見附表A。將訓(xùn)練好的語音模型導(dǎo)出存儲到FLASH中使用庫函數(shù)BSR_ExportSDWord(uiCommandID);進行操作,然后再調(diào)用讀寫FLASH中的函數(shù)進行。在識別出命令后,執(zhí)行相關(guān)動作,相關(guān)動作操作就是操作電機的正向或反向旋轉(zhuǎn)同時配合延時與播放聲音組合起來形成不同的動作。函數(shù)voidSet_IOB_Bit(unsigned int,unsigned int,unsigned int,unsigned int,unsigned int);參數(shù)依次為IO的位、Dir、Attrib、Data、Buffer例如操作IOB11為同相低電平輸出為Set_IOB_Bit(11,1,1,0,0)。. 走路、跳舞等其它函數(shù)模塊這些函數(shù)就是控制電機的通與斷的組合完成不用的動作,在需要的時候播放語音,實現(xiàn)一定的效果,具體請參考函數(shù)原形。比如左腿向前走,那么控制左腿的電機正向旋轉(zhuǎn)就可以了;如果左腿向后走,那么只要控制電機向相反方向旋轉(zhuǎn)就可以了。只有跳舞動作稍微復(fù)雜了一點,在跳舞動作中采用語音與動作同時進行的方法。將語音分成小段的目的就是便于調(diào)整機器人動作,否則播放語音時不能調(diào)整機器人的動作,這樣機器人的動作就單調(diào)了。另一種方法就是調(diào)用函數(shù)對IO口進行位操作,這里調(diào)用的函數(shù)為Set_IOB_Bit(unsigned int,unsigned int,unsigned int,unsigned int,unsigned int);第一個參數(shù)為需要對IO口的哪個位進行操作,然后參數(shù)依次為操作IO口的Dirretory、Attribion、Data、Buffer。開始初始化RAM執(zhí)行訓(xùn)練,獲得訓(xùn)練結(jié)果訓(xùn)練成功返回開始定時采集語音樣本返回語音特征模型開始初始化識別器獲得識別結(jié)果識別出語音命令執(zhí)行相應(yīng)操作返回YNNY中斷服務(wù)識別過程識別過程訓(xùn)練過程 語音識別的實現(xiàn) 初始化過程【API格式】C:int BSR_DeleteSDGroup(0)【功能說明】SRAM初始化。【返回值】當SRAM擦除成功返回0,否則返回-1。如果所需的RAM空間已被舊的特征模型數(shù)據(jù)占滿,新特征模型則無法保存到RAM中。 訓(xùn)練過程【API格式】C:int BSR_Train(int CommandID,int TraindMode)【功能說明】訓(xùn)練函數(shù)。TraindMode:訓(xùn)練次數(shù),要求使用者在應(yīng)用之前訓(xùn)練一或兩遍:BSR_TRAIN_ONCE表示要求訓(xùn)