欢迎来到沃文网! | 帮助中心 分享知识,传播智慧!
沃文网
换一换
首页 沃文网 > 资源分类 > DOC文档下载
 

循迹小车的设计与制作

  • 资源ID:20071       资源大小:947.68KB        全文页数:33页
  • 资源格式: DOC        下载权限:游客/注册会员/VIP会员    下载费用:10积分 【人民币10元】
快捷注册下载 游客一键下载
会员登录下载
三方登录下载: QQ登录   微博登录  
下载资源需要10积分 【人民币10元】
邮箱/手机:
温馨提示:
支付成功后,系统会自动生成账号(用户名和密码都是您填写的邮箱或者手机号),方便下次登录下载和查询订单;
支付方式: 微信支付    支付宝   
验证码:   换一换

加入VIP,免费下载资源
 
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,既可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

循迹小车的设计与制作

毕业设计(2014届)题目循迹小车的设计与制作完成日期2014年5月20日摘要AT89S52单片机是一款八位单片机实现电动小车的自动寻迹。本系统以设计题目的要求为目的,采用AT89S52单片机为控制核心,利用电动小车前面的红外线传感HebeiVocationalTechnicalCollegeofBuildingMaterials河北建材职业技术学院器检测道路上的轨迹,将路面信息转送给AT89S52,AT89S52根据信息作出反应控制电动机转动,从而控制电动小汽车按照路上的轨迹行驶。整个系统的电路结构简单,可靠性能高。实验测试结果满足要求,着重介绍了该系统的硬件设计方法及测试结果分析。小车采用的技术主要有传感器的有效应用和AT89S52芯片的使用。有很多功能可以继续扩展,值得就一步学习和研究。关键词AT89S52红外线传感器直流电机目录引言.........................................................................................................................................11方案设计与论证.................................................................................................................11.1电动小车模块...................................................................................................................21.2控制模块..........................................................................................................................31.3传感器模块......................................................................................................................31.4电源模块..........................................................................................................................32硬件设计.............................................................................................................................42.1主要元器件的介绍..........................................................................................................42.2模块介绍........................................................................................................................142.3整体方案........................................................................................................................163软件设计...........................................................................................................................173.1程序设计........................................................................................................................173.2利用proteus进行软件仿真.........................................................................................213.3制作电路图和PCB板图...............................................................................................21总结.......................................................................................................................................24致谢.......................................................................................................................................24参考文献...............................................................................................................................25附录1C语言程序................................................................................................................26附录2电路图和PCB板图...................................................................................................301引言随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。全国电子大赛和省内电子大赛几乎每次都有智能小车这方面的题目,全国各高校也都很重视该题目的研究。可见其研究意义很大。本设计就是在这样的背景下提出的。设计一款智能电动小车,智能电动小车应该具有自动寻找轨迹的功能。根据题目的要求,本设计以AT89S52为控制核心,在现有电动小车的基础上,加装传感器,实现对电动车的运动状态进行实时控制。本系统控制灵活、可靠,精度高,满足各项要求。利用红外线传感器检测地上的特定轨迹,将数据传给AT89S52,经过AT89S52分析后做出反应控制电动机的运行使小车按照特定轨迹行驶。AT89S52是一款八位单片机,它的易用性和多功能性受到了广大使用者的好评。它是第三代单片机的代表,其最主要的技术特点是向外部接口电路扩展,以完善控制功能。外部可接其他功能单元如A/D﹑PWM﹑PCA﹑WDT﹑计数器的捕获/比较逻辑等。在总线方面最重要的进展是为单片机配置了芯片间的串行总线,为单片机应用系统设计提供了更加灵活的方式。新一代单片机为外部提供了相当完善的总线结构,为系统的扩展与配置打下了良好的基础。本设计采用的AT89S52采用CHOMS工艺,功耗很低,可用于很多小型设备中。该设计具有实际意义,稍作修改就可以应用于考古、机器人、医疗器械等许多方面。尤其是在足球机器人研究方面具有很好的发展前景;在考古方面可用超声波传感器进行检测。所以本设计与实际相结合,现实意义很强。1、设计方案根据题目的要求,确定如下方案在现有电动小车的基础上加控制器,在小车前部加装传感器,在路面贴上特殊轨迹。由外加传感器对路面进行实时测量,并将测量数据传送至控制器,再由主控制器根据所检测的数据对电动小车行动进行控制,使小车跟随路面特殊轨迹行驶,以实现电动小车的自动寻迹。自动寻迹小车原理图1.1所示2图1.1自动寻迹小车原理图1.1电动小车模块1.1.1转向和动力转向和动力结合的电动小车。转向和动力结合的电动小车是使用两个独立的电动机各自带动一个轮胎位于两侧,通过两个轮胎速度的改变实现小车的转向。控制所用程序较少,控制器控制起来简单(这种转向方式类似于坦克的转向方式。)为了小车的平衡再装上保持平衡的轮子。1.1.2电动机模块为了实现电动小车对行走路径的准确定位和精确测量,采用步进电机。步进电机是一种将电脉冲信号转换成角位移或线位移的精密执行原件。控制方便,体积小,灵活性和可靠性高,具有瞬时启动和急速停止的优越性,比较适合本系统控制精度高的特点。价格较高。1.1.3调速系统脉宽调速系统。采用晶闸管的直流斩波器基本原理与整流电路不同的是,在这里晶闸管不受相位控制,而是工作在开关状态。当晶闸管被触发导通时,电源电压加到电动机上,当晶闸管关断时,直流电源与电动机断开,电动机经二极管续流,两端电压接近于零。脉冲宽度调制(PulseWidthModulation),简称PWM。脉冲周期不变,只改变晶闸管的导通时间,即通过改变脉冲宽度来进行直流调速。可在行进间变速,直道高速,弯道低速。PWM调速系统有下列优点(1)由于PWM调速系统的开关频率较高,仅靠电枢电感的滤波作用就可以获得脉动很小的直流电流,电枢电流容易连续,系统的低速运行平稳,调速范围较宽,可达110000左右。由于电流波形比V-M系统好,在相同的平均电流下,电动机的损耗和发热都比较小。(2)同样由于开关频率高,若与快速响应的电机相配合,系统可以获得很宽的频带,电动小车控制器传感器控制信号路面数据3因此快速响应性能好,动态抗扰能力强。(3)由于电力电子器件只工作在开关状态,主电路损耗较小,装置效率较高。脉宽调速系统的主电路采用脉宽调制式变换器,简称PWM变换器。脉宽调速也可通过单片机控制继电器的闭合来实现,但是驱动能力有限。为顺利实现电动小汽车的前行与倒车,本设计采用了可逆PWM变换器。可逆PWM变换器主电路的结构式有H型、T型等类型。我们在设计中采用了常用的双极式H型变换器,它是由4个三极电力晶体管和4个续流二极管组成的桥式电路。1.1.4电机驱动模块采用集成芯片L9110驱动直流电机。L9110是为控制和驱动电机设计的两通道推挽式功率放大专用集成电路,将分立电路集成在单片IC之中,使外围器件成本降低,整机可靠性提高。该芯片有两个TTL/COMS兼容电平的输入,具有良好的抗干扰性;两个输出端能直接驱动电机的正反向运动,它具有较大的电流驱动能力,每个通道能通过750800mA的持续电流,峰值电流能力可达1.52.0;同时它具有较低的输出饱和压降;内置的钳位二极管能释放感性负载的反向冲击电流,使它在驱动继电器、直流电机、步进电机、开关功率管的使用上安全可靠。L9110被广泛用于玩具汽车电机驱动、步进电机驱动和开关功率管等电路上。1.2控制模块采用AT89S52单片机作为主控制器。AT89S52是一款低功耗,高性能的8位单片机,片内含有8KB的Flash片内程序存储器,256Bytes的RAM,32个外部双向输入/输出I/O口,5个中断优先级,2层中断嵌套中断等。价格便宜,使用方便。编程实现难度低,适合用来实现系统的控制功能。1.3传感器模块采用光电传感器。光电传感器原理简单,实现方便,价格低廉,可集发射器和接收器于一体。使用这类光电传感器电路简单,工作性能稳定,能完成需要的信号检测功能。1.4电源模块用4节五号电池串联6V直流电源。在不超过单片机工作电压范围的情况下,又能驱动直流电机。且这个电源结构简单,价格便宜,易得到。42、硬件设计本设计硬件由一下三个模块组成1.以驱动芯片L9110为主的电动小车模块。2.以AT89S52为控制器的控制器模块。3.以红外线传感器为主的传感器模块。整个设计由传感器模块向控制模块提供路面情况,控制模块根据情况控制电动小车移动,三个模块相互合达到设计要求。2.1主要元器件的介绍2.1.1电机驱动芯片L9110L9110是为控制和驱动电机设计的两通道推挽式功率放大专用集成电路,将分立电路集成在单片IC之中,使外围器件成本降低,整机可靠性提高。该芯片有两个TTL/COMS兼容电平的输入,具有良好的抗干扰性;两个输出端能直接驱动电机的正反向运动,它具有较大的电流驱动能力,每个通道能通过750800mA的持续电流,峰值电流能力可达1.52.0;同时它具有较低的输出饱和压降;内置的钳位二极管能释放感性负载的反向冲击电流,使它在驱动继电器、直流电机、步进电机、开关功率管的使用上安全可靠。L9110被广泛用于玩具汽车电机驱动、步进电机驱动和开关功率管等电路上。其特点有,低静态工作电流;宽电压电源范围2.5V12V;每个通道具有800mA连续输出能力;较低的饱和压降,TTL/COMS输出电平兼容,可直接连CPU;输出内置钳位二极管;适用于感性负载,控制驱动集成于单片IC中;具备管脚高压保护功能;工作温度-20℃80L9110℃。其管脚图如图2.1所示。OAA路输出脚。VCC电源电压。VCC电源电压。OBB脚输出管脚。GND地线。IAA路输入管脚。IBB路输入管脚。GND地线。其应用电路如图2.2所示。管脚波形图如图2.3所示。T25℃时的参数如表2.1。电器特性标如表2.2。图2.1L9110管脚图5图2.2L9110的应用电路图表2.1T25℃时的参数表符号参数最小典型最大单位VCCmax电源电压2.2512VIoutmax输出电流8001000mVVHin输入高电平2.2512VVLin输出低电平00.50.7VPDmax允许电源损耗800mWTopr操作温度-302585℃L9110VCCM直流电机正转信号反转信号GND6表2.2T25℃Vcc5V时电器特性标图2.3管脚波形图2.1.2AT89S52AT89S52单片机由以下功能部件组成微处理器、数据存储器、程序存储器、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器。它们都是通过片内单一总线连接而成,对各种功能部件的控制是采用特殊功能寄存器的集中控制方式。(1)微处理器该单片机中有一个8位的微处理器,与通用的微处理器基本相同,同样包括了运算器范围符号参数最小典型最大单位IDD静态电流0.12uAVo1输出饱和压降Io500mA11.15VVo2输出饱和压降Io200mA0.750.85VIin操作电流100200uAIout持续输出电流750800850mAImax电流峰值15002000mA输入A输入B输入A输入B7和控制器两大部分,只是增加了面向控制的处理功能,不仅可处理数据,还可以进行位变量的处理。(2数据存储器片内为256BytesRAM,片外最多可外扩至64K字节,用来存储程序在运行期间的工作变量、运算的中间结果、数据暂存和缓冲、标志位等,所以称为数据存储器。3程序存储器由于受集成度限制,片内有8KBFlash存储器,如果片内的只读存储器的容量不够,则需用扩展片外的只读存储器,片外最多可外扩至64K字节。4中断系统具有5个中断源,2级中断优先权。5定时器/计数器片内有2个16位的定时器/计数器,具有四种工作方式。6串行口1个全双工的串行口,具有四种工作方式。可用来进行串行通讯,扩展并行I/O口,甚至与多个单片机相连构成多机系统,从而使单片机的功能更强且应用更广。7输入/输出I/O口P1口、P2口、P3口、P4口为4个并行8位I/O口。8特殊功能寄存器共有21个,用于对片内的个功能的部件进行管理、控制、监视。实际上是一些控制寄存器和状态寄存器,是一个具有特殊功能的RAM区。P0口P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0不具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1口P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX)。在flash编程和校验时,P1口接收低8位地址字节。引脚号第二功能8P1.0T2(定时器/计数器T2的外部计数输入),时钟输出P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P1.5MOSI(在系统编程用)P1.6MISO(在系统编程用)P1.7SCK(在系统编程用)P2口P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVXDPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVXRI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3口P3口是一个具有内部上拉电阻的8位双向I/O口,p3输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用。在flash编程和校验时,P3口也接收一些控制信号。端口引脚第二功能P3.0RXD串行输入口P3.1TXD串行输出口P3.2INTO外中断0P3.3INT1外中断1P3.4TO定时/计数器0P3.5T1定时/计数器1P3.6WR外部数据存储器写选通P3.7RD外部数据存储器读选通此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。RST复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。ALE/PROG当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的9脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。PSEN程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。EA/VPP外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。FLASH存储器编程时,该引脚加上12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。XTAL1振荡器反相放大器和内部时钟发生电路的输入端。XTAL2振荡器反相放大器的输出端。并不是所有的地址都被定义了。片上没有定义的地址是不能用的。读这些地址,一般将得到一个随机数据;写入的数据将会无效。用户不应该给这些未定义的地址写入数据“1”。由于这些寄存器在将来可能被赋予新的功能,复位后,这些位都为“0”。定时器2寄存器寄存器T2CON和T2MOD包含定时器2的控制位和状态位(如表2和表3所示),寄存器对RCAP2H和RCAP2L是定时器2的捕捉/自动重载寄存器。中断寄存器各中断允许位在IE寄存器中,六个中断源的两个优先级也可在IE中设置。双数据指针寄存器为了更有利于访问内部和外部数据存储器,系统提供了两路16位数据指针寄存器位于SFR中82H83H的DP0和位于84H~85。特殊寄存器AUXR1中DPS=0选择DP0;DPS1选择DP1。用户应该在访问数据指针寄存器前先初始化DPS至合理的值。辅助寄存器AUXR地址8EH复位值XXX00XX0B不可位寻址预留扩展用DISALEALE使能标志位DISALE操作方式为0时ALE以1/6晶振频率输出信号。为1时ALE只有在执行MOVX或MOVC指令时激活。10DISRTO复位输出标志位为0时看门狗(WDT)定时结束,Reset输出高电平。为1时Reset只有输入。WDIDLE空闲模式下WDT使能标志位为0时空闲模式下,WDT继续计数。为1时空闲模式下,WDT停止计数。掉电标志位掉电标志位(POF)位于特殊寄存器PCON的第四位(PCON.4)。上电期间POF置“1”。POF可以软件控制使用与否,但不受复位影响。辅助寄存器1AUXR1地址A2H复位值XXXXXXX0B不可位寻址。预留扩展用DPS数据指针选择位DPS为0时选择DPTR寄存器DP0L和DP0H1,为1时选择DPTR寄存器DP1L和DP1H。1存储器结构MCS-51器件有单独的程序存储器和数据存储器。外部程序存储器和数据存储器都可以64K寻址。2程序存储器如果EA引脚接地,程序读取只从外部存储器开始。对于89S52,如果EA接VCC,程序读写先从内部存储器(地址为0000H~1FFFH)开始,接着从外部寻址,寻址地址为2000HFFFFH。3数据存储器AT89S52有256字节片内数据存储器。高128字节与特殊功能寄存器重叠。也就是说高128字节与特殊功能寄存器有相同的地址,而物理上是分开的。当一条指令访问高于7FH的地址时,寻址方式决定CPU访问高128字节RAM还是特殊功能寄存器空间。直接寻址方式访问特殊功能寄存器(SFR)。下面的直接寻址指令访问0A0H(P2口)存储单元MOV0A0H,data使用间接寻址方式访问高128字节RAM。例如,下面的间接寻址方式中,R0内容为0A0H,访问的是地址0A0H的寄存器,而不是P2口(它的地址也是0A0H)。MOVR0,data堆栈操作也是简介寻址方式。因此,高128字节数据RAM也可用于堆栈空间。4看门狗定时器WDT是一种需要软件控制的复位方式。WDT由13位计数器和特殊功能寄存器中的看门狗定时器复位存储器(WDTRST)构成。WDT在默认情况下无法工作;为了激活WDT,用户必须往WDTRST寄存器(地址0A6H)中依次写入01EH和0E1H。11当WDT激活后,晶振工作,WDT在每个机器周期都会增加。WDT计时周期依赖于外部时钟频率。除了复位(硬件复位或WDT溢出复位),没有办法停止WDT工作。当WDT溢出,它将驱动RSR引脚一个高电平输出。WDT的使用为了激活WDT,用户必须向WDTRST寄存器(地址为0A6H的SFR)依次写入0E1H和0E1H。当WDT激活后,用户必须向WDTRST写入01EH和0E1H喂狗来避免WDT溢出。当计数达到8191(1FFFH)时,13位计数器将会溢出,这将会复位器件。晶振正常工作、WDT激活后,每一个机器周期WDT都会增加。为了复位WDT,用户必须向WDTRST写入01EH和0E1H(WDTRST是只读寄存器)。WDT计数器不能读或写。当WDT计数器溢出时,将给RST引脚产生一个复位脉冲输出,这个复位脉冲持续96个晶振周期(TOSC),其中TOSC1/FOSC。为了很好地使用WDT,应该在一定时间内周期性写入那部分代码,以避免WDT复位。掉电和空闲方式下的WDT在掉电模式下,晶振停止工作,这意味这WDT也停止了工作。在这种方式下,用户不必喂狗。有两种方式可以离开掉电模式硬件复位或通过一个激活的外部中断。通过硬件复位退出掉电模式后,用户就应该给WDT喂狗,就如同通常AT89S52复位一样。通过中断退出掉电模式的情形有很大的不同。中断应持续拉低很长一段时间,使得晶振稳定。当中断拉高后,执行中断服务程序。为了防止WDT在中断保持低电平的时候复位器件,WDT直到中断拉低后才开始工作。这就意味着WDT应该在中断服务程序中复位。为了确保在离开掉电模式最初的几个状态WDT不被溢出,最好在进入掉电模式前就复位WDT。在进入待机模式前,特殊寄存器AUXR的WDIDLE位用来决定WDT是否继续计数。默认状态下,在待机模式下,WDIDLE=0,WDT继续计数。为了防止WDT在待机模式下复位AT89S52,用户应该建立一个定时器,定时离开待机模式,喂狗,再重新进入待机模式。UART在AT89S52中,UART的操作与AT89C51和AT89C52一样。为了获得更深入的关于UART的信息,选择“Products”,然后选择“8051-ArchitechFlashMicrocontroller”,再选择“ProductOverview”即可。12定时器0和定时器1在AT89S52中,定时器0和定时器1的操作与AT89C51和AT89C52一样。为了获得更深入的关于UART的信息,选择“Products”,然后选择“8051-ArchitechFlashMicrocontroller”,再选择“ProductOverview”即可。定时器2是一个16位定时/计数器,它既可以做定时器,又可以做事件计数器。其工作方式由特殊寄存器T2CON中的C/T2位选择。定时器2有三种工作模式捕捉方式、自动重载(向下或向上计数)和波特率发生器。如表3所示,工作模式由T2CON中的相关位选择。定时器2有2个8位寄存器TH2和TL2。在定时工作方式中,每个机器周期,TL2寄存器都会加1。由于一个机器周期由12个晶振周期构成,因此,计数频率就是晶振频率的1/12。捕捉方式在捕捉模式下,通过T2CON中的N2来选择两种方式。如果N20,定时器2时一个16位定时/计数器,溢出时,对T2CON的TF2标志置位,TF2引起中断。如果N21,定时器2做相同的操作。除上述功能外,外部输入T2EX引脚(P1.1)1至0的下跳变也会使得TH2和TL2中的值分别捕捉到RCAP2H和RCAP2L中。除此之外,T2EX的跳变会引起T2CON中的EXF2置位。像TF2一样,T2EX也会引起中断。在计数工作方式下,寄存器在相关外部输入角T2发生1至0的下降沿时增加1。在这种方式下,每个机器周期的S5P2期间采样外部输入。一个机器周期采样到高电平,而下一个周期采样到低电平,计数器将加1。在检测到跳变的这个周期的S3P1期间,新的计数值出现在寄存器中。因为识别1-0的跳变需要2个机器周期(24个晶振周期),所以,最大的计数频率不高于晶振频率的1/24。为了确保给定的电平在改变前采样到一次,电平应该至少在一个完整的机器周期内保持不变。自动重载当定时器2工作于16位自动重载模式,可对其编程实现向上计数或向下计数。这一功能可以通过特殊寄存器T2MOD中的DCEN(向下计数允许位)来实现。通过复位,DCEN被置为0,因此,定时器2默认为向上计数。DCEN设置后,定时器2就可以取决于T2EX向上、向下计数。DCEN0时,定时器2自动计数。通过T2CON中的N2位可以选择两种方式。如果N20,定时器2计数,计到0FFFFH后置位TF2溢出标志。计数溢出也使得定时器寄存器重新从RCAP2H和RCAP2L中加载16位值。定时器工作于捕捉模式,RCAP2H和RCAP2L的值可以由软件预设。如果N21,计数溢出或在外部T2EX(P1.1)引脚上的1到0的下跳变都会触发16位重载。这个跳变也置位EXF2中断标志位。13T2EX上的一个逻辑0使得定时器2向下计数。当TH2和TL2分别等于RCAP2H和RCAP2L中的值的时候,计数器下溢。计数器下溢,置位TF2,并将0FFFFH加载到定时器存储器中。置位DCEN,允许定时器2向上或向下计数。在这种模式下,T2EX引脚控制着计数的方向。T2EX上的一个逻辑1使得定时器2向上计数。定时器计到0FFFFH溢出,并置位TF2。定时器的溢出也使得RCAP2H和RCAP2L中的16位值分别加载到定时器存储器TH2和TL2中。定时器2上溢或下溢,外部中断标志位EXF2被锁死。在这种工作模式下,EXF2不能触发中断。T2MOD地址0C9H复位值XXXXXX00B不可位寻址。5)中断AT89S52有6个中断源两个外部中断(INT0和INT1),三个定时中断(定时器0、1、2)和一个串行中断。这些中断如图10所示每个中断源都可以通过置位或清除特殊寄存器IE中的相关中断允许控制位分别使得中断源有效或无效。IE还包括一个中断允许总控制位EA,它能一次禁止所有中断。如表5所示,IE.6位是不可用的。对于AT89S52,IE.5位也是不能用的。用户软件不应给这些位写1。它们为AT89系列新产品预留。定时器2可以被寄存器T2CON中的TF2和EXF2的或逻辑触发。程序进入中断服务后,这些标志位都可以由硬件清0。实际上,中断服务程序必须判定是否是TF2或EXF2激活中断,标志位也必须由软件清0。定时器0和定时器1标志位TF0和TF1在计数溢出的那个周期的S5P2被置位。它们的值一直到下一个周期被电路捕捉下来。然而,定时器2的标志位TF2在计数溢出的那个周期的S2P2被置位,在同一个周期被电路捕捉下来。2.1.3红外线传感器红外线传感器采用反射接收原理。一个红外线传感器配置了一个红外线发接受器、一个红外线接受器及其上拉电阻。其应用电路如图2.4所示。红外线发射器通电后不断会发射一定强度的红外线照射物体。红外线接收器在接受到一定强度的红外线会后导通。如图通过在红外线的正极接出一个信号来观察红外线接收器是否导通。当红外线接收器导通时,输出信号为0;反之则为1。红外线在不同颜色的物体上反射程度是不同的,当红外线传感器在黑色物体时,黑色物体吸收大量红外线,反射少量红外线,红外线接收其不足以导通,输出信号为1。当红外线传感器在白色物体上时,白色物体吸收的红外线少,反14射的红外线少,红外线接收器导通,输出信号为0。因此本设计采用红外线传感器模块与有黑线的路面组合使用。图2.4红外线传感器的应用电路2.2模块介绍2.2.1车头传感器模块图2.5车头传感器模块本系统共设计三个红外线传感器固定在底盘前沿,贴近地面,分别放置在电动车车头的正前方、左下方和右下方两。正常行驶时,发射管发射红外光照射地面,光线经白纸反射后被接收管接收,输出高电平信号;电动车经过黑线时,发射端发射的光线被黑线吸收,接收端接收不到反射光线,传感器输出低电平信号。正前方的传感器用于检测障碍物。见图2.5所示。红外线红外线接收器发射器VCCR215KR1220GND输出信号右下方传感器左下方传感器正前方传感器输出信号15图2.6电动小车模块2.2.2电动小车模块电动小车由两个直流电机与其驱动芯片组成。一左一右位于小车前端两边。电机通过齿轮组带动轮胎。后端是用于平衡的轮胎。小车电动机模块如图2.6所示2.2.3控制模块1时钟电路AT89S52虽然有内部振荡电路,但要形成时钟,必须外部附加电路。AT89S52单片机的时钟产生方法有两种。内部时钟方式和外部时钟方式。本设计采用内部时钟方式,利用芯片内部的振荡电路,在XTAL1、XTAL2引脚上外接定时元件,内部的振荡电路便产生自激振荡。本设计采用最常用的内部时钟方式,即用外接晶体和电容组成的并联谐振回路。振荡晶体可在1.2MHZ到12MHZ之间选择。电容值无严格要求,CX1、CX2可在20pF到100pF之间取值。所以本设计中,振荡晶体选择11.0592MHZ,电容选择30pF。2复位电路AT89S52的复位是由外部的复位电路来实现的。复位引脚RST通过在每个机器周期的对复位电路采样一次,然后才能得到内部复位操作所需要的信号。复位电路通常采用上电自动复位和按钮复位两种方式。最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充电来实现的。只要VCC的上升时间不超过1ms,就可以实现自动上电复位。时钟频率用11.0592MHZ时C取10uF,R取10KΩ。本设计就是用就是最简单的上电复位。控制器模块如图2.7所示。L9110L9110控制信号电动机加轮胎电动机加轮胎MM16图2.7控制器模块2.3整体方案小车的寻迹原理是当左侧传感器在黑线上时,传感器输出高电平,在白色地板上时输出低电平。电平信号进入单片机P3.5口,同理右侧传感器将电平信号传送到单片机P3.7口。单片机通过P0.0和P0.1口控制左电机组,通过P0.2和P0.3口控制右电机组。当正前方传感器检测出小车前方有物体阻挡时,正前方传感器输出低电平信号到单片机的P3.6口,单片机控制小车行动。整体硬件示意图如图2.8所示。当左右传感器都在黑线上时,单片机控制左右电机同时一同速度正向转动,小车向前行驶。当左侧传感器在黑线外,右侧传感器在黑线上,单片机控制右侧的电机停止(或反向转动),左侧的电机正向转动(或停止)来控制小车向右转。当右侧传感器在黑线外,左侧传感器在黑线上,单片机控制左侧的电机停止(或反向转动),右侧的电机正向转动(或停止)来控制小车向左转。从而来实现小车的自动寻迹。当正前方的有物体阻挡时,单片机控制小车停下来。图2.8小车整体示意图AT89S52R110KC130pfC230pfC310ufZ11.0592VCCGNDTXAL1TXAL2RES车头传感器模块控制器模块P3.5P3.6P3.7P0.0P0.1P0.2P0.3左下方传感器正前方传感器右下方传感器AT89S52电动小车模块左电动机组右电动机组173、软件设计3.1程序设计程序要的任务是,让单片机查询传感器模块发出的路面信号,根据信号作出反应,控制电动机工作实现自动寻迹。其程序流程图3.1所示。图3.1程序流程图3.1.1程序的模块化设计在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。因此,软件设计在微机控制系统设计中占重要地位。为了完成要求设计,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。所谓“模块”,实质上就是所完成一定功能,相对独立的程序段,这种程序设计方法叫模块程序设计法。模块程序设计法的主要优点是(1)单个模块比起一个完整的程序易编写及调试;(2)模块可以共存,一个模块可以被多个任务在不同条件下调用;(3)模块程序允许设计者分割任务和利用已有程序,为设计者提供方便

注意事项

本文(循迹小车的设计与制作)为本站会员(星星008)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(发送邮件至2622162128@qq.com或直接QQ联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给沃文网发消息,QQ:2622162128 - 联系我们

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2017-2019 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号  

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922