毕业设计,遥控小汽车_第1页
毕业设计,遥控小汽车_第2页
毕业设计,遥控小汽车_第3页
毕业设计,遥控小汽车_第4页
毕业设计,遥控小汽车_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机遥控小汽车的设计(硬件部分)学院:机电与自动化学院专业:电气自动化技术0803姓名:陈敦卫学 号:20082822113指导教师:段丽娜2011年6月基于89C51遥控小汽车的设计(硬件部分)Basedon89C51Remotecontrol

carsdesign

(Hardwarepart)摘要根据题目要求,本设计采用AT89C2051单片机构成主从式的控制系统,双机采用串行接口通信。红外遥控部分采用遥控车模专用编、解码芯片TX-2/RX-2,提高控制的可靠性。采用红外传感器进行里程检测;超声波传感器进行障碍识别;感光电阻辅以步进电机控制的转动机构进行光源方向的检测,并能用软件控制小车行驶到光源附近。采用步进电机对小车的转向进行精确的控制,同时用红外传感器对转向的角度进行校正。此外,采用四位LED数码管和若干LED发光二极管显示时间、行进的里程以及小车的各种状态;采用AT89C2051串行EEPROM记录小车的行驶轨迹,并能按照所记录的轨迹自动行驶。本次设计基于完备的软硬件系统,很好的实现了红外遥控功能,启动和停止,自动或手动;前或后直线行进;任意曲线行进;测距避障功能;显示行进距离;精确查找光源等一些功能。关键词:单片机超声波传感器发射装置接收装置红外遥控。AbstractAccordingtothetopic,mydesignneedstoadopttwoAT89C51toformacontrolsystemofprincipalandsubordinate.ThecommunicationbetweenthetwoMCUistoadopttheserialport.Meanwhile,launchendjoinwithinsultmalegenital61soundrecognitionsystemthatboardmakeremotely,canfinishtheremotecontrolfunctionofthepronunciation,anditadoptstheinfraredsensortomeasurethemileage;Theultrasonicsensorcarriesontheobstacletodiscern;Sensitizationresistancecomplementinordertowalkintowhomelectricalmachinerycontrolrotateorganizationcarryonmeasuring,directionofthelightsource,Thesmallcarcangototheadjacentplaceofthelightsourcewiththesoftware.ThedesignadoptsserialEEPROMofAT24C08towritedowntheorbitofthecar,andcanrepeattherouteautomaticallywhichhasbeenrecorded.TheDesignisonthebasisofthecompletesoftwareandhardwaresystem,andthesmallcarhasthefunctionofsoundremotecontrol,followinganycurve,recordingtheroutewhereithasgone,findingoutthelightsource,andcanrepeattherouteautomaticallywhichhasbeenrecorded.Keywords:Singlechip89C51SensorElectropultReceiverRemoteControl.目录TOC\o"1-5"\h\z\o"CurrentDocument"摘要 IAbstract II\o"CurrentDocument"绪论 1\o"CurrentDocument"1遥控小汽车的总体设计 4\o"CurrentDocument"1.1总体设计思路 4\o"CurrentDocument"1.2设计方案论证与比较 41.2.1轨迹探测模块设计与比较 41.2.2数据存储比较 51.2.3障碍探测模块方案分析与比较 5\o"CurrentDocument"1.3课题背景 61.4课题内容及安排 7\o"CurrentDocument"1.5本章小结 7\o"CurrentDocument"2遥控小汽车的硬件设计 8\o"CurrentDocument"2.1硬件设计的整体思路 8\o"CurrentDocument"2.2单片机的选择 9\o"CurrentDocument"2.2.1单片机最小系统 11\o"CurrentDocument"2.3发射电路的设计 13\o"CurrentDocument"2.4电机驱动电路的设计 14\o"CurrentDocument"2.5接收电路的设计 14\o"CurrentDocument"2.6本章小结 15\o"CurrentDocument"3遥控小汽车的软件设计 16\o"CurrentDocument"3.1发射板控制程序的设计 163.2接收处理程序的设计 17\o"CurrentDocument"3.3源程序的设计 18\o"CurrentDocument"3.4本章小结 19\o"CurrentDocument"4系统调试部分 20\o"CurrentDocument"4.1系统测试数据分析 20\o"CurrentDocument"4.2本章小结 20\o"CurrentDocument"结论 21\o"CurrentDocument"致谢 22参考文献 23\o"CurrentDocument"附录1程序清单 24绪论随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。全国电子大赛和省内电子大赛几乎每次都有智能小车这方面的题目,全国各高校也都很重视该题目的研究。可见其研究意义很大。本设计就是在这样的背景下提出的,指导教师已经有充分的准备。本题目是结合科研项目而确定的设计类课题。采用红外遥控技术,通过遥控命令对小汽车行驶状态进行控制,如前进、后退、左转和右转。并配合相应的传感器实现小汽车的自动避障,当小汽车检测到四周都有障碍物时,能够实现自动停车。根据题目的要求,确定如下方案:在现有玩具电动车的基础上,加装、红外线、超声波传感器及金属探测器,实现对电动车的速度、位置、运行状况的实时测量,并将测量数据传送至单片机进行处理,然后由单片机根据所检测的各种数据实现对电动车的智能控制。单片机以其强大的控制能力已经被广泛应用于诸多领域,配以各种接口传感器可以实现系统的智能化。从最初的8位控制器到现在的16位,32位控制器都还有河大的发展和应用空间。本设计采用MCS-51系列中的89C51单片机。以89C51为控制核心,利用超声波传感器检测道路上的障碍,控制电动小汽车的自动避障,快慢速行驶,以及自动停车,并可以自动记录时间、里程和速度,自动寻迹和寻光功能。89C51是一款八位单片机,它的易用性和多功能性受到了广大使用者的好评。它是第三代单片机的代表。at89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案]。本设计就采用了比较先进的89C51为控制核心,89C51采用CHOMS工艺,功耗很低。该设计具有实际意义,可以应用于考古、机器人、医疗器械等许多方面。尤其是在足球机器人研究方面具有很好的发展前景;在考古方面也应用到了超声波传感器进行检测。所以本设计与实际相结合,现实意义很强。第三代单片机包括Intel公司发展MCS-51系列新一代产品,如8xC152、80C51FA/FB、80C51GA/GB、8xC451、8xC452,还包括了Philips、Siemens、ADM、Fujutsu、OKI、Harria-Metra、ATMEL等公司以89C51为核心推出的大量各具特色、与80C51兼容的单片机。[12]新一代的单片机的最主要的技术特点是向外部接口电路扩展,以实现Microcomputer完善的控制功能为己任,将一些外部接口功能单元如A/D、PWM、PCA(可编程计数器阵列)、WDT(监视定时器)、高速I/O口、计数器的捕获/比较逻辑等。这一代单片机中,在总线方面最重要的进展是为单片机配置了芯片间的串行总线,为单片机应用系统设计提供了更加灵活的方式。Philips公司还为这一代单片机89C51系列8xC592单片机引入了具有较强功能的设备间网络系统总线 CAN(ControllerAreaNetworkBUS)[2。]新一代单片机为外部提供了相当完善的总线结构,为系统的扩展与配置打下了良好的基础。未来单片机技术的发展趋势可归结为以下10个方面:主流型机发展趋势。8位单片机为主流,少量32位机,16位机可能被淘汰。全盘CMOS化趋势。指在HCMOS基础上的CMOS化,CMOS速度慢、功耗小,而HCMOS具有低功耗及低功耗管理技术等特点。RISC体系结构的发展。早期CISC指令较复杂,指令代码周期不统一,难以实现流水线(单周期指令仅为1MIPS)。采用RISC体系结构可以精简指令系统,使其绝大部分为单周期指令,很容易实现流水线作业(单周期指令速度可达12MIPS)。大力发展专用单片机。OTPROM、flishROM成为主流供应状态。ISP及基于ISP的开发环境。FlishROM的应用推动了ISP(系统可编程技术)的发展,这样就可以实现目标程序的串行下载,PC机可通过串行电缆对远程目标高度仿真、更新软件等。单片机的软件嵌入。目前的单片机只提供程序空间,没有驻机软件。ROM空间足够大后,可装入如平台软件、虚拟外设软件和用于系统诊断管理的软件等,以提高开发效率。实现全面功耗管理。如采用:ID、PD模式、双时钟模式、高速时钟/低速时钟模式和低电压节能技术。推行串行扩展总线。ASMIC技术的发展。如一MCU为核心的专用集成电路(ASIC)[3]遥控小汽车的总体设计总体设计思路本设计主要利用AT89C2051单片机作遥控发射器及接收处理器实现对电动小汽车行驶过程进行控制,无线传送用接收/发射模板完成,采用红外遥控技术,通过遥控命令对小汽车行驶状态进行控制,如前进、后退、左转和右转,通过桥式开关电路驱动电机。并配合相应的传感器实现小汽车的自动避障,当小汽车检测到四周都有障碍物时,能够实现自动停车。其中,主要研究内容为:单片机驱动电机、发射与接收电路板,红外传感器的应用等。设计结果应符合以下指标:通过简单的I/O口操作实现小汽车的前进、后退、左转、右转;在行走过程中可以改变小车的运动状态,实现小汽车的自动避障;在超出一定范围时能够自动停车。设计方案论证与比较1.2.1轨迹探测模块设计与比较方案一:使用简易光电传感器结合外围电路探测。由于所采用光电传感器实际效果并不理想,对行驶过程中的稳定性要求很高,且误测几率较大、易受光线环境和路面介质影响。在使用过程极易出现问题,而且容易因为该部件造成整个系统的不稳定。故最终未采用该方案。方案二:利用两只光电开关。分别置于轨道的两侧,根据其接受到白线的先后来控制小车转向来调整车向,但测试表明,如果两只光电开关之间的距离很小,则约束了速度,如果着重于小车速度的提升,则随着车速的提升,则势必要求两只光电开关之间的距离加大,从而使得小车的行驶路线脱离轨道幅度较大,小车将无法快速完成准确的导向从而有可能导致寻迹失败。方案三:用三只光电开关。一只置于轨道中间,两只置于轨道外侧,当小车脱离轨道时,即当置于中间的一只光电开关脱离轨道时,等待外面任一只检测到黑线后,做出相应的转向调整,直到中间的光电开关重新检测到黑线(即回到轨道)再恢复正向行驶。现场实测表明,虽然小车在寻迹过程中有一定的左右摇摆(因为所购小车的内部结构决定了光电开光之间的距离到达不了精确计算值1厘米),但只要控制好行驶速度就可保证车身基本上接近于沿靠轨道行驶。综合考虑到寻迹准确性和行驶速度的要求,采用方案三[5]。1.2.2数据存储比较方案一:采用外接ROM进行存储。采用外接ROM进行存储是保存实验数据的惯用方法,其特点是在单片机断电之后仍然能保存住数据,但无疑将增大软硬开销和时间开销。方案二:直接用单片机内部的RAM进行存储。虽然不能在断电后保存数据,但可以在实验结束后根据按键显示相应值。而且本实验的数据存储不大,采用RAM可以减少IO接口的使用,便利IO接口分配,故此方案具有成本低、易实现的优点,更符合实际需求。鉴于方案二的以上优点,综合比较,本方案采用方案二[6]。1.2.3障碍探测模块方案分析与比较考虑到在测障过程中小车车速及反应调向速度的限制,小车应在距障碍物40CM的范围内做出反应,这样在顺利绕过障碍物的同时还为下一步驶入车库寻找到最佳的位置和方向。否则,如果范围太大,则可能产生障碍物的判断失误;范围过小又很容易造成车身撞上障碍物或虽绕过障碍物却无法实现理想定向方案。方案一:采用一只红外传感器置于小车中央。一只红外传感器小车中央安装简易,也可以检测到障碍物的存在,但难以确定小车在水平方向上是否会与障碍物相撞,也不易让小车做出精确的转向反应。方案二:采用二只红外传感器分置于小车两边。二只红外传感器分别置于小车的前端两侧,方向与小车前进方向平行,对小车与障碍物相对距离和方位能作出较为准确的判别和及时反应。但此方案过于依赖硬件、成本较高、缺乏创造性,而且置于小车左方的红外传感器用到的几率很小,所以最终未采用。方案三、采用一只红外传感器置于小车右侧并与小车前进方向呈一固定角度。基于对C点后行车地图中光源及障碍物尺寸、位置的分析,我们采用了从C点出发即获得光源对行车方向的控制,在向光源行驶的过程之中检查障碍物并做出相应的反应,这样不仅只使用一只红外传感器就实现了避障,而且避免因小车自然转弯而导致的盲目方向控制,同时为后面以最简单直接的路线和在最短时间内驶入车库创造了机会。智能小车应以准确、智能见优,采用方案三[。1.3课题设计背景随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。全国电子大赛和省内电子大赛几乎每次都有智能小车这方面的题目,全国各高校也都很重视该题目的研究。可见其研究意义很大。本设计就是在这样的背景下提出的,指导教师已经有充分的准备[8]。同时科学家研究出各种能取代人的自动化劳动工具,能从事一些需要劳动力大、威胁性大的工作。遥控小汽车的出现,也改变一些特殊场合的工作,它可以从事考古、机器人、医疗器械等方面的工作,为人门带来很大的方便。本设计采用89C51系列单片机设计一种体积小、操作简单的遥控小汽车,主要控制小汽车能前进、后退、左转、右转及自动驾驶,碰到障碍时能自动改变行驶方向。本次设计基于完备的软硬件系统,很好的实现了小车遥控、任意曲线行驶、路线记录与重放、自动避障,里程统计并发出指示信息等功能[9]。1.4课题设计内容及关键技术(1)掌握AT89C2051作遥控发射器及接受器的原理(2)设计遥控小汽车系统硬件电路(3)了解系统内存资源的分配(4)完成硬件部分设计结合软件部分进行调试1.5本章小结本章主要阐述遥控小汽车的总体设计思路、设计背景、设计内容及关键技术列出设计方案论证与比较,为后文打下基础。遥控小汽车的硬件设计硬件设计的整体思路一个单片机应用系统的硬件电路设计包含有两部分内容:一是系统扩展,即单片机内部的功能单元,如ROM、RAM、I/O口、定时/记数器、中断系统等能量不能满足应用系统的要求时,必须在片外进行扩展,选择适当的芯片,设计相应的电路。二是系统配置,既按照系统功能要求配置外围设备,如键盘显示器、打印机、A/D、D/A转换器等,要设计合适的接口电路。本设计采用AT89C2051作遥控发射器及接收处理器,汽车前进、后退与转向分别用2个电机,采用桥式开关电路驱动电机。无线传送用接收/发射模块完成。小汽车能前进、后退、左转、右转及自动驾驶(碰到障碍时能自动改变行驶方向)。通过AT89C2051能实现遥控小车的转向及自动规避功能。由于89C2051内部程序存贮器为Flash,所以修改它内部的程序十分方便快捷,只要配备一个可以编程89C2051的编程器即可[11。]调试人员可以采用程序编辑-编译-固化-插到电路板中试验这样反复循环的方法,对于熟练的MCS-51程序员来说,这种调试方法并不十分困难。当做这种调试不能够了解片内RAM的内容和程序的走向等有关信息。将普通8031/80C31仿真器的仿真插头中P1.0〜P1.7和P3.0〜P3.6引出来仿真205T,这种方法可以运用单步、断点的调试方法,但是仿真不够真实,比如,2051的内部模拟比较器功能,P1口、P3口的增强下拉能力等等。本设计需要检测直线行驶区和沿弧线行驶区具有一定黑白对比度的黑线。为寻迹发射和接收电路,共有两套,分别检测左侧车轮和右侧车轮的偏转情况。采取的是反射取样式,高亮度的发光二极管与光敏二极管呈V字型放置。光敏三极管接收到的信号用LM358进行电压比较与放大。此部分电路的设计具有灵敏度高、可调节等特点。本次设计基于完备的软硬件系统,很好的实现了小车遥控、任意曲线行驶、路线记录与重放、自动避障,里程统计并发出指示信息等功能。2.2单片机的选择MCS-51系列是INTEL公司的第二代8位单片机,与MCS-48系列相比,其I/O功能和指令系统有很大改善和增强,目前该系列在全国还有较多广泛的应用。MCS-51与MCS-48系列一样,CPU操作采用累加器结构,外部数据进入ALU必须通过ACC累加器,因此存在着信息流通的瓶颈现象,降低了运算效率。再有MCS-51单片机的最有特色的是具有丰富的可位寻址的处理功能,在其硬件结构中有位处理机,包括有位累加器C(既进位标志CY),有位存储器(既内部RAM和SFR的可寻址位),还有一套位指令,使得开关量控制系统的设置变的十分方便。单片机和微型计算机类似,具有三总线,可以进行算术运算和逻辑运算。它与微型计算器在内在表现和外在表现方面又有许多差别。概括起来,单片机具有以下特点:存储器ROM和RAM是严格分工的。采用面向控制的指令系统,在实时控制方面,尤其是在“位”操作方面单片机有着不俗的表现。应用注重现场工程,因此体积小。品种规格的系列化,属于同一个产品系列的,不同型号的单片机,通常具有相同的内核,相同或者兼容的指令系统。其主要的差别仅是在片内配置了一些不同种类或不同数量的功能部件,以适应不同的被控对象。单片机的硬件功能具有广泛的通用性。同一种单片机可以在不同的控制系统中,只是其中所配置的软件不同而已。只有借助专门的开发系统进行开发。功耗低,价格低]。[目前,许多单片机类电路实验都是以89C51系列为基础来应用的。这是因为MCS—51系列单片机是以8位单片机为基础,形成了单片机的经典体系结构。MCS—5l系列的C51成为许多半导体厂家、电气公司竞相选用纳对象,并以此为基核,推出了许多兼容性的CHMOS单片机。这些单片机都具有很好的兼容性,并存很强的生命力,统称为89C5l系列。再说单片机体积小、功能全、性价比高的诸多优点,它的出现,在工业控制,尖端武器、通信设备、信息处理、家用电器等各测、控等领域的应用中独占鳌头,本课题以89C51系列为基础,软件与硬件相结合的思想设计一辆遥控小车。89C51单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。如果按功能划分,它由如下功能部件组成,即微处理器、数据存储器、程序存储器、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器。它们都是通过片内单一总线连接而成,其基本结构依旧是CPU加上外围芯片的传统结构模式。但对各种功能部件的控制是采用特殊功能寄存器的集中控制方式[15。]微处理器该单片机中有一个8位的微处理器,与通用的微处理器基本相同,同样包括了运算器和控制器两大部分,只是增加了面向控制的处理功能,不仅可处理数据,还可以进行位变量的处理。数据存储器片内为128个字节,片外最多可外扩至64k字节,用来存储程序在运行期间的工作变量、运算的中间结果、数据暂存和缓冲、标志位等,所以称为数据存储器。程序存储器由于受集成度限制,片内只读存储器一般容量较小,如果片内的只读存储器的容量不够,则需用扩展片外的只读存储器,片外最多可外扩至64k字节。中断系统具有5个中断源,2级中断优先权。定时器/计数器片内有2个16位的定时器/计数器,具有四种工作方式。串行口1个全双工的串行口,具有四种工作方式。可用来进行串行通讯,扩展并行I/O口,甚至与多个单片机相连构成多机系统,从而使单片机的功能更强且应用更广。P1口、P2口、P3口、P4口为4个并行8位I/O口。特殊功能寄存器共有21个,用于对片内的个功能的部件进行管理、控制、监视。实际上是一些控制寄存器和状态寄存器,是一个具有特殊功能的RAM区。由上可见,89C51单片机的硬件结构具有功能部件种类全,功能强等特点。特别值得一提的是该单片机CPU中的位处理器,它实际上是一个完整的1位微计算机,这个一位微计算机有自己的CPU、位寄存器、I/O口和指令集。1位机在开关决策、逻辑电路仿真、过程控制方面非常有效;而8位机在数据采集,运算处理方面有明显的长处。MCS-51单片机中8位机和1位机的硬件资源复合在一起,二者相辅相承,它是单片机技术上的一个突破,这也是MCS-51单片机在设计的精美之处。2.2.1单片机最小系统单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统.对51系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路.89C51是片内有ROM/EPROM的单片机,因此,这种芯片构成的最小系统简单、可靠。用89C51单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可。由于集成度的限制,最小应用系统只能用作一些小型的控制单元[16。]其应用特点:有可供用户使用的大量I/O口线。内部存储器容量有限。应用系统开发具有特殊性。单片机最小系统的结构:单片机要正常运行,必须具备一定的硬件条件,其中最主要的就是三个基本条件:电源正常;时钟正常;复位正常。在AT89S51单片机的40个引脚中:电源引脚2根,晶振引脚2根,控制引脚4根,可编程输入输出引脚32根。工作电源:电源是单片机工作的动力源泉,对应的接线方法为:40脚(VCC)电源引脚,工作时接+5V电源,20脚(GND)为接地线。复位电路:由电容串联电阻构成,由图并结合"电容电压不能突变"的性质,可以知道,当系统一上电,RST脚将会出现高电平,并且,这个高电平持续的时间由电路的RC值来决定.典型的51单片机当RST脚的高电平持续两个机器周期以上就将复位,所以,适当组合RC的取值就可以保证可靠的复位•一般教科书推荐C取10u,R取8.2K.当然也有其他取法的,原则就是要让RC组合可以在RST脚上产生不少于2个机器周期的高电平。晶振电路:时钟电路为单片机产生时序脉冲,单片机所有运算与控制过程都是在统一的时序脉冲的驱动下的进行的,如果单片机的时钟电路停止工作(晶振停振),那么单片机也就停止运行了。当采用内部时钟时,连接方法如下图所示,在晶振引脚XTAL1(19脚)和XTAL2(18脚)弓I脚之间接入一个晶振,两个引脚对地分别再接入一个电容即可产生所需的时钟信号,电容的容量一般在几十皮法,如30PF。典型的晶振取11.0592MHz(因为可以准确地得到9600波特率和19200波特率,用于有串口通讯的场合)/12MHz(产生精确的uS级时歇,方便定时操作)。控制引脚EA接法。EA/VPP(31脚)为内外程序存储器选择控制引脚,当EA为低电位时,单片机从外部程序存储器取指令;当EA接高电平时,单片机从内部程序存储器取指令。AT89S51单片机内部有4KB可反复擦写1000次以上的程序存储器,因此我们把EA接到+5V高电平,让单片机运行内部的程序,我们就可以通过反复烧写来验证我们的程序了。单片机最小系统的性能:89S51相对于89C51增加的新功能包括:ISP在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要把芯片从工作环境中剥离。是一个强大易用的功能。最高工作频率为33MHz,大家都知道89C51的极限工作频率是24M,就是说S51具有更高工作频率,从而具有了更快的计算速度。具有双工UART串行通道。内部集成看门狗计时器,不再需要像89C51那样外接看门狗计时器单元电路。双数据指示器。电源关闭标识。全新的加密算法,这使得对于89S51的解密变为不可能,程序的保密性大大加强,这样就可以有效的保护知识产权不被侵犯。兼容性方面:向下完全兼容51全部字系列产品。比如8051、89C51等等早期MCS-51兼容产品。也就是说所有教科书、网络教程上的程序(不论教科书上采用的单片机是8051还是89C51还是MCS-51等等),在89S51上一样可以照常运行,

这就是所谓的向下兼容。发射电路的设计发射电路板共设有5个按键开关,分别作为汽车左转弯、右转弯、前进、后退及自动驾驶控制用。P1.0和P1.1口作为输入口时应接上拉电阻,控制编码从P3.5脚输出至无线发射模块。该板采用脉冲个数编码以区别不同的按键功能,具体定义如下:前进键:按下发2个脉冲,释放发8个脉冲。后退键:按下发3个脉冲,释放发8个脉冲。左转键:按下发4个脉冲,释放发7个脉冲。右转键:按下发5个脉冲,释放发7个脉冲。自动键:按下发6个脉冲。发射版电路图如图2-2所示:+5V(3V)inr-7去发射板AT89C20511/RSTVdd\202/P3.0(RXXD)P1.7\193/P3.1(TXD)inr-7去发射板AT89C20511/RSTVdd\202/P3.0(RXXD)P1.7\193/P3.1(TXD)P1.6\184/XTAL2P1.5\175/XTAL1P1.4\166/P3.2(INT0)P1.3\157/P3.3(INT1)P1.2\148/P3.4(T0)P1.1\139/P3.5(T1)P1.0\1210/GNDP3.7\1130pF12MHzF—i-<J+5V(3V)备用自动

右转

左转

后退\n.前进图2-2遥控小汽车发射板电路图电机驱动电路的设计:电机驱动电路图如图2-3所示:电机驱动电路图如图2-3所示:图2-3电机驱动电路图接收电路的设计无线接收模块输出的编码脉冲从P3.2、P3.1口输入,采用中断接收方式处理脉冲编码。电机采用桥式驱动,Pl.O、P1.1口作前后驱动电机控制用,Pl.2、P1.3口作转向电机控制用°P3.0接前障碍红外线探测头,P3.5接后障碍红外线探测头。P1.4口接一个LED发光管用作自动驾驶指示。接收板电路图如图2-4所示:门+5V(3V)+.编码输入红外探头红外探头一XAT89C20511/RST门+5V(3V)+.编码输入红外探头红外探头一XAT89C20511/RSTVdd\202/P3.0(RXXD)P1.7\193/P3.1(TXD)P1.6\184/XTAL2P1.5\175/XTAL1P1.4\166/P3.2(INT0)P1.3\157/P3.3(INT1)P1.2\148/P3.4(T0)P1.1\139/P3.5(T1)P1.0\1210/GNDP3.7\11+5V自动驾驶指示4^ IZZI—1转向控制输出前后控制输出—>图2-4遥控小汽车接收板电路图2.6本章小结本章主要说明硬件设计思路,阐述单片机的选择和单片机的结构性能特点、发展应用等方面的知识,以及遥控小汽车的有关电路的设计,包括发射板电路设计、接收板电路设计、电机驱动电路设计和相关的电路图。和后面的软件程序设计部分相结合,然后进行系统测试观察测试结果。遥控小汽车的软件设计发射板控制程序的设计发射板控制程序由主程序和键扫描子程序组成,在主程序中,采用调用键扫描子程序来完成各个按键的功能,其键扫描功能子程序流程图如图3-1所示图3-1遥控小汽车发射程序流程图接收处理程序的设计初始化程序:对转向电机、前后驱动电机上电时设为停止状态,开中断允许等主程序:根据标志位00H的值判断进入自动驾驶或手动控制状态,其程序流程图如图3-2所示。Y00H=0?NNNY00H=0?YY00H=0?NYNY00H=0?NP3.5=0?(后障碍)P3.0=0?.前障碍)主程序开始倒退并转弯Y00H=0?NNNY00H=0?YY00H=0?NYNY00H=0?NP3.5=0?(后障碍)P3.0=0?.前障碍)主程序开始倒退并转弯进入自动驾驶前进状态图3-2控制小汽车接收板主程序流程图中断接收程序:对第一位脉冲的宽度进行验证,然后进行计数,根据脉冲的个数进行相应的控制操作,其程序流程图如图3-3所示。图3-3遥控小汽车中断接收程序流程图源程序的设计以下是遥控小车发射及接收完整源程序:TOC\o"1-5"\h\z彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、*** 遥控编码控制器 *\o"CurrentDocument"* 采用89C2051 ***彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、P1.0口按钮为前进,P1.1口按钮为后退,P1.2口按钮为左转弯,P1.3口按钮为右转弯,P1.4口按钮为自动驾驶,P3.5口为编码输出

彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 t^Y*叫、 叫、 叫、 叫、 叫、 叫、 叫、 叫、 叫、 叫、 叫、 叫、*主程序和中断程序入口**彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、 彳、叫、叫、 叫、叫、叫、叫、 叫、叫、叫、叫、 叫、叫、叫、叫、 叫、叫、其中源程序如附录1所示。3.4本章小结本章主要讲述软件设计思路,概括为遥控小汽车发射程序设计、接收程序设计源程序设计以及遥控小汽车发射程序流程图、接收程序流程图、中断程序流程图等软件程序的设计将进入系统测试部分,以观察测试结果题写测试结论。系统调试部分4.1系统测试数据分析1,测试方法和仪器测试仪器包括秒表、数字万用表、信号发生器、示波器、MCS51仿真机、直流稳压电源等。测试方法数字万用表主要用来测试分立元件的电阻、压降、漏电流、截止/导通状态等参数;信号发生器与示波器用于测试各光电传感器信号的接收与传输;MCS51仿真机用于测试软件;直流稳压电源在测试期间为各待测系统供电;秒表用于产品测试,按照任务书的基本要求对制成的电动车进行产品测试。测试数据及测试结果分析:计时精度分析计时系统采用了新型显示芯片。理论上的误差不到1秒/年。测距精度分析测速系统采用了电机轴光电码盘检测技术。电机轴与车轮轴之间采用了齿轮箱二级减速,变比1/16。车轮周长135mm,光电码盘与电机轴安装在一起,电机轴每一转产生2个脉冲,车轮每转产生32个脉冲,理论测量精度可达135mm/32=4.22mm<4.5mm定位精度分析本设计采用实际测量与软件补偿技术,理论上可使定位精度提高到误差<10mm。4.2本章小结本章主要说明系统测试方法及测试数据结果分析,来验证硬件部分和软件部分相结合的实际效果,这也是检验我们这几个月来的辛苦成果。结论历时二个月的设计过程中,我首先边查资料,边在实验室焊接小车的线路板。在焊接过程中,我感觉到即使是一个简单的电路,要想很轻松的焊好,也不是很容易的事情。有时是“虚焊”的原因,有时可能是阻值选错。在焊接显示电路时,我就错将680欧的电阻焊成了6.8千欧。这使我深深感受到理论与实际间的差距。通过这样的设计,提高了我的动手能力。每天在实验室除了焊接线路板,还可以上机编程,使我软件调试知识也提高了。由于本次实验需要捍接的器件较多,各器件对于电源电流的需要极大,我们先以双电源开始调试,发现所有的开关器件很难稳定地给单片机送正确值,只有当更换新电池或小车刚刚启动时才会很准确,经过思考,这都是开关元件消耗电量很大的原因,一旦电池电量不足其工作将会萎靡不振,于是我们将所有开关器件划成一个部分,由一块电池专门供电。在前轮PWM驱动转向电路运行中,我们发现,电机只给一个转向力,但保持长期转向时,电机的转动由于受到强行制动而处于一种相对静止的状态,导致PWM驱动电路产生大量的热量,我们既利用软件使其尽量减少长期单向转动状态,又在硬件上,在PWM驱动板上涂上了一层散热胶,即使发热,也不会烧坏PWM驱动电路。在安装上避障用光电开关之后,其与其它所有开关元件共用同一电源,在运行时发现三个用于寻迹用的开关元件不能全部正常工作了,据分析,避障用光电开关由于探测距离远,功率大,很可能影响其他元件改用单一电源供电后,小车正常工作。在所有电源开启后,系统即进入6秒钟倒计时状态,6秒钟倒计时完毕之后,有时后轮电机不能正常启动。经分析,这是属于正常情况,因为其启动需要克服很大的惯性,而其电源又不能在瞬间提供很大的电流,所以就没有动静。此时,关掉单片机电源,再重新打开后即可进入正常状态去正常运行。本设计采用的是80C51单片机,这主要是因为该单片机的稳定性比较好。还可以采用其它系列的单片机。比如采用陵阳单片机,就可以简化编程,但其稳定性不是很好。致谢经过不懈的努力,为期二个多月的毕业设计终于结束了。经过自己不断的努力和网上查找资料以及段老师的耐心指导和热情帮助,本设计已经基本完成。在这段时间里,段老师对我一直不断的热情指导给了我解决问题的思路和方法。同时本系实验室的开放也为我的设计提供了实习场地。在此对段丽娜老师表示深深的感谢。通过这次毕业设计,使我深刻地认识到学好专业知识的重要性,也理解了理论联系实际的含义,并且检验了大学三年的学习成果。虽然在这次设计中对于知识的运用和衔接还不够熟练。但是我将在以后的工作和学习中继续努力、不断完善。这三个月的设计是对过去所学知识的系统提高和扩充的过程,为今后的发展打下了良好的基础。由于自身水平有限,设计中一定存在很多不足之处,敬请各位老师批评指正。参考文献[1]何立民.单片机高级教程——应用与设计.北京:北航大学出版社,2007.1[2]王为青.51单片机应用开发案例精选.北京:人民邮电出版社,2007.8楼然苗.51系列单片机设计实例.北京:北京航空航天大学出版社,2003.3高峰.单片微机应用系统设计及实用技术[M].北京:机械工业出版社,2002.124-126张友德,赵志英,涂时亮,单片机微机原理,应用与实验[M].上海:复旦大学出版社,2003:122-136INTEL.16-bitEmbeddedCvontrollers.1991谢自美.电子线路设计•实验•测试[M].武汉:华中科技大学出版社,2000:212-230张福学。传感器使用电路150例•中国技术出版社[M].1992年邬宽民.单片机外围器件实用手册,数据传输接口器件分册.北京.北京航空航天大学出版社.2001:189-195陈懂,刘荣,金世俊.智能小车的多传感器数据融合[J].现代电子技术,2005(6):3INTEL.16-bitEmbeddedCvontrollers.1991李华.MCS-51系列单片机实用接口技术.北京:北京航空航天大学出版社,1993张迎新.单片机微机原理应用及接口技.北京:国防工业出版社,2004颜利彪,范蟠果,基于单片机的简易智能电动车[J],电子技术,2004,4:8-10

