版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上 南京航空航天大学电子信息工程学院第七期科创基金结题论文项目名称: 智能小1车的声控、遥控与避障的实现 申 报 人:谷雨 孟凡君 鞠网扣 范翰阳曹伟晨 周湧 指导老师: 施慧彬 二一一年十二月智能小车的声控、遥控与避障的实现研究内容提要:智能小车采用语音识别技术和,红外遥控技术,对其行驶状态进行控制。利用SPCE061A单片机和智能小车控制电路板,实现下述功能: 1.可以通过简单的I/O操作实现小车的前进、后退、左转、右转功能。 2.配合SPCE061A的语音特色,利用系统的语音播放和语音识别资源,实现语音控制的功能。 3.可以在行走过程中声控改变小车运动状态。4.在
2、超出语音控制范围时能够自动停车。 5.添加遥控功能,实现声控+无线遥控的双控功能。6.可以探测到障碍物并自主做出躲避。关键词:语音识别、语音控制、红外遥控、自动避障研究的目的和意义随着计算机和信息技术的发展和应用,包括语音控制和无线遥控等自动控制原理在科学和生活各个方面的运用也更加深入和广泛。本研究主要基于上述原理制作可通过语音和遥控进行双重控制的小车,并且另外安装各种传感器,以实现小车的前后左右运行,躲避障碍物等功能为目的。通过对相关理论技术的研究和小车的制作,对语音控制和无线遥控原理产生初步的认识和理解,并能够将理论知识运用到实际操控当中。对于小车的语音控制,主要采用SPCE061A单片机
3、,该器件可以实现语音的存储和放音。通过研究,可以深入理解该单片机的工作机理,学会对语音信号的分析和处理,将课堂上所学概率统计知识,信号分析知识等与实践操作想结合,探究如何运用该器件对小车进行控制并且根据不同指令实现各项功能,从而实现操控的人性化,便捷化和智能化。对于小车的无线控制,主要采用无线电的遥控通过收发指令实现。此技术与我们所学的信息专业联系更为紧密。通过研究,可以理解无线电的收发原理, 学会对不同电波信号实现分辨和处理,培养我们把电信号转化为实际指令的能力。通过具体的制作来巩固所学的模电,数电,信号分析等知识,做到学以致用。同时,还能够了解本专业的应用前景,发展动向和不足之处,体会到信
4、息工程给我们带来的巨大便利。对于小车的避障功能的实现,可以在小车内添加各种传感器,根据传感器传回的数据编写算法和程序,从而实现相应的功能。这是对于所学编程知识的具体应用,既可以巩固课堂上所学的知识,又能开拓我们的思维,充分发挥我们的创造性。另外,通过对小车的组装,还可以学习器件组装,焊接等技术操作能力,锻炼我们的动手能力,实验能力及团队协作能力。总的来说,语音控制和无线遥控等自动控制原理和我们所学的专业息息相关。其应用范围现在已扩展到生物、医学、环境、经济管理和其它许多社会生活领域中,成为现代社会生活中不可缺少的一部分。随着时代进步和人们生活水平的提高,在人类探知未来,认识和改造自然,建设高度
5、文明和发达社会的活动中,语音控制和无线遥控必将进一步发挥更加重要的作用。作为信息科学与技术专业的学生,仅仅了解和掌握相关知识并不足够,我们要多思考,多研究,多创新,积极将所学知识与实践相结合,通过团队协作积极创造,切身体会该项技术的带来的人性化便捷操控及智能性。国内外本项目的研究状况语音识别技术的研究开始于二十世纪五十年代。国外,Bell实验室的Davis等人首次研制出能识别十个英语数学的实验装置Audry系统。60年代,提出两大重要研究成果:动态规划和线性预测分析。70年代,线性预测编码技术被Itakura成功应用于使语音识别;Sakoe和Chiba将动态规划的思想应用到语音识别并提出动态时
6、间规整算法;Linda和Markel也首次解决了矢量量化码书生成的方法;统计方法也开始被用来解决语音识别的关键问题。80年代,Meyers和Rabiner研究出多级动态规划语音识别算法;另一个重要的发展是概率统计方法成为语音识别研究方法的主流,其显著特征是HMM模型在语音识别中的成功应用。1988年,美国卡内基梅隆大学用VQ/HMM方法实现了997词的非特定人连续语音识别系统SPHINX。 而国内,清华大学的王作英教授提出了非齐次隐语音识别的“改进隐含马尔可夫模型” ,可以说是对语音识别模型算法的一次重大革新。赵力等提出了利用偶数帧段输入隐马尔可夫模型,提高了在噪音环境下汉语语音识别系统鲁棒性
7、。李凡等提出一种基于BP神经网络和HMM的混合声学模型;何振亚等提出了一种HMM和径向基函数神经网络(RBF)相结合的语音识别模型;李晶皎提出的基于HMM和自组织神经网络模型的混合模型。无线电遥控技术发展于本世纪20年代。当时,才刚刚出现无线电遥控的雏形,那时的人们试图将遥控技术应用于无人驾驶飞机和舰船,但由于技术不够完善而未能成功。二次世界大战以后,无线电遥控技术发展迅速,并逐渐在军事、国防、工农业生产以及科学技术等方面得到广泛的应用。70年代后期,模型用的无线电遥控设备也以商品的形式逐渐出现。无线电元件制造技术在短时间内取得了高速发展。高密封的半导体晶片,将数千个晶体管的功能集中在一个几平
8、方厘米的元件板上,标志着当今无线电技术的发展趋势。其应用有:无线遥控自动避扰技术;功能更强大的反馈系统;用于生产计划的管理;无线电控制装置的自动程序化和智能功能。美国发射的外星生命探测器代表国外无线电遥控技术的发展水平,至于国内,嫦娥二号基本上算是顶端技术了。项目的创新点1. 配合SPCE061A的语音特色,利用系统的语音播放和语音识别资源,实现语音控制的功能,使对车的遥控更加简洁和人性化2. 具有声控+无线遥控的双控制功能,以便当语音控制失效或超出语音控制范围时时仍可以对小车进行控制、回收3. 可以探测到障碍物并自主做出躲避,提高小车的智能性和安全性研究内容、研究方案芯片特性简介 为了实现该
9、车的语音控制功能,必须应用语音识别技术,对发出的语音控制指令进行识别,识别后发出与指令对应的控制信号,从而使小车做出相应的动作。语音识别主要分为“训练”和“识别”两个阶段。在训练阶段,应用单片机对采集到的语音样本进行分析处理,从中提取出语音特征信息,建立一个特征模型;在识别阶段,使用单片机对采集到的语音样本进行类似的分析处理,提取出语音的特征信息,然后将这个特征信息模型与已有的特征模型进行对比,如果二者达到了一定的匹配度,则输入的语音被识别。该语音识别功能可通过单片机SPCE061A实现。SPCE061A是凌阳科技研发生产的性价比很高的一款十六位单片机,使用它可以非常方便灵活的实现语音的录放,
10、该芯片拥有8路10位精度的ADC,其中一路为音频转换通道,并且内置有自动增益电路。这为实现语音录入提供了方便的硬件条件。两路10位精度的DAC,只需要外接功放(SPY0030A)即可完成语音的播放。借助于SPCE061A的语音特色,我们可以开发出这款语音控制小车。小车不仅具有前进、后退、左转、右转停车等基本功能;同时配合SPCE061A的语音特色,实现语音控制功能。SPCE061A特性简介SPCE061A是凌阳科技研发生产的性价比很高的一款十六位单片机,使用它可以非常方便灵活的实现语音的录放,该芯片拥有8路10位精度的ADC,其中一路为音频转换通道,并且内置有自动增益电路。这为实现语音录入提供
11、了方便的硬件条件。两路10位精度的DAC,只需要外接功放(SPY0030A)即可完成语音的播放。另外凌阳十六位单片机具有一套易学易用的指令系统和集成开发环境,在此环境中,它支持标准C语言编程,也支持C语言与汇编语言的互相调用。另外还提供了语音录放的库函数,只要了解库函数的使用,就可以很容易的完成语音的录放、识别等功能,这些都为软件开发提供了方便的条件。SPCE061A特性: 16位nSP微处理器; 工作电压:内核工作电压VDD为3.0V3.6V(CPU),I/O口工作电压VDDH为VDD5.5V(I/O); CPU时钟:0.32MHz49.152MHz; 内置2K字SRAM; 内置32K闪存R
12、OM; 可编程音频处理; 晶体振荡器; 系统处于备用状态下(时钟处于停止状态),耗电小于2A3.6V; 2个16位可编程定时器/计数器(可自动预置初始计数值); 2个10位DAC(数-模转换)输出通道; 32位通用可编程输入/输出端口; 14个中断源可来自定时器A / B,时基,2个外部时钟源输入,键唤醒; 具备触键唤醒的功能; 使用凌阳音频编码SACM_S240方式(2.4K位/秒),能容纳210秒的语音数据; 锁相环PLL振荡器提供系统时钟信号; 32768Hz实时时钟; 7通道10位电压模-数转换器(ADC)和单通道声音模-数转换器; 声音模-数转换器输入通道内置麦克风放大器和自动增益控
13、制(AGC)功能; 具备串行设备接口; 低电压复位(LVR)功和低电压监测(LVD)功能; 内置在线仿真板(ICE,In- Circuit Emulator)接口。语音识别的原理简介在介绍子程序之前首先介绍一下语音识别的原理。 语音识别主要分为“训练”和“识别”两个阶段。在训练阶段,单片机对采集到的语音样本进行分析处理,从中提取出语音特征信息,建立一个特征模型;在识别阶段,单片机对采集到的语音样本也进行类似的分析处理,提取出语音的特征信息,然后将这个特征信息模型与已有的特征模型进行对比,如果二者达到了一定的匹配度,则输入的语音被识别。硬件实现方案系统结构框图如下MIC方向控制器方向电机KEY滤
14、波SPCE061A驱动控制器驱动电机功放SPK系统组成主要包括两部分:SPCE061A精简开发板、语音小车控制电路板。图中的语音输入部分MIC_ IN、按键输入KEY、声音输出部分的功率放大环节等已经做到了精简开发板61板上,为我们使用提供了很大的方便。在电机的驱动方面,采用全桥驱动技术,利用四个I/O端口分两组分别实现两个电机的正传、反转和停三态运行。小车的运动控制采用语音控制和中断定时控制相结合,通过语音触发小车动作,小车动作之后,随时可以通过语音指令改变小车的运动状态。在每一次动作触发的同时启动定时器,如果小车由于某些原因不能正常的接收语音指令,则只要定时时间到,中断服务程序会发出指令让
15、小车停下来。语音控制小车为四轮结构。其中前面两个方向车轮由前轮电机控制,在连杆和支点作用下控制前轮左右摆动,来调节小车的前进方向。在自然状态下,前轮在弹簧作用下保持中间位置。后面两个车轮由后轮电机驱动,为整个小车提供动力。小车的行走及转弯原理:直走:前轮在弹簧作用下保持中间状态,后轮电机正转小车就会前进。倒车:前轮电机仍然保持中间状态,后轮电机反转,小车就会向后运动。左转:前轮电机逆时针旋转(规定为正转),后轮电机正转,小车就会在前后轮共同作用下朝左侧前进。 右转:前轮电机反转,后轮电机正转,小车就是会在前后轮共同作用下朝右侧前进。控制板主要包括:接口电路、电源电路和两路电机的驱动电路。接口电
16、路:接口电路负责将61板的I/O接口信号传送给控制电路板,I/O信号主要为控制电机需要的IOB8IOB11这四路信号,同时为了方便后续的开发和完善,预留了IOB12IOB15以及IOA8IOA15接口,可以在这些接口上添加一些传感器。小车的避障原理在小车前段加装传感器,接到SPCE061A预留的接口上。当传感器探测到小车左前方一定范围内出现障碍物时,通过61板将信号传送给控制电路板,使小车进行相应的转向、停止、后退等动作系统软件设计训练子程序当程序检测到训练标志位BS_Flag内容为0xffff,就会要求操作者对它进行训练操作,训练操作的过程如图 6-3所示:训练采用两次训练获取结果的方式,以
17、训练名字为例:小车首先会提示:给我取个名字吧,这时你可以告诉它一个名字(比如Jack);然后它会提示:请再说一遍,这时再次告诉它名字(Jack),如果两次的声音差别不大,小车就能够成功的建立模型,名称训练成功;如果没能够成功的建立模型,小车会告知失败的原因并要求重新训练。成功训练名称后会给出下一条待训练指令提示音:前进,参照名称训练方式训练前进指令。依次训练小车的名称前进指令倒车指令左转指令右转指令,全部训练成功子程序返回,训练结束。动作子程序动作子程序包括:前进、倒车、左拐、右拐、停车子程序; 前进:由小车的结构原理和驱动电路分析知:只要IOB8为高电平,IOB9,IOB10,IOB11全部
18、为低电平即可实现小车的前进。前进子程序包括语音提示、置端口数据、启动定时器操作,左转:由小车的结构原理分析和驱动电路分析知:小车左转需要两个条件:1.前轮左偏2.后轮前进,这时对应的I/O状态为:IOB8、IOB10为高电平,IOB9、IOB11为低电平。左转子程序包括语音提示、置端口数据、启动定时器操作右转:由小车的结构原理分析和驱动电路分析知:小车右转需要两个条件:1.前轮右偏2.后轮前进,这时对应的I/O状态为:IOB8、IOB11为高电平,IOB9、IOB10为低电平。右转子程序包括语音提示、置端口数据、启动定时器操作中断子程序虽然已经有了前进、后退以及停车(通过直接呼叫小车的名字使其
19、停车)等语音控制指令,但是考虑环境的干扰因素,小车运行时的噪音影响和有效距离的限制,小车运行后可能接收不到语音指令而一直运行。为了防止出现这种情况,加入了时间控制,在启动小车运行的同时启动定时器,定时器时间到停止小车的运行,该定时器借助于2Hz时基中断完成,图 6-5所示为该程序的流程图。可以在程序中修改uiTimeset参数来控制运行时间,当uiTimeset=2时,运行时间为1s,以此类推。语音识别小车的主程序流程如图所示,分为四大部分:初始化部分、训练部分、识别部分、重训操作。初始化部分:初始化操作将IOB8IOB11设置为输出端,用以控制电机。必要时还要有对应的输入端设置和PWM端口设
20、置等。训练部分:训练部分完成的工作就是建立语音模型。程序一开始判断小车是否被训练过,如果没有训练过则要求对其进行训练,并且会在训练成功之后将训练的模型存储到Flash,在以后使用时不需要重新训练;如果已经训练过会把存储在Flash中的模型调出来装载到辨识器中。识别部分:在识别环节当中,如果辨识结果是名字,停止当前的动作并进入待命状态,然后等待动作命令。如果辨识结果为动作指令小车会语音告知相应动作并执行该动作,在运动过程中可以通过呼叫小车的名字使小车停下来。重训操作:考虑到有重新训练的需求,设置了重新训练的按键(61板的KEY3),循环扫描该按键,一旦检测到此键按下,则将擦除训练标志位(0xe0
21、00单元),并等待复位。复位后,程序重新执行,当检测到训练标志位为0xffff时会要求重新对其进行训练。开始系统的总体程序流程图等待复位区清除型存储区重新训练进入识别模式保存训练结果训练小车已经训练过初始化装载语音模型语音识别与执行红外遥控的实现 红外线又称红外光波,在电磁波谱中,光波的波长范围为0.01um1000um。根据波长的不同可分为可见光和不可见光,波长为0.38um0.76um的光波可为可见光,依次为红、橙、黄、绿、青、蓝、紫七种颜色。光波为0.01um0.38um的光波为紫外光(线),波长为0.76um1000um的光波为红外光(线)。红外光按波长范围分为近红外、中红外、远红外、
22、极红外4类。红外线遥控是利用近红外光传送遥控指令的,波长为0.76um1.5um。用近红外作为遥控光源,是因为目前红外发射器件(红外发光管)与红外接收器件(光敏二极管、三极管及光电池)的发光与受光峰值波长一般为0.8um0.94um,在近红外光波段内,二者的光谱正好重合,能够很好地匹配,可以获得较高的传输效率及较高的可靠性。编辑本段红外遥控的基本原理 红外遥控的发射电路是采用红外发光二极管来发出经过调制的红外光波;红外接收电路由红外接收二极管、三极管或硅光电池组成,它们将红外发射器发射的红外光转换为相应的电信号,再送后置放大器。 发射机一般由指令键(或操作杆)、指令编码系统、调制电路、驱动电路
23、、发射电路等几部分组成。当按下指令键或推动操作杆时,指令编码电路产生所需的指令编码信号,指令编码信号对载波进行调制,再由驱动电路进行功率放大后由发射电路向外发射经调制定的指令编码信号。 接收电路一般由接收电路、放大电路、调制电路、指令译码电路、驱动电路、执行电路(机构)等几部分组成。接收电路将发射器发出的已调制的编码指令信号接收下来,并进行放大后送解调电路,解调电路将已调制的指令编码信号解调出来,即还原为编码信号。指令译码器将编码指令信号进行译码,最后由驱动电路来驱动执行电路实现各种指令的操作控制(机构)。 由于红外线遥控不具有像无线电遥控那样穿过障碍物去控制被控对象的能力,所以,在设计家用电
24、器的红外线遥控器时,不必要像无线电遥控器那样,每套(发射器和接收器)要有不同的遥控频率或编码(否则,就会隔墙控制或干扰邻居的家用电器),所以同类产品的红外线遥控器,可以有相同的遥控频率或编码,而不会出现遥控信号“串门”的情况。这对于大批量生产以及在家用电器上普及红外线遥控提供了极大的方便。由于红外线为不可见光,因此对环境影响很小,再由红外光波动波长远小于无线电波的波长,所以红外线遥控不会影响其他家用电器,也不会影响临近的无线电设备。多路控制的红外遥控系统 多路控制的红外发射部分一般有许多按键,代表不同的控制功能。当发射端按下某一按键时,相应地在接收端有不同的输出状态。接收端的输出状态
25、大致可分为脉冲、电平、自锁、互锁、数据五种形式。“数据”输出是指把一些发射键编上号码,利用接收端的几个输出形成一个二进制数,来代表不同的按键输入。 按键编码对应按键:2(000)8(001)4(010)6(011)5(100)由于对430单片机的红外控制实现比较熟悉,所以,本项目采用了M430单片机实现红外遥控功能。以下是用红外控制的程序: 专心-专注-专业#include <msp430x26x.h>#include "TFT9325Driver.h"unsigned data2,add=0,cnt=0,sign=1;char Ir_Buf4;char * n
26、um;unsigned char Operation,succeed_flag;double length;int action;/US100_TX/ #define US100_TX_1 P1OUT |=BIT0;#define US100_TX_0 P1OUT &=BIT0;/US100_RX/#define US100_RX_IN (P1IN&BIT1)void clk_init() WDTCTL=WDTPW+WDTHOLD; BCSCTL1 &= XT2OFF; / XT2on BCSCTL2 |= SELM1 + SELS; / MCLK为8M unsigne
27、d int delay; for(delay=5000;delay>0;delay-); IFG1 &=OFIFG;void io_init() P1SEL|=0X04; /P1.2 timerA0捕获输入口 红外信号输入口 P1DIR&=0x04; /输入方向 P1OUT|=0X04; /上拉电阻 / P1DIR|=BIT1; /数字IO口 P1DIR|=BIT0; /TX输出 P1DIR&=BIT1; /RX输入 P1SEL |=BIT1; P1OUT &=BIT0; /TX输出0void DelayUS() unsigned char i=0; fo
28、r(i=0;i<254;i+);void DelayMs() unsigned int i=0; for(i=0;i<8000;i+);void timerA_init() TACTL=TASSEL_2+ID_3+MC_2; /选择子系统时钟SMCLK 8分频到1MHZ 增计数模式 / TACCTL0|=CCIE; /中断允许 CCR0=15000; TACCTL1=CAP+SCS+CM_3+CCIE; /TA1捕获功能 同步捕获 上升,下降沿均捕获 TA1比较捕获中断允许void sysinit() /系统初始化 clk_init(); io_init(); timerA_ini
29、t(); ILI9325_Initial(); ClearScreen(0xf800);void US100() US100_TX_1; DelayUS(); US100_TX_0;void main() WDTCTL = WDTPW + WDTHOLD; sysinit(); P2DIR=0XFF; _EINT(); /打开全局中断控制 while(1) switch (action) case 0x11: /前进 P2OUT |=BIT2; P2OUT &=(BIT0+BIT1); break; case 0X19: /后退 P2OUT |=BIT2+BIT0; P2OUT &am
30、p;=BIT1; break; case 0x14: /左拐 P2OUT |=BIT1+BIT2; P2OUT &=BIT0; break; case 0x16: /右拐 P2OUT |=BIT1+BIT2+BIT0; break; case 0x15: P2OUT=0X00; defualt: P2OUT=0x00; #pragma vector=TIMERA1_VECTOR /TA1捕获中断函数 用于接收处理红外线信号_interrupt void timerA1() unsigned char i=0; switch(TAIV) case 2 : TAR=0X0000; if(P
31、1IN&BIT2) /上升沿捕获 data0=CCR1; /data0保存的是接收信号为低电平时的计数周期数 (下降沿开始计数,上升沿时读取计数值) if(add) /红外线引导码已确定,开始接收数据 if(data0<200|data0>800) /判断接收的的低电平时长是否符合红外线特性 1(真) 不符合 0(假) 符合 add=0; /不符合,使引导失效 else data1=CCR1; if(data0<9500&&data0>8500)&&(data1<5000&&data1>4000) /判
32、断捕获到的信号是否为红外线的引导码(9ms低电平)及其结果码(4.5ms高电平) add=1; /确认接收信号为引导码 else if(add) if(data1<200|data1>2000) /判断接收的的高电平时长是否符合红外线特性 1(真) 不符合 0(假) 符合 add=0; /不符合,使引导失效 else /200=<data1<=2000 接收到的电平信号符合线外线的特性 i=(add-1)/8; Ir_Bufi>>=1; if(data1>1120) /判断接收到的电平信号表示的是高电平,还是低电平 Ir_Bufi|=0x80; /存放
33、接收到的信号 Ir_Buf2为键码值,Ir_Buf3为键码反值,Ir_Buf1&Ir_Buf0共16位为用户识别码 if(add>=32) /一组红外信号接收完成 add=0; /引导失效 *num=Ir_Buf2+'0' action=Ir_Buf2; LCD_PutString(40,60,num,0x0000,0xff00); else add+; break; case 4 : _NOP();break; case 10: _NOP();break; TACCTL1&=COV;避障实现方案使用光电开关进行障碍物信息采集本方案采用ESF-DS10C4
34、光电开关进行障碍物信息采集该光电开关具有以下优点:1:灵敏度高,频率响应快,重复定位精度高,瞬变过程短,输出功率大,急电特性好,工作稳定可靠,使用寿命长等优点。 2:红色LED显示可以检查传感器的状态。 3:经济并且简单的操作。 4:运用广泛,可替换小型开关和限位开关。 基本参数: 1.电源电压:直流10-30VDC、交流90-250VAC 2.检测距离:10cm 3.输出电流:300mA 4.输出模式:NPN常开、NPN常闭、PNP常开、PNP常闭、二线常开、二线常闭、交流常开、交流常闭。由于我们的小车平均制动距离不超过10cm,所以该开光的探测距离符合要求。光电开关发射出的红外线在经障碍物
35、漫反射后会由光电开关再接收到,这会引 起光电开关传回的电平的变化.若前方有障碍物,则光电开关传回高电平;若前 方无障碍物,则光电开关传回的是低电平.有电平的变化可以实现对前方障碍物的探测。在小车前方安装了3个光电开关,分别位于车头的左中右,当探测到前方有障碍物时,光电开关传回的电平会有变化,根据三个开关的不同电平值,设计了如下7种反映动作:发现前方有小障碍(010):后退并右转; 发现右方有小障碍(100):前进并左转;发现左方有小障碍(001):前进并右转; 发现前方有大障碍(111):较大的后退并右转; 发现右方有大障碍(110):后退并右转; 发现左方有大障碍(011):后退并左转; 发
36、现两边有障碍但中间无障碍(101):较大的后退并右转。但是在实际测试时发现,该方案实现难度较大,当发现前方有小障碍物时仍然探测为大障碍物,并且左右也不是很准确。于是修改方案为:探测到有高电平,后退,左转,以避开障碍物。但是在实测中还是发现存在问题,有时不能探测到障碍物,且无法和语音功能同时实现,可能是由于程序编写还存在问题,目前还在对程序进行改进。程序见附录。目前成果:小车能够实现语音识别功能,对于相应的前进,左拐,右拐,后退,能够做出相应的正确动作,在语音控制的同时,也能够通过红外遥控对小车进行前后左右的控制。避障功能的程序编好,通过传感器实现,但是实现还存在问题,还在寻找问题和改进中。经过
37、近一年的设计,终于完成了小车的方案设计和程序编写,在设计的过程中,我们克服了许多困难,通过参考前人的经验,完成了小车的整体方案设计,期间出现很多错误,都被及的发现并改正,从中体会到前期的准备和查资料是非常的重要,是设计的顺利完的保证。 编程是智能小车的工作的核心,是设计的重点,通过对小车设计条件的理解和 推敲,编写出来了相应的程序,并实现了部份功能。 通过本次科创,不仅使我学到了更多的知识,也使我学会了如何更好地处理遇到的问题,虽然小车的避障功能还没有完全实现,但还是受益匪浅。同时还锻炼了今后工作遇到相类似问题时,发现问题和解决问题的 能力。另外,还提高了自身理论知识和实践相联系的能力。参考文
38、献:1 闫三锋.基于单片机语音识别系统设计D.西北工业大学.2004年 2 刘毅敏 黄沛.基于凌阳单片机SPCE061A的信号测试系统的设计.武汉工程职业技术学院学报.2005年第02期 3 赵春红 杨勇.基于单片机和无线电遥控技术的密码锁设计.测控技术.2005年 第09期4 赵震初.无线电技术基础.北京理工大学出社.2003年5 王君 凌振宝.传感器原理及应用.吉林大学.2002年6 赵继文.传感器与应用电路设计M.北京:化学工业出版社.2001年附录:语音控制功能与避障程序/ 工程名称: Car_Demo/ 功能描述: 实现小车的语音控制/ 涉及的库: CMacro1016.lib/ b
39、srv222SDL.lib/ sacmv26e.lib/ 组成文件: main.c/ Flash.asm, hardware.asm,ISR.asm / hardware.h,s480.h, hardware.inc/ 硬件连接: IOA0-KEY1/ IOA1-KEY2/ IOA2-KEY3/ IOB7-前进/ IOB6-倒车/ IOB5-左拐/ IOB4-右拐/ IOB2-避障检测/ 维护记录: 2005-12-12 v1.0/=#include "s480.h"#include "bsrsd.h"#define P_IOA_Data (volati
40、le unsigned int *)0x7000 #define P_IOA_Dir (volatile unsigned int *)0x7002#define P_IOA_Attrib (volatile unsigned int *)0x7003#define P_IOB_Data (volatile unsigned int *)0x7005 #define P_IOB_Dir (volatile unsigned int *)0x7007 #define P_IOB_Attrib (volatile unsigned int *)0x7008 #define P_TimerA_Dat
41、a (volatile unsigned int *)0x700A #define P_TimerA_Ctrl (volatile unsigned int *)0x700B #define P_TimerB_Data (volatile unsigned int *)0x700C #define P_TimerB_Ctrl (volatile unsigned int *)0x700D #define P_Watchdog_Clear (volatile unsigned int *)0x7012 #define P_INT_Mask (volatile unsigned int *)0x7
42、02D #define P_INT_Clear (volatile unsigned int *)0x7011 #define P_INT_Ctrl (volatile unsigned int *)0x7011#define NAME_ID 0x100#define COMMAND_GO_ID 0x101#define COMMAND_BACK_ID 0x102#define COMMAND_LEFT_ID 0x103#define COMMAND_RIGHT_ID 0x104#define S_NAME 0 /给我取个名字吧#define S_ACT1 1 /前进#define S_ACT
43、2 2 /倒车,请注意#define S_ACT3 3 /左拐#define S_ACT4 4 /右拐 #define S_RDY 5 /Yeah#define S_AGAIN 6/请再说一遍#define S_NOVOICE 7 /没有听到任何声音#define S_CMDDIFF 8 /说什么暗语呀#define S_NOISY 8 /说什么暗语呀#define S_START 9/准备就绪,开始辨识 #define S_GJG 10/拐就拐#define S_DCZY 11 /倒车,请注意extern unsigned int BSR_SDModel100; /外部变量BSR_SDMod
44、el100,辨识器自带extern void F_FlashWrite1Word(unsigned int addr,unsigned int Value);extern void F_FlashErase(unsigned int sector);unsigned int uiTimeset = 3; /运行时间定时,调整该参数控制运行时间unsigned int uiTimecont; /运行时间计时/=/ 语法格式: void Delay();/ 实现功能: 延时/ 参数: 无/ 返回值: 无/=void Delay() unsigned int i; for(i=0;i<0x3F
45、ff;i+) *P_Watchdog_Clear=0x0001; /=/ 语法格式: void PlaySnd(unsigned SndIndex,unsigned DAC_Channel);/ 实现功能: 语音播放函数/ 参数: SndIndex-播放语音资源索引号/ DAC_Channel-播放声道选择/ 返回值: 无/=void PlaySnd(unsigned SndIndex,unsigned DAC_Channel) BSR_StopRecognizer(); /停止识别器 SACM_S480_Initial(1); /初始化为自动播放 SACM_S480_Play(SndIndex, DAC_Channel, 3); /开始播放一段语音 whil
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《电子欺骗》课件
- 2024年公务员个人总结
- (高频非选择题25题)第2单元 社会主义制度的建立与社会主义建设的探索(解析版)
- 2013年高考语文试卷(重庆)(空白卷)
- 寒假安全家长会
- 未成年人监护制度创新-洞察分析
- 行业趋势预测与洞察-洞察分析
- 无线医疗设备-洞察分析
- 新型贮藏保鲜方法研究-洞察分析
- 网络切片安全态势感知-洞察分析
- 四川省食品生产企业食品安全员理论考试题库(含答案)
- 人教版八年级音乐上册 第一单元 《拉起手》 教案
- 《马克思主义基本原理》学习通超星期末考试答案章节答案2024年
- 期末测试卷(试题)-2024-2025学年人教PEP版(2024)英语三年级上册
- 《旅游大数据》-课程教学大纲
- 工艺以及质量保证措施,工程实施的重点、难点分析和解决方案
- 七年级上册道德与法治第1-4单元共4个单元复习教学设计
- SY-T 5412-2023 下套管作业规程
- 四色安全风险空间分布图设计原则和要求
- 八年级化学下册期末试卷及答案【完整版】
- 合伙人散伙分家协议书范文
评论
0/150
提交评论