基于AT89S51单片机的智能超声波避障Word文档下载推荐.docx
《基于AT89S51单片机的智能超声波避障Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于AT89S51单片机的智能超声波避障Word文档下载推荐.docx(20页珍藏版)》请在冰豆网上搜索。
同时小车可以作为玩具的发展对象,为中国玩具市场技术含量的缺乏进行一定的弥补,实现经济收益,形成商业价值。
超声波作为智能车避障的一种重要手段,以其避障实现方便,计算简单,易于做到实时控制,测量精度也能达到实用的要求,在未来汽车智能化进程中必将得到广泛应用。
我国作为一个世界大国,在高科技领域也必须占据一席之地,未来汽车的智能化是汽车产业发展必然的,在这种情况下研究超声波在智能车避障上的应用具有深远意义,这将对我国未来智能汽车的研究在世界高科技领域占据领先地位具有重要作用。
本智能小车系统最诱人的前景就是可用于未来的智能汽车上了,当驾驶员因疏忽或打瞌睡时这样的智能汽车的设计就能体现出它的作用。
如果汽车偏离车道或距障碍物小于安全距离时,汽车就会发出警报,提醒驾驶员注意,如果驾驶员没有及时作出反应,汽车就会自动减速或停靠于路边。
这样的小车还可以用于月球探测等的无人探月车,帮助我们传达月球上更多的信息,让我们更加的了解月球,为将来登月做好充分准备。
这样的小车在科学考察探测车上也有广阔的应用前景,在科学考察中,有很多危险且人们无法涉足的地方,这时,智能科学考察车就能够派上用场,在它上面装上摄像机,代替人们进行许多无法进行的工作。
1.2项目主要研究内容:
本设计题目为智能避障小车设计,主要研究小车的避障功能,小车遇到障碍物时,当距离障碍物大于40cm,PWM信号自增,驱动电机加速,小车加速前进,当小于30cm时,PWM信号自减,驱动电机减速,小车减速前进,并且小车采取相应的避障措施。
这里探测装置必不可少,因为超声波在距离检测方面的较准确定位。
所以采用超声波传感器作为探测装置,由于超声波遇到障碍物时发生像光一样的反射和散射,在经过多次发射之后再回到超声波检测端口会产生较严重的路程差,从而影响对距离的检测进而影响对障碍物的较准确定位。
通过软件内部校准优化消除外部物理条件造成的误差从而达到对障碍物的较准确定位。
1.3直流电机的发展:
直流电动机在冶金、矿山、化工、交通、机械、纺织、航空等领域中已经得到广泛的应用。
而以往直流电动机的控制只是简单的控制,很难进行调速,不能实现智能化。
如今,直流电动机的调速控制已经离不开单片机的支持,单片机应用技术的飞速发展促进了自动控制技术的发展,使人类社会步入了自动化时代,单片机应用技术与其他学科领域交叉融合,促进了学科发展和专业更新,引发了新兴交叉学科与技术的不断涌现。
现代科学技术的飞速发展,改变了世界,也改变了人类的生活。
由于单片机的体积小、重量轻、功能强、抗干扰能力强、控制灵活、应用方便、价格低廉等特点,计算机性能的不断提高,单片机的应用也更加广泛特别是在各种领域的控制、自动化等方面。
在实际应用中,电动机作为把电能转换为机械能的主要设备,一是要具有较高的能量转换效率;
二是应能根据生产工艺的要求调整转速。
电动机的调速性能如何对提高产品质量、提高劳动生产率和节省电能有着直接的决定性影响。
因此,调速技术一直是研究的热点。
直流电机由于具有速度控制容易,启动制动性能良好,且能在宽范围内平滑调速等特点而在电力、冶金、机械制造等工业部门中得到广泛应用。
直流电动机转速的控制方法可分为两类:
励磁控制阀与电枢电压控制法。
励磁控制法控制磁通,其控制功率虽然小但低俗时受到磁场饱和的限制,高速时受到换向火花和转向器结构强度的限制,而且由于励磁线圈电感较大动态响应较差。
所以常用的控制方法是改变电枢端电压调速的电枢电压控制法。
传统的改变端电压的方法是通过调节电阻来实现的,但这种调压方法效率低。
随着电力电子技术的发展,创造了许多新的电枢电压控制方法。
其中脉宽调制(PulseWidthModulation,PWM)是常用的一种调速方法。
其基本原理是用改变电机电枢电压的接通和断开的时间比(即占空比)来控制马达的速度,在脉宽调速系统中当电机通电时,其速度增加,电机断电时其速度降低。
只要按照一定的规律改变通断电的时间,就可使电机的速度保持在一稳定值上。
1.4单片机以及微处理器控制系统的发展:
单片微型计算机的诞生是计算机发展史上的一个新的里程碑。
近年来,随着技术的发展和进步,以及市场对产品功能和性能的要求不断提高,直流电动机的应用更加广泛,尤其是在智能机器人中的应用。
直流电动机的起动和调速性能、过载能力强等特点显得十分重要,为了能够适应发展的要求,单闭环直流电动机的调速控制系统得到了很大的发展。
而作为单片嵌入式系统的核心—单片机,正朝着多功能、多选择、高速度、低功耗、低价格、大存储容量和强I/O功能等方向发展。
随着计算机档次的不断提高,功能的不断完善,单片机已越来越广泛地应用在各种领域的控制、自动化、智能化等方面,特别是在直流电动机的调速控制系统中。
这是因为单片机具有很多优点:
体积小,功能全,抗干扰能力强,可靠性高,结构合理,指令丰富,控制功能强,造价低等。
所以选用单片机作为控制系统的核心以提高整个系统的可靠性和可行性。
早期直流传动的控制系统采用模拟分离器件构成,由于模拟器件有其固有的缺点,如存在温漂、零漂电压,构成系统的器件较多,使得模拟直流传动系统的控制精度及可靠性较低。
随着计算机控制技术的发展,微处理器已经广泛使用于直流传动系统,实现了全数字化控制。
由于微处理器以数字信号工作,控制手段灵活方便,抗干扰能力强。
所以,全数字直流调速控制精度、可靠性和稳定性比模拟直流调速系统大大提高。
所以,直流传动控制采用微处理器实现全数字化,使直流调速系统进入一个崭新的阶段。
微处理器诞生于上个世纪七十年代,随着集成电路大规模及超大规模集成电路制造工艺的迅速发展,微处理器的性价比越来越高。
此外,由于电力电子技术的发展,制作工艺的提升,使得大功率电子器件的性能迅速提高。
为微处理器普遍用于控制电机提供了可能,利用微处理器控制电机完成各种新颖的、高性能的控制策略,使电机的各种潜在能力得到充分的发挥,使电机的性能更符合工业生产使用要求,还促进了电机生产商研发出各种如步进电机、无刷直流电机、开关磁阻电动机等便于控制且实用的新型电机,使电机的发展出现了新的变化。
对于简单的微处理器控制电机,只需利用用微处理器控制继电器、电子开关元器件,使电路开通或关断就可实现对电机的控制。
现在带微处理器的可编程控制器,已经在各种的机床设备和各种的生产流水线中普遍得到应用,通过对可编程控制器进行编程就可以实现对电机的规律化控制。
对于复杂的微处理器控制电机,则要利用微处理器控制电机的电压、电流、转矩、转速、转角等,使电机按给定的指令准确工作。
通过微处理器控制,可使电机的性能有很大的提高。
目前相比直流电机和交流电机他们各有所长,如直流电机调速性能好,但带有机械换向器,有机械磨损及换向火花等问题;
交流电机,不论是异步电机还是同步电机,结构都比直流电机简单,工作也比直流电机可靠,但在频率恒定的电网上运行时,它们的速度不能方便而经济地调节。
高性能的微处理器如DSP(DIGITALSIGNALPROCESSOR即数字信号处理器)的出现,为采用新的控制理论和控制策略提供了良好的物质基础,使电机传动的自动化程度大为提高。
在先进的数控机床等数控位置伺服系统,已经采用了如DSP等的高速微处理器,其执行速度可达数百万兆以上每秒,且具有适合的矩阵运算。
1.5设计思路:
直流电机PWM控制系统的主要功能包括:
实现对直流电机的加速、减速,并且可以调整电机的转速,能够很方便的实现电机的智能控制。
主体电路:
即直流电机PWM控制模块。
这部分电路主要由AT89S52单片机的I/O端口、定时计数器、外部中断扩展等控制直流电机的加速、减速以及电机的正转和反转,并且可以调整电机的转速,能够很方便的实现电机的智能控制。
其间是通过AT89S52单片机产生脉宽可调的脉冲信号并输入到L298驱动芯片来控制直流电机工作的。
该直流电机PWM控制系统由以下电路模块组成:
设计控制部分:
主要由AT89S52单片机的外部中断扩展电路组成。
直流电机PWM控制实现部分主要由一些二极管、电机和L298直流电机驱动模块组成。
设计显示部分:
LED数码显示部分,实现对超声波测的距离的实时显示。
第二章总体设计方案
2.1、
本小车使用AT89S52单片机作为主控芯片,它通过超声波测距来获取小车距离障碍物的距离,并且用LED显示出来,当小车与障碍物的距离大于40cm时,小车会沿直线前进,当小车与障碍物的距离小于30cm时,小车转弯以避开障碍物,并且此时蜂鸣器报警。
在避开障碍物后,小车会沿直线前进。
简要框图如图2-1。
图2-1
2.2、总体电路原理图
第三章硬件设计
一个单片机应用系统的硬件电路设计包含有两部分内容:
一是系统扩展,即单片机内部的功能单元,如ROM﹑RAM﹑I/O口﹑定时/记数器﹑中断系统等能量不能满足应用系统的要求时,必须在片外进行扩展,选择适当的芯片,设计相应的电路。
二是系统配置,既按照系统功能要求配置外围设备,如键盘显示器﹑打印机﹑A/D﹑D/A转换器等,要设计合适的接口电路。
3.1、80C51单片机硬件结构
80C51单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。
如果按功能划分,它由如下功能部件组成,即微处理器、数据存储器、程序存储器、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器。
它们都是通过片内单一总线连接而成,其基本结构依旧是CPU加上外围芯片的传统结构模式。
但对各种功能部件的控制是采用特殊功能寄存器的集中控制方式。
1微处理器
该单片机中有一个8位的微处理器,与通用的微处理器基本相同,同样包括了运算器和控制器两大部分,只是增加了面向控制的处理功能,不仅可处理数据,还可以进行位变量的处理。
2数据存储器
片内为128个字节,片外最多可外扩至64k字节,用来存储程序在运行期间的工作变量、运算的中间结果、数据暂存和缓冲、标志位等,所以称为数据存储器。
3程序存储器
由于受集成度限制,片内只读存储器一般容量较小,如果片内的只读存储器的容量不够,则需用扩展片外的只读存储器,片外最多可外扩至64k字节。
4中断系统
具有5个中断源,2级中断优先权。
5定时器/计数器
片内有2个16位的定时器/计数器,具有四种工作方式。
6串行口
1个全双工的串行口,具有四种工作方式。
可用来进行串行通讯,扩展并行I/O口,甚至与多个单片机相连构成多机系统,从而使单片机的功能更强且应用更广。
7P1口、P2口、P3口、P4口
为4个并行8位I/O口。
8特殊功能寄存器
共有21个,用于对片内的个功能的部件进行管理、控制、监视。
实际上是一些控制寄存器和状态寄存器,是一个具有特殊功能的RAM区。
由上可见,80C51单片机的硬件结构具有功能部件种类全,功能强等特点。
3.2、最小应用系统设计
80C51是片内有ROM/EPROM的单片机,因此,这种芯片构成的最小系统简单﹑可靠。
用80C51单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,如图3.180C51单片机最小系统所示。
由于集成度的限制,最小应用系统只能用作一些小型的控制单元。
其应用特点:
(1)有可供用户使用的大量I/O口线。
(2)内部存储器容量有限。
(3)应用系统开发具有特殊性。
图3.180C51单片机最小系统
3.3、障碍物测距系统:
方案一:
超声波视觉
优点:
价格合理,夜间不受影响。
易于多目标测量和分类,分辨率好。
缺点:
测量范围小,对天气变化敏感。
不能直接测量距离,算法复杂,处理速度慢。
方案二:
激光雷达MMW雷达
夜间不受影响,不受灯光、天气影响。
对水、灰尘、灯光敏感、价格贵。
探测障碍的最简单的方法是使用超声波传感器,它是利用向目标发射超声波脉冲,计算其往返时间来判定距离的。
算法简单,价格合理。
所以我们选择超声波传感器。
超声波测距原理:
首先利用单片机输出一个40kHz的触发信号,把触发信号通过TRIG管脚输入到超声波测距模块,再由超声波测距模块的发射器向某一方向发射超声波,在发射时刻的同时单片机通过软件开始计时,超声波在空气中传播,途中碰到障碍物返回,超声波测距模块的接收器收到反射波后通过产生一个回应信号并通过ECHO脚反馈给单片机,此时单片机就立即停止计时。
时序图如图1所示。
由于超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离,即:
S=VT/2,通过单片机来算出距离。
图3.1:
超声波测距原理
(2)超声波障碍检测
超声波是一种在弹性介质中的机械振荡,其频率超过20KHz,分横向振荡和纵向振荡两种,超声波可以在气体、液体及固体中传播,其传播速度不同。
它有折射和反射现象,且在传播过程中有衰减。
利用超声波的特性,可做成各种超声波传感器,结合不同的电路,可以制成超声波仪器及装置,在通讯、医疗及家电中获得广泛应用。
作为超声波传感器的材料,主要为压电晶体。
压电晶体组成的超声波传感器是一种可逆传感器,它可以将电能转变成机械振荡而产生超声波,同时它接收到超声波时,也能转变成电能,故它分为发送器和接收器。
超声波传感器有透射型、反射型两种类型,常用于防盗报警器、接近开关、测距及材料探伤、测厚等。
本设计采用T/R-40-12小型超声波传感器作为探测前方障碍物体的检测元件,其中心频率为40Hz,由80C51发出的40KHz脉冲信号驱动超声波传感器发送器发出40KHz的脉冲超声波,如电动车前方遇到有障碍物时,此超声波信号被障碍物反射回来,由接收器接收,经LM318两级放大,再经带有锁相环的音频解码芯片LM567解码,当LM567的输入信号大于25mV时,输出端由高电平变为低电平,送80C51单片机处理。
超声波检测如图3.2超声波检测电路所示。
图3.2超声波检测电路
3.4、显示模块:
用LCD显示。
优点:
辐射小、显示内容多、低耗能、散热小、显示的画面稳定不闪烁。
不适合做图,图像还原不好、有可视范围限制。
用LED显示。
亮度高、成本低,缺点:
不能显示汉字,显示内容较少。
对于本课题的要求,我们选择LED就可以实现功能了,程序简单,成
本低。
数码管显示原理:
数码管有一位、双位、四位等几种。
而不管将几位数码管连在一起,数码管和显示原理都是一样的,都是靠点亮内部的发光二极管来发光。
数码管的内部电路结构如下页图所示:
从(a)可看出,一位数码管的引脚数是10个,显示一个8字需要7个小段,另外还有一个小数点,所以其内部一共有8个小的发光二极管,最后还有一个公共端,生产商为了封装统一,单位数码管都封装10个引脚。
而它们的公共端又分为共阳极和共阴极。
上页图的(b)和(c)分别为共阳极和共阴极数码管的原理图。
本小车的数码管采用的是3位共阴极数码管。
所谓“共阴”就是指其内部的8个发光二极管的阴极全部接在一起,而它们的;
阳极是独立的,通常在设计电路时一般把阴极接地,当我们给数码管的任一个阴极加高电平时,对应的那个发光二极管就点亮了。
当使用多位一体数码管时,它们内部的公共端是独立的,而负责显示什么数字的段线全部都是连在一起的,独立的公共端可以控制多位数码管中哪一位点亮。
通常我们把公共端叫做“位选线”,连在一起的段线叫做“段选线”。
图3.2:
数码管内部原理
3.3、数码管驱动模块;
3.4、驱动模块:
采用ULN2003驱动,它是由7组达林顿晶体管阵列和相应的电阻网络以及钳位二极管网络构成,具有同时驱动7组负载的能力,一般用于高速大功率驱动电路。
所以我们不采用这个方案。
采用由双极性管组成的H桥电路(L298N)。
用单片机控制晶体管使之工作在占空比可调的开关状态,精确调整电机转速。
这种电路由于工作在管子的饱和截止模式下,则效率非常高;
H桥电路保证了可以简单地实现转速和方向的控制,电子开关的速度很快,稳定性也很高。
而且它有更强的驱动能力。
L298N有过电流保护功能,当出现电机卡死时,可以保护电路和电机等。
L298N有过电流保护功能,当出现电机卡死时,可以保护电路和电机
等。
所以我们选择L298N。
图3.3:
L298内部原理图
4个电力晶体管的基极驱动电压分为两组。
VT1和VT4同时导通和关断,其驱动电路中Ub1=Ub4;
VT2和VT3同时动作,其驱动电压Ub2=Ub3=-Ub1。
双极式PWM变换器的优点如下:
(1)电流一定连续;
(2)可使电动机在四象限中运行;
(3)电机停止时有微振电流,能消除静摩擦死区;
(4)低速时,每个晶体管的驱动脉冲仍较宽,有利于保证晶体管可靠导通;
(5)低速平稳性好,调速范围可达20000左右。
3.4.1、脉宽调制原理:
脉宽调制器本身是一个由运算放大器和几个输入信号组成的电压比较器。
运算放大器工作在开换状态,稍微有一点输入信号就可使其输出电压达到饱和值,当输入电压极性改变时,输出电压就在正、负饱和值之间变化,这样就完成了把连续电压变成脉冲电压的转换作用。
加在运算放大器反相输入端上的有三个输入信号。
一个输入信号是锯齿波调制信号,另一个是控制电压,其极性大小可随时改变,与锯齿波调制信号相减,从而在运算放大器的输出端得到周期不变、脉宽可变的调制输出电压。
只要改变控制电压的极性,也就改变了PWM变换器输出平均电压的极性,因而改变了电动机的转向.改变控制电压的大小,则调节了输出脉冲电压的宽度,从而调节电动机的转速.只要锯齿波的线性度足够好,输出脉冲的宽度是和控制电压的大小成正比的.
3.4.2、逻辑延时环节:
在可逆PWM变换器中,跨接在电源两端的上下两个晶体管经常交替工作.由晶体管的关断过程中有一段存储时间和电流下降时间,总称关断时间,在这段时间内晶体管并未完全关断.如果在此期间另一个晶体管已经导通,则将造成上下两管之通,从而使电源正负极短路.为避免发生这种情况,设置了由RC电路构成的延时环节.
3.4.3、电源的设计;
本设计的电源为车载电源。
为保证电源工作可靠,单片机系统与动力伺服系统的电源采用了大功率、大容量的蓄电池;
而传感器的工作电源则采用了小巧轻便的干电池。
3.5、速度自控模块
此模块的功能是通过软件pwm自行输入一个速度后,小车就会按照输入的速度进行直线前进,直到遇到障碍物。
通过软件pwm信号的来输入设定速度,小车就会按照此速度前进,在超声波测距测量障碍物,软件根据障碍物的不同距离来控制pwm信号,在障碍物大于40cmpwm信号自减,小于30cmpwm信号自增,单片机pwm信号输出经光电耦合输出取反,之后控制驱动模块,驱动直流电机。
Pwm信号在软件中设置限制,以防止在pwm信号在自增或自减的情况下出现负值或大于一百,软件设置如下;
if(ZK1>
=100)ZK1=12;
if(ZK1<
=0)ZK1=12;
if(ZK2>
=100)ZK2=12;
if(ZK2<
=0)ZK2=12;
在pwm信号超出设置的数值,自动设置数值;
第四章软件设计
系统软件设计说明
在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。
因此,软件设计在微机控制系统设计中占重要地位。
对于本系统,软件更为重要。
在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。
数据处理包括:
数据的采集、数字滤波、标度变换等。
过程控制程序主要是使单片机按一定的方法进行计算,然后再输出,以便控制生产。
为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。
所谓“模块”,实质上就是所完成一定功能,相对独立的程序段,这种程序设计方法叫模块程序设计法。
模块程序设计法的主要优点是:
1、单个模块比起一个完整的程序易编写及调试;
2、模块可以共存,一个模块可以被多个任务在不同条件下调用;
3、模块程序允许设计者分割任务和利用已有程序,为设计者提供方便。
本系统软件采用模块化结构,由主程序﹑定时子程序、避障子程序﹑中断子程序﹑显示子程序﹑调速子程序﹑算法子程序构成。