寻迹小车江西理工大学应用科学学院Word文档下载推荐.docx
《寻迹小车江西理工大学应用科学学院Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《寻迹小车江西理工大学应用科学学院Word文档下载推荐.docx(15页珍藏版)》请在冰豆网上搜索。
2.4单片机P89V51核心模块8
2.5声控电路8
2.6语音播报模块9
3系统软件设计10
3.1主程序流程图10
3.2传感器数据处理及寻迹程序流程11
4系统测试12
4.1硬件测试12
4.2硬件与软件的联机测试12
5测试数据及实验结果13
参考文献14
1系统设计
1.1 设计要求
1.1.1基本要求
1、小车可以自动寻迹在设计好的线路上向前或向后跑。
2、拍手的声音可以启动、停止小车运动。
3、线路两端有挡板,当小车向一个方向运行到挡板位置停止,然后向反方向续
运行至挡板位置,如此重复。
4、小车由电池供电,电池采用1200mah容量,小车运行时间需要持续24小时以上。
5、小车运动速度要控制在0.1m/S以上。
1.1.2扩展部分
1、能实现语音播报前后方有障碍物;
1.2 总体设计方案
1.2.1基本模块设计方案论证与比较
(1)车体设计
方案1:
购买玩具电动车。
购买的玩具电动车具有组装完整的车架车轮、电机及其驱动电路。
但是一般的说来,玩具电动车具有如下缺点:
首先,这种玩具电动车由于装配紧凑,使得各种所需传感器的安装十分不方便。
其次,这种电动车一般都是前轮转向后轮驱动,不能适应该题目的方格地图,不能方便迅速的实现原地保持坐标转90度甚至180度的弯角。
再次,玩具电动车的电机多为玩具直流电机,力矩小,空载转速快,负载性能差,不易调速。
而且这种电动车一般都价格不菲。
因此我们放弃了此方案。
方案2:
自己制作电动车。
经过反复考虑论证,我们制定了左右两轮分别驱动,后万向轮转向的方案。
即左右轮分别用两个转速和力矩基本完全相同的直流电机进行驱动,车体前部装一个万向轮。
这样,当两个直流电机转向相反同时转速相同时就可以实现电动车的原地旋转,由此可以轻松的实现小车坐标不变的90度和180度的转弯。
在安装时我们保证两个驱动电机同轴。
当小车前进时,左右两驱动轮与后万向轮形成了三点结构。
这种结构使得小车在前进时比较平稳,可以避免出现后轮过低而使左右两驱动轮驱动力不够的情况。
为了防止小车重心的偏移,前万向轮起支撑作用。
对于车架材料的选择,我们经过比较选择了有机玻璃。
用有机玻璃做的车架比塑料车架更加牢固,比铁制小车更轻便,美观。
(2) 电机的选择
对于智能小车来说,其驱动轮的驱动电机的选择就显得十分重要。
由于本题目要实现对寻迹路线的准确定位和精确测量,我们综合考虑了一下两种方案。
采用步进电机作为该系统的驱动电机。
由于其转过的角度可以精确的定位,可以实现小车前进路程和位置的精确定位。
虽然采用步进电机有诸多优点,步进电机的输出力矩较低,随转速的升高而下降,且在较高转速时会急剧下降,其转速较低,不适用于小车等有一定速度要求的系统。
经综合比较考虑,我们放弃了此方案。
采用直流减速电机。
直流减速电机转动力矩大,体积小,重量轻,装配简单,使用方便。
由于其内部由高速电动机提供原始动力,带动变速(减速)齿轮组,可以产生较大扭力,价格比步进电机要便宜好多。
我们所选用的直流电机减速比为1:
74,减速后电机的转速为100r/min。
我们的车轮直径为6cm,因此我们的小车的最大速度可以达到
V=2πr·
v=2*3.14*0.03*100/60=0.314m/s,达到设计要求。
能够较好的满足系统的要求,因此我们选择了此方案。
(3) 电机驱动模块
由于电动车采用了前面使用万向轮,两个后轮各一个电机驱动的驱动方式,所以可使电动车旋转360度,这样即使前后方都碰到障碍物的时候,电动车也可以通过在原地不断旋转的方式找到避免撞击障碍物的线路。
在电动机的控制上有两种方案可供选择。
方案1:
利用9012、2SC8050、及电机构成驱动电路。
如果单片机89C51控制口输出高电平,9012截止,2SC8050截止,电机停止运转。
单片机89C52控制口输出低电平时,9012导通,2SC8050导通,电机开始运转。
该电路比较简单,输出功率足够大,足以推动电机工作,并且电机工作时三极管性能非常稳定。
但该方案中单片机部分和电机供电部分没有完全隔离,而电动机在切换时会产生巨大的反电动势,经常烧坏单片机,功耗很大。
利用LM298及其外部辅助电路和电机构成驱动电路。
单片机控制口接LM298的两个输入控制端IN1,IN2。
L298的两个输出端OUT1
(2),OUT2(10)接电机。
电机转动状态编码:
左电机
右电机
电动车运行状态
1IN1
1IN2
2IN1
2IN2
1
正转
前行
反转
左转
停
以左电机为中心原地左转
右转
以右电机为中心原地右转
后退
杀停
立刻停止
根据上表可知,只要设定两块L298的1IN1,1IN2,2IN1,2IN2四个控制端口的不同编码,就可得到电动车的前进,后退,旋转等不同的运行状态;
且L298的最大输出电流为2.2A,可使电动车快速运行。
故采用方案2。
(4)控制器模块
采用可编程逻辑期间CPLD作为控制器。
CPLD可以实现各种复杂的逻辑功能、规模大、密度高、体积小、稳定性高、IO资源丰富、易于进行功能扩展。
采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模控制系统的控制核心。
但本系统不需要复杂的逻辑功能,对数据的处理速度的要求也不是非常高。
且从使用、功耗及经济的角度考虑我们放弃了此方案。
采用凌阳公司的16位单片机,它是16位控制器,具有体积小、驱动能力高、集成度高、易扩展、可靠性高、功耗低、结构简单、中断处理能力强等特点。
处理速度高,尤其适用于语音处理和识别等领域。
但是当凌阳单片机应用语音处理和辨识时,由于其占用的CPU资源较多而使得凌阳单片机同时处理其它任务的速度和能力降低。
本系统主要是进行寻迹运行的检测以及电机的控制。
如果单纯的使用凌阳单片机,在语音播报的同时小车的控制容易出现不稳定的情况。
从系统的稳定性和编程的简洁性考虑,我们放弃了单纯使用凌阳单片机而考虑其它的方案。
方案3:
P89V51RD2是一款80C51微控制器,包含16/32/64kBFlash和1024字节的数据RAM。
P89V51RD2的典型特性是它的X2方式选项。
利用该特性,设计时可使应用程序以传统的80C51时钟频率(每个机器周期包含12个时钟)或X2方式(每个机器周期包含6个时钟)的时钟频率运行,选择X2方式可在相同时钟频率下获得2倍的吞吐量。
从该特性获益的另一种方法是将时钟频率减半而保持特性不变,这样可以极大地降低电磁干扰(EMI)。
Flash程序存储器支持并行和串行在系统编程(ISP)。
并行编程方式提供了高速的分组编程(页编程)方式,可节省编程成本和上市时间。
ISP允许在软件控制下对成品中的器件进行重复编程。
应用固件的产生/更新能力实现了ISP的大范围应用从方便使用的角度考虑,我们选择了方案3。
(5)线路跟踪电路
采用CCD单色摄像头,配计算机主板及图像采集卡。
对白背景下,黑线的识别,目前做的比较成熟,效果相当好。
但成本高,很难找到合适的载体。
采用颜色传感器。
目前颜色传感器的应用,越来越广泛,效果也可以。
但几百元的价格及相对复杂的处理电路,并且还需要光源,所以也不是一个很好的选择。
采用红外光电发射接收管。
该传感器不但价格便宜,容易购买,而且处理电路简单易行,实际使用效果很好,能很顺利地引导小车按规定的线路寻迹。
我们选择方案3。
(6)声控模块
采用凌阳公司的单片机,在语音识别处理这一块很好。
按照设计的要求,用凌阳单片机不仅成本增加,而且功耗非常大,所以我们放弃选用凌阳单片机处理声音模块。
采用柱极体传声器和普通的三极管构成的声控电路,电路设计简单,元器件价格便宜,容易买到。
基于低成本、低功耗我们选择方案2。
(7) 语音模块
方案一:
采用APR9600语音录放集成电路。
这是一种永久记忆型语音录放电路,可重复录放10万次。
该芯片采用多电平直接模拟量存储专利技术,单片电路可录放32~60秒,串行控制时可分256段以上,并行控制时最大可分8段。
与ISD同类芯片相比它具有价格便宜、多种手动控制方式、分段管理方便、多段控制时电路简单、采样速度及录放音时间可调、每个单键均有开始停止循环多种功能等特点。
然而其处理速度有限,无法满足本设计需要寻址操作的需要。
方案二:
采用ZY1420A语音模块。
ZY1420A内部使用ISD1420作为主控芯片,且具备ISD1420的全部优良性能,如大容量的EEROM存储器,消噪的话筒放大器,自动增益调节AGC电路,专用语音滤波电路,高稳定性的时钟震荡电路和语音处理电路。
除此以外,ZY1420A还对ISD1420的标准外围电路作了优化并全部集成于模块内部。
同用户使用标准ISD1420的DIP40封装IC相比较,ZY1420A可以提供更加稳定可靠的性能,更低的价格,更方便的使用,同时还可以减小实际的体积。
电路内部由振荡器、语音存储单元、前置放大器、自动增益控制电路、抗干扰滤波器、输出放大器组成。
一个最小的录放系统仅由一个麦克风、一个喇叭、两个按钮、一个电源就可以组成。
故系统选用方案二。
1.2.2系统总体设计方案
题目要求设计一个智能小车,实现自动寻迹在设计好的线路上向前或向后跑,通过声音可以控制小车的停止和启动,能够有避障碍物等功能,本系统以P89V51单片机作为核心控制芯片,包括红外检测电路、线路寻迹电路、电机驱动电路、声控电路。
通过C编程完成智能小车的监控装置。
总体设计框图,如图1所示。
图1 智能小车的总体设计
2单元硬件电路设计
2.1光电对管寻迹模块
图2所示电路中,R5起限流电阻的作用,当有光反射回来时,光电对管中的三极管导通,R9的上端变为高电平,此时VT1饱和导通,三极管集电极输出低电平。
当没有光反射回来时,光电对管中的三极管不导通,VT1截至,其集电极输出高电平。
VT1在该电路中起到滤波整形的作用。
经试验和示波器验证,该电路工作性能一般,输出还有杂散干扰波的成分。
如果输出加施密特触发器就可以实现良好的输出波形。
但是这种电路用电量比较大,给此种传感器调理电路供电的电池压降较快。
究其原因,是因为光敏三极管和三极管VT1导通时的导通电流较大。
考虑用比较器的方案,图中可调电阻R1可以调节比较器的门限电压,经示波器观察,输出波形相当规则,可以直接够单片机查询使用。
而且经试验验证给此电路供电的电池的压降较小。
因此我们选择此电路作为我们的传感器检测与调理电路。
此光电对管电路简单,工作性能稳定。
图2 光电寻迹检测及放大电路图
2.2电机驱动电路的设计
我们采用电机驱动芯片L298N作为电机驱动,驱动电路的设计如图3所示:
图3L298N驱动电路
L298N的5、7、10、12四个引脚接到单片机上,通过对单片机的编程就可以实现两个直流电机的PWM调速以及正反转等功能。
2.3红外避障模块
通过NE555产生一个38KHZ的方波,触发三极管的导通状态,使红外发射管发射,采用一体红外接收头接受信号。
遇到障碍物时送给单片机一个高电平触发,进而控制电机的运转。
图3电源电路图
2.4单片机P89V51核心模块
图5 基于STC89C52的单片机系统
2.5声控电路
如图6所示为声控模块电路,采用声音的
图6声控电路图
2.6语音播报模块
为了实现语音对温度的播报功能,选用了集成语音芯片ZY1420A。
此方案可以方便对芯片进行寻址播放录音操作,实现播报实时温度值的目的。
该模块具有以下特征:
1)重现优质原声;
2)基本上不耗电信息存储;
3)信息可保存100年,可反复录放10万次;
4)选址处理多达160段信息;
5)具有自动节电模式;
6)维持状态,仅需0.5μA电流;
图7ZY1420A管脚功能图
如图7所示,首先通过麦克风向语音芯片ZY1420录入“前方有障碍物”、“后方有障碍物”。
当单片机发出控制指令过来时,自动地去寻找相对应音符的地址,并把这些音符通过扬声器播放出来。
下面是ZY1420地址分配方案:
前方有障碍物:
00
后方有障碍物:
2a
3系统软件设计
3.1主程序流程图
本设计的软件的主程序流程图如图8所示
图8系统软件流程图
3.2传感器数据处理及寻迹程序流程
我们用一个字节来代表车底的4个光电传感器。
用每一个位来代表当前传感器的检测状态。
我们把小车直线行进时分成三种状态,当中间四个传感器都检测到白线时,小车在跑道的正上方,这时控制两电机同速度全速运行。
当检测到有一个传感器或者同侧的两个传感器偏出白线时,小车处于微偏状态,这时将一个电机速度调慢,另一电机速度调快,完成调整。
当检测到有三个电机偏出时,小车处于较大的偏离状态,这时把一个电机的速度调至极低,另一电机全速运行,从而在较短时间内完成路线的调整。
用这种三级调速的寻迹算法同单纯的判断检测到对管的位置并作出判断的方法相比,程序思路清晰,程序执行结果较好。
该检测传感器子程序的流程图如图8所示:
图8传感器信息处理子程序流程图
4系统测试
4.1硬件测试
(1)单元模块的测试
(A)电源测试:
用数字万用表电压档测量电池输出的电压值是否正常。
(B)光电对管线路寻迹模块测试:
通电后,在光电对管下面放一张白纸是,用电压表测量输出端是不是为高电平;
在放一张贴有黑胶布的纸张在光电对管下面,看电压表的的电压是否为低电平;
来回移动带有黑胶布的纸张,看电压表的电压值是否高低电平的变化。
(C)红外避障电路的测试:
首先用示波器测量555输出端是否有38KHZ的方波输出;
用万用表在输出端测量电压值是否为高电平,用手遮挡下红外发射管,观察电压值是否为变为低电平。
(D)电机驱动模块电路测试:
给L298通电以后,分别对298每路输入端一个高低电平,看电机是否转动;
然后在反接试下,电机是否和开始的运转方向相反。
(E)声控模块测试:
通电后,用万用表测量LM358的7脚输出端的电压是否为高电平,然后拍掌,看看电压值时候有高低电平的变化;
没有声响的时候LM358的7脚始终为高电平。
(F)语音播放模快的测试:
通过按键给语音芯片选地址,测试不同的地址是否有不同的发音,以检验语音是否正确录入及能否正常播放。
根据串行模式的设定,能够正常播放的设定语音,说明语音芯片的录用存贮工作成功。
接入系统,编程输出相应的行地址,ZY1420能够正常播放各个语音,说明语音播放模快的硬件设计可行。
4.2硬件与软件的联机测试
根据前面的测试,说明系统设计的软、硬件设计基本取得成功。
将把程序经编译、下载到P89V51RB2芯片中,构建电路测试,观察小车的运行状态。
整体测试结果如表4所示。
5测试数据及实验结果
(1)测试数据
按照前述的测试方法,取得到测试结果如表1所示。
如表1路程与速度的关系(L=1.8m)
测试次数
前进时间
后退时间
平均速度
第一次
7.2s
9.1s
0.20m/s
第二次
6.9s
9.3s
0.22m/s
第三次
7.5s
8.9s
0.21m/s
第四次
7.0s
0.23m/s
第五次
7.7s
8.5s
(2)测试结果分析
根据上述测试结果,此系统的设计基本取得成功,速度达到设计的要求,功耗方面,对于红外避障碍和线路寻迹这两个电路模块,我们采用定时开关中断的方法控制其工作,这样避免其在不需要检测的时候消耗电量。
功能上达到了赛题的要求。
3心得与体会
通过本次设计,深深感到理论与实践之间的差距。
在学习单片课程时,很多知识点在理论完全理解了,但到具体的电路设计与实现中,会出现很多一时无法理解的现象,要通过不断的通过强化自身的实践动手能力的培养,才能用理论来指导实践,通过实践来进一步深入理解理论。
参考文献
[1]全国大学生电子设计竞赛组委会.第五届全国大学生电子设计竞获奖作品选编[M].北京:
北京理工大学出版社,2003年第1版.
[2]王港元.电工电子实践指导[M].南昌:
江西科学技术出版社,2005.03第一版
[3]谢自美.电子线路设计·
实验·
测试[M].武汉:
华中科技大学出版社,2000.5第二版
[4]胡汉才.单片机原理及系统设计[M].北京:
清华大学出版社,2001.01第一版.