1、目 录目 录 .1摘 要: .2前 言3一.任务要求 .4(一)任务 .4二.系统设计方案 .5(一)小车循迹原理 .5(二)控制系统总体设计 .6三系统 方案 .7(一)寻迹传感器模块 .71红外传感器 ST188 简介 .72比较器 LM324 简介 .83具体电路 .94传感器安装 .10(二)控制器模 块 .11(三)电源模块 .13(四)电机及驱动模块 .141电机 .142驱动 .14(五)自动循迹小车总体设计 .161总体 电路图 .162系统总体说明 .18四软件设计 .18(一) PWM 控制 .18(二) 总体软件流程图 .19(三)小车循迹流程图 .19(四)中断程序流程
2、图 .21(五)单片 机测序 .22五致谢.25六参考资料 .27自动循迹小车1自动循迹小车摘要:本设计是一种基于单片机控制的简易自动寻迹小车系统,包括小车系统构成软硬件设计方法。小车以 AT89C51 为控制核心 , 用单片机产生 PWM 波,控制小车速度。利用红外光电传感器对路面黑色轨迹进行检测,并将路面检测信号反馈给单片机。单片机对采集到的信号予以分析判断,及时控制驱动电机以调整小车转向,从而使小车能够沿着黑色轨迹自动行驶,实现小车自动寻迹的目的。关键词:单片机 AT89C51 光电传感器 直流电机 自动循迹小车前言随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。全国电子大赛和
3、省内电子大赛几乎每次都有智能小车这方面的题目,全国各高校也都很重视该题目的研究。可见其研究意义很大。本设计就是在这样的背景下提出的,指导教师已经有充分的准备。本题目是结合科研项目而确定的设计类课题。设计的智能电动小车应该能够实时显示时间、速度、里程,具有自动寻迹、寻光、避障功能,可程控行驶速度、准确定位停车。根据题目的要求,确定如下方案:在现有玩具电动车的基础上,加装光电、红外线、超声波传感器及金属探测器,实现对电动车的速度、位置、运行状况的实时测量,并将测量数据传送至单片机进行处理,然后由单片机根据所检测自动循迹小车2的各种数据实现对电动车的智能控制。这种方案能实现对电动车的运动状态进行实时
4、控制,控制灵活、可靠,精度高,可满足对系统的各项要求。本设计采用 MCS-51 系列中的 80C51 单片机。以 80C51 为控制核心,利用超声波传感器检测道路上的障碍,控制电动小汽车的自动避障,快慢速行驶,以及自动停车,并可以自动记录时间、里程和速度,自动寻迹和寻光功能。80C51 是一款八位单片机,它的易用性和多功能性受到了广大使用者的好评。它是第三代单片机的代表。第三代单片机包括了 Intel 公司发展 MCS-51 系列的新一代产品,如8C15280C51FA/FB80C51GA/GB8C4518C452,还包括了PhilipsSiemensADMFujutsuOKIHarria-M
5、etraATMEL 等公司以80C51 为核心推出的大量各具特色与 80C51 兼容的单片机。新一代的单片机的最主要的技术特点是向外部接口电路扩展,以实现 Microcomputer 完善的控制功能为己任,将一些外部接口功能单元如 A/DPWMPCA(可编程计数器阵列)WDT(监视定时器)高速 I/O 口计数器的捕获/比较逻辑等。这一代单片机中,在总线方面最重要的进展是为单片机配置了芯片间的串行总线,为单片机应用系统设计提供了更加灵活的方式。Philips 公司还为这一代单片机 80C51系列 8C592 单片机引入了具有较强功能的设备间网络系统总线-CAN(Controller Area N
6、etwork BUS).新一代单片机为外部提供了相当完善的总线结构,为系统的扩展与配置打下了良好的基础。 一任务要求(一)任务 设计一个基于直流电机的自动寻迹小车,使小车能够自动检测地面黑色轨迹,并沿着黑色车轨迹行驶。系统方案方框图如图 1-1 所示。检测(黑线) 驱动电机软件控制 控制小车图 1-1 系统方案方框图自动循迹小车3二系统设计方案(一)小车循迹原理这里的循迹是指小车在白色地板上循黑线行走,由于黑线和白色地板对光线的反射系数不同,可以根据接收到的反射光的强弱来判断“道路” 。通常采取的方法是红外探测法。红外探测法,即利用红外线在不同颜色的物体表面具有不同的反射性质的特点,在小车行驶
7、过程中不断地向地面发射红外光,当红外光遇到白色纸质地板时发生漫反射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,小车上的接收管接收不到红外光。单片机就是否收到反射回来的红外光为依据来确定黑线的位置和小车的行走路线。红外探测器探测距离有限。小车供电后,红外光电二极管发出红外光,光线照在路面上反射回来被光电二极管接收,半导体二极管在电场作用下产生电势,将光信号转换成电信号。该智能小车在画有黑线的白纸 “路面”上行驶,由于黑线和白纸对光线的反射系数不同,可根据接收到的反射光的强弱来判断“道路”黑线。当小车检测到黑线时,红外线部分被黑线吸收,反射回的红外线极少被光电二极管接收,转换成比
8、较弱的电信号;当小车未检测到黑线时,红外线大部分被反射,反射回的红外线被光电二极管接收,转换成比较强的电信号。最终,这些电信号经过比较器处理后传入单片机,再由单片机进一步做信号处理。自动循迹小车4(二)控制系统总体设计自动循迹小车控制系统由主控制电路模块、稳压电源模块、红外检测模块、电机及驱动模块等部分组成,控制系统的结构框图如图2-1 所示。稳压电源模块主控芯片AT89C51 L298 减速电机光电传感器电压比较器图 2-1 控制系统的结构框图1、 主控制电路模块:用 AT89C51 单片机、复位电路,时钟电路整个系统主要由主控中心(单片机)、复位电路、时钟电路、按键控制电路、数码管显示电路
9、及 LED 模仿交通信号灯电路等功能模块组成。遇到特殊情况时可以通过按键电路控制实时交通实际情况,系统框图如图 1 所示。2、 红外检测模块:光电传感器 ST188,比较器 LM324红外线光电传感器(简称光电传感器,又称光电开关)是通过把光强度的变化转换成电信号的变化来实现控制的。光电开关是传感器大家族中的成员,它把发射端和接收端之间光的强弱变化转化为电流的变化以达到探测的目的。由于光电开关输出回路和输入回路是电隔离的(即电缘绝),所以它可以在许多场合得到应用。3、 电机及驱动模块:电机驱动芯片 L298N、两个直流电机L298N 是 SGS 公司的产品,内部包含 4 通道逻辑驱动电路。是一
10、种二相和四相电机的专用驱动器,即内含二个 H 桥的高电压大电流双全桥式驱动器,接收自动循迹小车5标准 TTL 逻辑电平信号,可驱动 46V、2A 以下的电机。其引脚排列如图 1 中 U4所示,1 脚和 15 脚可单独引出连接电流采样电阻器,形成电流传号。L298 可驱动 2 个电机,OUTl、OUT2 和 OUT3、OUT4 之间分别接 2 个电动机。5、7、10、12 脚接输入控制电平,控制电机的正反转,ENA,ENB 接控制使能端,控制电机的停转。在许多场合得到应用。4、 电源模块:双路开关电源模块电源是可以直接贴装在印刷电路板上的电源供应器,其特点是可为专用集成电路(ASIC)、数字信号
11、处理器 (DSP)、微处理器、存储器、现场可编程门阵列 (FPGA) 及其他数字或模拟负载提供供电。一般来说,这类模块称为负载点 (POL) 电源供应系统或使用点电源供应系统 (PUPS)。由于模块式结构的优点甚多,因此模块电源广泛用于交换设备、接入设备、移动通讯、微波通讯以及光传输、路由器等通信领域和汽车电子、航空航天等。三系统方案(一)寻迹传感器模块ST系列反射式光电传感器是经常使用的传感器。这个系列的传感器种类齐全、价格便宜、体积小、使用方便、质量可靠、用途广泛。我们采用ST188作为红外检测传感器。在黑线检测的测试中,若检测到白色区域,发射管发射的红外线没有反射到接收管,测量接收管的电
12、压为48V ,若检测到黑色区域,接收管接受到发射管发射的红外线,电阻发生变化,所分得的电压也就随之发生变化,测的接收管的电压为05V,测试基本满足要求。判断有无黑线我们用的一块比较器LM324, 比较基准电压由30K的变阻器调节,各个接收管的参数都不一致,每个传感器的比较基准电压也不尽相同,我们为每个传感器配备了一个变阻器。1.红外传感器 ST188 简介含一个反射模块(发光二极管)和一个接收模块(光敏三极管)。通过发射红外信号,看接收信号变化判断检测物体状态的变化。A、K之间接发光二极自动循迹小车6管,C、E之间接光敏三极管(二者在电路中均正接,但要串联一定阻值的电阻)图 3-1 ST188
13、 实物图 图 3-2 ST188管脚图及内部电路2.比较器 LM324 简介LM324为四运放集成电路,采用14脚双列直插塑料封装。内部有四个运算自动循迹小车7放大器,有相位补偿电路。电路功耗很小,工作电压范围宽,可用正电源330V,或正负双电源15V15V工作。在黑线检测电路中用来确定红外接收信号电平的高低,以电平高低判定黑线有无。在电路中,LM324的一个输入端需接滑动变阻器,通过改变滑动变阻器的阻值来提供合适的比较电压。图 3-3 LM324 内部电路 图 3-4 集成运放的管脚图自动循迹小车83.具体电路通过ST188检测黑线,输出接收到的信号给LM324 ,接收电压与比较电压比较后,
14、输出信号变为高低电平,再输入到单片机中,用以判定是否检测到黑线。图3-5 传感器模块电路图4.传感器安装在小车具体的循迹行走过程中,为了能精确测定黑线位置并确定小车行走的方向,需要同时在底盘装设4个红外探测头,进行两级方向纠正控制,提高其循迹的可靠性。这4个红外探头的具体位置如图3-6所示。自动循迹小车9图3-6 传感器安装图图中循迹传感器全部在一条直线上。其中X1与Y1为第一级方向控制传感器,X2与Y2为第二级方向控制传感器,并且黑线同一边的两个传感器之间的宽度不得大于黑线的宽度。小车前进时,始终保持(如图3-6中所示的行走轨迹黑线)在X1和Y1这两个第一级传感器之间,当小车偏离黑线时,第一
15、级传感器就能检测到黑线,把检测的信号送给小车的处理、控制系统,控制系统发出信号对小车轨迹予以纠正。若小车回到了轨道上,即4个探测器都只检测到白纸,则小车会继续行走;若小车由于惯性过大依旧偏离轨道,越出了第一级两个探测器的探测范围,这时第二级探测器动作,再次对小车的运动进行纠正,使之回到正确轨道上去。可以看出,第二级方向探测器实际是第一级的后备保护,从而提高了小车循迹的可靠性。 (二)控制器模块采用 Atmel 公司的 AT89C51 单片机作为主控制器。它是一个低功耗,高性能的 8 位单片机,片内含 32k 空间的可反复擦写 100,000 次 Flash 只读存储器,具有 4K 的随机存取数
16、据存储器(RAM) ,32 个 I/O 口,2 个 8 位可编程定时计数器,且可在线编程、调试,方便地实现程序的下载与整机的调试。时钟电路和复位电路 如图 3-7(与单片机构成最小系统)1) 采用外部时钟,晶振频率为 12MHZ。没有晶振,就没有时钟周期,没有时钟周期,就无法执行程序代码,单片机就无法工作。 单片机工作时 ,是一条一条地从 RoM 中取指令,然后一步一步地执行。单片机访问一次存储器的时间,称之为一个机器周期,这是一个时间基准。个机器周期包括 12 个时钟周期。如果一个单片机选择了 12MHz晶振,它的时钟周期是 1/12us,它的一个机器周期是 12(1/12)us,也就是 1us。 MCS51 单片机的所有指令中 ,有一些完成得比较快 ,只要一个机器周期就行了,有一些完成得比较馒,得要 2 个机器周期,还有两条指令要 4 个机器周期才行。为了衡量指令执行时间的长短,又引入一个新的概念:指令周期。所谓指令周期就是指执行一条指令的时间。 提供时序的频率 ! 提供单片机工作的时序,其实就相当于你电脑 CPU 主频一个原理的。2) 采用按键复位。单片机的复位有上电复位和按钮手动复位两种。如图(a)所示为上电复位电路,图(b)所示为上电按键复位电路。