




已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章 绪论1.1 课题研究的意义随着科技技术的发展,电子产品日新月异的发展,声控产品使用率的提高,为人类的生活带来了巨大的变化,随着近几年来信号处理技术的不断发展与提升,语音辨识(Speech-Recognition)的应用已真正走入人们的日常生活,声控系统的应用也不再遥不可及,家用电器的操作,不再需以遥控器的繁多按键为控制接口,取而代之是我们用平常说话的模式来驱使家电动作,诸如多种智能电器,人们在也不必为种类繁多操作复杂的遥控器而烦恼,人们可以很清松的操作各种各样的电器产品,达到更符合人性化的操作接口设计。随着语音技术的不断发展,人们不光可以用语音来控制家电,声控产品也越来越受人们的欢迎,成为了21世纪发展的一大前景。而全球玩具市场的内在结构比重却发生了重大变化:传统玩具的市场比重下在逐步缩水,高科技含量的电子玩具则蒸蒸日上。高科技含量的电子互动式玩具已经成为玩具行业发展的主流。所以我们要设计一个具有语音识别功能的智能小车。该小车对传统的小车的做了改进,在小车的控制系统中采用语音识别系统,使控制者可以用语音对小车进行控制1。本设计主要应用语音识别技术,来完成语音控制小车的目的,将语音识别技术应用在实际设计当中,为以后进一步学习应用语音技术打下基础,也可以为他人设计语音产品提供参考。1.2 国内外研究的现状随着语音处理技术的发展,语音识别系统的实用性将进一步提高。国外已有多种基于语音识别产品的应用,基于特定任务和环境的听写机也已经进入应用阶段。许多发达国家,如美国、日本、韩国以IBM、APPLE、AT&T、Micr0Soft等著名公司都看好语音一识别的应用前景,为语音识别系统的实用化投以巨资,语音识别技术实用化进程大大加速。21世纪初期的成果主要集中于实现机器(计算机)的同声传译系统以及多环境背景下的语音识别技术。我国在语音识别技术领域发展进步很快,在近五到十年内语音识别系统的应用将更加广泛。各种各样的语音识别系统产品将出现在市场上,如凌阳智能语音识别机器人,提高了语音信息处理速度,可以快速对语音进行应答。采用了先进的非特定人语音识别技术,对口音和噪声不敏感。更加入了独有的噪声检测技术,当环境噪声很大时,能给用户相应的提示;并且加入了可信度评估和拒识技术,对于命令以外的语音或者干扰声音可以拒识。在语音交流的过程中,抗噪音能力得到了很大的提高。随着语音识别技术与机器人技术的进一步结合,未来高智能的人机交流将不是梦想。但在短期内还不可能造出具有和人相比拟的语音识别系统,要建成这样一个系统仍然是人类面临的一个大的挑战,我们只能一步步朝着改进语音识别系统的方向前进。无线遥控小车的出现大大的缩减了人在危险环境中工作和对危害性任务的作业的直接参与,如在军事侦察、扫雷排险、防核化污染等这些危险与恶劣的环境中。因此,无线遥控小车在这方面的领域中,特别是近些年,发展迅速,并利用这种思想,从小车发展到大车。2005年卡内基梅隆大学与美国国防工业制造的Gladiator(角斗士),是一种可无线遥控,并具有自动侦察与搜索能力的无人地面车。2006年斯洛伐克研究出“天蝎座”无线遥控机器人车简易爆炸装置的克星。2006年为了确保飞机起降安全,我国机场有关方面组织专家技术攻关,研制成功无人驾驶遥控驱鸟车,走出了一条利用高科技驱鸟的新路。人员通过遥控器操作,可以变速,在1公里范围内从机场南端到北端来回行驶,具有全天候使用、承担重复强度大、自动化程度高的优点。2007年8月法国公司新近推出的“INBOT”微型无人车,该车可通过掌上电脑或与操纵杆连接的个人计算机控制,虽然貌不惊人,但发展前景却不容小视,无论爆炸物处理还是战术侦察都是它的强项。2010年6月,武汉科技大学机械工程学院完成气动遥控消防小车的设计,该车动力均以气动为主,通过手持遥控器发出预设指令,在各功能的协调配合下,该车完全可代替消防人员进入复杂危险环境实施救灾作业,从而确保消防人员的人身安全。此外该设备绿色环保,节能减排,有较好的应用价值,具有良好的市场推广前景。2010年11月开始,我国科技创新协会首届遥控小车比赛正式启动。科技创新协会会员通过组员之间的配合,查阅资料,从零开始。历经4个月,自主设计制作出了一辆辆可以左右转向,前后行进的遥控小车,经过不断调试,无线遥控小车最终成功启动。2011年德国与瑞士联合组建的“地雷狼”(Minewolf)系统公司最近展出了新型中型“地雷狼”MW330扫雷车。该车可以选择人员操作和远程遥控两种方式,在操作模式中能够抵御重型反坦克地雷的攻击。2011年5月就读于西班牙加泰罗尼亚理工学院的两名大学生亚历克斯.洛维特和哈维尔萨卢埃尼亚,制造了世界首架利用汽水铝罐拉环作为燃料的无线遥控小车DAlH2Orean。人类对于语音技术的接触大概要追溯到爱迪生在1875年发明留声机和贝尔在1876年发明电话。随后,语音正式成为了可以被人造物有效存储、传输的信号。此后的语音技术逐渐分化出三个方向。最早开展的是物理信号层次的处理,主要是为了获得清晰的语音信号。后来,人们开始了语音技术的第二分支语音合成,这门学科的研究,也就是根据文字制造声音。1936年AT&T的贝尔实验室(Bell Lab)发明了世界上第一个基于语音技术的电子语音合成器,这个东西在二战时期被悄悄的用在罗斯福和邱吉尔的电话通话中,以保证通话的安全。语音技术的第三分支是语音识别。语音识别作为语音合成的逆过程,基本的任务就是把语音转化为文字,它的难度要比语音合成高出很多,成为了语音技术中最具挑战性的分支。从1966年到1972年,对隐马尔可夫模型的研究极大的鼓舞了语音技术工程师和研究者们,以及政府的热情。从1971年开始,美国组织了包括麻省理工学院等著名研究机构,一起建立一个进行基于语音技术的连续语音识别的计算机系统。这是当时规模最大的语音技术项目。与此同时,1971年的剑桥大学工程系,一个新的语音技术实验室被建立起来。这个实验室建立之初的目标就是对机器学习相关的技术进行研究,力图使英国这个科学大国继续能在语音技术领域也占据一席之地。数字信号处理成为70年代最为火热的语音技术的领域之一。以此为基础的语音识别也在众多世界著名的大学、研究所和公司紧锣密鼓的开展起来。到了80年代初,语音技术的研究已经初具规模,形成了不同的门派以及各自的系统。进入二十一世纪后,世界范围内新兴的语音技术公司更是层出不穷,思必驰作为其中一员,在语音识别、语音评测方面的研究取得了重大突破8。思必驰以源于剑桥大学的语音技术为起点,自主研发了国际创新的第二代智能语音分析和人机对话技术。与目前使用的第一代语音技术相比,第二代智能语音技术大大减小了对使用环境和方式的限制,并能够对不同口音进行快速的自适应调整,具有优异的语音分析精度和稳健的人机对话性能。第二代语音技术使得机器智能得以更充分的体现,同时也将引导智能语音技术的下一次应用高潮。1.3 研究的内容和要求本设计主要研究的内容是以单片机为核心进行语音遥控车的设计,包括硬件电路和软件程序的设计。硬件电路的设计主要包括语音识别模块、控制核心模块、小车驱动模块与转向控制模块等;软件设计主要是完成相应电路的功能,要求能够进行语音识别,能够通过语音信号控制小车前进、后退、左转和右转的动作。第2章 方案论证2.1方案论证根据设计要求,制订了如下三套方案:方案一: 采用MCS-51系列中的89S52单片机。以89S52为控制核心,利用声控传感器和专门的语音处理芯片,并采用桥式驱动电路来实现对小车的前进转向进行控制,并能够做出应答的功能。89S52是一款八位单片机,应用范围广,价格便宜是其最大优点。但由于89S52单片机的闪存(FLASH)只有8K,且无法内置DAC电路,必须通过外围电路实现。另外,语音识别是一门新兴的技术,不止包括语音的录制和播放,还包括语音的压缩,编码和解码和语音的识别,这些都要进行大量的计算, 如果用89S52来实现,需要扩展语音识别模块和语音播放模块,这样必然造成端口的资源紧张,而其实现起来比较困难且效率很低。实现该方案结构如图 2-1所示。IOMCS-51IO接口扩展模块接口总线语音模块电机驱动图 2-1 采用MCS-51系列单片机实现语音控制小车方案二:采用以TMS320VC5402这款DSP芯片为语音处理系统的核心部分来实现语音控制方案。其主要优点包括:采用改进的哈佛结构,带有专用硬件逻辑CPU(40位算术逻辑单元(ALU),包括1个40位桶形移位器和二个40位累加器;一个1717乘法器和一个40位专用加法器,允许16位带或不带符号的乘法),片内存储器(八个辅助寄存器及一个软件栈),片内外专用的指令集,允许使用业界最先进的定点DSP C语言编译器。最重要的是其运算处理速度的高效,可以快速处理大量的语音数据,实时性好,但费用价格昂贵。该方案如图2-2所示。音频信号放大及A/D转换DSP芯片方向控制桥路方向电机驱动电机驱动控制桥路D/A转换及音频信号放大语音信号SPK图2-2 基于TMS320VC5402的语音识别小车方案三:采用SPCE061A实现语音控制小车方案,由于SPCE061A内部集成有语音识别和语音播放功能模块,所以只需要扩展基本的MIC和语音功放即可,另外凌阳SPCE061A单片机提供32个I/O口,一片SPCE061A单片机即可实现所有功能,这为设计过程提供了极大方便。该方案结构如图 2-3所示。 MIC输入模块SPCE061A电机驱动模块语音输出模块图 2-3 基于SPCE061A的语音控制小车实现方案比较以上三种方案可见,方案一应用范围广价格便宜但系统复杂且难以实现语音控制;方案二中TMS320VC5402这款DSP芯片虽然有强大的数据处理功能,但要完成语音识别功能,软件上实现起来比较复杂且价格昂贵;方案三应用范围广,一般价格略高;因此,选择方案一。2.2 系统原理框图根据设计要求,首先通过麦克风将声音信号采集,通过放大电路将信号放大,在将放大的信号,送给AD转换器,由AD转换器将模拟信号转换成数字信号,再将数字信号送给语音处理识别芯片,语音处理识别芯片将信号处理识别后,将处理识别结果送给89S52单片机,再由单片机将识别结果进一步处理,将输出结果送给外围放大电路,由外围放大电路去驱动小车的不同动作,从而实现设计目的。流程图如图2-4:小车驱动模块AT89S52单片机语音识别模块图2-4系统原理框图语音识别模块:用于接收、识别外界发出的语音信号并转换成数字信号。 AT89S52单片机:把收到的信号转换成小车的控制信号。小车驱动模块:用于控制小车前进、停止和转向的控制模块。第3章 硬件单元电路设计整个系统的硬件电路主要包括核心主控制和语音识别两个部分。主控制部分为AT89S52单片机,语音识别部分为LD3320语音识别芯片。3.1 AT89S52单片机最小系统AT89S52是一种低功耗、高性能的CMOS8位微控制器,具有8KB在系统可编程Flash存储器;是用Atmel公司高密度非易失性存储技术制造,片上Flash允许程序存储器在系统可编程,也适用于常规编程器。AT89S52具有8KB Flash,256BRAM,32位I/O口线,看门狗定时器,2个数据指针,3个16位定时器/计数器,1个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件,可选择节电模式。在空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。在掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,知道下一个中断或硬件复位为止。AT89S52是在电子设竞赛中最常用的单片机之一2。AT89S52单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。如果按功能划分,它由如下功能部件组成,即微处理器、数据存储器、程序存储器、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器。它们都是通过片内单一总线连接而成,其基本结构依旧是CPU加上外围芯片的传统结构模式。但对各种功能部件的控制是采用特殊功能寄存器的集中控制方式,图3-1是AT89S52单片机引脚图。图3-1 AT89S52单片机引脚图3.1.1 主要性能与MCS-51单片机产品兼容8K字节在系统可编程Flash存储器1000次擦写周期全静态操作:0Hz33Hz三级加密程序存储器32个可编程I/O口线三个16位定时器/计数器八个中断源全双工UART串行通道低功耗空闲和掉电模式掉电后中断可唤醒看门狗定时器双数据指针掉电标识符3.1.2 单片机引脚VCC: 电源GND: 地P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在 flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下表所示。在flash编程和校验时,P1口接收低8位地址字节P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR)时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p2 输出缓冲器能驱动4 个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用。在flash编程和校验时,P3口也接收一些控制信号。RST: 复位输入。晶振工作时,RST脚持续2 个机器周期高电平将使单片机复位。看门狗计时完成后,RST 脚输出96 个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8 位地址的输出脉冲。在flash编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE 仅在执行MOVX 或MOVC指令时有效。否则,ALE 将被微弱拉高。这个ALE 使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。PSEN:外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当 AT89S52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。EA/VPP:访问外部程序存储器控制信号。为使能从0000H 到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在flash编程期间,EA也接收12伏VPP电压。XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。XTAL2:振荡器反相放大器的输出端9。3.1.3 晶振电路晶振电路如图3-2所示:图3-2 单片机晶振电路 每个单片机系统里都有晶振,全程是叫晶体震荡器,在单片机系统里晶振的作用非常大,他结合单片机内部的电路,产生单片机所必须的时钟频率,单片机的一切指令的执行都是建立在这个基础上的,晶振提供的时钟频率越高,那单片机的运行速度也就越快。 单片机晶振两个电容的作用:这两个电容叫晶振的负载电容,分别接在晶振的两个脚上和对地的电容,一般在几十皮发。它会影响到晶振的谐振频率和输出幅度。 晶振的负载电容=(Cd*Cg)/(Cd+Cg)+Cic+C式中Cd,Cg为分别接在晶振的两个脚上和对地的电容,Cic(集成电路内部电容)+C(PCB上电容)值为3至5pf。 3.1.4 复位电路复位电路如图3-3所示:图3-3 单片机复位电路 复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。为可靠起见,电源稳定后还要经过一定的延时才撤销复位信号,以防电源开关或电源插头分-合过程中引起的抖动而影响复位。单片机复位电路参数的选定须在振荡稳定后保证复位高电平持续时间大于2个机器周期。 AT89S52单片机是整个开发板的控制中心,我们在选用电路时应该保证它的可靠性和抗干扰性.在选用具体电子器件的时候,应该确定它的各项参数,尽量使用参数相当的器件。 3.2 电源电路的设计如下图3-4所示,为开发板的电源电路。开发板使用+5V稳压电源,可以使用插针供电,也可以使用电源插座。 图3-4 电源3.3 LD3320语音模块 本设计方案采用基于LD3320的模块M-LD3320。该模块将LD3320 芯片与周围必要的容阻件集成在一块PCB上,将LD3320的芯片管脚通过2*20的排针引出。可以直接将自己的主控MCU 的管脚连接到M-LD3320模块的排针上,同时给M-LD3320模块提供3.3V 电源和合适的晶振信号,就可以在主控MCU中编写程序运行LD3320的语音识别功能。LD3320 模块主要特征有:LD3320芯片的音频模拟管脚连接相应的电容/电阻后通过排针引出。LD3320模块上设计有2个音频插座,直接引出MIC输入和Speaker输出信号。用户可以用一个带麦克风的耳机验证语音识别和声音播放,十分方便。LD3320模块上没有电源芯片,相应的电源管脚由排针引出,由开发者连接 入3.3v 电源输入。LD3320 模块上的CLK 输入可以选择如下任意一种:1)直接将晶振信号通 过排针输入到LD3320 的相应管脚。2)或者用户可以自行焊接晶振,在模块上预留了晶振的空间和连接点。LD3320 模块上有两个LED灯,连接到LD3320 芯片的29,30管脚上,在LD3320上电重启复位(RSTB*)并稳定工作后,29,30管脚会稳定输出低电平,因此这两个LED灯可以作为芯片上电指示10。说明:用户可以直接把麦克风和喇叭的接头插入模块上焊接的对应插座中使用,也可以通过引出的对应排针进行连接。语音识别技术是本系统最为关键的技术之一。LD3320芯片提供的语音识别技术,是基于“关键词语列表”的识别技术。并且识别的“关键词语列表”是可以任意动态编辑的。它是基于非特定人语音识别(SI-ASR:Speaker-Independent Automatic Speech Recognition)技术的语音识别/声控芯片,其在设计上注重节能与高效,它集成了语音识别处理器和一些外部电路,包括AD、DA转换器、麦克风接口、声音输出接口等,不需要外接任何的辅助芯片,如Flash、RAM 等,只需要51MCU将关键词语拼音串,设置寄存器传入LD332X芯片,就可以完成语音识别功能。直接将芯片设计加入系统中(LD332X芯片支持并口和SPI两种接口方式)即可以增加非特定人语音识别功能,该产品提供了真正的单芯片语音识别解决方案。下图3-5是LD3320A 的非特定语音识别芯片。图3-5 LD3320 的非特定语音识别芯片3.3.1 LD3320 芯片参数特性内置单声道 mono 16-bit A/D 模数转换内置双声道 stereo 16-bit D/A 数模转换内置20mW 双声道耳机放大器输出内置550mW 单声道扬声器放大器输出支持并行接口或者串行SPI 接口内置锁相电路PLL,输入主控时钟频率为2MHz-34MHz工作电压:(VDD: for internal core) 3.3V48pin 的QFN 7*7 标准封装省电模式耗电:1uA3.3.2 LD3320芯片的主要特征通过快速而稳定的优化算法,完成非特定人语音识别。不需要用户事先训练和录音。也不需要任何在PC机上的软件。 单芯片。不需要外接任何辅助的Flash芯片,RAM芯片和AD芯片,就可以完成语音识别功能,真正提供了单芯片语音识别解决方案。动态编辑识别列表。 每次识别最多可以设置50项候选识别句,每个识别句可以是单字,词组或短句。另一方面,识别句内容可以动态编辑修改, 只需要主控MCU把识别关键词语的拼音串通过设置寄存器的方式传入芯片内部。因此可由一个系统支持多种场景。 主控MCU对芯片的操作通过读写芯片内部寄存器完成。通过设置和读取寄存器可以方便地完成设置语音识别列表,启动语音识别,获得识别结果,播放MP3等功能3。芯片内部已经准备了16位A/D转换器、16位D/A转换器和功放电路。麦克风、立体声耳机和单声道喇叭可以很方便地和芯片管脚连接。立体声耳机接口的输出功率为20mW,而喇叭接口的输出功率为550mW,能产生清晰响亮的声音。 支持并行接口和串行接口SPI两种连接方式,串行方式可以简化与其他模块的连接。 可把芯片设置为休眠状态,此时耗电非常少,而且可以方便地激活。 支持MP3播放功能,无需外围辅助器件,主控MCU将MP3数据依次送入LD332X芯片内部就可以从芯片的D/A PIN输出声音。支持MPEG1(ISO/IEC11172-3), MPEG2(ISO/IEC13818-3) 和MPEG 2.5 layer 3等格式。 工作供电为3.3V,如果用于便携式系统,使用3节AA电池就可以满足供电需要11。3.4 电机驱动电路 L298是ST公司生产的一种高电压、大电流电机驱动芯片。该芯片的主要特点是:工作电压高,最高工作电压可达46V;输出电流大,瞬间峰值电流可达3A,持续工作电流为2A;内含两个H桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电动机、继电器、线圈等感性负载;采用标准TTL逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作;有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈给控制电路。直流电机驱动电路使用最广泛的就是H 型全桥式驱动电路。这种驱动电路可以很方便实现直流电机的四象限运行,分别对应正转、正转制动、反转、反转制动5。L298N芯片如图3-6所示:图3-6 L298N芯片H桥驱动原理:H桥一共有四个臂,分别为 B1B4,每个臂由一个开关控制,示例中为三极管 Q1Q4。 如果让Q1、Q2 导通Q3、Q4 关断,如图3-7所示,此时电流将会流经Q1、负载、Q2 组成的回路,电机正转。图3-7 Q1、Q2导通时H桥工作状态图3-8 Q3、Q4导通时电桥工作状态如果让Q1、Q2 关断Q3、Q4 导通,如图 3-8所示,此时电流将会流经Q3、负载、Q4 组成的回路,电机反转。如果让Q1、Q2 关断Q3、Q4 也关断,负载Load两端悬空,此时电机停转,如图3-10。这样就实现了电机的正转、反转、停止三态控制。 如果让Q1、Q2 导通Q3、Q4 也导通,那么电流将会流经Q1、Q4 组成的回路以及Q2 和Q3 组成的回路,如图 3-9所示,这时桥臂上会出现很大的短路电流。在实际应用时注意避免出现桥臂短路的情况,这会给电路带来很大的危害,严重的会烧毁电路12。图3-9 Q1、Q2、Q3、Q4都导通时电机停转图3-10 Q1、Q2、Q3、Q4都不导通时电机停转 在本设计中用到电机驱动芯片L298N。PWM输出脉冲信号经双H桥功率驱动电路L298N后接至电机,控制小车运动。如图3-10 所示。L298N芯片是一种高压、大电流双全桥式驱动器,其设计是为接受标准TTL逻辑电平信号和驱动电感负载的。每个H桥的下侧桥臂晶体管发射极连在一起,其输出脚(SENSEA和SENSEB)用来连接电流检测电阻。Vcc接逻辑控制的电源。Vs为电机驱动电源。IN1-IN4输入引脚为标准TTL 逻辑电平信号,用来控制H桥的开与关即实现电机的正反转,ENA、ENB引脚则为使能控制端,用来输入PWM信号实现电机调速6。 图3-11 L298N芯片第4章 软件设计4.1 主程序流程图执行动作非特定人语音输入LD3320单片机开始初始化复位语音识别NY本系统主要包括以下程序:单片机初始化,延时函数,运行ASR识别流程,中断处理函数。系统的具体实现方框图如图4-1所示,在用户的语音进入语音识别部分后,LD3320将把处理过的数据并行传输到单片机,单片机处理后,发送命令数据到驱动芯片实现控制操作。图4-1 系统主程序流程图初始化部分:初始化操作将 IOB8IOB11 设置为输出端,用以控制电机。必要时还要有对应的输入端设置和 PWM 端口设置等。 识别部分:在识别环节当中,LD3320对采集到的语音样本也进行类似的分析处理,提取出语音的特征信息,然后将这个特征信息模型与已有的特征模型进行对比,如果二者达到了一定的匹配度,则输入的语音被识别。具体语音识别流程图如图4-2所示。识别出语音指令 初始化识别器获取识别结果执行对应动作开始结束NY 图4-2 语音识别流程图4.2 语音识别程序设计 4.2.1 LD3320语音识别原理语音识别ASR技术,是基于“关键词语列表识别”的技术。只需要设定好要识别的关键词语列表,并把这些关键词语以字符的形式传送到LD3320内部,就可以对用户说出的关键词语进行识别,不需要用户作任何地录音训练。不论这个列表的条目内容是什么,只需要用户设置相关的寄存器,就可以把相应的待识别条目内容以字符形式传递给识别引擎。识别引擎不关心关键词语列表中的关键词语的内容,可以是命令、人名、歌曲名字、操作指令等等任何的汉字字符串。最为关键的是,ICRoute公司提供了图形界面的下载工具软件和完整的开发源代码,开发者只需要修改拼音和准备好播放的MP3,就可以轻松完成最基础的一问一答的语音识别程序7。语音识别芯片完成的工作就是:采集MIC输入的声音进行频谱分析提取语音特征与关键词语列表中的关键词语进行对比匹配找出得分最高的关键词语作为识别结果输出识别结果。以上过程的原理框图如图4-3所示:MIC频谱分析特征提取语音识别器关键词列表MUC拼音串语音流LD3320动态编辑识别列表识别结果 图4-3 LD3320进行语音识别的原理框图注意:(1)每次识别最多可以设置50项候选识别句,每个识别句可以是单字,词组或短句,长度为不超过10个汉字或者79个字节的拼音串。(2)列表的规则是,每个识别条目对应一个特定的编号(1个字节),不同的识别条目的编号可以相同,而且不用连续。本芯片最多支持50个识别条目,每个识别条目是标准普通话的汉语拼音(小写),每2个字(汉语拼音)之间用一个空格间隔。(3)LD3320各个控制端口要加上拉电阻,但是模拟串口的时钟输入信号SDCK(P2口)和CLK二者都不能接上拉电阻。4.2.2 非特定语音识别程序流程图LD3320非特定语音芯片的程序流程如图4-4所示:作为一款专为语音识别开发的的专用芯片,在LD3320内部,固化有高效的非特定人语音识别搜索引擎模块和完整的非特定人语音识别特征库,以及专为语音识别而作的硬件优化和加速设计。而不是简单地提供一款DSP来运行外部语音识别的软件算法。因此:LD3320不需要外接的Flash存放语音识别Code和语音特征库。 LD3320不需要外接的RAM来运算语音识别。编辑小车的动作指令列表使用者发出指令将动作指令列表导入LD3320芯片中驱动小车作相应的动作开始是否识别某个动作结束YN 图4-4 语音识别程序流程图LD3320不需要外接的管理芯片或者加密芯片或者其他特别芯片来协同行。LD3320不需要连接PC机或者其他HOST机下载语音特征库或者HMM特征库。LD3320同样不需要外接其他芯片和设备来完成MP3播放功能语音识别程序的设计,参考了LD3320开发手册,本文中采用中断方式工作,其工作流程分为通用初始化一语音识别用初始化-写入识别列表-开始识别-响应中断。(1)通用初始化和语音识别用初始化。在初始化程序里,主要完成软复位、模式设定、时钟频率设定、FIFO设定。(2)写入识别列表。列表的规则是,每个识别条目对应一个特定的编号(1个字节),编号可以相同,可以不连续,但是数值要小于256(00HFFH)。本芯片最多支持50个识别条目,每个识别条目是标准普通话的汉语拼音(小写),每2个字(汉语拼音)之间用一个空格间隔。本文中采取了连续不同编号的识别条目,表4-1是简单的示例。表4-1 识别列表编号字符串1Qian jin2Hou tui3Zuo zhuan4You zhuan(3)开始识别。设置几个相关的寄存器,即可开始语音的识别。ADC通道即为麦克风输入通道,ADC增益也就是麦克风音量,可设定值00H7FH,建议设置值为40H6FH,值越大代表MIC音量越大,识别启动越敏感,但可能带来更多误识别;值越小代表MIC音量越小,需要近距离说话才能启动识别功能,好处是对远处的干扰语音没有反应。本文中设定值为43H。(4)响应中断。如果麦克风采集到声音,不管是否识别出正常结果,都会产生一个中断信号。而中断程序要根据寄存器的值分析结果,读取BA寄存器的值,可以知道有几个候选答案,而C5寄存器里的答案是得分最高、最可能正确的答案。4.3 中断处理函数虽然已经有了前进、后退以及停车等语音控制指令,但是考虑环境的干扰因素,小车运行时的噪音影响和有效距离的限制,小车运行后可能接收不到语音指令而一直运行。为了防止出现这种情况,加入了时间控制,在启动小车运行的同时启动定时器,定时器时间到停止小车的运行,该定时器借助于 2Hz时基中断完成, 图 4-5所示为该程序的流程图。可以在程序中修改PrintCom参数来控制运行时间,当PrintCom=2 时,运行时间为 1s,以此类推2 Hz中断定时器计数加1定时器到?停车待命中断返回YN图4-5 中断子程序void ExtInt0Handler(void) interrupt 0 ProcessInt0();/LD3320 送出中断信号,包括ASR和播放MP3的中断,需要在中断处理函数中分别处理/PrintCom(没有识别,进入中断/n); 第5章 系统的调试5.1软件烧写本次设计是用Keil C51烧写程序进行烧写的。Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。首先要选择芯片,然后进入编译界面,芯片选择界面如下图5-1所示;编译界面如图5-2所示:图5-1 芯片选择界面图5-2 编译界面具体烧写步骤归纳如下:步骤1:选择芯片型号,根据板上单片机的型号实际选择,设定好波特率20MHz。步骤2:在计算机上,利用KEIL软件对第一步输入的源程序进行编译,变为可执行的目标代码。如果源程序有语法错误,则其错误将显示出来,然后返回到第一步进行修改,再进行编译,直到语法错误全部纠正为止。步骤3:选择端口,准备烧写程序,如图5-3所示。步骤4:烧写程序,如图5-4所示。图5-3 端口选择图5-4 程序烧写5.2 硬件调试5.2.1 小车运动控制调试通过AT89S52的I/O端口驱动控制板的H桥电路,进而控制前轮电机和后轮电机,结果全部达到预定效果。5.2.2 语音功能调试利用非特定人语音识别实现小车的动作训练,并根据相应的语音指令输入执行前进、后退、左转、右转、停车等动作。训练完小车之后,怎样进行声控操作,让小车运动或者停下来呢?可以直接对小车说前进,或者倒车、左拐、右拐等,小车如果识别出指令会执行该动作。如果想要小车执行其它动作,直接告诉小车将要执行动作对应的指令即可。比如在前进时告诉小车“倒车”,小车识别出之后就会直接倒车。调试时首先将LD3320语音识别控制版安装在小车上,构成的语音控制小车实物图如图5-5所示:图5-5 语音控制小车实物图发出“前进”命令时,小车会立即按相应的程序向前移动。由于跟地面的摩擦阻力和汽车身体结构的不平衡,汽车并不是像程序设计的那样走很精确的直线,而是前进200cm时会向右偏离107cm,由于ADC增益值过大,带来了更多误识别。经常由于环境的干扰导致小车自动行走,此类问题有待以后进一步改进。5.2.3 定时控制功能调试利用时基定时器设定运行时间,小车运行同时启动定时器,时间到小车停止运行。 5.3 调试分析总结硬件调试过程相对顺利,第一步就是按照原理图对语音小车的元件进行焊接以及小车车体的连接安装。由于车体焊接存在的问题,在程序调试过程中出现了一系列的硬件问题,但经过仔细分析后,这些问题都得到了解决,硬件的调试改进为软件的实现调试打下了基础。本次设计任务对软件编写调试的能力要求相对较高,程序调节是否顺利决定了进度。由于初次接触AT89S52的编程,所以在实习初期我们主要是学习和认知AT89S52的板以及AT89S52编程的基本知识,这是个学习深入的过程。方案的确定是在查阅了AT89S52资料“语音控制小车”的实现程序后得到的思路。当然,程序的调试是不可能一两次就能成功的。这其中遇到的问题有很多,其中就有硬件的问题以及对51编程的知识的理解的不够而出现的调试困难。 结 论根据本次设计要求,我系统地阅读了大量的资料,并认真分析了设计课题的需求,还系统学习了51单片机的工作原理及其使用方法,并独自设计智能小车的整个项目。虽然条件艰苦,但经过不懈钻研和努力,购买到了所有所需的元器件,并系统的进行了多项试验,最终做出了整个小车的硬件系统,然后结合课题任务和小车硬件进行了程序的编制,最终顺利的通过了系统软硬件的联机调试,成功实现设计任务所要求的语音控制功能。通过本次毕业设计,不仅是对我大学四年所学知识的考查,更是对我的自学能力和收集资料能力以及动手能力的考验。本次毕业设计使我对一个项目的整体设计有了初步认识,并学会了使用Protel设计电路。本次毕业设计还使我意识到了实验的重要性,在硬件制作和软件调试的过程中,出现了很多问题,最终都是通过实验的方法来解决的。还有以前对程序只是一个很模糊的概念,通过这次的毕业设计使我对程序完全有了一个新的认识,并能使用C熟练的进行编程了。通过本次毕业设计,极大的锻炼了我思考和分析问题的能力,并对机电一体化有了一个更深的认识。总之,在毕业设计的过程中,无论是对于学习方法还是理论知识,我都有了新的认识,受益匪浅,这将激励我在今后再接再厉,不断完善自己的理论知识,提高实践运作能力。参考文献1 谭浩强.C语言程序设计.北京:清华大学出版社,20052 谭浩强,张基温.C语言程序设计教程.北京:高等教育出版社,19913 彭伟.单片机程序设计100例.北京:电子工业出版社,2009年4 马忠梅.单片机C语言应用程序设计.北京:北京航空航天大学出版社,20075 郭天祥.新概念51单片机C语言教程.北京:电子工业出版社,20096 刘鲲,孙春亮.单片机C语言入门(修订版).北京:人民邮电出版社,20107 陈超.C语言常用函数速查手册.北京:化学工业出版社,20108 黄菊生.单片机原理与接口技术.北京:国防工业出版社,20079 沈美明,温冬蝉.IBM-PC汇编语言程序设计.北京:清华大学出版社,200110 齐向东,刘立群.单片机控制技术实践.北京:中国电力出版社,200911 樊尚春.传感器技术与应用.北京:北京航空航天大学出版社,200412 雷思孝.单片机原理及实用技术.西安:西安电子科技大学出版社,200313 M. J Potasek andGP. Agrawal,Single-Chip microcomputer data / Prepared by Technical Information Center. IEEE J.Quantum Electron, 1995, Vol. 3l, No. I, 183-189.14 S. Furui: Recent advances in robust speech recognition, Proc. ESCA-NATO Workshop on Robust Speech Recognition for Unknown Communication Channels, Pont-a-Mousson, France, pp. 11-20 (1997)15 RowelO.Atienza,MarceloH.AngJr. A Flexible Control Architecture for Mobile Robots: An Application for a Walking RobotJ. Journal of Intelligent and Robotic Systems, Springer Netherlands, 2001,1(30), 2948.致 谢本课程设计是在雷艳敏老师的精心指导下完成的。从做设计以来,我不仅在专业上有了很大进步,而且开阔了我的视野,明白了更多的知识。在此,我要向雷艳敏老师表示深深的敬意和衷心的感谢!老师渊博的专业知识,严谨的治学态度,精益求精的工作作风,诲人不倦的高尚师德,严以律己、宽以待人的崇高风范,朴实无华、平易近人的人格魅力对我影响深远。不仅使我树立了远大的学术目标、掌握了基本的研究方法,还使我明白了许多待人接物与为人处世的道理。在本论文的写作过程中,老师倾注了大量的心血,从选题到开题报告,从写作提纲,到一遍又一遍地指出每稿中的具体问题,严格把关,循循善诱。在此,谨向雷老师表示崇高的敬意和衷心的感谢!在课程设计研究过程中,还得到了其他老师和同学的帮助。在此,对其他给予帮助的老师们表示我诚挚的谢意,对给予帮助的同学们表示衷心的感激和谢意。最后祝愿老师们工作顺利,身体健康!祝愿同学们在这一学年取得新的好成绩。袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【英语】英语状语从句解题技巧及经典题型及练习题(含答案)
- 英语名词技巧-阅读训练策略及练习题(含答案)含解析
- 北京市密云县新城子中学生物七年级下学期期末生物试题
- 2025年见证员考试题及答案
- 消防分公司面试题及答案
- 2025年监理工程师案例分析土建专业科目考试真题及答案解析
- 2025制冷与空调设备运行操作实操考试题及答案
- 培土路肩工程施工技术方案
- 预制水泥消防井施工方案
- 舞蹈招生优惠活动方案策划
- 重阳节活动致辞
- 地下室结构施工课件
- 2025至2030中国氢燃料电池堆行业项目调研及市场前景预测评估报告
- 牙齿矫正方式对比
- 3.2 中国的矿产资源教学课件 初中地理湘教版(2024)八年级上册
- 学堂在线 高技术与现代局部战争 章节测试答案
- 无人机公司飞手管理制度
- 房地产抵押贷款合同电子版预览
- 公路机电安全培训课件
- DB42-T 2389-2025 陶粒沥青混凝土路面施工技术规程
- 25春国家开放大学《物流信息技术》形考任务1-4参考答案
评论
0/150
提交评论