毕业论文-语音识别机器人的设计与实现_第1页
毕业论文-语音识别机器人的设计与实现_第2页
毕业论文-语音识别机器人的设计与实现_第3页
毕业论文-语音识别机器人的设计与实现_第4页
毕业论文-语音识别机器人的设计与实现_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

语音识别机器人的设计与实现摘要在现代社会机器人这个词已经不再新鲜,而且形形色色的机器人出现在我们的日常生活中。语音识别技术以语言为研究对象,涉及生理学、语言学、计算机及信号处理等多个领域,是语言信号处理的一个重要研究方向,在智能控制、多媒体、人机对话等方面有着极其广泛的应用前景。语音识别根据实际需要和应用场合的不同,可以分为孤立词识别和连续语音识别、特定人识别和非特定人识别。语音识别技术是实现人机通信的一种重要的技术手段,语音识别与语音合成技术的结合使人们能够摆脱键盘,通过语音命令实现控制功能。语音技术的应用已经成为一个具有竞争性的新兴高技术产业,语音识别产品在人机交互应用中已经占到越来越大的比例。本文应用SPCE061A控制语音识别机器人,该机器人采用特定人语音识别对机器人进行控制,可以完成向前走、倒退、左转、右转、跳两首舞曲、向左瞄准、向右瞄准、发射、连续发射等功能。关键字:SPCE061A,凌阳单片机,特定人语音识别,智能机器人,语音识别机器人III语音识别机器人的设计与实现AbstractInmodernsocietythewordofrobotisnolongerfresh,allkindsofrobotsturnupinourdailylife.Speechrecognitiontechnologytolanguagestudy,coveringphysiology,linguistics,computerandsignalprocessingandotherfields,isthelanguageofsignalprocessingasanimportantresearchdirection,intheintelligentcontrol,multimedia,human-computerdialoguewithanextremelywiderangeofapplicationsprospects.Speechrecognitionbasedontheactualneedsandthedifferentapplicationscanbedividedintoisolatedwordrecognitionandcontinuousspeechrecognition,specificrecognitionandnon-specificrecognition.Therealizationofspeechrecognitiontechnologyisanimportantman-machinecommunicationstechnology,voicerecognitionandspeechsynthesistechnologytoenablepeopletomoveoutofthekeyboard,throughvoicecommandcontrolfunctions.Theapplicationofspeechtechnologyhasbecomeanewcompetitivehigh-techindustries,andspeechrecognitionapplicationsinhuman-computerinteractionhasbeenaccountedforanincreasingproportion.ThisarticleUsingspeechrecognitiontocontrolrobotSPCE061A,Therobotusingspeechrecognitiononaspecificpersontocontroltherobot,tobecompletedtomoveforward,backward,turnleft,turnright,jumptwodances,thelefttarget,righttarget,launch,launchcontinuousfunctions.Keywords:SPCE061A,SunplusSingleChip,DependentSpeechRecognition,IntelligentRobot,RobotSpeechRecognitionIV语音识别机器人的设计与实现目录第一章机器人系统概述.71.1机器人简介.71.2功能简介.101.3电气参数.101.4本次设计机器人实物图.10第二章设计要求.112.1设计要求.112.2技术要求.11第三章模块特性简介.123.1SPCE061A特性简介.123.2芯片特性简介.123.3SPCE061A精简开发板.133.4机器人模块简介.143.4.1机器人驱动电路图.143.4.2主要功能.15第四章系统总体设计方案.16第五章系统的硬件设计.175.1.SPCE061A最小系统.175.2SPCE061A电源模块.175.3放音模块.18第六章系统软件设计.196.1擦除FLASH模块.206.2位操作模块.216.3语音播放函数.216.4走路、跳舞等其他函数模块.23第七章所用语音算法介绍.247.1语音识别算法简介.247.1.1语音识别概述.24V语音识别机器人的设计与实现7.1.2语音识别原理.247.1.3语音识别API介绍.247.2凌阳音频概述.257.2.1凌阳音频算法的编码标准.257.2.2压缩分类.267.2.3常用的音频形式和压缩算法.267.2.4凌阳语音的播放、录制、合成和辨识.267.2.5常用的应用程序接口API的功能介绍及应用.27第八章机器人改装.308.1原装机器人测试.308.2机器人改装.308.3连接61板与驱动板.31第九章应用方案的验证步骤.32第十章结束语.34参考文献.35致谢.36附录.37VI语音识别机器人的设计与实现第一章机器人系统概述1.1机器人简介机器人对于我们来说已不再陌生。现在,人们已不仅仅只是从影视和文学作品中了解机器人了。在许多科技展览会和展览馆中,机器人频频亮相,人们也越来越关注机器人。机器人从神话走向现实已有几十年的历史了,在科学技术高速发展的今天,机器人已成为人们谈论的热门话题,在文学著作中、在影视作品里、在工业生产线上、在科学研究的实验室里,都有机器人的身影。目前世界上已有一百多万台机器人战斗在各自的工作岗位上,发挥着巨大的作用。工业机器人是机器人中的大家族,如果从电视上看到过工业生产线,你一定对工业机器人有所了解,也会对机器人准确、灵活的动作所惊叹。在机器人这个大家族中,有90%是工业机器人,它们在工业生产线中发挥着巨大的作用。被称为“铁领工人”的工业机器人的确是值得称赞的。在枯燥、危险、有毒、有害的工作环境中,到处可以看到它们的身影。它们在喷漆、焊接、装配、涂胶、搬运、切割、打毛刺等工作岗位上大显身手,不知疲倦、毫无怨言、高效率、高精度地默默工作着。而与人类相比,则避免了由于人的情绪波动、身体状况不适而造成的误操作而引起的产品质量问题。常见工业机器人如图1-1所示。图1-1工业机器人实物图水下机器人是深海探险的英雄。海洋是一个巨大的资源宝库。人类需要开发海洋为人类所用。但是,众所周知,海底是一个非常恶劣的环境,潜水事故时有发生。于是,人们将希望寄托在机器人身上。经过专家们多年的努力,这一愿7语音识别机器人的设计与实现望终于实现了。目前,世界上的水下机器人约1000多台。我国于1995年成功的研制出了型号为GR-01的水下机器人,并赴太平洋进行了深海资源考察实验。成为世界上拥有6000米水下机器人的少数国家之一。常见水下机器人如图1-2所示。图1-2水下机器人实物图消防机器人是赴汤蹈火的卫士。提起火灾,人们就会联想起一幕幕可怕的悲剧,它带给人们太多的灾难。而火灾现场的恶劣环境又给消防队员们带来极大的困难。不过,不用发愁,现在消防机器人已经诞生了,它们可以在火场冲锋陷阵,把消防队员从恶劣的工作环境中解脱出来。消防机器人可在救灾人员的控制下,自行进入火灾扑救的关键区域,用自身携带的仪器将探测到的火灾现场的信息反馈给后方的救灾人员,以便及时做出科学的决策。消防机器人可以在充满有毒气体和易燃易爆气体的环境中安全可靠地工作,还可以在高温和强辐射的环境中较长时间地工作。常见消防机器人如图1-3所示。8语音识别机器人的设计与实现图1-3消防机器人实物图机器人工兵是冲锋陷阵的战士。地雷带给人们的危害是巨大的,联合国儿童基金会在1996年的报告中提到,大约在全世界64个国家中埋有700多种1.1亿颗地雷,每年都有很多人因为踩到地雷而丧命。不仅如此,清理地雷还造成了士兵的大量伤亡。为此,许多国家都研制出了扫雷机器人,把这个危险的工作交给机器人来完成。常见消防机器人如图1-4所示。图1-4机器人工兵实物图9语音识别机器人的设计与实现1.2功能简介1通过语音命令对其进行控制2可以跳两首舞曲3走不功能、转向功能、转头功能4发射飞盘功能1.3电气参数机器人工作的额定电压:6V(4节干电池)1.4本次设计机器人实物图,如图1-5所示。图1-5机器人实物图10语音识别机器人的设计与实现第二章设计要求2.1设计要求利用SPCE061A单片机、机器人机体(包括2个用于走路的电机、1个用于头部旋转的电机、1个用于加速1个用于弹射的电机等),对机器人进行改造,通过程序,要求语音识别机器人具有下述功能:1.通过语音命令对其进行控制。2.两种跳舞模式。3.走步功能、转向功能、转头功能。4.发射飞盘功能。2.2技术要求1.要求智能机器人可以识别15条命令。15条命令分别为“名称”,“开始”,“准备”,“跳舞”,“再来一曲”,“开始”,“向前走”,“倒退”,“右转”,“左转”,“准备”,“向左瞄准”,“向右瞄准”,“发射”,“连续发射”。2.要求智能机器人具有2种跳舞模式。11语音识别机器人的设计与实现第三章模块特性简介3.1SPCE061A特性简介SPCE061A是性价比很高的一款十六位单片机,使用它可以非常方便灵活的实现语音的录放系统,该芯片拥有8路10位精度的ADC,其中一路为音频转换通道,并且内置有自动增益电路。这为实现语音录入提供了方便的硬件条件。两路10精度的DAC,只需要外接功放(SPY0030A)即可完成语音的播放1。另外凌阳十六位单片机具有易学易用的效率较高的一套指令系统和集成开发环境。在此环境中,支持标准C语言,可以实现C语言与凌阳汇编语言的互相调用,并且,提供了语音录放的库函数,只要了解库函数的使用,就会很容易完成语音录放,这些都为软件开发提供了方便的条件:SPCE061A片内还集成了一个ICE(在线仿真电路)接口,使得对该芯片的编程、仿真都变得非常方便,而ICE接口不占用芯片上的硬件资源,结合凌阳科技提供的集成开发环境(unSPIDE)用户可以利用它对芯片进行真实的仿真;而程序的下载(烧写)也是通过该接口进行下载2。图3-1为SPCE061A单片机的内部结构框图:图3-1SPCE061A单片机的内部结构框图3.2芯片特性简介SPCE061A性能简介:12语音识别机器人的设计与实现16位unSP微处理器工作电压(CPU)VDD为3.03.6V,(I/O)VDDH为3.05.5VCPU时钟:0.3249.152MHz内置2K字SRAM内置32K字FLASH可编程音频处理晶体振荡器系统处于备用状态下(时钟处于停止状态),耗电仅为2uA/3.6V2个16位可编程定时器/计数器(可自动预置初始计数值)2个10位DAC(数/模转换)输出通道32位通用可编程输入/输出通道14个中断源可来自定时器A/B、时基、2个外部时钟源输入和键唤醒具备触键唤醒的功能使用凌阳音频编码SACM_S480可以播放压缩的语音资源锁相环PLL振荡器提供系统时钟信号32768Hz实时时钟7通道10位电压模/数转换器(ADC)和单通道声音模/数转换器声音模/数转换器输入通道内置麦克风放大器,并具有自动增益控制(AGC)功能具备串行设备接口具备低电压复位功能和低电压检测功能内置在线仿真电路接口具有WatchDog功能3.3SPCE061A精简开发板SPCE061A精简开发板(简称61板),是以凌阳16位单片机SPCE061A为核心的精简开发仿真实验板,大小相当于一张扑克牌,为电子爱好者等进行电子实习、课程设计、毕业设计、电子制作及电子竞赛所设计的,也可作为单片机项目初期研发使用。61板除了具备单片机最小系统电路外,还包括有电源电路、音频电路(含MIC输入部分和DAC音频输出部分)、复位电路等,采用电池供电,方便随身携带!在掌握软件的同时,熟悉单片机硬件的设计制作,锻炼动手能力,也为单片机学习者和开发者创造了一个良好的学习条件和开发新产品的机会!61板上有调试器接口(Probe接口)以及下载线(EZ_Probe)接口,分13语音识别机器人的设计与实现别可接凌阳科技的在线调试器、简易下载线,配合unSPIDE,可方便地在板上实现程序的下载、在线仿真调试。61板上的主要功能模块如下3:SPCE061A单片机最小系统外围电路模块;电源输入模块;音频电路(包含MIC输入、DAC音频功放输出)模块;按键模块;I/O端口接口模块;调试、下载接口模块;图3-2为61板的实物图:图3-261板的实物图3.4机器人模块简介3.4.1机器人驱动电路图机器人左右腿、脖子电机驱动图如3-3所示:14语音识别机器人的设计与实现图3-3左右腿、脖子电机驱动机器人左右腿、脖子电机驱动图如3-4所示:图3-4加速度、发射电机驱动机器人驱动电路采用功率较大的三极管搭成H桥来驱动电机,可以实现电机的正向旋转与电机的反向旋转。这些电机包括2个用于走路的电机与一个头部转向的电机。另外用了一个三极管驱动单向旋转的电机,包括加速电机与发射电机,驱动电路比较简单。3.4.2主要功能通过语音命令对其进行控制;可以跳两首舞曲;走步功能、转向功能、转头功能发射飞盘功能;15语音识别机器人的设计与实现第四章系统总体设计方案用61板来控制机器人,使用了IOB7-IOB15资源,另外使用了扬声器。如图4-1所示:图4-1系统总体框图61板与机器人连线图,如图4-2所示:图4-261板与机器人连线图16语音识别机器人的设计与实现第五章系统的硬件设计5.1SPCE061A最小系统SPCE061A最小系统当中,包括SPCE061A芯片外围的基本模块,有:晶振输入模块(OSC)、锁相环外围电路(PLL)、复位电路(RESET)、指示灯(LED)等4,如图5-1所示。图5-1SPCE061A最小系统5.2SPCE061A电源模块SPCE061A的内核供电为3.3V,而I/O端口可接3.3V也可以接5V,所以在电源模块(61板上)中有一个端口电平选择跳线5,如图中的J5,图5-2为61板上的电源模块图。17语音识别机器人的设计与实现图5-2电源模块由于本系统需要的端口高电平为5V,所以图图5-2当中的J5跳线需要跳到1和2上。5.3放音模块交通灯换向时有语音提示。放音利用的是SPCE061A内部的DAC,电路如图5-3所示。图中的SPY0030是凌阳公司的产品。和LM386相比,SPY0030还是比较有优势的,比如LM386工作电压需在4V以上,而SPY0030仅需2.4V(两颗电池)即可工作;LM386输出功率100mW以下,SPY0030约700mW6。图5-3放音模块电路图18语音识别机器人的设计与实现第六章系统软件设计在主函数中调用相关函数完成特定人语音的训练,然后再训练成功后进行语音识别,根据识别的命令执行相关的操作。判断是否为第一次下载根据FLASH中的标志位来进行判断。将训练好的语音模型导出存储到FLASH中使用库函数BSR_ExportSDWord(uiCommandID);进行操作,然后再调用读写FLASH中的函数进行。在进行语音识别时,首先读取FLASH将语音模型取得,然后调用BSR_ImportSDWord(uiCommandID);数将语音资源载入内存。在识别出命令后,执行相关动作,相关动作操作就是操作电机的正向或反向旋转同时配合延时与播放声音组合起来形成不同的动作。程序流程图如图6-1所示:19语音识别机器人的设计与实现图6-1程序流程图6.1擦除FLASH模块在程序中按照操作SPCE061A的flash的步骤擦写flash7,在程序中写成320语音识别机器人的设计与实现个函数用于操作flash8,如下:F_FlashWrite1Word()语法:voidF_FlashWrite1Word(intaddr,intValue)描述:写一个字到FLASH中参数:1、被写数据的存储地址2、被写数据返回:无F_FlashWrite()语法:F_FlashWrite(intsector,int&num,intsize)描述:顺序写多个字参数:1、被写数据的起始地址2、被写数据3、写数据的数量返回:无F_FlashErase()语法:voidF_FlashErase(sector)描述:擦除256字节参数:擦除页的起始地址返回:无6.2位操作模块由于SPCE061A没有位操作指令,而在程序控制电机的时候需要经常操作某一位,为了方便程序的编写,增强可读性,编写了位操作模块。函数voidSet_IOB_Bit(unsignedint,unsignedint,unsignedint,unsignedint,unsignedint);参数依次为IO的位、Dir、Attrib、Data、Buffer例如操作IOB11为同相低电平输出为Set_IOB_Bit(11,1,1,0,0);6.3语音播放函数在本系统的软件设计当中,将语音播放的程序设计为语音播放模块,可方便地调用9;语音播放程序分为两部分,一是播放流程控制,流程图如图6-2所21语音识别机器人的设计与实现示。一是中断播放服务程序10,流程图如图6-3所示。图6-2播放流程控制流程图图6-2中断播放服务程序流程图22语音识别机器人的设计与实现6.4走路、跳舞等其他函数模块这些函数就是控制电机的通与断的组合完成不用的动作,在需要的时候播放语音,实现一定的效果。23语音识别机器人的设计与实现第七章所用语音算法介绍7.1语音识别算法简介7.1.1语音识别概述根据对说话人的依赖程度,分为:特定人语音识别(SD):只能辨认特定使用者的语音,训练-使用非特定人语音识别(SI):可辨认任何人的语音,无须训练根据对说话方式的要求,分为:孤立词识别:每次只能识别单个词汇连续语音识别:用者以正常语速说话,即可识别其中的语句7.1.2语音识别原理语音识别原理如图7-1所示。图7-1语音识别原理图7.1.3语音识别API介绍BSR_InitRecognizer(intAudioSource);初始化识别器BSR_Train(intWordID,intTrainMode);语音训练BSR_DeleteSDGroup(intSDGroupNo);清除内存BSR_PauseRecognizer()24语音识别机器人的设计与实现暂停识别,但不释放中断等资源BSR_ResumeRecognizer()恢复被暂停的识别BSR_GetRecognizerScore()获得识别结果的可信度,返回值从-4096到4096,数值越大表示输入语音与特征模型的匹配度越高。BSR_EnableCPUIndicator()开启CPU状态监测功能。开启该功能后,IOA0和IOA1将发出每16ms电平变化一次的方波。BSR_DisableCPUIndicator()关闭CPU状态监测功能。BSR_ExportSDWord(intCommandID)使用函数库时,会自动创建一个100Word的数组BSR_SDModel100,可以把某条训练命令的特征模型数据导出到这个数组中。BSR_ImportSDWord(intCommandID)可以把BSR_SDModel数组中的数据导入为某条语音命的特征模型。unsignedintBSR_SDModel;配合BSR_ExportSDWord(intCommandID)与BSR_ImportSDWord(intCommandID)函数使用,此数组的作用相当于一个暂时的存储区。7.2凌阳音频概述语音处理大致可以分为A/D采样输入、编码处理、存储、解码处理以及D/A等;SPCE061解决方案:将A/D、编码算法、解码算法、存储及D/A作成相应的模块,对于每个模块都有其应用程序接口API,用户只需了解每个模块所要实现的功能及其参数的内容,然后调用该API函数即可实现语音处理功能。7.2.1凌阳音频算法的编码标准表7-1是不同音频质量等级的编码技术标准(频响)2:凌阳音频压缩算法处理的语音信号的范围是200Hz3.4KHz的电话话音表7-1音频质量等级的编码技术标准25语音识别机器人的设计与实现信号类型音频范围(HZ)采样率(KHZ)量化精度(位)电话话音200340088宽带音频(AM质量)5070001616调频广播(FM)2015K37.816高质量音频(CD质量)2020K44.1167.2.2压缩分类压缩分无损压缩和有损压缩。无损压缩一般指:磁盘文件,压缩比低:2:14:1。而有损压缩则是指:音视频文件,压缩比可高达100:1。凌阳音频压缩算法根据不同的压缩比分为以下几种SACM-A2000:压缩比为8:,8:1.25,8:1.511SACM-S480:压缩比为80:3,80:4.5SACM-S240:压缩比为80:1.5按音质排序:A2000S480S2407.2.3常用的音频形式和压缩算法1)波形编码:sub-band即SACM-A2000特点:高质量、高码率,适于高保真语音音乐2。2)参数编码:声码器(vocoder)模型表达,抽取参数与激励信号进行编码。如:SACM-S240。特点:压缩比大,计算量大,音质不高,廉价!3)混合编码:CELP即SACM-S480特点:综合参数和波形编码之优点12。本方案采用该编码方式。除此之外,还具有FM音乐合成方式即SACM-MS01。7.2.4凌阳语音的播放、录制、合成和辨识凌阳压缩算法中SACM_A2000、SACM_S480、SACM_S240主要是用来放音,可用于语音提示,而DVR则用来录放音。对于音乐合成MS01,该算法较繁琐,而且需要具备音乐理论、配器法及和声学知识,这里只给出它的API函数介绍及程序代码的范例3。26语音识别机器人的设计与实现7.2.5常用的应用程序接口API的功能介绍及应用表7-2所列出的是凌阳音频的几种算法2。表7-2凌阳音频的几种算法模块名称(Model-Index)语音压缩编码率类型资料采样率SACM_A200016Kbit/s,20Kbit/s,24Kbit/s16KHzSACM_S480/S7204.8Kbit/s,7.2Kbit/s16KHzSACM_S2402.4Kbit/s24KHzSACM_MS01音乐合成(16Kbit/s,20Kbit/s,24Kbit/s)16KHzSACM_DVR(A2000)16Kbit/s的资料率,8K的采样率,16KHz用于ADC通道录音功能语音和音乐与我们的生活有着非常密切的关系,而单片机对语音的控制如录放音、合成及辨识也广泛13。应用在现实生活中。我们知道对于语音处理大致可以分为A/D、编码处理、存储、解码处理以及D/A等。然而,通过麦克风输入所生成的WAVE文件,其占用的存储空间很大,对于单片机来说想要存储大量的信息显然是不可能的,而凌阳的SPCE061A提出了解决的方法,即SACM-LIB,该库将A/D、编码、解码、存储及D/A作成相应的模块,对于每个模块都有其应用程序接口API,所以您只需了解每个模块所要实现的功能及其参数的内容,然后调用该API函数即可实现该功能,例如在程序中插入语音提示,或连续播放一段语音或音乐,也可以根据自己需要的空间或使用范围选择适合自己的算法。以下就SACM-S480算法具体介绍其API函数的格式、功能、参数、返回值、备注。(其它算法可以见附录)该压缩算法压缩比较大80:3,存储容量大,音质介于A2000和S240之间,适用于语音播放,如“文曲星”词库等,所以我们这个方案就采用了该算法。(只介绍程序中用到的函数,其他API函数参考凌阳科技大学计划网站)其相关API函数如下所示14:27语音识别机器人的设计与实现1)【API格式】C:intSACM_S480_Initial(intInit_Index)ASM:R1=Init_IndexCallF_SACM_S480_Initial【功能说明】SACM_S480语音播放之前的初始化。【参数】Init_Index=0表示手动方式;Init_Index=1则表示自动方式。【返回值】0:代表语音模块初始化失败1:代表初始化成功。【备注】该函数用于对定时器、中断和DAC等的初始化。2)【API格式】C:voidSACM_S480_ServiceLoop(void)ASM15:CallF_SACM_S480_ServiceLoop【功能说明】从资源中获取SACM_S480语音资料,并将其填入解码队列中。【参数】无。【返回值】无。【备注】播放语音文件中数据,当出现FFFFFFH数据时便停止播放。3)【API格式】C:intSACM_S480_Play(intSpeech_Index,intChannel,intRamp_Set);ASM:R1=Speech_IndexR2=ChannelR3=Ramp_SetCallSACM_S480_Play【功能说明】播放资源中SACM_S480语音。【参数】Speech_Index表示语音索引号。Channel:1.通过DAC1通道播放;2.通过DAC2通道播放;3.通过DAC1和DAC2双通道播放。Ramp_Set:0.禁止音量增/减调节;1.仅允许音量增调节;2.仅允许音量减调节;3.允许音量增/减调节。【返回值】无。【备注】28语音识别机器人的设计与实现SACM_S480的数据率有4.8Kbps7.2Kbps三种,可在同一模块的几种算法中自动选择一种。Speech_Index是定义在resource.inc文件中资源表(T_SACM_S480_SpeechTable)的偏移地址。中断服务子程序中F_FIQ_Service_SACM_S480必须放在TMA_FIQ中断向量上(参见SPCE的中断系统)。函数允许TimerA以所选的的数据采样率(计数溢出)中断。4)【API格式】ASM:CallF_FIQ_Service_SACM_S480【功能说明】用作SACM_S480语音背景程序的中断服务子程序。通过前台子程序(自动方式的SACM_S480_ServiceLoop及手动方式的SACM_S480_Decode)对语音资料进行解码,然后将其送入DAC通道播放。【参数】无。【返回值】无。29语音识别机器人的设计与实现第八章机器人改装8.1原装机器人测试1.安装电池,盖好电池盖。2.打开电源开关(背后电池盒下边)。3.启动,按一下前面的红色按扭。4.提示语音过后运行几个动作:跳舞、摇头、发射子弹。通过这几个动作可以确认5个电机以及驱动电路基本正常。8.2机器人改装1确认cpu各个引脚的功能。先确认电源正负极。头部引出的黑色线连接电源负极。根据头部引出的黄色线的铜箔线找到cpu的红外线号输入端。前壳上的复位开关,它有两根引线连接到驱动板上,一根直接连到cpu的一个管脚上,cpu的这个管脚是复位端,另外一根应该连接到电源正极上,同时铜箔引线会连接到cpu的某个管脚上,这个脚是Vdd端,头部引出的两根粉色线,其中一根应连接在电源正极上,另外一根连接在一个三极管上,这个三极管的基极会直接连接到cpu上,这个cpu的管脚是Audioout(音频输出)端。头部引出的橙色线,它直接连接cpu的眼睛发光二极管。cpu有一个管脚会连接一个电解电容的正极,电容负极接地。头部引出的红色线,它是红外接收头的供电引线,但他不是直接连在电源正极上,而是连接在一个三极管上,这个三极管的基极连接到cpu的一个管脚上,这个管脚是遥控使能端,机器人在按下复位开关时会播放一段语音,同时遥控器不起作用,可以把这段内容认为是自检。这时,遥控使能端会使外接三极管截止,接收头上没有电源,遥控无效,等自检结束后开始供电,遥控器才可以起作用。cpu上剩余的8个管脚都是驱动电机用的。2去掉不需要的引线。上边的工作完毕且复查后,可以把头部引出的红色、黄色、黑色剪断。两根粉色线、白色线、橙色线从驱动板上焊下来。3将后背外壳、摇头机构、头部、胳臂组装好。步骤是:30语音识别机器人的设计与实现将摇头机构放到后背外壳里面的相应位置上,先不要放到底,这时将头部插进摇头机构到底,再将两部分同时按到后背外壳的底部。将后背外壳和腿部组装起来。安装胳臂:让机器人面向你,先装好左边的胳臂,串好轴,再装右边的胳臂。安装摇头机构和后背外壳的固定螺钉。4将电源开关固定在前壳原来启动开关的位置上。61板与驱动板的连接线通过原来电源开关的孔位穿过外壳。8.3连接61板与驱动板如图8-1所示。图8-161板与驱动板的连接图31语音识别机器人的设计与实现第九章应用方案的验证步骤步骤一:启动unSPIDE。打开机器人应用实例程序,编译、链接确认没有错误。如图9-1所示图9-1unSPIDE界面步骤二:下载程序代码到机器人的61板上。步骤三:打开机器人的电源,进行语音训练,训练过程按照下面进行:按顺序训练以下15条指令:“名称”,“开始”,“准备”,“跳舞”,“再来一曲”,“开始”,“向前走”,“倒退”,“右转”,“左转”,“准备”,“向左瞄准”,“向右瞄准”,“发射”,“连续发射”。每条指令要训练两遍。当一条指令被正确识别时会提示进入下一条;如没有被识别会要求重复该指令,直到正确识别为止。如果训练成功则进入语音识别状态,如果训练没有成功则重复训练。由于SPCE061A的FLASH存储器只有32K,所以15条指令需要分组存放。在这里分成3组,每组5条指令。在不同组指令中交换需要根据出发名称,所以在识别状态,要执行动作首先需要出发名称,就是训练的第一条命令,然后可以识别第一组的其余四条命令。在触发第一条指令,然后再触发第二条指令,就可以识别第三条指令,如图9-2所示。32语音识别机器人的设计与实现图9-2指令识别流程图33语音识别机器人的设计与实现第十章结束语应用SPCE061A外加电机驱动控制电路可以实现多个电机的控制,完成机器人的许多动作。我们可以自己制作电机驱动电路,发挥想象力制作出自己的机器人。语音识别机器人可以充分发挥我们的创新能力,增加我们的动手能力与实践能力。34语音识别机器人的设计与实现参考文献1张绮文等,ARM嵌入式常用模块与综合系统设计实例精讲,北京:电子工业出版社,20072罗亚非等,凌阳16位单片机应用基础,北京:北京航空航天大学出版社,20053刘萌,郑煊,基于凌阳SPCE061A单片机的语言识别设计系统,山东教育学院,20084贾晶,华晶,一种新型的嵌入式语音识别机器人系统,江西农业大学软件学院,20085催文迪,黄关维,语音识别综述,厦门大学,20086雷思孝,李伯成,雷向莉.单片机原理及实用技术.西安:西安电子科技大学出版社.20047张光建等,计算机专业嵌入式应用开发课程体系的研究与实践,重庆工学院,20088孙同景,陈桂友,十六位单片机原理及嵌入式开发技术,机械工业出版社,20089张皆喜,PIC系列单片机c语言编程与应用实例,电子工业出版社,200810张天凡,51单片机c语言开发详解,电子工业出版社,200811陈渝,嵌入式系统实践教程,机械工业出版社,200812刘森,赵国明等,基于ARM嵌入式系统的拟人机器人控制器的设计,清华大学学报,200813TysonS.Hall,JaredBruckner,andRichardL.Halterman,ANovelApproachtoanEmbeddedSystemsCurriculum,SchoolofComputing,SouthernAdventistUniversity14XiuminShi,JiZhang,YanbingJu,ResearchandPracticeinUndergraduateEmbeddedSystemCourse,DepartmentofElectricalEngineering,BeijingInstituteofTechnology15LI-WEIWUANDJWU-SHENGHU,EmbeddedSystemDesignforBobots,inProc.2003IEEEInt.Conf.IndustrialTechnology,vol.2.pp.90190535语音识别机器人的设计与实现附录主程序#includebsrSD.h#includerobot.hexternvoidRobotSystemInit(void);externunsignedintIsFirstDownLoad(void);externvoidFormatFlash(void);externvoidTrainFiveCommand(void);externvoidSaveFiveCommand(unsignedintuiAddr);externvoidImportFiveCommand(unsignedintuiAddr_Import);externunsignedintTrainWord(unsignedintWordID,unsignedintSndIndex);externvoidPlaySnd(unsignedintSndIndex);externvoidRobot_DanceAgain(unsignedintn);externvoidRobot_Dance(unsignedintn);externvoidRobot_Go(unsignedintn);externvoidRobot_Backup(unsignedintn

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论