具有自主行驶能力的模型车的设计与开发.docx_第1页
具有自主行驶能力的模型车的设计与开发.docx_第2页
具有自主行驶能力的模型车的设计与开发.docx_第3页
具有自主行驶能力的模型车的设计与开发.docx_第4页
具有自主行驶能力的模型车的设计与开发.docx_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

学校代码:学号: 本科毕业论文具有自主行驶能力的模型车的设计与开发姓 名 系 别 专 业 指导教师 学位论文完成日期 全日制本科生毕业设计承诺书本人郑重承诺:所呈交的毕业设计 是在导师的指导下,严格按照学校和学院的有关规定由本人独立完成。文中所引用的观点和参考资料均已标注并加以注释。论文研究过程中不存在抄袭他人研究成果和伪造相关数据等行为。如若出现任何侵犯他人知识产权等问题,本人愿意承担相关法律责任。 承诺人(签名): 日 期:具有自主行驶能力的模型车的设计与开发摘 要本文研究的是以MC9S12XS128单片机控制为核心,具有自主行驶能力的模型车,以速度快慢为其评判性能的主要指标。对模型车的电源管理、路径识别、直流电机驱动、转向控制、车速传感等硬件结构及部分软件算法进行了分析。模型车是利用光电传感器获取地面黑色指示线信息,根据路面的反射光线强度的不同来判断行车的方向。并且利用光电编码器获取实时车速。舵机控制是由单片机的PWM信号完成,它使舵机转动到并保持相应角度,使智能车能够顺利过弯。直流电机控制也是由单片机的PWM信号来完成,电机驱动采用场效应管,使智能车在行驶过程中更稳和更快。关键词:单片机;光电传感器;编码器;PWMDESIGN AND DEVELOPMENT OF AN AUTONOMOUS MODEL CARAbstractThis paper is focused on an autonomous model car with a microprocessor unit MC9S12XS128. Its performance evaluation is based on speed. This paper introduces not only its hardware including power management, lane tracking circuit, DC motor driving, steering control and speed sensing, but also a part of software program. Photoelectric sensors are used to capture the information on ground guiding wire, according to the different reflex the light intensity to judge the direction of driving. And the optical encoder is used to get the real-time speed. Steering gear control is completed by MCU, which makes PWM signals turn to the corresponding Angle, and keep the car under control when steering. PWM signal of Dc motor control is also accomplished by MCU, along with MOSFET, which make the car run more stably and faster. KEYWORDS: microprocessor; photoelectric sensors; encoder; PWM目录第1章 绪论1 1.1设计背景1 1.2系统总体方案的选定1 1.3系统总体方案的设计2第2章 智能车机械结构设计4 2.1 车体机械建模4 2.2 前轮倾角的调整5 2.3 齿轮传动机构调整7 2.4 后轮差速机构调整8 2.5 舵机的安装与调试9 2.6 光电编码器的选型与安装11 2.7 前轮转向拉杆的调节13 2.8 主电路板的安放与外形设计思路14 2.9 其他机械模块调整15第3章 电路设计说明17 3.1 主控板的设计17 3.1.1供电电源模块17 3.1.2电机驱动模块18 3.2 智能车传感器模块设计21 3.2.1光电传感器的原理22 3.2.2光电传感器的设计22 3.2.3倾角及高度对光电信号采集的影响24 3.3 模型车的主要技术参数说明25第4章 智能车控制软件设计说明26 4.1 主程序流程图26 4.2 路况采集和数据处理27 4.3 舵机控制28 4.4 电机控制算法29 4.5.1比例控制29 4.5.2积分控制30 4.5.3微分控制30 4.5.4控制效果30 4.6 转弯控制模块30 4.7 开发工具31结论33参考文献34附录1 激光管扫描程序3539上海理工大学本科生毕业设计(论文)第1章 绪论1.1 设计背景为了加强大学生实践、创新能力和团队精神的培养,促进高等教育教学改革,受教育部高等教育司委托(教高司函2005201号文,附件1),由教育部高等学校自动化专业教学指导分委员会(以下简称自动化分教指委)主办全国大学生智能汽车竞赛。该竞赛由竞赛秘书处设计、规范标准硬软件技术平台,竞赛过程包括理论设计、实际制作、整车调试、现场比赛等环节,是以迅猛发展、前景广阔的汽车电子为背景,涵盖自动控制、模式识别、传感技术、电子、电气、计算机、机械与汽车等多学科专业的创意性比赛1。1.2 系统总体方案的选定智能车系统以MC9S12XS128为核心,实现稳定、沿线和快速行驶。为了使智能车能够在满足要求的前提下快速行驶,单片机必须把路径的迅速判断、相应的转向伺服电机控制以及直流驱动电机的控制精密地结合在一起。本章主要简要地介绍智能车系统总体方案的选定和总体设计思路,在后面的章节中将整个系统分为机械结构、控制模块、控制算法等三部分对智能车控制系统进行深入的介绍分析。光电传感器寻迹方案的优点是电路简单、信号处理速度快,但是其前瞻距离有限,加之精简的程序控制和较快的信息处理速度,光电传感器还是可以极好的控制效果的。这是出自清华大学的方案,主要思想就是通过加大发光管上的电流来提高传感器探测距离,但是传感器长时间通大电流会造成器件损坏,所以就使用脉冲发射的方式进行,如此一来就可以有效地增加探测距离。不过这样做会造成一定的干扰性,虽然通过滤波或者其他技术可以解决,但对于模拟电路调试方面就有比较高的要求了。如图1.1是前瞻传感器图片: 图1.1 脉冲大电流前瞻方案这样,理论上就解决了光电传感器前瞻距离的问题,可以说只要电路参数调得好,达到40cm甚至50cm的前瞻距离都是有可能的。但是,前瞻距离并不是越远越好,至少对以一字排列传感器而言存在一个最佳前瞻距离的问题。所以,脉冲大电流前瞻方案是智能车模未来的发展趋势。它使模型车对路径的判别更具有前瞻性,获取路径信息更丰富,可以扩展更多的控制策略。1.3 系统总体方案的设计智能车系统以MC9S12XS128为核心,实现稳定、沿线和快速行驶。为了使智能车能够在满足要求的前提下快速行驶,单片机必须把路径的迅速判断、相应的转向伺服电机控制以及直流驱动电机的控制精密地结合在一起。智能车系统由电源模块、光电传感器模块、直流电机驱动模块、路径识别模块、通讯及调试模块、单片机模块等组成。其中,转向伺服电机由单片机直接驱动,为了调试的方便,我们运用嵌入式单片机开发调试接口模块BDM、Codewarrior,几个主要的参数可以方便地显示和在线调整。系统结构简图如图1.2所示。图1.2 系统结构简图本章重点分析了智能车系统总体方案的选择,并介绍了系统的总体设计。在下面的章节中,将对整个系统机械结构、控制模块和控制算法等三个方面的实现进行详细介绍。第2章 智能车机械结构设计该车具有线控转向和驾驶的能力,身兼一组多种类的传感器,并且可以实现在线评估2。车模的机械部分是影响其行驶性能最直接的部分,其重要性不言而喻。一个不良的机械系统会增加控制的难度,会为车模的速度提升带来障碍。因此,车模的机械性能应该是优先考虑的问题。2.1 车体机械建模此次比赛选用的赛车车模采用1/10的仿真车模。赛车机械结构只使用竞赛提供车模的底盘部分及转向和驱动部分。控制采用前轮转向,后轮驱动方案3。具体车模数据如表2.1:表2.1 车模基本尺寸参数基本参数尺寸轴距197mm前轮距124mm后轮距136mm车轮直径50mm车长316mm车宽172mm传动比18/76如图2.1所示:其中虚线部分为轮胎,A点为右轮的转动轴点,对应左侧相应位置的那个点为左轮的转动轴点。图2.1 车模尺寸示意图2.2 前轮倾角的调整调试中发现,在车模过弯时,转向舵机的负载会因为车轮转向角度增大而增大。为了尽可能降低转向舵机负载,对前轮的安装角度,即前轮定位进行了调整。前轮定位的作用是保障汽车直线行驶的稳定性,转向轻便和减少轮胎的磨损4。前轮是转向轮,它的安装位置由主销内倾、主销后倾、前轮外倾和前轮前束等4个项目决定,反映了转向轮、主销和前轴等三者在车架上的位置关系。主销内倾是指主销装在前轴略向内倾斜的角度,它的作用是使前轮自动回正。角度越大前轮自动回正的作用就越强烈,但转向时也越费力,轮胎磨损增大;反之,角度越小前轮自动回正的作用就越弱。图2.2 主销后倾纠正车轮偏转原理图如图2.2所示,主销后倾是指主销装在前轴,上端略向后倾斜的角度。它使车辆转弯时产生的离心力所形成的力矩方向与车轮偏转方向相反,迫使车轮偏转后自动恢复到原来的中间位置上。由此,主销后倾角越大,车速越高,前轮稳定性也愈好。主销内倾和主销后倾都有使汽车转向自动回正,保持直线行驶的功能。不同之处是主销内倾的回正与车速无关,主销后倾的回正与车速有关,因此高速时后倾的回正作用大,低速时内倾的回正作用大。经过试验论证,智能车主销后倾角设为零130。图2.3 前轮外倾角示意图如图2.3所示,前轮外倾角对汽车的转弯性能有直接影响,它的作用是提高前轮的转向安全性和转向操纵的轻便性。通过车轮中心的汽车横向平面与车轮平面的交线与地面垂线之间的夹角,称为“前轮外倾角”。前轮外倾角俗称“外八字”,如果车轮垂直地面一旦满载就易产生变形,可能引起车轮上部向内倾侧,导致车轮联接件损坏。由于赛道路面平整且智能车本身不重,所以前轮外倾角设为零。模型车提供了序号为EX-19的配件来调节前轮外倾角:当所采用的配件上无数字4时前轮外倾角为0,当所采用的配件上有数字4时前轮外倾角约为1。由于本模型车主要用于竞速,在设计中必然要尽可能减轻重量,所以其底盘承重不大,且前轮外倾角只有两档可调,故设定为0即可,关键是前轮前束要与之相匹配。图2.4 前轮约束示意图如图2.4所示,所谓前束是指两轮之间的后距离数值与前距离数值之差,也指前轮中心线与纵向中心线的夹角。前轮前束的作用是保证汽车的行驶性能,减少轮胎的磨损。前轮在滚动时,其惯性力会自然将轮胎向内偏斜,如果前束适当,轮胎滚动时的偏斜方向就会抵消,轮胎内外侧磨损的现象会减少。当车轮有了外倾角后,在滚动时就类似于圆锥滚动,从而导致两侧车轮向外滚开。由于转向横拉杆和车桥的约束使车轮不可能向外滚开,车轮将在地面上出现边滚边向内滑移的现象,从而增加了轮胎的磨损。在安装车轮时,为消除车轮外倾带来的这种不良后果,可以使汽车两前轮的中心面不平行,并使两轮前边缘距离R小于后边缘距离A,AR之差称为“前轮前束”。一般前束值为0到12mm。像内八字样前端小后端大的称为“前束”,而像外八字一样后端小前端大的称为“后束”或“负前束”。模型车是由舵机带动左右横拉杆实现转向的。主销在垂直方向的位置确定后,改变左右横拉杆的长度即可改变前束的大小。左杆长,可调范围为29.2到37.6mm;右杆短,可调范围为10.8到18.1mm。由上述原理可知,前轮前束须与前轮外倾角相匹配,如前轮外倾角设定为0,则前轮前束必须为0mm或只有一很小的前轮前束值。故本设计采用的前束值为0mm。2.3 齿轮传动机构调整车模后轮采用RS-380SH-4045电机驱动,由竞赛主办方提供。电机轴与后轮轴之间的传动比为 9:38(电机轴齿轮齿数为18,后轮轴传动轮齿数为76)。齿轮传动机构对车模的驱动能力有很大的影响。齿轮传动部分安装位置的不恰当,会大大增加电机驱动后轮的负载,从而影响到最终成绩。调整的原则是:两传动齿轮轴保持平行, 齿轮间的配合间隙要合适,过松容易打坏齿轮,过紧又会增加传动阻力,白白浪费动力;传动部分要轻松、顺畅,容易转动,不能有卡住或迟滞现象。由于两个齿轮间的配合间隙不当,或者两齿轮轴不平行,所以导致电机负载加大。而调整好的齿轮传动噪音很小,也不会有碰撞类的杂音。如图2.5所示,是经过调整过的齿轮传动机构。图2.5 后轮齿轮传动机构实物图2.4 后轮差速机构调整如图2.5中,黑色齿轮的中间部分就是内置式差速机构。差速机构的作用是在车模转弯的时候,降低后轮与地面之间的滑动;并且还可以保证在轮胎抱死的情况下不会损害到电机5。当车辆在正常的过弯行进中(无转向不足也没有转向过度),此时4个轮子的转速(轮速)都不是相同的,依速度的大小,依次为:外侧前轮外侧后轮内侧前轮内侧后轮。此次所使用车模配备的是后轮差速机构。差速器的特性是:阻力越大的一侧,驱动齿轮的转速越低;而阻力越小的一侧,驱动齿轮的转速越高。以模型车所使用的后轮差速器为例,在过弯时,因外侧前轮轮胎所遇的阻力较小,轮速便较高;而内侧前轮轮胎所遇的阻力较大,轮速则较低。差速器的调整中要注意滚珠轮盘间的间隙,过松过紧都会使差速器性能降低,转弯时阻力小的车轮会打滑,从而影响车模的过弯性能。好的差速机构,在电机不转的情况下,右轮向前转过的角度与左轮向后转过的角度之间误差很小,不会有迟滞或者过转动情况发生6。2.5 舵机的安装与调试常见舵机电机一般都为永磁直流电动机,如直流有刷空心杯电机。直流电动机有线性的转速-转矩特性和转矩-电流特性,可控性好,驱动和控制电路简单,驱动控制有电流控制模式和电压控制两种模式。舵机电机控制实行的是电压控制模式,即转速与所施加电压成正比,驱动是由四个功率开关组成H桥电路的双极性驱动方式,运用脉冲宽度调制(PWM)技术调节供给直流电动机的电压大小和极性,实现对电动机的速度和旋转方向(正/反转)的控制。电机的速度取决于施加到在电机平均电压大小,即取决于PWM驱动波形占空比(占空比为脉宽/周期的百分比)的大小,加大占空比,电机加速,减少占空比电机减速。所以要加快电机速度:1、加大电机工作电压;2、降低电机主回路阻值,加大电流7。标准的微型伺服马达一共有三条控制线,分别为:电源、地及控制。电源线与地线用于提供内部的直流马达及控制线路所需的电力,电压通常介于4V6V之间,该电源应尽可能与处理系统的电源隔离,因为伺服马达会产生噪音。甚至小伺服马达在重负载时也会使放大器的电压降低,所以整个系统的电源供应的比例必须合理。输入一个周期性的正向脉冲信号,这个周期性脉冲信号的高电平时间通常在1ms2ms之间,而低电平时间应在5ms到20ms之间,并不很严格,下面图2.6表示出一个典型的20ms周期性脉冲的正脉冲宽度与微型伺服马达的输出臂位置的关系:图2.6 不同的PWM对应的舵机打角舵机转向是整个控制系统中延迟较大的一个环节,为了减小此时间常数,通过改变舵机的安装位置,而并非改变舵机本身结构的方法可以提高舵机的响应速度。分析舵机控制转向轮转向的原理可以发现,在相同的舵机转向条件下,转向连杆在舵机一端的连接点离舵机轴心距离越远,转向轮转向变化越快。这相当于增大力臂长度,提高线速度。这样安装的优点是:(1)改变了舵机的力臂,使转向更灵敏(2)舵机安装在了正中央,使左右转向基本一致 (3)重心更靠后,减轻了舵机负载。实验舵机转角控制调试的目的是使小车对于不同的路线能给出合适的转角,比如在直道上小车要避免振荡,弯道能更平滑地跟踪黑线等。其中舵机输出中心轴正弦运动范围是-45,45。实验方法:小车舵机的转动角由公式(1)给出,其中预给定值与参数Kc2都是通过实验得到的。由于测试条件有限,目前主要还是采用目测效果的方式来进行调试。公式中的为舵机的转角角度,k为预给定值,direction为舵机的转动方向,position为传感器中间位置相对于黑线中间位置的偏移位置,Kc2为调整参数,count为计数次数。 (1)实验1:对预给定值的零值与最大值之间分别采用了下面三种变化趋势,得到了不同的结果。如表2.2所列(横轴为“偏差”,竖轴为“预给定值” ),由于赛道主要是由不同大小的弯道组成,而且赛车只有在过弯道的时候,光电管检测到的偏差才比较大,这时就应该采用比较大的给定值。然而,一、二方案都不是很理想,所以最终选择了第三种给定方案,比较符合本设计要求。实验2:对参数Kc2的调整主要会影响小车过连续弯道的性能,其值过大会使小车不能稳定而发生来回振动,过小则会起不到改善性能的效果。合适的Kc2值也是通过反复实验得到的8。123舵机转角预定方式描述舵机转动量较平均,但直道扔存在振动,弯道反应稍慢小车振动明显,效果较差直道稳定,弯道反应快但弯道转动平滑度稍有欠缺表2.2 舵机预给定方案比较2.6 光电编码器的选型与安装为了使得赛车能够平稳地沿着黑色标记线运行,需要控制车速,使赛车在急转弯时速度不至于因为速度过快而冲出赛道。通过控制驱动电机上的平均电压可以控制车速,但是如果开环控制电机转速,会受很多因素影响,如电池电压、电机传动摩擦力、道路摩擦力和前轮转向角度等。这些因素会造成赛车运行不稳定。并且因为今年虚线和上坡的存在,使得小车速度在进入虚线和驶出上坡时一定不能很快以防翻车,所以我们必须得做出速度闭环。通过速度检测,对车模速度进行闭环反馈控制,即可消除上述各种因素的影响,使得车模运行得更稳定。此外,在记忆算法中为了记录道路信息,需要得到赛车运行距离,这也可以通过车速检测来实现9。车速检测的方式有很多种,例如用测速发电机、转角编码盘、反射式光电检测、透射式光电检测和霍尔传感器检测。我们在速度传感器中选择了速度信号较为可靠且信号很容易换算得出速度的光电编码器。由于速度不用特别精确的了解,所以我们在其中挑出了一款精度一般的款式100线。图2.7 固定光电编码器的电路板图2.8 光电编码器的外形尺寸如图2.7和2.8所示,根据速度传感器的外形尺寸,设计了一块用来固定它的电路板,其优点显而易见,就是简洁明了,易加工,并且有较好的可调性(电路板与后轮支架固定的位置是可调的)。速度传感器的安装方式:速度传感器用螺钉固定在电路板上,电路板固定在后轮支架上,这样固定好之后,就有了较高的稳定性。速度传感器通过后轮轴上的齿轮与电机相连,车轮每转一圈,速度传感器转过0.72圈。图2.9 光电编码器的安装实物图如图2.9所示,为光电编码器安装的实物图。在此,要特别说明下板中间为何是方的,而不是圆的。由于在加工时发现在电路板上加工一个圆孔比方孔要困难得多,后发现加工成方孔并不影响其固定光电编码器的功能,故最终决定电路板中间固定光电编码器的孔为方孔,但边长与原来圆孔的直径相等,为15mm。2.7 前轮转向拉杆的调节上一代试验车,我们并没有在意舵机的软件中位与硬件中位是否重合,导致左右转角很不对称,说白了就是给小车信号让小车向左转30度,它却转25度,让它朝右转30度,它转35度。这致使转角控制上出现很多必须要考虑的不对称问题。通过调整,现在当舵机被软件复位以后,走向基本为直线了。图为调整后的拉杆与舵机。图2.10 调整后的拉杆和舵机2.8 主电路板的安放与外形设计思路图2.11 自主设计的主电路板图2.12 主电路板电路由于光电激光管太多太重使重心升高很多,为了在弯道速度高时尽量不要侧翻,我们决定做出工业印刷版来降低重心。上图是我们完全自主设计的板子,其形状正好可以嵌在车底板的空位置里,嵌入后效果如下图。现在的主板对整车重心静矩比第一代试验小车主板对整车重心静矩小得多。图2.13 主电路板安装位置2.9 其他机械模块调整在调试过程中,除了对以上部分的调整以外,其他机械部分也进行了一些调整。悬挂臂、转向连杆的运动要灵活自如,准确无误;主悬架要松紧适度;驱动电机的螺丝一定要上紧,并要经常检查,一旦在行驶中松动就会造成零件的损坏。调试中还发现主悬架的第二个螺丝容易松动,测试时要检查是否上紧。尽管比赛规则对车架做了很大的限制,但车模的机械调校仍然会起着举足轻重的作用。下面介绍几个比较关键的调校参数:1. 底盘高度: 一般来说底盘越低,车模重心越低,重心移动速度越快,所以底盘越低,车模行驶越稳定,反应速度越快。考虑到赛道KT板厚度一般为5mm,底盘若低于这个高度,车模在冲出赛道后可能会损伤赛车,因此我们将赛车的底盘高度设为前5mm、后6mm,同时将底盘前端削去一段并导角,从而确保赛道的安全。2. 前悬挂角度:由于车模的精度不高,虚位较大,因此调整前悬挂的角度时,调节量需要大一些,以抵消虚位。在所有前悬挂的角度中,普遍认为主销后倾角对转向性能影响最大。本设计中主销后倾角取了130,使车头侧倾量增加,从而增加了智能车的转向能力,其缺点是降低了转向的反应速度,使连续弯中的性能下降。第3章 电路设计说明3.1 主控板的设计3.1.1供电电源模块图3.1 电源管理模块原理图智能车系统根据各部件正常工作的需要,对标准车模使用7.2V 2000mAh 镍铬充电电池进行电压调节。其中,单片机系统、路径识别的光电传感器和接收器电路、车速传感器电路需要5V电压,舵机伺服电机工作电压6V,直流电机可以使用7.2V 2000mAh Ni-cd蓄电池直接供电。所以单独设计了供电模块如图3.1,提供各个模块所需要的正常工作电压。5V电源模块用于为单片机系统、传感器模块等供电。常用的电源有串联型线性稳压电源(LM2940、7805等)和开关型稳压电源(LM2596、LM2575等)两大类。前者具有纹波小、电路结构简单的优点,但是效率较低,功耗大;后者功耗小,效率高,但电路却比较复杂,电路的纹波大。对于单片机,需要提供稳定的5V电源,由于LM2940的稳压的线性度非常好,所以选用LM2940-5单独对其进行供电。3.1.2电机驱动模块赛车的速度是决定了控制电路设计效果的重要因素,而驱动电路和电机的选取决定了赛车速度所能达到的最高极限。所以电机驱动模块是赛车最重要的模块之一。为了更好的进行车模的速度控制,需要选择恰当的电机驱动电路,并且对驱动电机的性能进行评估,以获得最佳的控制效果。在智能车竞赛中,智能车的速度较快,通常达到2m/s以上,因此对电机驱动电流的要求很高。小车真正的运行性能或者潜力,完全取决于它的电池系统和电机驱动系统。电动小车的驱动系统一般由控制器、功率变换器及电动机三个主要部分组成。模型车所采用的驱动电机型号为RS-380标准电机,工作在7.2V电压下,空载电流0.5A,转速为16200r/min。当工作电流为3.3A,转速达到14060r/min时,工作效率最大。电动小车的驱动不仅要求电机驱动系统具有高转矩重量比、宽调速范围、高可靠性,而且电机的转矩-转速特性受电源功率的影响,随着模型车的运行,电池的电压会逐渐下降,这就要求驱动具有尽可能宽的高效率区。我们所使用的电机为直流电机,主要分为永磁直流电机、伺服电机及步进电机三种。直流电机的控制简单,性能出众,直流电源也容易实现。下面介绍几种驱动方式:1)继电器驱动:该方案的原理是将PWM信号经驱动放大后控制继电器触点的开通与关断,因为模型车无需倒车功能,故不必搭建为桥型,可直接将电机与继电器串联在一起,该方案的优点是实现简单,价格低廉,通态电阻接近零欧姆,电机的机械特性较硬,缺点是开关频率受到很大的限制,响应速度较慢,且带来了附加的机械损耗。降低了整体效率。此外,还要专门设计制动电路。2)MC33886电机驱动:MC33886是MOTOROLA公司生产的H桥式直流驱动芯片,具有输出电流大,输入电压范围宽泛,输出电阻小,输入电阻大等优点。带有逻辑控制功能,可以控制直流电机正向旋转、反向旋转和不工作。芯片内部带有过温、过流检测保护电路,可以使控制系统对直流电机的控制更加简单、高效。用MC33886的驱动电路如图3.2所示:图3.2 MC33886电路图测试发现使用MC33886车模的极速只有4m/s,且车模只要跑几十米MC33886就会变得很烫。这是由于MC33886芯片的额定输出电流是5.2A,而赛车电机在起步和制动过程中的最大工作电流较高,长期工作在这种条件下,容易造成驱动芯片性能衰退甚至烧毁,引起系统不稳定。并且该器件是贴片封装的,导热片在芯片下部,在设计电路时要注意散热片的设计,否则会因过热保护使芯片停止工作。为了解决这一问题,我们采用两块33886并联,测试后发现,车模的极速的确有很大的提升,加减速能力也有一定的改善,但是跑一段时间后我们发现其中一块33886会很烫而另一块基本保持室温。如图3.3所示为改变以后的电路图:图3.3 MC33886并联电路图3)场效应管电机驱动: 由于MC33886芯片驱动电流小,内阻大所致发热很多,而且又不好加散热片。根本办法是用场效应管搭建H桥来驱动电机。场效应管具有内阻极小、开关速度快等诸多优点,例如IRF3205极限电流能达到110A、导通电阻仅8毫欧,其标称电流时电机正常工作时电流的3至5倍(电机启动的时候存在较大浪涌电流)。并且加散热片很方便,不像MC33886。就应用而言,要上功率,一般都用IGBT,MOS只用在低压小功率场合。原因很简单,MOS是单极型器件,导通电阻就是体电阻,很大,造成导通压降大,损耗大,没法做大功率器件而IGBT是双极型器件,导通的时候有少子注入过程和电导调制效应,导通电阻小,相应的通态压降和损耗都小。场效应管是电压驱动器件,只要栅极电压稍高一点就能使管子导通,单片机P口输出的电压不太够,所以还要增加栅极驱动电路,可以用cmos与非门,例如CD4011,场效应管P管用IRF4905,N管用IRF3205,受到P管电流限制,最大电流为74A,加一小块散热片就行。TO-220AB封装的场效应管从正面看1脚是G(栅极),2脚是D(漏极),3脚是S(源级),大功率场效应管漏极(D)和散热片是连在一起的,所以Q1和Q3、Q2和Q4可以安在同一块散热片上;CD4011的14脚接VDD(7.2V)、7脚接GND(地);上拉电阻一定要接,不然会逻辑混乱。PWM信号的占空比决定电机的转速,故电机的调速可通过PWM信号的占空比实现。驱动电路如图3.4所示:图3.4 电机驱动电路3.2 智能车传感器模块设计在确定智能车总体方案时,我们选择了光电传感器的方案。为了获得更大前瞻距离,从而为控制系统后续处理赢得更多的时间,我们选择了一款大前瞻的光电传感器,前瞻距离可以达到一般光电传感器的数倍甚至十几倍,以满足竞赛的需求。3.2.1光电传感器的原理光电传感器检测路面信息的原理是由发射管发射激光,经地面反射到接收管。如图3.5,由于在黑色和白色上反射系数不同,在黑色上大部分光线被吸收,而白色上可以反射回大部分光线,所以接收到的反射光强是不一样,进而导致接收管的特性曲线发生变化程度不同,而从外部观测可以近似认为接收管两端输出电阻不同,进而经分压后的电压就不一样,就可以将黑白路面区分开来11。图3.5 光电传感器原理3.2.2光电传感器的设计由于我们用作实验的第一代小车所采用7个发射管和7个接收管采集位置信号后得到的信号太少,转换成转角信号离散程度太严重。如果想跑好必须要实施精确建模,而精确建模又背离了核心PID算法和本身闭环控制的非精准特性。所以我们决定把精度提高两倍,即有13个发射管。但是我们实验发现当信号密度提高一倍,接收管却因为接受区域较大,非常容易被非对应的激光信号干扰。为了解决信号干扰问题我们决定实行两个改变,第一个改变是让两个发射管对一个接收管的方案。第二个改变是制作印刷版,让发射管与接收管固定在同一个一个集成度很高的板子上,这样发射管和接收管的晃动趋势就是基本相同的了。图3.6 接收管印刷板图3.7 印刷板电路图3.8 激光头信号驱动图3.9 激光头信号产生3.2.3倾角及高度对光电信号采集的影响在恰当的控制参数下,进一步测量光电板倾斜安装时的性能。从第一个试验中能够发现,减小限流电阻能提高垂直探测距离。于是,试验使用的是10欧姆限流电阻的电路板,通过不断改变高度和倾角初步得到相对较好的安装位置和探测距离:板子倾斜角为45(与铅垂线夹角)底边高度为2cm最大探测距离为25-35cm具体试验时,为了检测提前探测的距离,是通过移动板子看什么时候能检测到黑线的。在尝试提高探测距离时,我们遇到了困难,不管如何改变位置,始终不能突破20cm。我们最初认为有必要再减小限流电阻,以增大发射功率,但后来通过红外摄像头发现探测距离的瓶颈已经不是发射功率,而是发射距离不够远。在摄像头里可以看到调整光电板位置后,发射管光线覆盖范围的变化。当光电板与铅垂线的夹角太小时,光线照射远,但是强度很弱;当夹角太大时,光线集中但距离很近。一般角度在40度到45度之间,效果较好。3.3 模型车的主要技术参数说明项目参数路径检测方法(赛题组)光电组车模几何尺寸(长、宽、高)(mm)400*250*145车模轴距/轮距(mm)140 车模平均电流(匀速行驶)(mA)1500 电路电容总量(微法)1941 传感器种类及个数激光发射管(13个),光电编码器(1个) 新增加伺服电机个数0赛道信息检测空间精度(mm)3赛道信息检测频率(次/秒)260主要集成电路种类/数量2/3 车模重量(带有电池)(kg)1.1第4章 智能车控制软件设计说明单片机系统需要接收路径识别电路的信号、车速传感器的信号,采用某种路径搜索算法进行寻线判断,进而控制转向伺服电机和直流驱动电机的工作。4.1 主程序流程图整个程序的总体结构如图4.1,主程序的主要功能是对开机参数进行初始化,更新各个中断输出的数据,计算并转换成其他程序模块需要的数据格式,同时调度各个控制子程序对车模进行实时控制。图4.1 主程序流程图4.2 路况采集和数据处理我们的用于探路的激光发射管一共装了13个,在车的前部还装有光电开关用于检测起跑线的位置。对车模的路径计算采用定时中断的方式,每隔2毫秒就对传感器进行一次采样,以确保车模在高速运行状态下能在足够短的时间内判断出轨道的变化,并及时刹车,防止车速过快冲出跑道。经过实际的测试,车模在运行时并不需要很高的精度,为了简化算法,加快计算速度,我们最终确定使用8对光电传感器对路径黑线进行探测,因为激光间距为30mm,大于黑线间距,但是存在两道相邻激光同时检测到黑线的情况。传感器部分输出模拟电压(0-3.5V),通过MC9S12XS128片内的AD对其进行采样。白色反射面反射大部分的激光,而黑色的反射面则吸收大部分激光,根据实际测试,将传感器放置在白反射面上测得的电压约为1.7V,黑色反射面上为0.5V,AD测得的数据为100和350。当数据低于150时认为是黑线,高于300则认为是白色面。我们在平时的测试过程中,因为学校的赛道是铺在瓷砖上的,又由于我们小车的激光发射管是斜向上的,所以光电传感器看到瓷砖的时候,瓷砖上没有漫反射,所以传感器会误认为瓷砖是黑线,这样,就会很大地影响我们小车的前进,所以我们小车的代码中有很大一部分是用来屏蔽瓷砖对我们小车的影响的。我们在赛车的前部装了4个传感器,用来检测赛道的起跑线。对于采样的数据主要有一个判断。因为竞赛规则允许出现交叉跑道,而且在起跑线有两条起跑黑线标记,判断是否没有黑线,如果是则读取上次的黑线位置数据来确定方向。如图4.2是路径计算流程图。图4.2 路径计算流程图4.3 舵机控制给舵机输入一个频率固定的占空比不同的PWM,舵机就会转过不同角度,但逼近舵机的反应速度是很慢的,这样的话,就可以用软件来弥补硬件的不足了,就是在速度足够慢的时候,舵机反应的过来,小车在行进过程中要不断的调整前轮的转向,在路径波动强度较低的时候,不能突然的改变转向太多,特别是高速的时候,这样会导致小车走蛇形,为了避免小车在直线道路上走蛇形,转弯时要加上柔韧性,越是靠近小车的中心轴,角度改变的越小。然后远离中心轴的时候,可以角度改变的大一点。车模自带的舵机通过PWM来控制角度如图4.3。根据路径计算程序送出的数据,可以判断赛车当前所处的位置状态,根据这个状态给予相应的舵机控制量,使其转动到并保持相应角度。图4.3 舵机控制流程图4.4 电机控制算法通过对模拟控制系统PID控制规律的表达式进行离散化,得到直接离散控制(DDC)的PID表达式: (2)4.5.1比例控制比例调节中,调节器的输出信号u与偏差信号e成比例。比例控制器的显著特点是有差调节,即如果采用比例调节,则在负荷扰动下的调节过程结束后,被调量不可能与设定值准确相等,它们之间有一定的偏差。比例调节的偏差随着比例带的加大而加大,然而减小比例带就等于加大调节系统的开环增益,超过一定范围将导致系统振荡加剧甚至不稳定。比例调节主要用于影响系统响应速度,在一定范围内,比例带越小系统的响应越快12。对于比赛中的小车系统,比例带减小将加快控制速度,从而提高小车对赛道中心线的跟随特性,但比例带过小将使小车产生振荡甚至跑出赛道。实际中发现,成比例的控制并不是最好的方案,类似抛物线的中间控制量变化慢,两端控制量变化快的控制更有助于消除振荡同时获得较好的控制效果13。4.5.2积分控制积分调节中,调节器的输出信号的变化速度du/dt与偏差信号e成正比例。I调节的特点是无差调节,被控对象在负荷扰动下的调节过程结束后,被调量没有残差。但I调节的稳定作用差,并且降低系统响应速度,在对跟随特性要求较高的小车系统中不适合使用,因此控制策略中没有积分控制,整个调节器为PD调节器14。4.5.3微分控制微分调节器的输出与被调量或其偏差对于时间的导数成正比。然而单纯的微分调节器是不能工作的,它只能起辅助的调节作用,与比例调节动作结合得到PD调节动作。PD调节器仍然是有差调节,但这并不影响小车的性能,反而会获得更好的转弯效果。微分调节动作可以抑制被调量的振荡,提高控制系统稳定性,并且适度引入微分动作可以允许稍许减小比例带,从而提高系统响应速度15。4.5.4控制效果在小车机械结构和传感器等参数相同的情况下,完成一整圈赛道,不完全微分的PD控制相对于单纯的比例控制,时间节约12.5%,并且具有更好的稳定性。加入积分控制,小车性能总会变差。因此,针对比赛小车系统,不完全微分的PD控制是最佳离散的PID控制方案12。PID控制是应用最广泛最成熟的控制方法,应用于智能车控制,做好底层工作(如数据采集的准确性和相对连续性等),选择合适的调节器,掌握比例、积分和微分控制的特点和作用,对控制结果进行分析,科学调试选择合适的参数,合理设置死区,利用分段等措施,可以达到很好的控制效果16。4.6 转弯控制模块在设计之初对算法的设想时,为了对周期、实时转角、实时速度这几个参数对转向的作用效果有一个基本的认识,我们运用控制变量法做了大量的理论推导计算与画图(下图是计算数据中的一小部分),归纳出了一个公式: (3)以小车车身为Y轴,前轮轴为X轴,建立直角坐标系,其中L是转过的X轴向距离,A是小车前轮实时转角,v是车的实时速率,T是车从原点出发行驶的时间,即周期。由经验公式得出,L与V的二次方成正比!也就是说当有V作为参数计算转角时,可以使小车控制更精准,超调量便大幅降低,使小车稳定性增加。当我们想不出合适的方案加入V作为转角计算参数时我们决定使用上海交通大学的方案,用模糊算法。图4.4 部分理论推导计算的稿纸4.7 开发工具程序的开发是在组委会提供的CodeWarrior IDE下进行的,包括源程序的编写、编译和链接,并最终生成可执行文件。CodeWarrior for S12 是面向以HC1和S12为CPU的单片机嵌入式应用开发软件包。包括集成开发环境IDE、处理器专家库、全芯片仿真、可视化参数显示工具、项目工程管理器、C交叉编译器、汇编器、链接器以及调试器。CodeWarriorIDE 能够自动地检查代码中的明显错误,它通过一个集成的调试器和编辑器来扫描你的代码,以找到并减少明显的错误,然后编译并链接程序以便计算机能够理解并执行你的程序。每个应用程序都经过了使用象CodeWorrior 这样的开发工具进行编码、编译、编辑、链接和调试的过程。Metrowerks Codewarrior IDE 中的文件对所有寄存器对应的存储映射地址都进行了宏定义,开发者在软件开发时直接调用这些宏就可以了17。CodeWarrior的使用是开发智能车的一项基本技能,由于开发使用过程较容易,所以在这里不再赘述。结论本文的研究对象是一辆以MC9S12XS128微控制器为核心,能够自主识别路径的模型车。在行驶过程中,微控制器通过多个光电传感器和编码器采集模型车的运动位置、运动方向和速度这些信息,然后迅速做出判断,输出PWM波控制驱动电机和舵机。路径识别采用光电传感器寻迹方案,它由一系列激光发射管和接收管组成,根据路面的反射光线强度的不同来判断行车的方向。这种方案电路简单,信号处理快。舵机控制是由单片机的PWM信号完成,它使舵机转动到并保持相应角度,使模型车能够顺利过弯。直流电机控制也是由单片机的PWM信号来完成,驱动采用IRF9540(PMOS)和IRFZ44N(NMOS)的H桥电路结构,并采用PD控制算法,它使模型车在行驶过程中更稳和更快。模型车的制作也具有很大的现实意义。事实上在运用软件进行仿真之后,需要进行实验的验证。而现实中往往无法使用1:1的比例进行验证。于是利用相似原理,缩小比例,此次设计的模型车就会大有用武之地。参考文献1 卓晴,黄开胜,邵贝贝. 学做智能车挑战“飞思卡尔”杯. 北京:航空航天大学出 版社2

温馨提示

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

评论

0/150

提交评论