毕业设计(论文)-基于AT89C51单片机的智能小车设计.doc_第1页
毕业设计(论文)-基于AT89C51单片机的智能小车设计.doc_第2页
毕业设计(论文)-基于AT89C51单片机的智能小车设计.doc_第3页
毕业设计(论文)-基于AT89C51单片机的智能小车设计.doc_第4页
毕业设计(论文)-基于AT89C51单片机的智能小车设计.doc_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

吉林工程技术师范学院毕业论文第一章 绪 论1.1课题背景 目前 ,在企业生产技术不断提高、对自动化技术要求不断加深的环境下,智能车辆以及在智能车辆基础上开发出来的产品已成为自动化物流运输、柔性生产组织等系统的关键设备。世界上许多国家都在积极进行智能车辆的研究和开发设计。移动机器人是机器人学中的一个重要分支,出现于20世纪06年代。当时斯坦福研究院(SRI)的Nils Nilssen和charles Rosen等人,在1966年至1972年中研制出了取名shakey的自主式移动机器人,目的是将人工智能技术应用在复杂环境下,完成机器人系统的自主推理、规划和控制。从此,移动机器人从无到有,数量不断增多,智能车辆作为移动机器人的一个重要分支也得到越来越多的关注。智能小车,是一个集环境感知、规划决策,自动行驶等功能于一体的综合系统,它集中地运用了计算机、传感、信息、通信、导航及白动控制等技术,是典型的高新技术综合体。智能车辆也叫无人车辆,是一个集环境感知、规划决策和多等级辅助驾驶等功能于一体的综合系统。它具有道路障碍自动识别、自动报警、自动制动、自动保持安全距离、车速和巡航控制等功能。智能车辆的主要特点是在复杂的道路情况下,能自动地操纵和驾驶车辆绕开障碍物并沿着预定的道路(轨迹)行进。智能车辆在原有车辆系统的基础上增加了一些智能化技术设备:(1)计算机处理系统,主要完成对来自摄像机所获取的图像的预处理、增强、分析、识别等工作;(2)摄像机,用来获得道路图像信息;(3)传感器设备,车速传感器用来获得当前车速,障碍物传感器用来获得前方、侧方、后方障碍物等信息。智能车辆技术按功能可分为三层,即智能感知/预警系统、车辆驾驶系统和全自动操作系统团。上一层技术是下一层技术的基础。三个层次具体如下:(1)智能感知系统,利用各种传感器来获得车辆自身、车辆行驶的周围环境及驾驶员本身的状态信息,必要时发出预警信息。主要包括碰撞预警系统和驾驶员状态监控系统。碰撞预警系统可以给出前方碰撞警告、盲点警告、车道偏离警告、换道/并道警告、十字路口警告、行人检测与警告、后方碰撞警告等.驾驶员状态监控系统包括驾驶员打吨警告系统、驾驶员位置占有状态监测系统等。(2)辅助驾驶系统,利用智能感知系统的信息进行决策规划,给驾驶员提出驾驶建议或部分地代替驾驶员进行车辆控制操作。主要包括:巡航控制、车辆跟踪系统、准确泊车系统及精确机动系统。(3)车辆自动驾驶系统,这是智能车辆技术的最高层次,它由车载计算机全部自动地实现车辆操作功能。目前,主要发展用于拥挤交通时低速自动驾驶系统、近距离车辆排队驾驶系统等。这种智能小车的主要应用领域包括以下几个方面:(1)军事侦察与环境探测现代战争对军事侦察提出了更高的要求,世界各国普遍重视对军事侦察的建设,采取各种有效措施预防敌方的突然袭击,并广泛应用先进科学技术,不断研制多用途的侦察器材和探测设备,在车上装备摄像机、安全激光测距仪、夜视装置和卫星全球定位仪等设备,通过光缆操纵,完成侦察和监视敌情、情报收集、目标搜索和自主巡逻等任务,进一步扩大侦察的范围,提高侦察的时效性和准确性。(2)探测危险与排除险情在战场上或工程中,常常会遇到各种各样的意外。这时,智能化探测小车就会发挥很好的作用。战场上,可以使用智能车辆扫除路边炸弹、寻找和销毁地雷。民用方面,可以探测化学泄漏物质,可以进行地铁灭火,以及在强烈地震发生后到废墟中寻找被埋人员等。(3)安全检测受损评估在工程建设领域,可对高速公路自动巡迹,进行道路质量检测和破坏分析检测;对水库堤坝、海岸护岸堤、江河大坝进行质量和安全性检测。在制造领域,可用于工业管道中机械损伤,裂纹等缺陷的探寻,对输油和输气管线的泄漏和破损点的查找和定位等。(4)智能家居在家庭中,可以用智能小车进行家具、远程控制家中的家用电器,控制室温等等。对这种小车的研究,将为未来环境探测术上的有力支持。1.2课题研究的目的和意义 目前,国内外的许多大学及研究机构都在积极投入人力、财力研制开发针对特殊条件下的安全监测系统。其中包括研究使用远程、无人的方法来进行实现,如机器人、远程监控等。无线传输的发展使得测量变得相对简单而且使得处理数据的速度变得很快甚至可以达到实时处理”。该智能小车可以作为机器人的典型代表。它可以分为三大组成部分:传感器检测部分、驱动部分、CPU。机器人要实现自动避障功能,还可以扩展循迹等功能,感知导引线和障碍物。可以实现小车自动识别路线,选择正确的行进路线,并检测到障碍物自动躲避。通过构建智能小车系统,培养设计并实现自动控制系统的能力。在实践过程中,熟悉以单片机为核心控制芯片,设计小车的检测、驱动和显示等外围电路,采用智能控制算法实现小车的智能循迹。灵活应用机电等相关学科的理论知识,联系实际电路设计的具体实现方法,达到理论与实践的统一。在此过程中,加深对控制理论的理解和认识。1.3 本设计的内容及意义1.3.1 设计的内容(1) 路面检测模块(2) 电源模块为5V;(3) 直流电机的驱动模块电路,及相应的驱动程序;(4) 控速模块(5) 循线功能电路及程序;(6) 复位电路模块1.3.2 本设计的意义随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。全国电子大赛和省内电子大赛几乎每次都有智能小车这方面的题目,全国各高校也都很重视该题目的研究。可见其研究意义很大。本设计就是在这样的背景下提出的,本题目是结合科研项目而确定的设计类课题。本设计就采用了比较先进的C51为控制核心, C51采用CHOMS工艺,功耗很低。该设计具有实际意义,可以应用于考古、机器人、医疗器械等许多方面。尤其是在足球机器人研究方面具有很好的发展前景;在考古方面也应用到了超声波传感器进行检测。所以本设计与实际相结合,现实意义很强。智能小车国内外研究现状: 世界各国在智能微型车领域进行了很多研究,己经应用于各个领域,在探测和军事领域使用特别多。近年来,我国也开展了很多研究工作,以满足不同用途的需要。 世界各国开发、研制星球探测车系统己经有了多年的历史。美国和前苏联是从20世纪60年代末期开始进行月球表面探测任务的。美国曾在1966-1968年间,向月球成功发射了两次无人巡游探测器。1997年,由美国JPL(全称JetPropulsion Laboratory,美国太空总署喷气推进实验室)研制的Sojourner号探测车登上了火星。它验证了小型火星车的性能,并完成了一系列技术试验。2004年1月,美国的“勇气号”和“机遇号”火星探测车再度登陆火星。前苏联在1959-1976年间,总共成功发射了两个月球探测车。单片机的应用领域越来越广泛,无论是在生活,生产上,单片机无处不在。ATMEL公司的STC89C52单片机可以广泛应用于计算机外部设备、工业实时控制、仪器仪表、通讯设备、家用电器等各个领域。STC89C52可以说是单片机领域的主流产品 ,其应用如此广泛,所以有必要去学习和应用该单片机,以满足实际产品开发的需要,也是适应社会智能化、自动化的趋势。通过构建智能小车系统,培养设计并实现自动控制系统的能力。在实践过程中,熟悉以单片机为核心控制芯片,设计小车的检测、驱动和显示等外围电路,采用智能控制算法实现小车的智能循迹。灵活应用机电等相关学科的理论知识,联系实际电路设计的具体实现方法,达到理论与实践的统一。在此过程中,加深对控制理论的理解和认识。39第二章 方案设计与论证根据要求,确定如下方案:在现有智能车的基础上,加装检测黑线器,实现对电动车的速度、位置、运行状况的实时测量,并将测量数据传送至单片机进行处理,然后由单片机根据所检测的各种数据实现对电动车的智能控制。这种方案能实现对电动车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。2.1 主控系统根据设计要求,我认为此设计属于多输入量的复杂程序控制问题。据此,拟定了以下两种方案并进行了综合的比较论证,具体如下:方案一:选用一片CPLD(如EPM7128LC84-15)作为系统的核心部件,实现控制与处理的功能。CPLD具有速度快、编程容易、资源丰富、开发周期短等优点,可利用VHDL语言进行编写开发。但CPLD在控制上较单片机有较大的劣势。同时,CPLD的处理速度非常快,而小车的行进速度不可能太高,那么对系统处理信息的要求也就不会太高,在这一点上,MCU就已经可以胜任了。若采用该方案,必将在控制上遇到许许多多不必要增加的难题。为此,我们不采用该种方案,进而提出了第二种设想。方案二:采用单片机作为整个系统的核心,用其控制行进中的小车,以实现其既定的性能指标。充分分析我们的系统,其关键在于实现小车的自动控制,而在这一点上,单片机就显现出来它的优势控制简单、方便、快捷。这样一来,单片机就可以充分发挥其资源丰富、有较为强大的控制功能及可位寻址操作功能、价格低廉等优点。因此,这种方案是一种较为理想的方案。针对本设计特点多开关量输入的复杂程序控制系统,需要擅长处理多开关量的标准单片机,而不能用精简I/O口和程序存储器的小体积单片机,D/A、A/D功能也不必选用。根据这些分析,我选定了P89C51RA单片机作为本设计的主控装置,51单片机具有功能强大的位操作指令,I/O口均可按位寻址,程序空间多达8K,对于本设计也绰绰有余,更可贵的是51单片机价格非常低廉。在综合考虑了传感器、两部电机的驱动等诸多因素后,我们决定采用一片单片机,充分利用STC89C52单片机的资源。2.2 电机驱动模块方案一:采用继电器对电动机的开或关进行控制,通过开关的切换对小车的速度进行调整.此方案的优点是电路较为简单,缺点是继电器的响应时间慢,易损坏,寿命较短,可靠性不高。方案二:采用电阻网络或数字电位器调节电动机的分压,从而达到分压的目的。但电阻网络只能实现有级调速,而数字电阻的元器件价格比较昂贵。更主要的问题在于一般的电动机电阻很小,但电流很大,分压不仅回降低效率,而且实现很困难。方案三:采用功率三极管作为功率放大器的输出控制直流电机。线性型驱动的电路结构和原理简单,加速能力强,采用由达林顿管组成的 H型桥式电路(如图2-1)。用单片机控制达林顿管使之工作在占空比可调的开关状态下,精确调整电动机转速。这种电路由于工作在管子的饱和截止模式下,效率非常高,H型桥式电路保证了简单的实现转速和方向的控制,电子管的开关速度很快,稳定性也极强,是一种广泛采用的 PWM调速技术。现市面上有很多此种芯片,我选用了L298N(如图2-2)。这种调速方式有调速特性优良、调整平滑、调速范围广、过载能力大,能承受频繁的负载冲击,还可以实现频繁的无级快速启动、制动和反转等优点。因此决定采用使用功率三极管作为功率放大器的输出控制直流电机。图2-1 H桥式电路图2-2 L298N2.3 循迹模块方案一:采用简易光电传感器结合外围电路探测,但实际效果并不理想,对行驶过程中的稳定性要求很高,且误测几率较大、易受光线环境和路面介质影响。在使用过程极易出现问题,而且容易因为 该部件造成整个系统的不稳定。故最终未采用该方案。方案二:采用两只红外对管,分别置于小车车身前轨道的两侧,根据两只光电开关接受到白线与黑线的情况来控制小车转向来调整车向,测试表明,只要合理安装好两只光电开关的位置就可以很好的实现循迹的功能。方案三:采用三只红外对管,一只置于轨道中间,两只置于轨道外侧,当小车脱离轨道时,即当置于中间的一只光电开关脱离轨道时,等待外面任一只检测到黑线后,做出相应的转向调整,直到中间的光电开关重新检测到黑线(即回到轨道)再恢复正向行驶。现场实测表明,小车在寻迹过程中有一定的左右摇摆不定,虽然可以正确的循迹但其成本与稳定性都次与第二种方案。通过比较,采用二只红外对管置于小车左右侧。有利于小车自动循迹黑线的准确率提高,从而还不浪费资源现,因此我选取第二种方案来实现循迹。2.4 避障模块方案一:采用一只红外对管置于小车中央。其安装简易,也可以检测到障碍物的存在,但难以确定小车在水平方向上是否会与障碍物相撞,也不易让小车做出精确的转向反应。方案二:采用二只红外对管分别置于小车的前端两侧,方向与小车前进方向平行,对小车与障碍物相对距离和方位能作出较为准确的判别和及时反应。但此方案过于依赖硬件、成本较高、缺乏创造性,而且置于小车左方的红外对管用到的几率很小,所以最终未采用。方案三:采用一只红外对管置于小车右侧。通过测试此种方案就能很好的实现小车避开障碍物,且充分的利用资源而不浪费。通过比较采用一直红外对管既有利于实现小车壁障又有利于成本降低,不浪费资源同时还能实现小车壁障的功能,因此我采用方案三。本设计小车的机械系统稳定、灵活、简单,而三轮运动系统具备以上特点。驱动部分:由于玩具汽车的直流电机功率较小,而小车上装有电池、电机、电子器件等,使得电机负担较重。为使小车能够顺利启动,且运动平稳,在直流电机和轮车轴之间加装了三级减速齿轮。电池的安装:将电池放置在车体后位置,电路功能板子放置在小车的上边的前方,降低车体重心,提高稳定性,同时可增加驱动轮的抓地力,减小轮子空转所引起的误差。简单,而三轮运动系统具备以上特点。第三章 硬件设计3.1总体设计智能小车采用前轮驱动,前轮左右两边各用一个电机驱动,调制前面两个轮子的转速起停从而达到控制转向的目的,后轮是万象轮,起支撑的作用。将循迹光电对管分别装在车体下的左右。当车身下左边的传感器检测到黑线时,主控芯片控制左轮电机停止,车向左修正,当车身下右边传感器检测到黑线时,主控芯片控制右轮电机停止,车向右修正。避障的原理和循线一样,在车身右边装一个光电对管,当其检测到障碍物时,主控芯片给出信号报警并控制车子倒退,转向,从而避开障碍物。主板设计框图如图3-1,所需原件清单如表3.1。Stc89c52循迹红外对管时钟电路复位电路报警电路电机驱动避障红外对管图3-1 主板设计框图表3-1 元件清单元件数量元件数量元件数量驱动l298n1只电阻若干集成电路芯片若干单片机1 块二极管若干电容若干红外对管3只蜂鸣器1只电位器若干12M晶振1只杜邦线若干小车1个排针若干3.2 89C52单片机硬件结构89C52单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。如果按功能划分,它由如下功能部件组成,即微处理器、数据存储器、程序存储器、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器。它们都是通过片内单一总线连接而成,其基本结构依旧是CPU加上外围芯片的传统结构模式。但对各种功能部件的控制是采用特殊功能寄存器的集中控制方式。1 、微处理器该单片机中有一个8位的微处理器,与通用的微处理器基本相同,同样包括了运算器和控制器两大部分,只是增加了面向控制的处理功能,不仅可处理数据,还可以进行位变量的处理。2 、数据存储器片内为128个字节,片外最多可外扩至64k字节,用来存储程序在运行期间的工作变量、运算的中间结果、数据暂存和缓冲、标志位等,所以称为数据存储器。3 、程序存储器由于受集成度限制,片内只读存储器一般容量较小,如果片内的只读存储器的容量不够,则需用扩展片外的只读存储器,片外最多可外扩至64k字节。4 、中断系统具有5个中断源,2级中断优先权。5 、定时器/计数器片内有2个16位的定时器/计数器, 具有四种工作方式。6 、串行口1个全双工的串行口,具有四种工作方式。可用来进行串行通讯,扩展并行I/O口,甚至与多个单片机相连构成多机系统,从而使单片机的功能更强且应用更广。7 、P1口、P2口、P3口、P4口为4个并行8位I/O口。8、 特殊功能寄存器共有21个,用于对片内的个功能的部件进行管理、控制、监视。实际上是一些控制寄存器和状态寄存器,是一个具有特殊功能的RAM区。由上可见,89C51单片机的硬件结构具有功能部件种类全,功能强等特点。特别值得一提的是该单片机CPU中的位处理器,它实际上是一个完整的1位微计算机,这个一位微计算机有自己的CPU、位寄存器、I/O口和指令集。1位机在开关决策、逻辑电路仿真、过程控制方面非常有效;而8位机在数据采集,运算处理方面有明显的长处。MCS-51单片机中8位机和1位机的硬件资源复合在一起,二者相辅相承,它是单片机技术上的一个突破,这也是MCS-51单片机在设计的精美之处。3.3最小应用系统设计89C52是片内有ROM/EPROM的单片机,因此,这种芯片构成的最小系统简单可靠。用89C52单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,如图(3-2) 89C52单片机最小系统所示。由于集成度的限制,最小应用系统只能用作一些小型的控制单元。其应用特点:(1) 有可供用户使用的大量I/O口线。(2) 内部存储器容量有限。(3) 应用系统开发具有特殊性。图3-2 89C52单片机最小系统1、时钟电路89C52虽然有内部振荡电路,但要形成时钟,必须外部附加电路。89C52单片机的时钟产生方法有两种。内部时钟方式和外部时钟方式。本设计采用内部时钟方式,利用芯片内部的振荡电路,在XTAL1、XTAL2引脚上外接定时元件,内部的振荡电路便产生自激振荡。本设计采用最常用的内部时钟方式,即用外接晶体和电容组成的并联谐振回路。振荡晶体可在1.2MHZ到12MHZ之间选择。电容值无严格要求,但电容取值对振荡频率输出的稳定性、大小、振荡电路起振速度有少许影响,CX1、CX2可在20pF到100pF之间取值,但在60pF到70pF时振荡器有较高的频率稳定性。所以本设计中,振荡晶体选择6MHZ,电容选择65pF。在设计印刷电路板时,晶体和电容应尽可能靠近单片机芯片安装,以减少寄生电容,更好的保证振荡器稳定和可靠地工作。为了提高温度稳定性,应采用NPO电容。2、复位电路89C51的复位是由外部的复位电路来实现的。复位引脚RST通过一个斯密特触发器用来抑制噪声,在每个机器周期的S5P2,斯密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。复位电路通常采用上电自动复位和按钮复位两种方式。最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充电来实现的。只要VCC的上升时间不超过1ms,就可以实现自动上电复位。时钟频率用6MHZ时C取22uF,R取1K。除了上电复位外,有时还需要按键手动复位。本设计就是用的按键手动复位。按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过RST端经电阻与电源接通而实现的。按键手动复位电路见图(3-3)。时钟频率选用6MHZ时,C取22uF,Rs取200,RK取1K。图3-3按键手动复位电路3.4前向通道设计单片机用与测控系统时,总要有与被测对象相联系的前向通道。因此,前向通道设计与被测对象的状态、特征、所处环境密切相关。在前向通道设计时要考虑到传感器或敏感元件选择、通道结构、信号调节、电源配置、抗干扰设计等。在通道电路设计中还涉及到模拟电路诸多问题。1前向通道的含义当将单片机用作测控系统时,系统中总要有被测信号输入通道,有计算机拾取必要的输入信息。作为测试系统,对被测对象拾取必要的原始参量信号是系统的核心任务,对控制系统来说,对被控对象状态的测试以及对控制条件的监测也是不可缺少的环节。对被测对象状态的测试一般都离不开传感器或敏感元件,这是因为被测对象的状态参数常常是一些非电物理量,如温度、压力、载荷、位移等,而计算机是一个数字电路系统。因此,在前向通道中,传感器、敏感元件及其相关电路占有重要地位。对被测对象的信号的拾取其主要任务就是最忠实地反映被测对象的真实状态,它包括实时性与测量精度。同时使这些测量信号能满足计算机输入接口的电平要求。因此,单片机应用系统中的前向通道体现了被测对象与系统相互联系的信号输入通道,原始参数输入通道。由于在该通道中主要是传感器与传感器有关的信号调节、变换电路,故也可称为传感器接口通道。在单片机应用系统中,对信号输入、传感、变换应作广义理解,例如开关量的检测及信号输入,在单片机的各种应用系统中有着广泛的应用。最简单的开关量输入通道就是一个具有TTL电平的状态开关,如水银温度触点、温度晶闸管、时间继电器、限位开关等。故只要反映外界状态的信号输入通道都可称为前向通道。并不是所有单片机应用系统都有前向通道,例如时序控制系统,只根据系统内部的时间序列来控制外部的运行状态;分布式测控系统中的智能控制总站完成上级主计算机与现场测、控子站计算机之间的指令、数据传送。这些应用系统没有被测对象,故不需要前向通道。3.5通道设计 在工业控制系统中,单片机总要对控制对象实现操作,因此,在这样的系统中,总要有后向通道。后向通道是计算机实现控制运算处理后,对控制对象的输出通道接口。根据单片机的输出和控制对象实现控制信号的要求,后向通道具有以下特点:(1) 小信号输出、大功率控制。根据目前单片机输出功率的限制,不能输出控制对象所要求的功率信号。(2) 是一个输出通道。输出伺服驱动系统控制信号,而伺服驱动系统中的状态反馈信号通常是作为检测信号输入前向通道。(3) 接近控制对象,环境恶劣。控制对象多为大功率伺服驱动机构,电磁、机械干扰较为严重。但后向通道是一个输出通道,而且输出电平较高,不易受到直接损害。但这些干扰易从系统的前向通道窜入。单片机在完成控制处理后,总是以数字信号通过I/O口或数据总线送给控制对象。这些数字信号形态主要有开关量、二进制数字量和频率量,可直接用于开关量、数字量系统及频率调制系统,但对于一些模拟量控制系统,则应通过数模转换成模拟量控制信号。 根据单片机输出信号形态及控制对象要求,后向通道应解决:(1) 功率驱动。将单片机输出信号进行功率放大,以满足伺服驱动的功率要求。(2) 干扰防治。主要防治伺服驱动系统通过信号通道电源以及空间电磁场对计算机系统的干扰。通常采用信号隔离电源隔离和对功率开关实现过零切换等方法进行干扰防治。(3) 数/模转换。对于二进制输出的数字量采用D/A变换器;对于频率量输出则可以采用本设计调速采用PWM调速:为顺利实现电动小汽车的左转和右转,本设计采用了可逆PWM变换器。可逆PWM变换器主电路的结构式有H型、T型等类型。我们在设计中采用了常用的双极式H型变换器,它是由4个三极电力晶体管和4个续流二极管组成的桥式电路。4个电力晶体管的基极驱动电压分为两组。VT1和VT4同时导通和关断,其驱动电路中Ub1=Ub4;VT2和VT3同时动作,其驱动电压Ub2=Ub3= -Ub1。双极式PWM变换器的优点如下:(1)电流一定连续;(2)可使电动机在四象限中运行;(3)电机停止时有微振电流,能消除静摩擦死区;(4)低速时,每个晶体管的驱动脉冲仍较宽,有利于保证晶体管可靠导通;(5)低速平稳性好,调速范围可达20000左右。1、脉宽调制原理:脉宽调制器本身是一个由运算放大器和几个输入信号组成的电压比较器。运算放大器工作在开换状态,稍微有一点输入信号就可使其输出电压达到饱和值,当输入电压极性改变时,输出电压就在正、负饱和值之间变化,这样就完成了把连续电压变成脉冲电压的转换作用。加在运算放大器反相输入端上的有三个输入信号。一个输入信号是锯齿波调制信号,另一个是控制电压,其极性大小可随时改变,与锯齿波调制信号相减,从而在运算放大器的输出端得到周期不变、脉宽可变的调制输出电压。只要改变控制电压的极性,也就改变了PWM变换器输出平均电压的极性,因而改变了电动机的转向.改变控制电压的大小,则调节了输出脉冲电压的宽度,从而调节电动机的转速.只要锯齿波的线性度足够好,输出脉冲的宽度是和控制电压的大小成正比的.2、逻辑延时环节在可逆PWM变换器中,跨接在电源两端的上下两个晶体管经常交替工作.由于晶体管的关断过程中有一段存储时间和电流下降时间,总称关断时间,在这段时间内晶体管并未完全关断.如果在此期间另一个晶体管已经导通,则将造成上下两管之通,从而使电源正负极短路.为避免发生这种情况,设置了由RC电路构成的延时环节.3、电源的设计 本设计的使用三节5V5号电池为为车载电源。既能带动小车的驱动电机,又能提高小车的性能。为了保证电源工作可靠,单片机系统与动力伺服系统的电源采用了大功率、大容量的蓄电池;而传感器的工作电源则采用了小巧轻便的干电池。3.6驱动电路电机驱动一般采用H桥式驱动电路,L298N内部集成了H桥式驱动电路,从而可以采用L298N电路来驱动电机。通过单片机给予L298N电路PWM信号来控制小车的速度,起停。L298n是SGS公司的产品,比较常见的是15脚Multiwatt封装的L298N,内部同样包含4通道逻辑驱动电路。可以方便的驱动两个直流电机,或一个两相步进电机。L298N是可接受标准TTL逻辑电平信号VSS,VSS可接457 V电压。4脚VS接电源电压,VS电压范围VIH为2546 V。输出电流可达25 A,可驱动电感性负载。1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。L298可驱动2个电动机,OUT1,OUT2和OUT3,OUT4之间可分别接电动机,本实验装置我们选用驱动一台电动机。5,7,10,12脚接输入控制电平,控制电机的正反转。EnA,EnB接控制使能端,控制电机的停转。电机转数N为0,电机的电流急剧增加,时间过长将会使电机烧坏。但电机起动时,电机中线圈中的电流也急剧变大,因此我们必须把这两种状态分开。长延时电路可把这两种状态区分出来。长延时电路工作原理:当Rs1过流U5A产生一个负脉冲经过微分后,脉冲触发555的2脚,电路置位,3脚输出高电平,由于放电端7脚开路,C1,R5及U6A组成积分器开始积分,电容C1上的充电电压线性上升,延时运放积分常数为100R5C1。当C1上充电电压,即6脚电压超过23 VCC,555电路复位,输出低电平。电机启动时间一般小于08 s,C1充电时间一般为081 s。U5A输出电平与555的3脚输出电平经U7相或,如果U5A输出低电平大于C1充电时间,U7在C1充电后输出低电平由与门U8输入到L298N的6脚ENA端使电机停止。如果U5A的输出电平小于C1充电时间,6脚不动作电机的正常启动。长延时电路吸收电机启动过流电压波形,从而使电机正常启动。其引脚图如3-4,驱动原理图如图3-5。图3-4 L298N引脚图 图3-5电机驱动电路3.7信号检测模块3.7.1 LM393比较器简介比较器是将一个模拟电压信号与一个基准电压相比较的电路。比较器的两路输入为模拟信号,输出则为二进制信号,当输入电压的差值增大或减小时,其输出保持恒定。因此,也可以将其当作一个1位模/数转换器(ADC)。对路面检测的电路设计就是通过电位器设定一个阈值,以此确定是否有光反射。并且以此阈值为标准,向单片机输入满足TTL电平的数字信号。如图3-6所示。图3-6 LM393芯片示意图3.7.2循迹功能模块小车循迹原理是小车在画有黑线的白纸 “路面”上行驶,由于黑线和白纸对光线的反射系数不同,可根据接收到的反射光的强弱来判断“道路”黑线。笔者在该模块中利用了简单、应用也比较普遍的检测方法红外探测法。红外探测法,即利用红外线在不同颜色的物理表面具有不同的反射性质的特点。在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色地面时发生漫发射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,则小车上的接收管接收不到信号,再通过LM393作比较器来采集高低电平,从而实现信号的检测。循迹是指小车在白色地板上循黑线行走通常采取的方法是红外探测法,红外探测法即利用红外线在不同颜色的物体表面具有不同的反射性质的特点,在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色纸质地板时发生漫反射反射光被装在小车上的接收管接收,如果遇到黑线则红外光被吸收小车上的接收管接收不到红外光 ,单片机就是否收到反射回来的红外光为依据来确定黑线的位置和小车的行走路线 ,从而实现小车的循迹功能。红外探测器探测距离有限一般最大不应超过3cm。避障亦是此原理。电路图如图3-7。图3-7循迹原理图为了保证小车沿黑线行驶,采用了两个检测器并行排列,左右方向都可以进行控制,控制精度得以提高。在小车行走过程中,结合查询方式,通过程序控制小车行走轨迹。如果左方向偏离黑线,则右侧的探头就会检测到黑线,把信号传送到单片机,进行处理校正。控制其向右转;如果右方向偏离黑线,则左侧的探头就会检测到黑线,把信号传送到单片机,进行处理校正。控制其向左转。从而保证小车沿黑线行驶。电路中的可调电阻可调节灵敏度,以满足小车在不同光度的环境中能够寻迹。由于接收对管装在车底,发射距离的远近较难控制,调节可调电阻,灵敏度不高,因此采用在对管上套一塑料管,屏蔽外界光的影响,灵敏度将大幅提升。在该电路中,加比较器LM393的目的是使模拟量转化为开关量,便于处理。 3.8主控电路本模块主要是对采集信号进行分析,同时给出PWM波控制电机速度,起停。以及再检测到障碍报警等作用。其电路图如图3-8。图3-8 主控电路第四章 软件设计4.1系统软件设计说明在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。因此,软件设计在微机控制系统设计中占重要地位。对于本系统,软件更为重要。在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。数据处理包括:数据的采集、数字滤波、标度变换等。过程控制程序主要是使单片机按一定的方法进行计算,然后再输出,以便控制生产。为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。所谓“模块”,实质上就是所完成一定功能,相对独立的程序段,这种程序设计方法叫模块程序设计法。模块程序设计法的主要优点是:1、 单个模块比起一个完整的程序易编写及调试;2、 模块可以共存,一个模块可以被多个任务在不同条件下调用;3、 模块程序允许设计者分割任务和利用已有程序,为设计者提供方便。本系统软件采用模块化结构,由主程序定时子程序、避障子程序中断子程序显示子程序调速子程序算法子程序构成。主程序:main() Stop(); /小车停止delay(10000); /延时Go_ahead(); /小车向前backup=0x00; /保存小车状态delay(10000); /延时while(1) Search_trace(); /反复调用寻迹程序 自动循迹:void Search_trace(void)unsigned char tmp;tmp=P30x30;/读P34,P35状态,因为它们连接寻迹传感器switch (tmp)case 0x10:Go_right();backup=0x10;didi=1;delay(5000);break; /右转case 0x20:Go_left(); backup=0x20;didi=1;delay(5000);break;/左转case 0x30:Go_ahead();backup=0x30;didi=0;delay(35000);break;/前进case 0x00:Go_back(); backup=0x00;didi=1;delay(35000);break;4.2软件总体设计4.2.1不同占空比脉冲驱动电动机以往方案都是用事先定义好的0、1脉冲置于ROM中以查表获得脉冲的方法,但是这种办法不但不方便于操作,还占用了ROM单元,在使用上不具优越性。而本次方案在软件设置上,每个全脉冲都由40个10ms脉冲组成,前面全都是1,后面都是0,高脉冲,即1的个数由RAM中5AH单元中摆放的数值来决定,所有脉冲均通过计数器中断来控制,中断每10ms询查一下5BH单元,当5BH中数小于5AH中数时,脉冲置1,否则置0,每次5BH中数值加1,加到40就清0。这样就减少了许多ROM空间的使用,减少了软件延时控制的麻烦,通过设置5AH单元中的数来设置档,即我们有40个档可调。4.2.2循迹程序的设计利用红外对管RPR220来检测黑色路面的线,如果检测到黑线则前进并检测是否转弯。如图(4-1)开始前进扫描I/O口,是否检测到黑线Y左边 右边左转右转N图4-1 循迹框图特色之处在于,本设计充分利用了障碍物高度为6cm且光源高20cm这个重要条件,在从C点出发之初就寻找黑线,以通过查询三个光敏电阻的阻值变化来确定车身与黑线的方位,在无其它参照物的情况下通过黑线来确定小车的运动方向控制。在这个过程中首先不断检测黑线的方位,锁定黑线后立即检测前方是否有障碍物,当检测到障碍物时即刻放弃检测黑线而左转躲避,直至不再探测到障碍物又重新检测黑线,如此循环,就可达到安全迅速地进入车库的目的。在一开始就将探测障碍物与寻找黑线同时进行,经计算和实验论证,本方案能大幅度提高避障和寻光源的速度,降低寻找路线的盲目性。4.2.3主程序分段无论是在网上还是在一些参考资料上,许多软件大多的运行控制都是由一个主程序的循环来进行的,但本软件在主程序上也采取了分段的方式。在主程序间根据不同的功能区间来进行跳转,很明确很直观地将主程序进行了功能分段,为子程序的设计、程序的控制提供了很大方便,同时增强的程序的可读性。4.2.4时钟控制所有倒计时,计时都通过计时器1中断控制,根据RAM单元中相应的控制位选择不同的工作。在计时器计到90秒时,显示时钟,停车,并跳转到HOME程序段,以确定用户按键从而显示不同的数值供查询使用。4.2.5 转弯加速由于本设计前后电机采用同一电源供电,在前轮转向时,后轮速度将有所降低,此时即通过软件表象加速来弥补其电流的降低,从而提高了小车在弯道的行驶速度。4.2.6 进弯道前减速行驶分别采用不同的速度来控制直道与弯道的行驶,可以使得在直道区尽可能加速,以节省时间;在弯道区减速,有更多的时间来寻轨,避免脱离轨道,也使得小车以比较直的方向脱离轨道。4.3总体流程图在系统的程序设计中,主控模块只负责根据消息调用相应模块的处理函数,具体如何处理这些消息由各功能模块中的对应程序决定。在主程序模块中,需要完成对各模块接口的初始化,中断向量的设计以及开中断、循环等待等工作。另外,在主程序模块中还需要设置启动/清除标志寄存器,并对它们进行初始化。然后,主程序将根据各标志寄存器的内容,分别完成不同的操作。主程序流程图如图4-2所示。当接通电源时,小车启动,在行驶中,结合程序查询方式,若引脚为高电平表示小车左方向偏离黑线,则控制小车右转;若引脚为高电平时表示小车右方向偏离黑线,则控制小车左转,从而实现自动寻迹。当检测到障碍物时,调用躲避障碍物子程序,达到躲避障碍物的目。流程图4-2如下:初始化跳转主程序自动寻迹是否要转弯有黑色跑道吗转到位否调快调低速蜂鸣器发声YNNNYYY图4-2 总体流程图第五章 总结与展望单片机技术应用领域的广泛。不仅让我对学过的单片机知识有了很多的巩固,同时也对单片机这一门课程产生了更大的兴趣。本设计涉及到电机学、单片机原理及应用、传感器与检测技术、微型计算机控制技术、模拟电子技术等学科。让我对专业知识有了更深的理解。在本次毕业设计过程中,我学会了在网络上查找有关本设计的各硬件的资源,其中包括:智能小车国内外发展现状、AT89C51单片机及其引脚说明、L298N引脚图及其引脚功能等,为本次课程设计提供了一定的资料。在做设计的初期阶段,难度很大,没有头绪。通过网上找资料、理清了思路。同时,在图书馆里、网上查阅资料,攻克了毕业设计中的道道难题。办事只要有了头绪,就会简单很多。本次设计我能独立完成,算是有了很大的收获。总的感受有以下几方面:1、巩固了课本上的知识。通过本次设计,我不但对单片机有了更为深入的了解,对一个课题如何画流程图,编程序等,有了一定的认识。2、在本次设计中,我进一步加强了自己的动手能力和运用专业知识的能力,从中学习到如何去思考和解决问题,以及如何灵活地改变方法去实现设计方案;特别是深刻体会到的是软件和硬件结合的重要性,以及两者的联系和配合作用。3、通过本次设计,让我了解到智能化技术对当今人们生活的重要性。同时这次做毕业设计的经历也使我受益匪浅。让我知道做任何事情都应脚踏实地,刻苦努力地去做。只有这样,才能做好。本设计主要是把传统智能循迹小车系统和可编程电子器件结合起来设计智能循迹小车系统,并通过人工智能算法实现一定的智能化的方法。论文介绍了该设计的总体思想和一些用到的基本的原理及系统的硬件、软件设计。现将本文主要工作总结如下:(1)本设计使用模块化的设计方法。各个功能在硬件和软件的设计上都实现了模块化。各个功能部件同时存在,小车在运行的过程中只能实现自动循迹黑线功能,其余功能处屏敝状态;在各

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论