附录1程序清单#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*ORG0000HLJMPORG0003HRETIORG000BHRETIORG0013HRETIORG001BHRETIORG0023HRETIORG002BHRETI#J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J****初始化程序中的各变量***#J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J*CLEARMEMIO: CLRADECAMOVP1,AMOVP3,AMOVIE,#00HRET#J* #J* #J* #J* #J* #J* #J* #J* #J*#J* #J* #J* #J* #J* #J* #J******主程*#J* #J* #J* #J* #J* #J* #J* #J* #J*#J* #J* #J* #J* #J* #J* #J****START:LCALL主体程序MAIN:LCALL

#J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J**序**#J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J*CLEARMEMIOKEYWORKLJMPMAINNOPNOPNOPLJMPSTART#J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J****键盘工作子程序***#J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J*KEYWORK:MOVJNBJNBJNBP1,#-0FFHP1.0,KEY0P1.1,KEY1P1.4,KEY4KEYOUT:RETKEY0:LCALLJBLJMPDL10MSP1.0,KEYOUTKEYFUN00KEY1:LCALLJBLJMPDL10MSP1.1,KEYOUTKEUFUN01KEY2:LCALLJBLJMPDL10MSP1.2,KEYOUTKEUFUN02KEY3:LCALLJBLJMPDL10MSP1.3,KEYOUTKEUFUN03KEY4:LCALLJBLJMPDL10MSP1.4,KEYOUTKEUFUN04KEYWORKI:JNBJNBLCALLP1.2,KEY2P1.3,KEY3KEYFUN05RET

