光电循迹小车毕业论文_第1页
光电循迹小车毕业论文_第2页
光电循迹小车毕业论文_第3页
光电循迹小车毕业论文_第4页
光电循迹小车毕业论文_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

武汉理工大学毕业设计(论文)基于光电传感器的自动循迹智能车系统设计学院(系)理学院专业班级光信科1002班学生姓名庄斌指导教师廖红、范莉莉学位论文原创性声明本人郑重声明所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包括任何其他个人或集体已经发表或撰写的成果作品。本人完全意识到本声明的法律后果由本人承担。作者签名年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保障、使用学位论文的规定,同意学校保留并向有关学位论文管理部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权省级优秀学士论文评选机构将本学位论文的全部或部分内容编入有关数据进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。本学位论文属于1、保密囗,在年解密后适用本授权书2、不保密囗。(请在以上相应方框内打“”)作者签名年月日导师签名年月日I摘要基于光电传感器的自动循迹智能车的设计涉及到传感技术,控制技术,电气,计算机,机械等多方面的知识。为了实现小车快速稳定地循迹的功能,设计了小车控制系统,以实现小车在不同的道路情况下都能快速行驶以及转弯的功能。循迹小车以89C51单片机作为控制核心,通过位于小车前方的12个光电传感器来检测小车的位置和运动方向来获取轨道信息,再根据轨道信息来判断出相应的轨道类型,并分配不同的速度和转角;红外对射传感器用于检测智能车的速度,以脉宽调制控制方式(PWM)控制电机和舵机以达到控制智能车的行驶速度和偏转角度。其中采用PID控制算法调节驱动电机的转速的舵机的方向,完成对模型车运动速度和运动方向的闭环控制。使智能车能够准确地识别特定的轨道,并沿着引导线以较高速度行驶。整个智能车系统涉及车模机械结构的改装、传感器电路设计及控制算法等多个方面。经过多次反复的测试,最终确定了现有的智能车模型和各项控制参数。关键词89C51单片机;脉冲宽度调制;比例积分微分控制器光电传感器智能车IIABSTRACTMAKINGAUTOMATICTRACINGCARINVOLVEDTHEPROFESSIONALKNOWLEDGEINCLUDINGSENSINGTECHNOLOGY,CONTROL,AUTOMOBILEELECTRONICS,ELECTRICAL,COMPUTER,MACHINERYANDSOONMANYSUBJECTSINORDERTOACCURATELYIDENTIFYTHEROADANDREALTIMECONTROLTHESPEEDANDDIRECTIONOFTHESMARTCARIDESIGNTHEINTELLIGENTVEHICLECONTROLSYSTEMTHROUGHTHISWAYTHECARCANRUNANDTURNQUICKLYONDIFFERENTWAYSTHISINTELLIGENTVEHICLECONTROLSYSTEMDESIGNTAKETHE89C51MICROCONTROLLERASACORE,EXAMINESCARSPOSITIONANDTHEHEADINGTHROUGH15PHOTOELECTRICSENSORSGAINSTHERACECOURSEINFORMATION,JUDGESTHECORRESPONDINGRACECOURSETYPEACCORDINGTOTHERACECOURSEINFORMATION,ANDASSIGNEDTHEDIFFERENTSPEEDTOCONTROLFORTHEHARDWARECIRCUITTHEINFRAREDCORRELATIONSENSORUSESINEXAMININGTHEINTELLIGENTVEHICLESSPEED,PWMCONTROLSTHEELECTRICALMACHINERYANDTHESERVOBYTHEPULSEDURATIONMODULATIONCONTROLMODEACHIEVESTHECONTROLINTELLIGENCEVEHICLESMOVINGVELOCITYANDTHEDEFLECTIONDIRECTIONTHESOFTWAREISCOMPILATEDWITHTHECLANGUAGE,ACTUATESELECTRICALMACHINERYSROTATIONALSPEEDANDSERVOSDIRECTIONWITHTHEPIDCONTROLALGORITHMADJUSTMENT,COMPLETESTOTHEMODELVEHICLEVELOCITYOFMOVEMENTANDTHEHEADINGCLOSEDLOOPCONTROLTHEINTELLIGENTVEHICLECANDISTINGUISHTHESPECIFICRACECOURSERAPIDLYACCURATELY,ANDALONGINLETLINEBYTHEHIGHSPEEDCONTROLTRAVELTHEENTIREINTELLIGENTVEHICLESYSTEMINVOLVESTHEVEHICLEMOLDMECHANISMTHEREEQUIPPING,THESENSORCIRCUITDESIGNANDTHECONTROLALGORITHMANDSOONMANYASPECTSAFTERTHEREPEATEDTEST,HASDETERMINEDTHEEXISTINGINTELLIGENTVEHICLEMODELANDEACHCONTROLLEDVARIABLEFINALLYMANYTIMESKEYWORDSSTC89C51PWMPIDPHOTOELECTRICSENSORSMARTCAR目录第1章绪论111引言112设计方案1121总体框架设计1122路面轨迹检测系统2123信号处理系统3第2章软件仿真521仿真软件介绍522参数设计及决策程序8第3章硬件电路设计1031系统硬件概述1032电源模块设计1133电机驱动模块1134舵机控制模块1235速度测量模块1336单片机系统模块14第4章软件系统设计1541路径识别传感器信号的采集1542路径识别传感器信号的处理1643路径走向预测原理及方法1744加减速原理及方法18第5章开发与调试1951传感器及外围电路的调试1952舵机的调试过程1953直流电机的调试1954整体调试2055结论2056问题与展望21参考文献22附录23致谢33武汉理工大学毕业设计(论文)1第1章绪论11引言移动机器人在各个领域都具有广泛的应用前景。例如,在工业生产中,可以代替人类完成恶劣环境下的货物搬运,设备检测等任务;在民用上,可以作为导盲车为盲人提供服务;在军事上,可以在危险地带代替人类完成侦查、排雷等任务。视觉定位方法是近几年发展起来的一种先进的定位方法。视觉不仅是指对光信号的感受,还包括对视觉信息的获取、传输、处理、存储与理解的全过程。信号处理理论与计算机出现以后,人们试图用摄像机来获取环境图像并转换成数字信号,用计算机实现对信息的处理。其不仅使机器人可以感知环境中物体的几何信息,形状、位置、姿态、运动等,而且能对它们进行描述、存储、识别与理解1。根据统计,人类接收的信息80以上来自视觉,同样对于移动机器人而言,利用视觉传感器获取环境信息有多方面的优势。视觉技术在信息量和采集速度上的两大优势决定了其在移动机器人的发展中将起着至关重要的作用,而依赖视觉导航的机器人也将成为移动机器人中极具“智慧”的一种。首先,对于导航来说,视觉信息不仅包含了视野内物体的距离信息,而且包含有物体的颜色,外形等信息,这些信息是其他主动传感器所不能提供的,而这些信息为移动机器人具有更高的智能打下了坚实的基础。12设计方案121总体框架设计如下图所示,该智能小车主要包括以下三大块(1)信息采集模块该模块主要是对智能车的位置信息进行采集,并将采集到的信息传送给MCU,其核心是光电传感器。(2)信息处理模块信息处理模块包括信息处理和控制模块,其核心MCU。MCU接收到采集到的数据信号,对信号进行处理后执行判断,并发出控制信号。(3)执行模块该模块包括了电机和舵机。当接收到MCU的命令后便开始执行操作,同时信息采集模块又采集到舵机,电机的状态信息,反馈给MCU。从而整个系统构成一个闭环系统。在运行过程中,系统自行调节,从而实现快速稳定行驶的功能2。武汉理工大学毕业设计(论文)2图11系统整体框架图122路面轨迹检测系统路面检测系统要实现对路面轨迹线的检测,就是利用红外光电管对行驶路线上的黑色线进行读取判断,并把检测到的信号传送给单片机,以供单片机做出判断,输出决策信号。本系统采用反射式红外光电传感器用于检测路面轨迹线,行车方向检测电路如图12所示。电路采用反射接收原理配置了一对红外发射、红外接收传感器。这个电路包括一个红外光敏二极管上接一个电阻和一个红外发光二极管。红外发光二极管可以发射一定的红外光信号照射路面,如果路面是黑色的,那么红外接收管就几乎不能接受到反射回来的光信号而截止。如果路面是白色的,那么此时会有大量的红外光被反射,红外接收管就会导通。在本系统中,出于设计简便的原则,选择了将12对光电管均匀分布于一排的设计方案。由于跑道的宽度小于25CM,故光电管阵列之间不需要排的太开。因此选择光电管对的间隔为15MM,所以12对光电管排布下来的宽度只有大概18CM,符合规则要求。运用12对光电管的好处就是采集的跑道信息精度较高,信息比较连续,因此赛车跑起来不会出现明显的“抖”的现象;单排光电管阵列的缺点是前瞻性比较差,使得赛车不能进行比较提前的判断和控制,因此在一定程度上限制了智能车的速度。武汉理工大学毕业设计(论文)3图12行车方向检测电路123信号处理系统最简单的控制算法是实时控制,就是只将当前的检测信号传输到单片机来进行处理,而不考虑之前检测信号的情况以及之后可能出现的轨道的变化预测。这种算法简单快捷,实现起来也十分方便,但是在一定程度上会阻碍小车速度的进一步提高,因为其无法很好地根据不同的道路类型来调整车速。所以在本系统中,采用了PID控制算法。PID控制器是由比例控制单元(P),积分控制单元(I),微分控制单元(D)这三部分组成的控制器。如图13所示,PID控制器也是一种线性控制器,根据给定值与反馈信号做差值给出控制偏差,将偏差按比例,积分与微分三种运算通过求和的方式计算出控制量,对被控对象进行控制,故称为PID控制器。PID控制3在PD控制的基础上加入了积分分控制,在阶跃信号的作用下,首先产生的是比例微分作用,使调节作用加强,直到最后达到消除静养的效果。因此PID调节从动态,静态都有所改善。当然P、I、D三个参数的设定更难,也需要不断进行调试,凭经验来设定,因此其适应性不好,但是可以使被小车更稳定的行驶。由于跑道模型与相关参数已给定,即小车运行的环境基本上已经确定,可通过不断调试来获得最优的参数。武汉理工大学毕业设计(论文)4图13PID控制系统的基本结构武汉理工大学毕业设计(论文)5第2章软件仿真21仿真软件介绍PLASTID4是为“飞思卡尔”杯全国大学生智能车邀请赛开发的智能车仿真系统,不仅可以针对不同的赛车,赛道,路径识别方案,控制策略等内容进行仿真和相关分析,还增添了许多新的功能,使仿真系统更接近于实际情况,为使用者提供更好,更真实的虚拟仿真平台。PLASTID主要有以下几大特点1赛道与赛车环境模拟系统分别针对赛道与赛车建立模型,使用者可以方便的自行设计直线,弯道等各种形状的赛道,并可根据赛车的实际情况调整赛车的参数,使用方便灵活。在条件限制,没有办法制作试验赛道或智能车尚未制作完成的情况下,更可以在该系统下验证,调试控制算法。2控制算法仿真验证系统采用纯软件仿真形式,通过将控制程序编写成DLL文件,系统调用DLL文件来实现仿真。DLL的编写可以使用VC6,VC2005,DELPHI7,DELPHI2006使用者可以根据自身情况,选择最适合自己的编程环境来编写程序。验证调试后的算法代码,也可以很方便的移植到单片机中。3路径识别方案分析系统提供了广泛使用的光电传感器和CCD传感器模型,使用者可以自行设计传感器的数量及排列方式,位置,在系统中进行仿真,通过分析比较,从而获得优化方案。很多程度上解决了实地试验中更换传感器麻烦,费时的问题。从而极大提高方案分析效率。图21程序主界面武汉理工大学毕业设计(论文)6在此界面中,用户可以在菜单工具栏中的“文件”、“工具”、“帮助”等菜单进行操作;同时,也可以操作菜单工具栏下方的选项“赛道设计”、“赛车设计”、“仿真模拟”、“结果回放”,进入相应的操作子界面进行进一步的操作。赛道设计在赛道设计子界面中,可以进行赛道的设计操作,如新建及修改赛道、赛道基本参数设定等。赛车设计在赛车设计子界面中,用户建立自己的小车模型,并根据自己小车的实际情况对相关参数进行设置。同时,我们也提供了一些默认参数供用户调试。仿真模拟完成前面的赛道和赛车设计之后,在仿真模拟子界面中,可以完成仿真系统最重要的功能仿真模拟,为用户编写的算法作一个定性的评估;结果回放在结果回放子界面中,可以观看仿真模拟之后保存的结果,用户可以通过播放、暂停、步进、步退等功能操作回放过程,分析回放结果。图22仿真系统的软件架构基本模型层包括赛车模型与赛道模型,用户可根据实际情况设定模型参数如赛道参数、赛车参数、电机参数等等,它为整个系统提供了底层的物理模型驱动,仿真结果在此基础上计算而得。传感器层包括传感器种类、数量以及安装位置的设置,用户可以根据自己参赛队的实际的条件选择合适的传感器方案,同时也可以暂时设定一个方案,以后再作进一步的调整。在控制算法层,用户可以提供自己编写的算法以供仿真使用。仿真环境层在各个模型参数设置完毕、初始化成功的条件下,通过前面所设置的赛车、赛道模型以及接受控制算法所输出的控制信号(电机控制、转向控制信号),计算出车的行驶路线及各个运动、机电状态参数,并即时地将数据传回控制算法层。在仿真过程中,系统将仿真过程中的一些重要状态参数记录下来,并可将结果保存为仿真记录文件。在回放模式中,用户可调用仿真保存的仿真记录文件,对其仿真结果进行后期分析和处理,进而改进自己武汉理工大学毕业设计(论文)7的赛车设置以及控制算法。图23赛道设计界面赛道主视窗及全局视窗可即时显示出正在设计的赛道的形状,供用户设计时参考,当坐标停留在主视窗内时,左下角状态栏会有当前鼠标点的坐标显示,方便用户设计赛道时地定位。用户可以通过赛道编辑来实现赛道地设计,右下角的数据列表还有当前赛道地数据信息显示,这样使赛道设计更加方便、直观。图24赛车设计界面赛车设计包括赛车基本参数设置、电机参数设置、舵机参数设置、添加并设置传感器参数四个方面。获得并设置准确的各种参数,是一个好的赛车模型的基础。武汉理工大学毕业设计(论文)8图25仿真界面仿真开始之后,系统提供了5块区域显示赛车行驶过程中的各种状态参数1)主视窗显示局部区域的赛车运行姿态,用于细节观察。2)全局视窗显示全局信息,用于观察赛车运行全局状态。3)传感器视窗显示传感器信号,同“赛车测试”。4)行驶参数区显示当前时间,赛车车速、加速度、前轮转角、偏差距离、位置等状态参数。偏差距离赛车中心点到赛道中心线的最短距离。5)行驶曲线区显示速度和偏差距离的历史曲线,用于观察两者变化的趋势。是评估控制算法效果的重要依据。22参数设计及决策程序INCLUDE“JUDGEMENTH“UNSIGNEDSHORTPWMEXTERN“C“_DECLSPECDLLEXPORTVOIDJUDGEUNSIGNEDSHORTSPEED,UNSIGNEDCHARSENSORDATA,INTCCDHEIGHT,武汉理工大学毕业设计(论文)9UNSIGNEDSHORTSENSORCOUNT,UNSIGNEDCHARCCDDATA,INTCCDWIDTH,UNSIGNEDSHORTMOTORPWM,UNSIGNEDSHORTSTEERPWM)SENSORCOUNT12IFSENSORDATA50MOTORPWM16000IFSENSORDATA60STEERPWM38000MOTORPWM16000IFSENSORDATA50STEERPWM28000MOTORPWM16000IFSENSORDATA80STEERPWM50000MOTORPWM8000IFSENSORDATA30STEERPWM16000MOTORPWM8000IFSENSORDATA90STEERPWM55000MOTORPWM8000IFSENSORDATA20STEERPWM9000MOTORPWM8000IFSENSORDATA10STEERPWM4000MOTORPWM4000IFSENSORDATA100STEERPWM62000MOTORPWM4000IFSENSORDATA70STEERPWM44000MOTORPWM12000IFSENSORDATA40STEERPWM22000MOTORPWM12000IFSENSORDATA00STEERPWM0MOTORPWM2000IFSENSORDATA110STEERPWM65500MOTORPWM2000EXTERN“C“_DECLSPECDLLEXPORTVOIDRESET武汉理工大学毕业设计(论文)10第3章硬件电路设计31系统硬件概述系统硬件框架图如图31所示图31系统硬件框架图控制核心是89C515单片机。其是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFALSHPROGRAMMABLEANDERASABLEREADONLYMEMORY)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,STC89C51是一种高效微控制器利用片内资源结合具体模块的功能要求具体实现技术路线如下1电源管理核心板最小系统供电、传感器供电、舵机供电和直流电机供电。要求A低压差,实现65V72V电池到5V转换;(B可提供足够电流输出,驱动发射光电管,并考虑一定的安全余量;(C考虑芯片散热的问题,提供热关断、短路保护和安全操作保护等功能。2舵机控制模块化模型舵机利用信号输入端的占空比不同调节转角,可以通过单片机芯片内置PWM模块配合编程实现。3直流电机驱动采用PWM驱动。要求A开断电流能力强,驱动功率大,质量可靠;B具有过流保护、欠压保护、热关断的能力,各种功能使用方便。结合集成功率芯片选择要求和直流电机运行参数,选用大功率电机驱动模块ZNCD1043。武汉理工大学毕业设计(论文)1132电源模块设计电源是一个智能车系统得以运行的关键及动力所在。根据“硬件设计最简”的原则,需要完善电源设计方案。整个智能车的电源是由一块72V3700MAH锂电池提供,为了使智能车系统各部件能正常的工作,故需对72V3700MAH锂电池进行电压调节。其中,中央控制系统(最小系统)、路径识别的光电传感器和接收器电路、需要5V电压,伺服电机工作电压范围48V到6V根据多次调试决定使用5V电源给供电,直流电机可以使用72V3700MAH锂电池直接供电。电源供电部分关系到整个系统工作的稳定性,由于采用的是锂电池供电,内阻比较大,电机启动或者突然加速的瞬间,电池输出的电流很大,电池两端电压突然会降低。为了保证单片机和其他模块工作正常,所以在对电源供电的设计方面,要求电路工作效率高,输出电压稳定。而且随着车子在跑道上跑,随着电池电量的消耗,电池两端的电压也会慢慢降低,这就要求稳压芯片的选取要工作压差小。本系统所需电压有5V、72V,其中72V部分为电机驱动电压,可由电池直接提供;5V部分为路径识别模块,舵机控制模块,串口通信模块,单片机最小系统模块等6。33电机驱动模块智能小车后轮驱动电机型号为RS380电机,工作在72V电压下,空载电流为05A,转速为16200R/MIN在工作电流为33A,转速达到14060R/MIN时,工作效率最大。通过电机驱动模块,控制驱动电机两端电压使小车加速运行,也对模型车进行制动。由于不需要小车倒车,所以电机只工作在正转方向上做功与发电两个状态。可以使用大功率晶体管,全桥或者半桥电路,输出PWM波形实现对于电机的控制。为了进一步提高对于电机驱动的能力,还可以从如下方面进行改造1采用大功率MOS管组成电机驱动电路,例如MOS管IRF540,由于大功率MOS管导通电阻小,允许大电流通过,可以提供更大的瞬间加速电流7。但是相应的电路设计较为复杂。图32给出了使用MOS管组成的电机驱动电路。2驱动集成电路并联使用提供更大的驱动电流。将两片33886电机驱动芯片PINTOPIN并联使用,借助驱动芯片内部输出特性实现两片输出电流均衡8。武汉理工大学毕业设计(论文)12图32MOS管组成的电机驱动电路3为功率管或者驱动电路添加散热片,改善它们工作条件,提高它们过载能力。电机驱动电路的电源可以直接使用电源两端的电压。小车在启动的过程中往往会产生很大的冲击电流,一方面会对其他电路造成电磁干扰;另一方面由于电池内阻造成电池两端的电压下降,甚至会低于稳压电路所需要的最低电压值,产生单片机复位现象。为了克服启动冲击电流的影响,可以在电源中增加容值较大的电解滤波电容,也可以采用缓启动的方式控制电机。在启动时,驱动电路输出电压有一个渐变过程,使得电机启动速度略为降低从而减小启动冲击电流的幅度9。34舵机控制模块舵机主要是用来控制智能车的运动方向,通过调节小车前轮转动的角度来改变小车运动方向的。智能车的角度控制是通过单片机输出PWM信号对舵机进行控制的,舵机内部有一个基准电路,能产生周期为20MS,宽度为15MS的基准信号,当PWM信号输入到舵机时,舵机内部产生一个直流偏置电压,此电压与电位器的电压比较,将获得电压差输出,最后,电压差的正负输出到电机驱动芯片决定舵机的正反转。因此,当单片机输出一定占空比的PWM光电时,舵机就会转动一定的角度。舵机本身是一个位置随动系统。它由舵盘、减速齿轮组、位置反馈电位计、直流电机和控制电路组成。通过内部的位置反馈,使它的舵盘输出转角正比于给定的控制信号,因此对于它的控制可以使用开环控制方式。在负载力矩小于其最大输出力矩的情况下,它的输出转角正比于给定的脉冲宽度。舵机接口一般采用三线连接方法,黑线为电源地线,红线为电源线。一般采用两种标准,48V和6V。另外一根连线(蓝色或者黄色)为控制信号线。控制信号为20MS左右武汉理工大学毕业设计(论文)13的脉冲信号,脉冲信号的宽度决定舵机输出舵盘的角度10。舵机输出转角与控制信号脉宽之间的关系如图33所示。图33舵机输出转角与控制信号脉宽之间关系35速度测量模块为了实现小车的智能化,必须利用传感器来采集跑道信息,再把车模运动的速度采集给单片机,进而实现智能调速,实现车模的智能化。本系统用到的速度传感器是光电编码器11。它是一种集光、机、电为一体的数字化检测装置,它具有分辨率高、精度高、结构简单、体积小、使用可靠、易于维护、性价比高等优点。近10几年来,发展为一种成熟的多规格、高性能的系列工业化产品,在数控机床、机器人、雷达、光电经纬仪、地面指挥仪、高精度闭环调速系统、伺服系统等诸多领域中得到了广泛的应用。光电编码器可以定义为一种通过光电转换,将输至轴上的机械、几何位移量转换成脉冲或数字量的传感器,它主要用于速度或位置(角度)的检测。典型的光电编码器由码盘(DISK)、检测光栅(MASK)、光电转换电路(包括光源、光敏器件、信号转换电路)、机械部件等组成12。一般来说,根据光电编码器产生脉冲的方式不同,可以分为增量式、绝对式以及复合式三大类。按编码器运动部件的运动方式来分,可以分为旋转式和直线式两种。由于直线式运动可以借助机械连接转变为旋转式运动,反之亦然。因此,只有在那些结构形式和运动方式都有利于使用直线式光电编码器的场合才予使用。旋转式光电编码器容易做成全封闭型式,易于实现小型化,传感长度较长,具有较长的环境适用能力,因而在实际工业生产中得到广泛的应用,此次设计用到的就是旋转式光电编码器。也是目前应用最多的传感器13。其工作原理是通过光电转换将输出轴上的机械几何位移量转换成脉冲或数字量的传感器。光电编码器是由光栅和光电检测装置组成。光栅盘是在一定直径的圆板上等分地开通若干个长方形孔。由于光电码盘与被测对象同速旋转,经发光二极管等电子元件组成的武汉理工大学毕业设计(论文)14检测检测输出若干脉冲信号,通过计算每秒光电编码器输出脉冲的个数就能反映当前被测对象的转速。36单片机系统模块单片机模块主要负责道路的识别、获取智能车的速度、输出驱动电机的控制信号和算法的实现,通过串口驱动电路中的RS232电平转换芯片,单片机可以利用异步通信协议与PC机通信。RS232电平转换芯片可以实现TTL电平与RS232电平之间的转换,然后通过9芯串行口与PC进行串口通信14。单片机及外围电路如图34所示图34单片机最小系统电路图武汉理工大学毕业设计(论文)15第4章软件系统设计41路径识别传感器信号的采集为了让赛车高速、安全可靠的行驶,控制算法必须考虑到各种情况,并对其做出正确的判断和有效的处理。赛车成绩的提高很大程度上取决于弯道行驶的速度及其稳定性。智能车的识别系统由12对红外发射接收管组成。当传感器检测到黑线时平均电压只有07V,检测到白纸时输出的平均电压高达48V利用这一差值,可以将车模状态位置进行细分。设某一红外传感器的有效反射区刚进入黑色引导线时位移为0,临近三个传感器的相对位置如图14所示。每隔2MM测量一次,被测传感器信号数据如表1所示。表41传感器信号数据依据表41中传感器相对位置与输出电压数据,可以得到传感器输出电压与相对位置的关系,如图41所示。图41传感器输出电压与相对位置的关系由图41中的输出电压与相对位置的关系可以看出,传感器相对黑线位置和输出电压移动距离/MM024681012输出电压/V4847444943384352336移动距离/MM14161820222426输出电压/V2871760710707168284移动距离/MM28303234363840输出电压/V34436538142445465471武汉理工大学毕业设计(论文)16的关系不是线性的,经过测量后可以精确标定舵机转向角度。42路径识别传感器信号的处理系统通过8位A/D转换器采集红外传感器的信号,为了保证检测信号的稳定性,系统每5MS对红外传感器扫描1次,并把转换后的值暂时存储在内存中。考虑到红外传感器易受可见光和赛车的抖动等引起的误信号影响,因此在控制算法中加入了一些软件滤波程序,以排除干扰。这里不是用1次采样数据做控制判断,而是在赛车启动后最开始的20MS内连续采集4次传感器信号并取平均值,以后每5MS采集1次的信号替换掉前4次中最早进入的信号并取平均值,即总是以最近4次采集的A/D值的平均值作为每个传感器的A/D值。这样不仅避免了时间的浪费,还可以除去周期小于10MS的错误信号,使信号更可靠15。传感器信号经过初步滤波处理后,就可拿来判断路况。为了增加赛车的适应性,简单设置门槛是不可靠的,如果通过比较找出12对传感器的A/D值最小的传感器编号,就可以避免因赛道材质的改变而出现门槛不适应的情况。由于传感器的个数不多从而在硬件上限制了位置状态的细分,但采用插值法可以得到更多的位置状态。方法如下查找A/D值最小的传感器的编号,初始位置变量传感器编号2计算中间变量2AXMINM的值2/2AX值最小的传感器值最大的传感器DADAMINM(41)如果DA/值最小的传感器与其左边相邻传感器DA/值之间的差值的绝对值小于2/INAX)(MM,则新位置变量初始位置变量1;如果A/D值最小的传感器与其右边相邻传感器A/D值之间的差值的绝对值小于2/AX)(MINM,则新位置变量初始位置变量1;如果两者都不满足,则位置变量始终不变,程序流程如图42所示。武汉理工大学毕业设计(论文)17图42路径识别传感器信号采集模块程序流程图这样可以得到21种状态,已经足够满足转向精度的要求。43路径走向预测原理及方法描述路径的变化可以用两个描述量来表示。一个是路径的抖动强度。应用数字PID位置型控制算法的思想,先对小车现在检测到的路径位置与前几次走过的路径位置求差值,把差值放大后进行累加,然后再减去一个衰减常数,就得到了小车走过一段路程后小车前进方向与路径摆动的强度,这种路径的抖动武汉理工大学毕业设计(论文)18强度说明了小车是否进入了蛇形走线的状态或者小车遇上了弯道。当路径变化很快时,由于衰减常数比变化值小,系统就会在短时间内把数据累加得很大;当超过一定的值时就可以认为小车处在了危险状态。如果小车是处在蛇形走线的状态,速度过高会处于恶性循环,最终小车会完全偏离黑线,冲出跑道。所以路径的抖动强度可以检测到小车是否进入这种危险状态,是否需要启动平复程序把速度降到安全范围内。另一种是路径偏离小车前进方向的速度。这里同样需要应用数字PID位置型控制算法的思路,与路径的抖动强度不同的是,系统只对路径偏离小车前进方向的单一方向位置求差值、放大、累加并衰减。这样就描述了路径向单一方向的速度。弯度越大,小车在单位路径内路径偏离就越大,经过累加衰减后的值也越大,那么偏离的速度就越大。通过偏离的速度系统可以知道拐弯角度的大小。这个量通知了转弯控制程序和加减速控制程序要做出什么样的动作16。44加减速原理及方法加减速的性能是直接影响小车速度的。加速不能突然把控制速度的PWM占空比加大太多,不然可能出现打滑,导致小车旋转。这是一个很危险的动作,将直接危害小车的安全。另一方面,如果加速不够迅速,又会使小车因加速太慢而影响速度,所以需要有一个柔性加速的过程。但描述一个速度的加减不应该是精确的,而是不确定的,要适应不同的路径就只能用模糊的控制方法,根据小车的状态来加减速。应用数字PID位置型控制算法已经知道了当前的路况,并通过综合数字PID增量型控制算法得到了将要转到的角度,事实上现在根据当前速度就已经知道小车是要加速还是要减速了。用单位距离触发加速程序明显比用时间来触发平稳得多,而加速性能毫不逊色。这种方法的核心思想是要结合当前速度和黑线所处的位置来决定控制电机PWM的占空比要加多少。现在小车的外部捕捉中断是小车每走1CM中断一次。如果当前速度是150CM/S,黑线的位置处在中心附近,那么我们可以大胆加速,每次增加125的PWM占空比,加起速来平缓迅速而且不会打滑,这就是我们简单的柔性加速控制的想法。这和速度联系的相当紧密,否则当速度很慢时,加速也会很慢,同样影响速度,所以设定一个与速度相关的初始占空比更好一点,这样可以弥补速度慢、加速度慢的缺点。减速性能越好,就越能以越高的速度入弯,相当于提升了小车的最高速度。在减速过程中要不断监测速度,速度不能减得太低,因为速度太低了会严重影响减速后的起动,不利于小车行驶速度的增加。总之减速的程度与跑道的弯度有很大的关系,能把弯道预测得越准确,提前得越早,小车过弯的速度也越快。当然减速还要结合当前的速度,如果在安全的速度之下就没必要减速了,如果远低于安全速度还应该加速。小车每走1CM的距离外部中断捕捉就会触发一次。当中断来时调用决策函数,完成决策判断17。武汉理工大学毕业设计(论文)19第5章开发与调试在智能车调试的过程中主要采用的工具是KEIL编程软件,51单片机程序下载器以及PROTEUS软件,KEIL软件可以将C原程序代码生成89C51单片机可以识别的HEX文件;而51单片机程序下载器可以将生成的HEX文件烧录到89C51单片机中,用来处理光电传感器识别的信号以及控制电机、舵机的运行;PROTEUS软件可以进行电机和舵机的功能模拟,加快设计进程。此外还用到了万用表,电烙铁,数字示波器等试验设备。智能车调试总共有两个阶段第一阶段调试自行开发的硬件电路板和各个子程序、主程序,第二阶段自制了不同跑道调试智能车的速度和转向性能等,最后根据试验修改软硬件。51传感器及外围电路的调试反射式红外传感器的调试分为机械调试和电路调试。机械调试的主要任务是保证传感器组位于小车的最前端,并与地面保持合适的距离。经过多次试验,测得较为合适的距离是12MM。电路调试的目的是使各个传感器的电压输出值均保持在一定值(15V)附近。其操作过程是将传感器电路放于白纸上一定高度处,调节电位器使传感器的电压输出端压降为15V左右。52舵机的调试过程调试舵机时,可以先不使用直流电机,将小车放在白纸上,用25MM宽的黑线在传感器下方移动,看舵机的转向与设备的角度是否一致。然后在跑道上,用手推车的方法,让车经过符合比赛规则中要求的不同曲率半径的轨迹。对于不同曲率半径的轨迹,不同的传感器会检测到不同的信号。记下针对不同的传感器的不同方向(左右)检测到信号的情况,让其中较为合适的舵机转角,作为一组试验值,供软件使用。53直流电机的调试舵机和传感器电路调试完成后,将直流电机接入电路,先不将小车放到跑道上,在白纸上稍微将后轮悬空,用黑线在下面移动,用示波器观测电机两端的PWM信号是否按要求改变,确认无误后可以拿到跑道上进行试车。让小车在一段直道行驶后,进入一曲率半径为最大值的曲线。反复试验,即可得出保证小车不驶出轨道的最大占空比。由此计算便得出直流电机的最大转速,此后的软件控制过程中需保证直流电机的转速不大于此值。武汉理工大学毕业设计(论文)2054整体调试各部分子电路调试结束后,对小车整体进行调试。先另小车以某一较低的速度行驶,通过弯道时保证有较合适的舵机转角。在舵机转角调试过程中得到的经验值的基础上进行修改。利用软件对参数进行修改,提高小车直流电机的转速和修改舵机转角。如此反复进行,直到得到较为合理的经验值。先让小车行驶稳定,在此基础上逐渐提高小车速度。此外,小车由直道渐入弯道时,为防止小车速度过大因惯性作用冲出车道,需要在此时对直流电机进行减速。此外还要找到临界速度,看超过多大速度小车易于冲出赛道,积累一些经验。55结论智能循迹小车的功能虽然不是十分复杂,但是作为一个系统,需要合理搭配各方面的因素以实现整体效果最佳。其主要部分分别为方向控制系统与速度控制系统。只要处理好速度与方向的关系,就能极大地优化小车的整体性能。方向控制系统能使智能车沿着导引黑线行驶而不至于偏移;速度控制系统能使智能车在直道上加速行驶而在入弯时刹车减速。尽可能提高行驶速度和避免因入弯速度太快而造成冲出跑道。作为小车的眼睛,光电传感器也是十分重要的,其能否精确地检测到小车相对于赛道的位置将直接影响小车能否快速地转弯和加减速。经过几个月时间的学习及调试,终于顺利完成了智能循迹小车的设计与制作。在循迹小车的制作过程中,完成了传感器布置方案的比较和确定、速度传感器的比较和确定、MCU外围电路的设计、控制算法的编写、对直流电机以及舵机的PID控制、模型车的部分机械改造等工作。在以下几方面获得了比较大的进展(1)对红外传感器的各种布置参数进行了精确计算确定,并通过反复的试验对比,确定了各模块的参数,在很大程度上提高了行驶速度和稳定性。(2)重新设计了MCU的外围电路。通过合理布线,合理分配模块,在满足功能的前提下,大大简化了外围电路的结构,实现了整洁、轻便、高稳定性的目的。(3)反复试验比较并最后确定了性能稳定的速度传感器。利用PID算法对车速进行闭环控制,速度响应精确、迅速。(4)精心设计控制算法,仅仅利用红外传感器检测到的单一路径信号就能判断出模型车行驶的道路形状是处于直道行驶,弯道行驶还是S路行驶,并根据道路情况精确的控制车速,提高了行驶稳定性,降低了单圈时间。武汉理工大学毕业设计(论文)2156问题与展望遇到的问题(1)外界光线对光电传感器的影响。红外光电传感器对外界光强相当敏感。光线强弱的不同会使二值化后得到的黑线宽度产生变化,引起偏差及控制量变化,造成振荡,严重时不能识别路径。目前的系统只能在场地光线条件均匀的情况下才能正常工作,此问题大大影响了小车的行驶速度和稳定性。(2)电机驱动发热量太大。(3)舵机滞后性。由于舵机转动需要时间,虽然小车在进入弯道时能够检测到黑线的偏转方向,但是由于舵机的滞后性,使得小车在转弯过程中时常跑出跑道,并且速度越高,偏出越远,很大程度上限制了小车行驶的速度和稳定性。未来展望由于红外发射管的发射功率不高,导致循迹小车容易受到外界光线的干扰,所以在以后的工作中,可以使用灵敏度更高的红外接收管或者发射功率更高的红外发射管;同时由于分散的光电管的本身的一些缺点,导致其不能达到使用摄像头作为循迹模块的高精度与高前瞻的性能,在以后的工作中,可以尝试用摄像头来作为循迹模块。武汉理工大学毕业设计(论文)22参考文献1熊慧MC68单片机入门与实践M北京北京航天航空大学出版社,20062梁业宗,李波,赵磊基于路径识别算法的智能车控制系统的设计D武汉武汉理工大学自动化学院,20093陶永华新型PID控制及其应用M北京机械工业出版社,20034谭建成新编电机控制专用集成电路与应用M北京机械工业出版社,20055卓晴学做智能车挑战“飞思卡尔杯”M北京北京航天航空大学出版社,20066邵贝贝单片机嵌入式应用的在线开发方法M清华大学出版社,20077李宁,刘启新电机自动控制系统M北京机械工业出版社,20038XIAOY,WANGXY,ZHUKY,ETALAMETHODFORFINEBONDINGWIREDETECTIONUSINGLIGHTDIFFRACTIONJINTERNATIONALJOURNALOFSMARTSENSINGANDINTELLIGENTSYSTEMS,2010,411121249张丽娜单片机原理及应用M武汉华中科技大学出版社,200410胡寿松自动控制原理M北京科技出版社,200111赵景波,薛平,赵景辉,等PROTEL2004电路设计应用范例M北京清华大学出版社,200612赵福堂汽车电器与电子设备M北京北京理工大学出版社,200813KELLERHEIRICHO,ROBERTSONP,GARCIAAC,ETALPROBABILISTICLOCALIZATIONMETHODFORTRAINSCIEEEINTELLIGENTVEHICLESSYMPOSIUMPISCATAWAY,USAIEEE,201248248714周云山,钟勇汽车电子控制技术M北京机械工业出版社,200815RAHMATM,ROZALISM,WAHABNA,ETALAPPLICATIONOFDRAWWIRESENSORINPOSITIONTRACKINGOFELECTROHYDRAULICACTUATORSYSTEMJINTERNATIONALJOURNALOFSMARTSENSINGANDINTELLIGENTSYSTEMS,2010,3473675516黄开胜,李立国,刘旺,等基于光电传感和路径记忆的车辆导航系统D北京清华大学汽车安全与节能国家重点实验室,200617杨明,程磊,黄卫华,等基于光电管寻迹的智能车舵机控制D武汉武汉科技大学信息科学与工程学院,2007武汉理工大学毕业设计(论文)23附录附录A小车实物图图A1智能循迹小车实物图附录B循迹小车源代码INCLUDEDEFINELEFT60/宏定义,左转60度DEFINELEFT51/宏定义,左转50度DEFINELEFT42/宏定义,左转40度DEFINELEFT33/宏定义,左转30度DEFINELEFT24/宏定义,左转20度DEFINELEFT15/宏定义,左转10度DEFINESTOP6/宏定义,停止DEFINERIGHT17/宏定义,右转10度DEFINERIGHT28/宏定义,右转20度武汉理工大学毕业设计(论文)24DEFINERIGHT39/宏定义,右转30度DEFINERIGHT410/宏定义,右转40度DEFINERIGHT511/宏定义,右转50度DEFINERIGHT612/宏定义,右转60度SBITVP37/速度信号端口SBITCONTROLPORTP00/舵机信号端口SBITKEYLEFT1P11/左转按键端口1SBITKEYLEFT2P12/左转按键端口2SBITKEYLEFT3P13/左转按键端口3SBITKEYLEFT4P14/左转按键端口4SBITKEYLEFT5P15/左转按键端口5SBITKEYLEFT6P16/左转按键端口6SBITKEYSTOPP17/归位按键端口SBITKEYRIGHT1P21/右转按键端口1SBITKEYRIGHT2P22/右转按键端口2SBITKEYRIGHT3P23/右转按键端口3SBITKEYRIGHT4P24/右转按键端口4SBITKEYRIGHT5P25/右转按键端口5SBITKEYRIGHT6P26/右转按键端口6UNSIGNEDCHARTIMEOUTCOUNTER0,DIANJI10/TIMEOUTCOUNTER定时器溢出计数UNSIGNEDCHARLEFTORRIGHT6/LEFTORRIGHT舵机左右旋转标志VOIDINITIALTIMERVOIDTMOD0X10/定时/计数器1工作于方式1TH165535115/256/025MSTL165535115256EA1/开总中断ET11/允许定时/计数器1中断TR11/启动定时/计数器1中断VOIDCONTROLLEFTORRIGHTVOID/控制舵机函数IFKEYSTOP0武汉理工大学毕业设计(论文)25LEFTORRIGHTSTOPIFKEYLEFT10LEFTORRIGHTLEFT1IFKEYRIGHT10LEFTORRIGHTRIGHT1IFKEYLEFT20LEFTORRIGHTLEFT2IFKEYRIGHT20LEFTORRIGHTRIGHT2IFKEYLEFT30LEFTORRIGHTLEFT3IFKEYRIGHT30LEFTORRIGHTRIGHT3IFKEYLEFT40LEFTORRIGHTLEFT4IFKEYRIGHT40LEFTORRIGHTRIGHT4IFKEYLEFT50LEFTORRIGHTLEFT5IFKEYRIGHT50LEFTORRIGHTRIGHT5IFKEYLEFT60LEFTORRIGHTLEFT6IFKEYRIGHT60LEFTORRIGHTRIGHT6VOIDMAINVOID/主函数INITIALTIMERFORCONTROLLEFTORRIGHTVOIDTIMER1VOIDINTERRUPT3/定时器中断函数武汉理工大学毕业设计(论文)26TH165535110/256TL165535110256TIMEOUTCOUNTERSWITCHLEFTORRIGHTCASE0/为0时,舵机左转

温馨提示

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

最新文档

评论

0/150

提交评论