毕业设计论文基于8051的声控设计.doc
南京信息职业技术学院毕业设计论文作者 学号 系部 电子信息工程系 专业 无线电技术(微波技术与器件) 题目 基于8051的声控设计 指导教师 评阅教师 完成时间: 2011年5月1日毕业设计(论文)中文摘要题目:基于8051的声控设计摘要:本设计是基于8051的声控设计,整个声控系统的组成是以声控芯片RSC364为核心所设计的声控模块(简称VCMM)为中心来做应用,系统采用模块化设计,扩充性佳,本身控制板可以适合不同的硬件工作平台。整套系统可以做夸平台声控应用,可由串行接口来下命令道VCMM做声控处理。声控模块系统构架主要有语音辨认芯片,程序EPROM,FLASH内存,单芯片89C2051组成。89C2051是8051单片机的小型化设计包装,用于较简单化的硬件设计上。语音辨认芯片采用sensory公司设计的芯片,主要优点为省电及相关模拟电路简单,适合做小型多样化产品设计用。关键字: 声控芯片;跨平台;外部联机;串行接口;声控模块毕业设计(论文)外文摘要Title:8051 voice-based designAbstract: The design is based on the 8051 voice design, the composition of the whole system is voice-activated voice chip RSC364 designed as the core voice module (referred to VCMM) to do applications for the center, the system is modular in design, good expandability, and its own control panel can Work for different hardware platforms. Platform for the entire system can do boast voice applications, can be ordered under the serial interface to do voice processing VCMM. Voice modules are speech recognition system, chip architecture, program EPROM, FLASH memory, composed of single-chip 89C2051. 8051 89C2051 is a small design package, for a more simplified hardware design. Speech recognition chip designed by sensory chip, the main advantage of energy saving and related analog circuit is simple, suitable for product design with a small variety.keywords: voice chip,cross-platform,external line, serial Interface, Voice Module.目录1 引言12系统概述13 声控计算机的相应概况33. 1 声控计算机的分类33. 2 声控计算机的基本规格43. 3 声控计算机的应用44 声控模块硬件配置44.1 声控模块VCMM功能44.2 声控模块VCMM配备54.3 声控模块VCMM硬件说明54.4 声控模块VCMM操作说明65 基本控制电路85.1 经过串行接口来控制VCMM85.2经过PC的RS-232接口来控制VCMM85.3程序说明及流程图9结论13致谢13参考文献131 引言声控技术是用来设计一台会听话的计算机,只要对着麦克风讲话,便可以指挥计算机动作,也就是要实现“芝麻开门”声控计算机的梦想,当然现在已不是梦想。声控技术将以软件和硬件来实现。语音识别系统应用的范围相当广泛,现在随着许多关键技术的突破及VLSI技术的进步,市场上已出现许多方便使用的声控应用产品,如中文语音输入系统,升空移动电话(或手机)语音拨号,声控汽车音响等,而且未来会有更多有趣的声控电子产品上市。声控系统可以声音来控制计算机,完成某些特定的工作,如此一来可以取代部分按键输入来执行命令,也就是说计算机也可以听懂人们的声音,并且加以处理后可以完成特定的工作,更进一步让人和计算机交谈。声控计算机的技术使用的是计算机语音识别技术,由人的声音来控制计算机动作,可是计算机本身完全听不懂人的声音,因此必须先让计算机先了解人的讲话的声音及腔调。将原先训练好的声音特点存成语音参考样本,以便将来做识别时,当做对比参考。本论文是基于8051的声控设计,介绍整个声控系统的设计流程。人们对声控系统的进一步研究和发展,将会为我们以后的生活和工作带来无穷的方便和乐趣。2 系统概述整个声控系统的组成是以声控芯片RSC364为核心所设计的声控模块(简称VCMM)为中心来做应用,系统采用模块化设计,扩充性佳,本身控制板可以适合不同的硬件工作平台。整套系统可以做夸平台声控应用,可由串行接口来下命令道VCMM做声控处理。 声控模块系统构架如图2-1所示,主要有语音辨认芯片,程序EPROM,FLASH内存,单芯片89C2051组成。89C2051是8051单片机的小型化设计包装,用于较简单化的硬件设计上。语音辨认芯片采用sensory公司设计的芯片,主要优点为省电及相关模拟电路简单,适合做小型多样化产品设计用。FLASHROM串行接口TIL电平RS-232串行接口EROM+5V电源稳压器RSC364模拟电路麦克风输入LM386声频放大器喇叭输出89C2051单芯片按键输入控制图2-1声控系统组成构架语音辨认程序代码存于程序EPROM中,先前压缩的语音提示语也可以存放于其中。FLASH内存则是存储语音训练时所输入的参考样本特征参数及实时输入的语音压缩数据,所输入的语音压缩数据可以在辨认后说出来当做辨认结果验证用。以上这些数据因为存于FLASH内存内,关机后数据仍保存着,以免每次开机后,又要重新做训练造成使用上的不方便。在模拟的接口电路上以最少的电路便可以做语音的录放音控制。整个系统架构采主从式双处理机架构设计,由单芯片当做主控芯片,送出串行控制信号来控制辨认芯片完成相关的辨识工作。此一架构可以简化系统的软硬件设计,语音辨识的软硬件部分交由专用辨识芯片来处理,这些工作需要有效的算法及高速的硬件架构才能完成。在单芯片控制语音辨认芯片方面使用串行接口做控制,并定义一系列与与语音辨认处理相关的控制指令来完成工作。单芯片则负责人机接口的控制,在操作上使用4只按键控制来做设置,分别做语音输入训练,修改,听取语音内容,辨认等四项工作。所有工作经过动作指示LED灯及语音提示语来完成。除了基本的按键操作外,并建立了单片机串行传输接口,可以经过外部的其他种设计师熟悉的单芯片,如PIC或是EM78系列单片机来做更复杂的系统整合用,经过堆积木的方式来构建更复杂的声控应用系统,使整个复杂的声控系统设计,可以简化到以简易的串行接口指令来完成。更复杂的控制可以经过RS-232接口连接到PC接口上设计串行通信程序来完成。3 声控计算机的相应概况声控计算机可以声音来控制计算机,完成某些特定的工作,如此一来可以取代部分按键来执行指令,也就是说计算机可以听懂人们讲话,并且加以处理完成特定的工作,进一步让计算机与人进行交谈。31 声控计算机分类依系统所能辨认单字多寡可以分类为以下三种:(1) 特定词汇:几个单词,词或是词组。(2) 少量词汇:数十个单字,词或是词组。(3) 大量词汇:涵盖所有的单字,词或是词组发音。以中文语音辨认而言便是所有的中文字。依用户是否需要是先做训练分为:(1)特定语者 声控系统只能辨认某一特定用户的声音,用户在第一次使用此系统时需将所要辨认的词汇念过一到两遍,当做语音参考样本。谁来辨认说出语音,辨认时会很准确,当然如果训练时是男生的声音,如其他的男生来辨认,只要腔调及音频不要差异太大,仍然可以辨认出来。(2)语者调适 用户只要曾经对辨认系统训练过,此系统便可辨认出他的声音,是一种比较有灵活的做法,用户不需要念完所有的音,只要念过一部分的单音后,系统会自动将语音参考样本做调整。 依说话者的方式分类为:(1)单音辨认:系统只能辨认单音,因此用户所说的每一个字必须分开来。(2)连续音辨认:系统可以接受语音者连续发音。由以上几种分类说明可以看出,一套最理想的声控计算机系统应该是大量词汇,不特定语者连续音语音辨认系统,一般人不需要经过学习,便可以让计算机听懂他发出的语音,也就是说只要对着计算机说话便可以直接来控制计算机动作了,但是要完成这样的一套高辨认率的系统实在不是一件容易的工作。一般在应用上,特定语者,少量词汇的单音辨认系统便可以满足我们的特定需求,若能先完成一套简单而又高辨认率的声控系统,在不影响辨认率的情况下而后再逐渐加大词汇量,或是修改语者训练的方式,采用语者调适的方法,也可以提升声控系统的整体性能,增加使用的方便性。3.2 声控计算机的基本规格一般的声控计算机的基本规格:(1)辨认率高(2)特定语者(3)少量词汇(4)单音辨认3.3 声控计算机的应用声控的应用范围很多,一般可以分为以下几种:(1)计算机接口应用:利用声音控制屏幕显示(如简报系统,多媒体展示),或利用声控来下达计算机指令与键盘同时操作(如应用在CAI,GAME中)。(2)自动化控制:利用声音来控制机器人在高危险度的场所工作,或各种机械操作,或是声控仪表操作。(3)消费性产品应用:如家电控制,电视,音响,电灯或语音自动拨号,汽车声控设备,儿童玩具声控。(4)文本处理器:利用语音来输入文字(如听写机或是声控文书处理器)(5)利用语音辨识技术设计门禁管理系统。4 声控模块硬件配置声控模块VCMM是由单芯片89C2051控制语音辨识专用芯片RSC364,单芯片只用4条I/O线便可以控制声控芯片动作。4.1 声控模块VCMM功能(1)利用本套系统可以自行设计独立操作型特定语者声控系统,产品附加价值高。(2)本系统特定语者的单词,字,词语音辨识。(3)不限定说话语言,中英文皆可。(4)具有自动语音输入侦测的功能。(5)特定语者辨识率可达98%以上,反应时间小于1秒。(6)系统参数及语音参考样本一但输入后数据可以长久保存。(7)系统采用模块化设计,扩充性佳,可适合不同的硬件工作平台。(8)在线训练输入的语音可以压缩成语音数据而又系统说出来当做辨认结果确认。(9)系统可以独立操作,不必依靠PC。(10)系统包含有英文的语音提示语做语音动作引导。(11)系统展示5组语音辨认功能。(12)最多可以扩充控制到60组语音辨认。(13)需要外加+5V的电源供电。(14)内建DTMF信号产生功能,可做电话拨号的实验。(15)内建4只按键开关及RS-232串行通信接口。(16)提供完整8051控制接口及声控芯片电路图。(17)含8051汇编语言串行应用范例源程序及PC VB RS-232元程序。(18)可扩充软硬件功能做进一步产品设计或声控专题制作4.2 声控模块VCMM配备(1)VCM控制板成品(2)+5V的直流电源线(3)小型喇叭(4)系统工作磁盘(5)展示操作书名书(6)完整电路图4.3 声控模块VCMM硬件说明U1 RSC364:声控芯片。U2 FLASH:29C20 2M,内存语音样本及语音压缩数据。U3 EPROM:存声控芯片程序代码,RSC364可执行文件。U4 89C2051:存8051声控程序代码。U5 LM386:声频放大器。U6 ICL232:RS-232电平转换芯片。U7 7805:5V稳压IC。J1:电容式麦克风。J2:外部电容式麦克风扩充接头输入。J3:PWM语音输出(DTMF信号产生,电话拨号信号输出)。J4:DAC语音输出。J5:喇叭输出接头。J6:9V DC输入接头。J7:5V DC输入接头,红色+5V,黑色GND。VR1:喇叭输出音量控制。J8:89C2051串行接口I/O输出接头。J9: 89C2051I/O输出接头。J10:RS232 D型9引脚的公接头。J11:RSC364 声控芯片控制信号。J12:RS232 3引脚的接头。4.4 声控模块VCMM操作说明(1)准备一个+5V电源。经过2引脚的电线接至+5V接点J7,红色+5V,黑色GND。(2)或是准备接一个+9V电源。经过2引脚的电线接至+9V接点J6,红色+9V,黑色GND。(3)喇叭接线接至J5SP,打开电源,电源指示灯D2亮起,工作指示灯D3闪烁,表示开机正常。或是按下8051 RESET键S6。(4)注意:系统已经录有测试语音(例如1,2,3),先按S3键,聆听系统已经在的语音内容,作为欲辨识的字词。多按几次S3键,听听内建已经训练的语音。(5)按S4键:说出欲辨识的字词来辨认。系统会以英文说出“WHAT NAME”当提示语,D3 LED灯亮起,则对着麦克风说出语音,如说“1”,系统辨认出来后会说“1”。(6)因为为特定语者语音辨认,男生来辨认会准确些,谁来训练语音,辨认会准确,辨识率可达95%以上。(7)语音输入操作技巧:训练及辨认时周围环境不宜太嘈杂。 语音提示音会有提示音,LED亮起,等提示音说完才输入语音。 语音输入时与麦克风的最佳距离为30cm,有效距离为100cm,距离越远则音量要大点,若太小声系统会以英文说出“PLEASE LOUDER”,要您说话大声点。(8)S1S4功能键如下:按键S1:做语音参考样本训练输入,一次训练一组,展示系统为5个辨认的单音。已训练的语音会永久保存在FLASH的记忆芯片中,即使关机还是有效,语音训练输入需要输入23次,一般正常情况输入2次语音便可按下S1键,操作过程如下:系统说出“SAY NAME”(说一单音)第1次录音系统说出“REPEAT NAME”(重复一遍)(非必要)第2次录音系统说出“REPEAT NAME TO RECORD”(重复一遍录音用)第3次录音第1,2次录音作为产生语音参考样本,第3次录音则是做聆听已存在的语音内容用。若训练成功后,系统会说出您刚刚输入的语音,以做确认。按键S2:修改原先已存在的语音参考样本。先按S3键聆听系统已存在的某组语音内容。再按S2键该组内容会先被删除,再执行语音输入训练过程来建立新的语音参考样本。若在语音输入训练过程中失败,可以使用S1键来输入新的语音样本。按键S3:聆听系统已经存在的语音内容。展示程序为编号04,重复循环。按键S4:进行辨认。(9)做内建DTMF信号产生实验:RESET+S3键,则工作LED灯会持续闪动,进入DTMF信号实验模式,可做电话拨号的实验,按S3键则产生DTMF信号“117”拨号音,则会接通电话,进行报时的动作,需按RESET才能回到辨认的功能。实际电话拨号的电路设计,由J3的POM0单点送出拨号音(DTMF信号)至电话耦合接口,达成拨号的动作。(10)其他说明:当用户第一次使用此系统时,不必输入新的语音样本,以原来的辨认单音,例如“!”,“2”,“3”便可以进行辨认,一般男生应可以辨认正确,如果是辨认自己的声音,则可以高达95%以上的辨认率。您可以依自己喜好来重新输入新的语音样本,如“JOHN”,“NANCY”等。展示系统为5个辨认的单音,当辨认到相对的语音(编号04)则原先输入对应的语音说出来当作确认用。5 基本控制电路VCMM本身便可以做语音辨认实验,但由单片机8051设计声控的功能也可以由外部联机来控制VCMM动作。所有应用主控系统都是经过串行接口来控制VCMM动作,进一步完成声控的目的,分为两种方式来作控制:经过串行接口来控制VCMM和经过PC的RS-232接口来控制VCMM。5.1 经过串行接口来控制VCMM由外部任何单芯片经过串行接口来控制VCMM,其电平为TTL信号,皆可以由J8(89C2051串行接口I/O输出接头)连到VCMM。其控制连接方式如下表2-2-1所示。外部单芯片 VCMM 89C2051 J8TXD RXD(接收)RXD TXD(发送)接地 接地表5-1-1 VCMM的控制连接方式5.2 经过PC的RS-232接口来控制VCMM此一控制方式是连接到PC的RS-232 D型9引脚的公接头,经过RS-232串行接口来控制VCMM,由J10(RS-232的D型9引脚的公接头)连接到PC串行接口输入端,在PC上写串行控制指令来做声控应用。VCMM可以做夸平台声控应用,可由串行接口来下命令VCMM做声控处理。不是使用8051的系统,也可以联机来控制VCMM。主要是以串行通信指令来控制VCMM。VCMM的串行通信格式为9600 N 8 1:传输率9600bps,不做校验位检查,传输8个数据位,1个停止位。下一节以8051程序代码来写声控程序,并以IO51控制板来做控制实验。5.3 程序说明及流程图以IO51控制板的串行接口来控制VCMM声控模块。以3条连接线相连,将IO51 J1联机至VCMM J8插座。下图为其控制电路: 图5-3-1 IO51控制电路图VCMM串行接口声控指令句柄如下:(1)句柄t:语音训练,做语音参考样本训练输入,一次训练一组,展示系统为5个辨认的单音。(2)句柄m:语音修改,修改原先已存在的语音参考样本。(3)句柄l:语音聆听,聆听系统已存在的某组语音内容,展示程序为编号04,重复循环。(4)句柄r:语音辨认。以上所有动作操作如同操作VCMM上的4个按键一样。IO51送出辨认句柄r后,等待约1秒后,VCMM送出句柄ab用以表示辨认结果,ab为所辨认的语音样本编号编码,实际辨认结果编号为no:no=10×a+b,其中no有效值为059。若辨认错误则会传回X作为响应。例如辨认出语音样本编号1,则会传回ab,用户可以再设计程序做进一步应用控制。IO51在收到辨认结果后也会以内置的LED指示灯组合来表示,LED动作是反向亮灭指示灯,一次亮,一次灭。顺序由左而右对应编号04。IO51控制板上的操作:(1)按下K1键:IO51送出句柄“t”,语音训练。(2)按下K2键:IO51送出句柄“m”,语音修改。(3)按下K3键:IO51送出句柄“l”,语音聆听。(4)按下K4键:IO51送出句柄“r”,语音辨认。由于实验时是以串行接口做信号联机,不需经过RS-232电平转换,因此VCMM及IO51两边的RS-232控制芯片ICL232要先取下来,以避免信号干扰,无法正确的联机。图2-3-2是主控程序控制流程图。在主控程序循环中扫描是否有按键,若有修改则做相对功能处理,若按下K1键则送出语音训练句柄,若按下K2键送出语音修改句柄,若按下K3键送出语音聆听句柄,若按下K4键则送出语音辨认句柄,执行辨认功能。声控应用程序的控制程序文件名为V51.ASM,子程序说明如下:(1)DELAY:延迟子程序。(2)LED_BL:工作指示灯闪烁。(3)INIT_RS232:初始化RS-232接口。(4)TX_CHAR:传送一个字节数据。(5)RECOG:启动VCMM开始做辨认处理。(6)OP:执行辨认后的相对反应动作。(7)TEST_LED:测试LED灯亮灭。(8)RXA:等待VCMM传回辨认结果。是否按下K1,K2,K3,K4键?K1:送出语音训练控制码K2:送出语音修改控制码K3:送出语音聆听控制码K4:送出语音辨认控制码主程序开始设置串行端口的通信协议LED闪动,表示程序开始执行YN图5-3-2主程序控制流程图结论整个声控系统的组成以声控芯片RSC364为核心所设计的声控模块(简称VCMM)为中心来做应用,系统采用模块化设计。整个系统架构采主从式双处理机架构设计,由单芯片当做主控芯片,送出串行控制信号来控制辨认芯片完成相关的辨识工作。VCMM本身便可以做语音辨认实验,但单片机8051设计声控的功能也可以由外部联机来控制VCMM动作。所有应用主控系统都是经过串行接口来控制VCMM动作,进一步完成声控的目的.在单芯片控制语音辨认芯片方面使用以IO51控制板的串行接口做控制,再定义一系列与语音辨认处理相关的控制指令来完成工作。致谢 本次毕业设计在自己的努力,同学的帮助,老师的指点下已全部完成,结果重要,过程也很珍贵,因为好的结果必然得经过一个艰辛的过程,而从这个坚信的过程中我获得了珍贵的经验和教训,仔细认真的总结将对自己是个质的提升。实践是检验真理的唯一标准,经过几年的理论学习而这次在即将走向工作岗位的时候能将理论与实践相结合的机会来锻炼自己可谓是难得的一次提高,在此感谢学校为我们安排的这个教学环节,也感谢在此次设计过程中给与我极大帮助和理解的张老师。参考文献【1】陈明荧. 8051单片机课程设计实训教材【M】. 7302079986 出版日期:2004-4-1 开本: 787*1092 1/16 页码: 309 版次: 2004年3月第1版第1次印刷 【2】MSP430x14xx Family Users Guide.TEXAS INSTRUMENTS.2004【3】TRF3750 Users Guide.TEXAS INSTRUMENTS.2004【4】边海龙.单片机开发与典型工程项目实例详解-北京:电子工业出版社,2008.10【5】谭浩强著 C程序设计(第二版) 清华大学出版社 1999【6】徐泳龙主编 单片机原理及应用 机械工业出版社 2004【7】陆坤、奚大顺等编著 电子设计技术 1997【8】夏路易、石宗义编著 电路原理图与电路板设计教程 北京希望电子出版社 2002