KEYFUN00:MOVLCALLA,#02HREMOTEWAIT0:LCALLKEYWORK1JNBP1.0,WAIT0LCALLKEYFUN06RETKEYFUN01:MOVA,#03HLCALLREMOTEWAIT1:LCALLKEYWORK1JNBP1.1,WAIT1LCALLKEYFUN06RETKEYFUN02:MOVA,#04HLCALLREMOTEJNBP1.2,KEYOUT1LCALLDL10MSJNBP1.2,KEYOUT1LCALLKEYFUN05RETKEYFUN03:MOVA,#05HLCALLREMOTEJNBP1.3,KEYOUT1LCALLDL10MSJNBP1.3,KEYOUT1LCALLKEYFUN05RETKEYOUT1:LJMPKEYOUTKEYFUN04:JNBP1.4,KEYFUN04LCALLDL10MSJNBP1.4,KEYFUN04MOVA,#06HLCALLREMOTERETKEYFUN05:MOVA,#07HLCALLREMOTERETKEYFUN06:MOVA,#08HLCALLREMOTERET#J* #J* #J* #J* #J* #J* #J* #J* #J*#J* #J* #J* #J* #J*#J* #J* #J* #J* #J* #J* #J* #J***编码发送程序*#J* #J* #J* #J* #J* #J* #J* #J* #J*#J* #J* #J* #J* #J*#J* #J* #J* #J* #J* #J* #J* #J*按A中数值发射脉冲REMOTE:MOVR1,ALJMPOUT3OUT:MOVR0,#55HOUT1:CLRP3.5**#J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J*#J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J*OUT2:NOPNOPNOPNOPNOPNOPNOPNOPNOPDJNZMOVR0,OUT1R0,#55HSETBP3.5NOPNOPNOPNOPNOPNOPNOPOUT3:DELAY:DELAY1:DL10MS:DL10MS1:DL500MS:DL500MS1NOPNOPDJNZR0,OUT2DJNZR1,OUTLCALLDL10MSRETMOVR0,#0FFHLJMPOUT1#J* #J* #J* #J* #J* #J* #J* #J* #J* #J*延时程序(513us)#J* #J* #J* #J* #J* #J* #J* #J* #J* #J*MOVR2,#0FFHDJNZR2,DELAY1RET#J* #J* #J* #J* #J* #J* #J* #J* #J* #J*延时10ms程序(消按键抖动用)#J* #J* #J* #J* #J* #J* #J* #J* #J* #J*MOVR3,#14HLCALLDELAYDJNZR3,DL10MS1RETMOVR4,#32HLCALLDL10MSDJNZR4,DL500MS1****RETEND#J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J**遥控接收解码* 采用AT89C2051#J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J*P1.0—P1.1为电机前后驱动;P1.2—P1.3为左右转弯驱动;P1.4为自动驾驶指示,编码输入为P3.1和P3.2(INT0);P3.0和P3.5分别为前后红外线探头,在自动驾驶时用以控制小汽车前进和倒退。#J* #J* #J* #J* #J* #J* #J* #J* #J* #J*#J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J* #J****主程序和中断程序入口***#J* #J* #J* #J* #J* #J* #J*

温馨提示

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

评论

0/150

提交评论