复件 基于电磁传感器的竞速智能小车的设计定稿郑恒军

上传人:熏** 文档编号:52781584 上传时间:2022-02-09 格式:DOC 页数:39 大小:1.25MB
返回 下载 相关 举报
复件 基于电磁传感器的竞速智能小车的设计定稿郑恒军_第1页
第1页 / 共39页
复件 基于电磁传感器的竞速智能小车的设计定稿郑恒军_第2页
第2页 / 共39页
复件 基于电磁传感器的竞速智能小车的设计定稿郑恒军_第3页
第3页 / 共39页
点击查看更多>>
资源描述
编号编号本科生毕业设计本科生毕业设计基于电磁传感器的竞速智能小车的设计Electromagnetic Sensors Based on The Design of The Car Racing Intelligence学 生 姓 名专 业自动化学 号0733103指 导 教 师刘富分 院电子工程分院2011 年 6 月 摘摘 要要本智能车采用单片机(MC9S12XS128)作为智能车的检测和控制核心,在电源信号为路径引导下,采用七个一字排开的电感传感器识别未知路径,由2 片BTS7960B 级联来控制驱动电机正反转的快速切换,采用增量式旋转编码器进行车速检测,利用PWM 技术控制小车的运动速度及运动方向,并使用相应的PID 优化算法完成了对智能车运动方向及速度的闭环控制。根据大赛要求,设计了完备的软硬件系统,经多次调试,该智能车运行稳定、可靠,取得了较好的效果。关键字: 电感传感器 智能车 闭环控制 PID AbstractThe SCM(MC9S12XS128)as a Detection and control center of this design.Seven Inductances sytled like one word and incremental rotary encoders are taken to determine the unknow road and speed, the part of reversiblemotor for fast switching is controled by two BTS7960B, the smartcars speed and direction is controled by PWM technology . Complete hardware and software systems is designed requirements under competition,Achieved the closed-loop control, and PID algorithm is proposed. Afterseveral debuggings,the smartcar is running Stable, reliable,achieved good result.Keywords: Inductive Sensors Martcar Closed- loop control PIDI目目 录录绪绪 论论.1第一章第一章 电磁传感器小车简介电磁传感器小车简介.21.1 国外的发展状况 .21.2 国内的发展概况 .31.3 研究智能车系统的意义 .31.4 论文的背景和概况 .4第二章第二章 智能车机械分析与设计智能车机械分析与设计.62.1 智能车前轮定位的设计.62.1.1 主销后倾角.72.1.2 主销内倾角.72.1.3 前轮外倾角.72.1.4 前轮前束.82.2 智能车车体重心设计.82.3 智能车后轮减速齿轮机构.92.4 舵机的安装.92.5 测速编码器的安装.102.6 其它机械结构的调整 .10第三章第三章 系统硬件设计系统硬件设计.113.1 系统结构 .113.2 电源部分 .113.3 电机驱动电路 .113.4 电磁磁场发生器模块.123.5 电磁检测模块.133.5.1 电感传感器的原理 .143.5.2 电感传感器分布 .153.6 电磁传感器检测原理 .163.7 测速电路 .163.8 舵机控制模块.17第四章第四章 软件设计软件设计.194.1 软件处理流程.194.2 速度控制算法与弯道控制策略.194.3 舵机控制.22第五章第五章 系统联调系统联调.235.1 开发工具.235.2 上位机调试 .23总总 结结.24致致 谢谢.25参考文献参考文献.261绪绪 论论本智能小车以飞思卡尔 16 位微控制 MC9S12XS128 作为唯一的核心控制单元,采用一组线圈作为传感器,感应由赛道中心导线产生的交变磁场检测道路信息,通过单片机处理优化,把控制信号发送给电机和舵机。同时通过自制的转速传感器获取小车速度,进行速度反馈处理,最后利用 PID 控制方式作为电机驱动。本文对线圈的选择及对跑道位置的检测进行了简要的分析,对小车的硬件与软件设计进行了介绍。本论文以智能小车的设计为主线,包括小车的构架设计、软硬件设计,以及控制算法研究等,共分为五章。其中,第一章为简介部分。第二章总体介绍了智能小车。第三章介绍了硬件设计,主要介绍了电路的设计;检测模块的设计。第四章对小车的软件设计进行了详细的介绍。第五章描述了小车的软件调试过程。 2第一章第一章 电磁传感器小车简介电磁传感器小车简介智能车辆,是一个集环境感知、规划决策、多等级辅助驾驶等功能于一体的综合系统。它集中运用了计算机、现代传感、信息融合、通讯、人工智能及自动控制等技术,是典型的高新技术综合体。它具有道路障碍自动识别、自动报警、自动控制、自动保持安全距离、车速和巡航控制等功能。它的主要特点是在复杂的道路情况下,能自动地操纵和驾驶车辆绕开障碍物和沿着预定的道路(轨迹)行进。当今半导体在汽车中的应用越来越普及,汽车的电子化已成为行业发展的必然趋势。据统计,平均每辆车上电子装置在整个汽车制造成本中所占的比例不断上升,在一些豪华轿车上,电子产品甚至占到整车成本的 50以上。汽车电子应用已涵盖了从汽车电子控制装置到车载汽车电子装置的几乎所有系统。电子控制即通过电子装置控制汽车发动机、底盘、车身、制动防抱死及动力转向系统等,而车载汽车电子装置包括汽车信息娱乐系统、导航系统、汽车音响及车载通信系统等等。在这样的行业背景下,教育部为了加强大学生实践、创新能力和团队精神,培养面向未来的科技尖端人才,在己举办的全国数学建模、电子设计、机械设计、结构设计等 4 大专业竞赛的基础上设立了第五项大学生设计竞赛全国大学生智能汽车竞赛。1.1 国外的发展状况国外的发展状况智能车辆概念的提出,可以追溯到上个世纪 50 年代美国 Barrett Electronic 公司研究开发的世界上第一台自动引导车辆系统。尽管只是一个运行在固定线路上的拖车式运货平台,但它却具有了智能车辆最基本的特征即无人驾驶。80 年代以来,随着科学技术的发展,智能车辆技术具有了实现的技术基础,从 90 年代开始进入了深入、系统、大规模研究阶段。从 80 年代中后期开始,世界主要发达国家对智能车辆开展了卓有成效的研发工作。在欧洲,普罗米修斯项目于 1986 年开始了在这个领域的探索。美国在这方面也进行了很深入的研究,1995 年成立了国家自动高速公路系统联盟,其目标之一就是研究发展智能车辆的可行性,并促进智能车辆技术进入实用化。1996 年,日本成立了高速公路先进巡航辅助驾驶研究协会,主要目的是研制自动车辆导航的方法,促进日本智能车辆技术的整体进步。韩国大学生智能模型车竞赛是韩国汉阳大学汽车控制实验室在飞思卡尔半导体公司资助下举办的以 HCSl2 单片机为核心的大学生课外科技竞赛。组委会将提供一个标准的汽车模型、直流电机和可充电式电池,参赛队伍要制作一个能够自主识别路线的智能车,在专门设计的跑道上自动识别道路行驶,跑完整个赛程用时最短,而且技术报告评分较高的参赛队就是获胜者。2000 年智能车比赛首先由韩国汉阳大学承办开展起来,每年全韩国大约有 100 余支大学生队伍报名并准予参赛,至今已举办 8 届,得到了众多高校和大学生的欢迎,也逐渐得到了企业界的极大关注。韩国现代公司自 32004 年开始免费捐赠了一辆轿车作为赛事的特等奖项。德国宝马公司也提供了不菲的资助,邀请 3 名获奖学生到德国宝马公司研究所访问,2005 年 SUNMOON 大学的参赛者获得了这一殊荣。1.2 国内的发展概况国内的发展概况我国于2006年8月举办第一届“飞思卡尔杯全国大学生智能汽车邀请赛,该赛事是教育部高等学校自动化专业教学指导分委员会主办的,在飞思卡尔半导体公司资助下举办的,该项赛事吸引了来自全国59所著名学校的112支代表队的参与,大赛分预赛和决赛两个阶段。所有112支代表队先参加预赛,通过预赛选拔出25支代表队参加最后决赛阶段的比赛。比赛竞争异常激烈,十分微弱的成绩差异即决定优胜者名次。最后,按成绩排名决出冠军特等奖1名、一等奖2名、二等奖5名,并结合预赛成绩评出三等奖25名。所有顺利完成比赛的队伍都获得组委会颁发的优胜奖。第二届“飞思卡尔”杯全国大学生智能汽车竞赛总决赛于2007年8月在上海交大落下帷幕。来自全国54所高校的76支参赛队,经过激烈角逐,共决出特等奖3名、一等奖23名。1.3 研究智能车系统的意义研究智能车系统的意义制作智能车,需要参赛队伍学习和应用嵌入式软件开发工具软件 Code Warrior和在线开发手段,自行设计和制作可以自动识别路径的方案、电机的驱动电路、模型车的车速传感电路、模型车转向伺服电机的驱动以及微控制器 MC9S12DGl28 控制软件的编程等,其专业知识涉及控制、模式识别、传感技术、汽车电子、电气、计算机和机械等多个学科,对学生的知识融合和实践动手能力的培养,以及高等学校控制和汽车电子学科学术水平的提高,具有良好的长期推动作用。和发达国家的大学生相比,我国大学生的实践环节不足,欠缺创新意识的培养是不争的事实,该赛事对加强大学生动手能力和创新意识的培养无疑是非常有帮助的。随着赛事的逐年开展,将不仅有助于大学生自主创新能力的提高,对于高校相关学科领域学术水平的提升也有一定帮助,最终将有助于汽车企业的自主创新,得到企业的认可。这项赛事在韩国的成功可以证明这一点。首先,智能车制作作为培养本科生获取知识、应用知识的能力及创新意识的一种补充,尤其在目前实践教育相对薄弱的情况下,不失为本科工程实践教育的好方式。智能车竞赛以现在智能汽车为研究背景,从根本上调动了全国众多大学生学习与研制智能汽车的兴趣。有了兴趣才会有学习动力和钻研激情,才能萌发五彩缤纷的想象力。其次,以智能汽车为研究背景的科技创意性制作,是一种具有探索性的工程实践活动,其本质也是人类创造有用人工物的一种训练性实践,其过程属性是综合,而结 4果属性很可能是创造。通过竞赛,参赛的同学们培养了对已学习过的基础与专业理论知识与实验的综合运用的能力;带着背景对象中的各种新问题,学习控制、模式识别、传感技术、电子、电气、计算机、机械等多个学科新知识,包括来自不同学科背景大学生的相互学习,逐渐学会了在学科交叉、集成基础上的综合运用;若是以使用为目的,还必须考虑可靠性、寿命、外观工业设计、性能价格比、市场需求及顾客心理等因素,即须从系统工程角度出发,结合技术与非技术、集成科学与非科学,在具体约束条件下融合形成整体的综合运用。应该说,这样的训练是很有意义的。再次,智能车竞赛是具有团队性质的工程实践活动。现代科学技术的进步与创造发明,无不凝聚了水平高且人员结构合理群体的智慧。通过竞赛实践,逐渐培养大学生学会在一个团队中正确估计自己,正确估计他人;善于学习和发挥他人的长处,并初步具有组织和调动各类人员积极性的能力;既能当好主角,也甘于当好配角,初步具有脚踏实地地做好本职工作的基本素质。1.4 论文的背景和概况论文的背景和概况教育部为了加强大学生实践、创新能力和团队精神的培养,在己举办全国数学建模、电子设计、机械设计、结构设计等 4 大专业竞赛的基础上,经研究决定,委托高等学校自动化专业教学指导分委会主办自 2006 年每年一度的全国大学生智能汽车竞赛。高等学校自动专业教学指导分委会决定飞思卡尔半导体公司为协办单位,赛事冠名为“飞思卡尔”杯。竞赛要求参赛者在提供的模型车体及主微控制器芯片基础上设计制作具有自主道路识别能力并满足比赛规则的智能汽车,在赛道上以最快速度完成赛程者为优胜。 作为全球最大的汽车电子半导体供应商,飞思卡尔一直致力于为汽车电子系统提供全范围应用的单片机、模拟器件和传感器等器件产品和解决方案。飞思卡尔是排名第一的汽车电子半导体供应商,其中在 8 位、16 位及 32 位汽车微控制器的市场占有率居于全球第一,超过 40%的新车都使用了飞思卡尔的技术。智能车比赛源自韩国,并且已成功举办了四届,其比赛的技术水平和成绩已达到了相当的高度,已引起现代、宝马等跨国企业的注意。在韩国成功举办多次的基础上,在我国开始尝试举办该赛事,全国大学生智能汽车竞赛暨第一届“飞思卡尔”杯全国大学生智能汽车邀请赛已于 2006 年 8 月 2021 日在清华大学圆满结束,来自全国57 所高校的 112 支队伍参加了比赛,引起了各方的广泛关注,并且已经具备了较高的技术水平,清华大学 2 队、上海交大速度之星队及清华大学 1 队分列成绩前三名。与以往的专业竞赛不同,智能车大赛是以迅猛发展的汽车电子为背景,涵盖了控制、模式识别、传感技术、电子、电气、计算机、机械等多个学科交叉的科技创新比赛,已经成为各高校展示科研成果和学生实践能力的重要途径,同时也为社会选拔优秀的创新人才提供了重要平台。第五届“飞思卡尔”杯全国大学生智能汽车竞赛于 2010 年 7 月中旬举行分区比 5赛,8 月中旬举行全国总决赛。竞赛内容包括:以飞思卡尔 HCS12 单片机1为核心控制模块,以 CCD、光电或电磁检测元件检测赛道引导线,引导改装后的模型汽车以最快的速度按照大赛组委会所设定的赛道行进,以赛车在最短时间跑完全程的队为优胜队。该竞赛是涵盖了控制、模式识别、传感技术、电子、电气、计算机、机械等多个学科的科技创意性比赛,极具挑战性与竞争性。 该比赛已经列入教育部主办的全国大学生五大竞赛之一。 6第二章第二章 智能车机械分析与设计智能车机械分析与设计智能车2的总体设计采用是前轮转向,后轮驱动,且整个车体的结构基础以塑料为主体,这样智能车及能提供一定的支撑硬度,又比金属的重量更轻,也可以承受一定的撞击,智能车如图 2-1 所示。 图 2-1 智能车的俯视图表 1-1 模型车基本尺寸参数表2.1 智能车前轮智能车前轮定位的设计定位的设计现代汽车在正常行驶过程中,为了使汽车直线行驶稳定,转向轻便,转向后能自动回正,减少轮胎和转向系零件的磨损等,在转向轮、转向节和前轴之间须形成一定的相对安装位置,叫车轮定位,其主要的参数有:主销后倾、主销内倾、车轮外倾和前束3。项 目尺寸车 长390mm车 宽200mm轴 距198mm前 轮 距137mm后 轮 距138mm车 轮 直 径52mm 72.1.12.1.1 主销后倾角主销后倾角主销后倾角是指在纵向平面内主销轴线与地面垂直线之间的夹角。它在车辆转弯时会产生与车轮偏转方向相反的回正力矩,使车轮自动恢复到原来的中间位置上。所以,主销后倾角越大,车速越高,前轮自动回正的能力就越强,但是过大的回正力矩会使车辆转向沉重,使得车子在转弯时不够灵敏。本车模主销后倾角值设定在 2。如图 2-2 所示。图 2-2 主销后倾示意图2.1.22.1.2 主销内倾角主销内倾角主销内倾角是指在横向平面内主销轴线与地面垂直线之间的夹角,它的作用也是使前轮自动回正,转弯时不容易冲出跑道。角度越大前轮自动回正的作用就越强,但转向时也就越费力,轮胎磨损增大;反之,角度越小前轮自动回正的作用就越弱。通常汽车的主销内倾角不大于 8。对于车体,通过调整前桥的螺杆的长度可以改变主销内倾角的大小,由于内倾角会增大转向的阻力,增加轮胎磨损,并且舵机响应的延迟问题,为了追求更高的前轮转向响应速度,本车模主销内倾角为 0。如图 2-3 所示。图 2-3 主销内倾示意图2.1.32.1.3 前轮外倾角前轮外倾角前轮外倾角是指通过车轮中心的汽车横向平面与车轮平面的交线与地面垂线之间的夹角,对汽车的转向性能有直接影响,它的作用是提高前轮的转向安全性和转向操纵的轻便性。在汽车的横向平面内,轮胎呈“八”字型时称为“负外倾” ,而呈现“V”字形张开时称为正外倾。如果车轮垂直地面一旦满载就易产生变形,可能引起车轮上部向内倾侧,导致车轮联接件损坏。所以事先将车轮校偏一个正外倾角度,一般这个角度约在 1左右,以减少承载轴承负荷,增加零件使用寿命,提高汽车的安 8全性能。模型车提供了专门的外倾角调整配件,近似调节其外倾角。由于竞赛中模型主要用于竞速,所以要求尽量减轻重量,其底盘和前桥上承受的载荷不大,所以外倾角调整为 0,并且要与前轮前束匹配。如图 2-4 所示。 图 2-4 前轮外倾示意图2.1.42.1.4 前轮前束前轮前束所谓前束是指两轮之间的后距离数值与前距离数值之差,也指前轮中心线与纵向中心线的夹角。前轮前束的作用是保证汽车的行驶性能,减少轮胎的磨损。前轮在滚动时,其惯性力自然将轮胎向内偏斜,如果前束适当,轮胎滚动时的偏斜方向就会抵消,轮胎内外侧磨损的现象会减少。像内八字那样前端小后端大的称为“前束” ,反之则称为“后束”或“负前束” 。在实际的汽车中,一般前束为012mm 。在车体中,前轮前束是通过调整伺服电机带动的左右横拉杆实现的。主销在垂直方向的位置确定后,改变左右横拉杆的长度即可以改变前轮前束的大小。在实际的调整过程中,我们发现较小的前束,约束02mm 可以减小转向阻力,使模型车转向更为轻便,但实际效果不是十分明显。虽然车体的主销后倾角、主销内倾角、车轮外倾角和前束等均可以调整,但是由于车模加工和制造精度的问题,车模前轮前束为0mm 。如图2-5所示。图 2-5 前轮前束示意图2.2 智能车车体重心设计智能车车体重心设计 赛车重心位置的改变会影响赛车的动力性、制动性、操纵稳定性、平顺性、通过性等重要特性。 弯道处理中一般会遇到转向不足和转向过度问题, “转向不足”更容易发生在前驱车身上,而“转向过度”则几乎是所有后驱车的高速“后遗症” 。要想高速过弯,我们要做到利用并修复“转向过度” 。对于智能车来说,快速的车速对“转向过度”是关键。车辆转向过度的倾向主要因数是机械抓地力,空气动力学和悬挂等。本车体 9重心靠后。重心点与前后轮中心的间距分别为 71mm、129mm。2.3 智能车后轮减速齿轮机构智能车后轮减速齿轮机构 车体后轮采用 RS-380SH 电机驱动,电机轴与后轮轴的传动比为 18:76(电机轴齿轮齿数为 18,后轴传动齿数为 76) 。齿轮传动机构对车模的驱动能力有很大的影响。调整的原则是:两传动齿轮轴保持平行, 齿轮间的配合间隙要合适,过松容易打坏齿轮,过紧又会增加传动阻力,浪费动力;传动部分要轻松、顺畅,不能有迟滞或周期性振动的现象。判断齿轮传动是否良好的依据是,听一下电机带动后轮空转时的声音。声音刺耳响亮,说明齿轮间的配合间隙过大,传动中有撞齿现象;声音闷而且有迟滞,则说明齿轮间的配合间隙过小。调整好的齿轮传动噪音很小,并且不会有碰撞类的杂音,后轮减速齿轮机构就基本上调整好了,动力传递十分流畅。2.4 舵机的安装舵机的安装舵机转向是系统中一个较大时间常数的惯性环节。这对于对快速性要求极高的智能小车来说,是影响其速度的一个重要因素,特别是对于我们基于电磁传感器的竞速智能小车,因为我们的前瞻不够远所以对舵机的灵敏性要求就非常高。根据表2.1可知舵机的转动延迟严重落后于程序运行时间,为了提高舵机的灵敏性我们都是采用加长舵机力臂的方法。加大力臂后减小了舵机的转向范围,即使舵机转动一个较小的角度,前轮也能转动的比较大!所以要使前轮转动相同的角度,舵机力臂加长后所需时间更短,响应更快。通过ADAMS 软件建模进行仿真分析得出舵机安装的最佳值。转动臂为3cm。如图2-6所示。图 2-6 舵机安装示意图表 2-1 舵机的基本参数舵机的基本参数: HS-925尺寸39.4*37.8*27.8重量56g工作速度0.11sec/60(4.8V)0.8sec/60(6.0V)堵转力度6.1kg.cm(4.8V)7.7kg.cm(6.0V) 102.5 测速编码器的安装测速编码器的安装由于本车模是采用测速编码器实现对驱动电机转速的检测,所以需要考虑测速发电机的安装和固定等问题。通过齿轮传动的方式将测速编码器上小齿轮与差速齿轮啮合,并且改变传动比,让测速编码器和驱动电机等速。2.6 其它机械结构的调整其它机械结构的调整 1.为有效地防止由于轮胎与轮辋错位而引起的驱动力损失,我们对前轮进行了粘胎处理。 2.为了防止小车在高速时急转弯时发生侧滑甩尾等现象,在底盘下部车尾与车身也进行了粘接处理。 3.为提高小车的稳定性,我们尽量做到使小车重心降低且使小车的重心后移,如将电池后移。工作角度45 度/400us 11第三章第三章 系统硬件设计系统硬件设计 3.1 系统结构系统结构系统由电源模块、电机控制模块4、主控模块、电磁传感模块、速度检测模块、舵机驱动模块。系统设计总框图如图 3-1 示:图 3-1 系统设计总框图3.2 电源部分电源部分为了能使智能车系统能正常工作,就需要对电池电压调节。其中,单片机系统、车速传感器电路需要 5V 电压,路径识别的电路电压工作为 5V、伺服电机工作电压范围 4.8V 到 6V(或直接由电池提供),直流电机可以使用 7.2V 2000mAh Ni-cd 蓄电池直接供电。考虑到由于驱动电机引起的电压瞬间下降的现象,因此采用低压降的三端稳压器成为必然。我们在采用 LM7806,和 LM2940 作为稳压芯片。经试验电压纹波小,完全可以满足要求。3.3 电机驱动电路电机驱动电路电机驱动使用功率管搭建的桥式驱动电路5。驱动电路如图 3-3 所示。系统使用 PWM 控制电机转速,充分利用单片机的 PWM 模块资源6。电机 PWM 频率设定为8KHz。因为桥路需要的电压和稳压要求,驱动电路通过一个升压块升压供电,PWM 频率小于 10KHz,具有短路保护、欠压保护、过温保护等功能。电源模块舵机驱动模块电机控制模块电磁传感器模块速度检测模块主控模块 12 图 3-2 系统电压调节图图 3-3 电源模块示意图图 3-4 H 桥式驱动电路3.4 电磁磁场发生器模块电磁磁场发生器模块1.振荡电路:产生中心频率为 20KHz 的对称方波信号。为了满足功率输出电路的需要,一般输出极性相反的信号。可以使用普通的 555 时基电路产生振荡信号(如图 3-5 所示),也可以使用简易的单片机产生振荡信号。为了方便调试,信号频率能够在一定范围内5V6V舵机Dab 电池(7.2v) 2000mAh Ni-cd稳压电路单片机机机单片机Ddanndandan对管测速板电机7.2V单片机Ddanndandan 13进行调整。2.功率输出电路:由于输出驱动信号电压、电流、频率较大,需要一定输出功率驱动跑道线圈,因此最后需要功率输出电路。可以采用分立大功率晶体管搭建输出电路,也可以使用的电机驱动桥电路集成模块(如图 3-4 所示) 。选择时需要注意电路的频率响应应该大于 20KHz,输出功率大于 2W。3.恒流控制:利用晶体管的在放大区集电极的恒流特性进行控制,恒流电路控制输出电流在100mA 左右稳定,不随着电源的变化而发生波动。4.输出方波波形如图3-6 所示:开始时我发现车身在跑道同一位稍微有点倾斜就有可能使车子的状态发生变化。所以经过一番研究之后我选择软件“二值化” 。将模拟信号变换成数字信号然后在对数字信号进行处理。采用这种方法可以较大地提高车子的稳定性和抗干扰能力。但将模拟信号变成数字信号时肯定会丢失磁场一部分信息,这大大的增加了对智能车控制的难度。图 3-5 基于 555 的振荡电路3.5 电磁检测模块电磁检测模块对于电磁检测模块7,可以选择使用少量传感器,采用模拟法,这在最初的设计时使用的就是此种方法,但在以后的实验时发现这种方法的抗干扰能力特别差,如果导线中的电流有些许的波动,对车子的整体性能都将产生较大影像,而且在具体跑的VCCV0ViCTRTR1VDC1C248672351555 14时速度比较快。 15图 3-6 输出方波波形在确定智能车的总体方案时,选择工字型电感作为传感器,工字型电感传感器的优点在于技术简单,电路易实现,而且价格便宜,稳定性好,抗干扰能力好8。在使用电感传感器时实时调节传感器电压输出,达到其一致性,因电路板是手工焊制,使电感传感器的精确度受到影响,因此选择了七个传感器采用软件“二值法” ,实际检测中该方法取得预期效果。3.5.13.5.1 电感传感器的原理电感传感器的原理 采用工字型电感传感器,其外部结构如图3-7所示,传感器分为现场采集和软件“二值法”处理两部分 。 1.电感传感器谐振和检测电路图 3-7 几种工字型电感外部结构图3-8 中,E 是感应线圈中的感应电动势,L 是感应线圈的电感量,R0 是电感的内阻,C 是并联谐振电容。上述电路谐振频率为: (3-LCf2101)已知感应电动势的频率 f0=20kHZ,感应线圈电感为 L=10mH,可以计算出谐振电容的容量为: (3- FLfC9333201033. 61010102021212) 通常在市场上可以购买到的标称电容与上述容值最接近的电容为 6.8nF,所以在 16实际电路中,我们选用了 6.8nF 的电容作为谐振电容。 有谐振电容之后,感应线圈两端输出感应 20KHz 电压信号不仅幅度增加了,而且其它干扰信号也非常小。这样无论导线中的电流波形是否为正弦波,由于本身增加了谐振电容,所以除了基波信号之外的高次谐波均被滤波除掉,只有基波 20kHz 信号能够发生谐振,输出总是 20KHz 正弦波。图 3-8 电感传感器谐振电路部分图 3-9 电感传感器倍压检波电路部分为了能够更加准确测量感应电容式的电压,还需要将上述感应电压进一步放大,一般情况下将电压峰峰值放大到1-5V 左右,就可以进行幅度检测,所以需要放大电路具有100倍左右的电压增益(40db) 。最简单的设计可以只是用一阶共射三极管放大电路就可以满足要求。当然,也可以选用运算放大器进行电压放大。但是需要选择单电源、低噪音、动态范围达、高速运放不太容易,所示不太推荐使用运算放大器进行信号放大。关于幅度测量,测量放大后的感应电动势的幅值E 使用二极管检波电路将交变的电压信号检波形成直流信号,然后再通过单片机的AD 采集获得正比于感应电压幅值的数值。如图3.9所示。 2.软件“二值法”处理 单片机的AD 采集获得正比于感应电压幅值的数值后,我们对电压模拟信号再经行软件“二值法”处理得到数字信号,方便信号的处理、存储。 173.5.23.5.2 电感传感器分布电感传感器分布传感器选用7个水平一字疏密不等的排列(中间密两边疏) 。水平一字排布方式在采集赛道信息,是最常用的一种排布方式其排布方式简单容易实现且程序上容易处理,在转弯时能够很好的检测出赛道弧度信息,且不易受十字路口的干扰。3.6 电磁传感器检测原理电磁传感器检测原理电磁传感器检测路面信息的原理是由电感和电容并联产生相应的特定频率谐振,其频率的设定为跑到信息频率的附近,再由谐振感应跑到上由变化的电流产生的变化的磁场,从而产生相应的交流电压,再将相应的交流的电压进行放大、整流和滤波从而变化成相应的电压9,如图 3-10。而起跑线的检测采用钢簧管检测,如图 3-11 所示。考虑到舵机响应速度较慢( 0.11s/60),难以满足高速行驶中的转弯要求,小车容易冲出跑道。为了使小车在偏离赛道后还能重新调节角度回到赛道,特意在小车前轮的左右两边各安装一个光电传感器,并设定其路径识别优先级最高以保证在小车前轮冲出赛道时能感知到黑线,即时做出相应反应。图 3-10 道路示意图3.7 测速电路测速电路受小车机械结构限制,必须采用体积小,重量轻的传感器。我们采用 500P 的测速电机,采用的测速电机的好处有以下几点:1.使用方便,它是集成的,可以直接买到,不必花费太多的时间;2.效果好,它是 500P 的,即:转轴转动一周,会产生500 脉冲,其精度很高;3.干扰很小。由于考虑到成本需要,我们采用了红外对管和自制光栅作为测速模块的硬件构成。其中码盘为 45 齿的黑色圆盘,如下图 3-12 所示:红外传对管安装在正对码盘的前方,虽然这样做精度比编码器要低很多,但是成本低廉制作容易,如果智能车速度较快,可以考虑再减少码盘上黑白色条的数量即可。 18图 3-11 起跑线示意图图 3-12 光栅当圆盘随着齿轮转动时,光电管接收到的反射光强弱交替变化,由此可以得到一系列高低电脉冲。通过集成运放芯片设置电压比较,放大形成方波。同时捕捉光电管输出的电脉冲的跳变沿。通过累计一定时间内的脉冲数,可以得到和速度等价的参数值。测速电路使用自行研制的红外对射式光电测速传感器。速度测量电路使用红外对管,自行制作的编码盘,比较电路等组成。速度测量电路图 3-13 所示。红外对射式光电对管的光敏三极管信号通过比较器处理后输入单片机的定时器端口,利用单片机的脉冲计数功能,处理智能车速度信息。自制的编码盘有 45 齿,电机旋转一周将产生 45 次输入捕捉中断。 单片机记录两次中断的时间间隔 T。两次中断对应于智能车前进的距离 S 为:16.5/45 cm,即 0.3666cm,其中 16.5cm 为智能车后轮实测周长。智能车实时速度V(cm/s)的计算公式如下: (3- scmTTTSV3666. 0455 .16 193)3.8 舵机控制模块舵机控制模块舵机作为一种位置伺服驱动器件,通过改变输入信号 PWM 波的占空比调整输出角度,实现伺服功能。作为控制赛车循迹行走的关键,要求舵机驱动的转向机构具有精确的角度控制和快速响应能力。我们采用以下三点实现舵机的要求:直接用 7.2V 2000mAh Ni-cd 电池供电,提高舵机的响应速度;采用两位 PWM 连续使用,提高输出角度的分辨率;输出 100HZ 的调制方波,减小控制信号的延时。 图 3-13 转速采集电路 20第四章第四章 软件设计软件设计4.1 软件处理流程软件处理流程图 4-1 软件设计总流程图 模型车在直道上的速度相差不是很大,在弯道上的比拼才是重点,因此如何优化弯道的算法才是整个控制算法的关键。4.2 速度控制算法与弯道控制策略速度控制算法与弯道控制策略模型车平稳地行驶是本次比赛的基本要求,但这并不意味着这是最简单的要求,因为速度控制的好坏直接影响整车的许多方面,比如直道的速度提升,转弯速度(甚至影响了模型车的打滑程度),导致弯道速度总是无法提升,特别容易打滑,根本原因就是速度控制算法处理不当造成的。首先使用的是速度算法是位置式的 PID 算法10,PID 控制是工程实际中应用最为广泛的调节器控制规律。问世至今 70 多年来,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。 PID 调节是 Proportional(比例),Integral(积分),Differential(微分)三者的缩写,系统初始化读取道路信息处理道路信息并得到相关信息根据参数选择算法执行电机与舵机 21是一种过程控制算法,就是对误差信号(采样信号与给定信号的差)通过比例,积分,微分的运算后的结果作为输出控制信号,来控制所要控制的对象。 比例调节作用:是按比例反应系统的偏差,系统一旦出现了偏差,比例调节作用用以减少偏差。比例作用大,可以加快调节,减少误差,但是过大的比例使系统的稳定性下降,甚至造成系统的不稳定。 积分调节作用:是使系统消除稳态误差,提高误差度。当有误差时,积分调节就进行,直至无误差,积分调节停止,积分调节输出常值。积分作用的强弱取决与积分时间 Ti,Ti 越小,积分作用就越强。反之 Ti 大则积分作用弱,加入积分调节可使系统稳定性下降,动态响应变慢。 微分调节作用:微分作用反应系统偏差信号的变化率,具有预见性,能预见偏差变化的趋势,因此能产生超前的控制作用,在偏差还没有形成之前,已被微分调节作用消除。因此,可以改善系统得动态性能。在微分时间选择合适的情况下,可以减少超调,减少调节时间。微分作用对噪声干扰有放大作用,因此过强的加微分调节,对系统抗干扰不利。 单位反馈的 PID 控制原理框图如图 4-2 所示。 图 4-2 PID 算法框图 单位反馈 e 代表理想输入与实际输出的误差,这个误差信号被送到控制器,控制器算出误差信号的积分值和微分值,并将它们与原误差信号进行线性组合,得到输出量 u。 (4-1)piddeuk ekedtkdt公式 1 中,Kp、Ki、Kd分别称为比例系数、积分系数、微分系数。u 接着被送到了执行机构,这样就获得了新的输出信号,这个新的输出信号被再次送到感应器以发现u新的误差信号,这个过程就这样周而复始地进行。PID 各个参数作用基本介绍:增大微分项系数可以加快动态系统响应,但容易引起震荡。一般增大比例系数能够减小上升时间,但不能消除稳态误差。增大积分系数能够消除稳态误差,但会使瞬时响应变差。增大微分系数能够增强系统的稳定特性,减小超调,并且改善瞬时响应。增量型算法与位置型算法相比,具有以下优点: 1. 增量型算法不需要做累加,控制量增量的确定仅与最近几次误差采样值有关,计算误差或计算精度问题,对控制量计算影响较小。而位置型算法要用到过去的误差的累加值,容易产生大的累加误差。 2.增量型算法得出的是控制量的增量,误动作影响小,必要时通过逻辑判断限制RRrrrrrrrYu控制器contorller空 K 控制器kong被控对象对象啊被控e 22或禁止输出,不影响系统工作,而位置型算法的输出是控制量输出,误动作影响大。 3.采用增量型算法,易于实现手动到自动的无冲击切换。图 4-3 PID 算法流程图 对于经典的 PID 算法,经过将近一个星期的摸索,仍然不能很好地控制好速度,后来又改为增量式的 PID 算法,可效果还是平平,增量式的 PID 算法公式 2 如下: (4-2)2(1)(2111nnndninnpnnneeeTTeTeekuuu 在一般 PID 中,当有较大的扰动或者大幅度的改变给定值时,由于此时有较大的偏差,以及系统有惯性和滞后,故在积分项作用下,往往会产生较大的超调和长时间的波动。可采用积分分离的措施: |ek |ek |PDPID当()时,采用控制当()时,采用控制同时,因长时间出现偏差或偏差较大,计算出的控制量有可能溢出,或小于零。因此必须指定控制量的上下限。 最后决定在经典的 PID 算法中,加入最简单的 bang-bang 算法11。算法思想如下:在直道时采用 PID 算法,同时设定速度的上下限,使速度不至于加减速太过。设否是是程序入口偏差计算设置调节死区增量式速度 PID 计算是否超过最大值?输出最小值输出最大值是否低于最小值?否返回驱动电机占空比 23定上限速度就是直道极限速度,下限速度就是直道最安全速度,这样设定保证直道既高速又安全地运行。弯道控制最重要的前提是不能侧滑,增大防侧滑力是最根本的方法。由于使用的是速度闭环,在入弯道时速度肯定会减低,此时因为速度闭环的原因,会产生一个很大的力(即前文所说的 F2),来提高前进速度,根据前面的分析,F2 的增加必然导致防侧滑力 F3 的减小,造成模型车过弯侧滑,但如果在过弯时暂时不使用速度闭环,那么就不会增大 F2,防侧滑力 F3 也就增加了。因此,在弯道中暂时屏蔽了速度闭环,采用简单的 bang-bang 算法,当双排传感器都从黑线的一边偏离时,零占空比输出,否则的话满占空比输出。公式 3 如下: (4-3) outnotspdoutsensordoublespd_0_100解决了侧滑问题,的过弯速度大大提高。当从直道入弯道时,为保证平稳入弯,还必须设定一个入弯安全速度,经过反复的实验,设计比赛规则中最大弯道安全速度为入弯安全速度。实际流程图如图 4-4: 图 4-4 直道弯道控制流程图4.3 舵机控制舵机控制 舵机控制12采用 PD 控制,其中 P 为变化的量: servo=Pka+Pdd (4-4)公式 4 中 servo 为舵机输出量,a 为偏离量,Pk为比例系数,Pd为微分系数,d为微分项,其中比例系数是变化的。当发现偏离量在增大时,即上次的动作没有很好的补偿偏差,此时应增大比例系数 Pk。反之,若现在偏离量在减小,且偏离量小于一定值,此时应减小比例系数 Pk,此时为向直道走或者在直道上,同时,若发现偏离量在 0 的两边抖动时,应减小比例系数,减小震荡。而加入微分变化量可以很好的解决由直道进弯道和由弯道切弯道舵机反应不过来的问题,加入微分启动了一定量的超钱控制。弯道直道弯道还是直道bang-bang 算法PID 算法加 bang-bang 算法 24第五章第五章 系统联调系统联调5.1 开发工具开发工具 我们使用的是飞思卡尔公司提供的 16 位单片机 MC9S12DG128B13,软件开发工具采用 Metrowerks 公司开发的软件集成开发环境 Codewarrior for HCS1214,其包括集成环境 IDE、处理器专家库、全芯片仿真、可视化参数显示工具、项目工程管理器、C 交叉编译器、汇编器、链接器以及调试器,可以完成从源代码编辑、编译到调试的全部工作。另外,CodeWarrior 编译器提供了几种从 C 源代码产生实际汇编代码的优化方法,这些代码被编程到微控制器中。CodeWarrior 提供了大量的优化方法,选择不同的优化选项,生成的代码是不同的15。在本程序设计过程中用到了很多分支程序,但由于 CodeWarrior 的分支优化功能使得一些算法不能实现,所以在编译时我们重新选择了编译优化选项下的优化功能。图 5-1 CodeWarrior 调试窗口使用 BDM 来下载程序,把编译好的程序下载到单片机里运行。5.2 上位机调试上位机调试 单片机通过 MAX232 把采集到的图象信息输出到上位机。调试的过程中,可以显示主要参数,例如识别状态,路径信息,车模行驶参数等等,车模将运动过程中的道路、舵机、速度等数据记录下来,运行完毕后,将这些数据通过串口传给上位机。上位机程序进行分析显示。该程序详尽记录了车模行驶过程中,系统全部的控制过程和响应过程,避免了由于车速过快、控制周期过短而造成重要细节的遗漏,方便对控制策略进行分析、评价和改进为制定最佳的算法策略做准备。 25总总 结结 经过两个多月的努力,我把智能车从一个概念和想法到论文的最后完成,顺利的在无操作的情况下行驶,这是一个自我的突破。在整个过程中,所遇到的最大的难题和障碍不是软件的编写或硬件的搭建,而是从每一个技术的想法变成现实可行的方案之间的距离,不是能用时间或工作量来衡量的。要不耐其烦的理论分析、实际操作以及联调测试。有时可能只是一个线路的接触不良导致几个小时的查找原因。理论和实际相结合是在做整个设计时要牢记的。整个设计所需要的不只是软硬件的分工劳作,更多的是协作。从一开始:课题设计的选择、设计思路的形成、可行性方案的确定到最后的智能车顺利完成,其中的任何一个环节没有我们的通力协作是无法完成的。当然从本设计中我们学到了很多课本上无法学到的东西。 我在设计时结合实际,充分考虑了赛道信息及小车结构,特别是在机械结构方面做了大量的改进来降低运行过程中的错误率。如考虑到小车在跑 S 道时容易冲出跑道的问题,我们首先运用力学,运动学等知识进行综合分析,结合理论分析得到改进方案通过重心的转移、提高舵机转向的灵活性以及增大轮胎抓地性等方面进行改进。让小车在转弯时快捷、灵敏、稳定不至冲出跑道。在硬件设计过程中我们进行大量比较,认真筛选,选择合适的电路和芯片提高小车的运行效率。如对驱动芯片的选择,我们仔细区别各芯片的优劣,通过模拟或参考前人经验选择最好的电路和芯片。光有上面这些是远远不够的,软件算法也至关重要,离开程序的控制,前面的一切都是徒劳的。在软件算法方面我们结合多种算法(PID 算法,记忆算法等)对赛道信息的精确识别以及对小车运动状况的控制。包括起跑线的识别,十字交叉线、直道、S 道等的识别以及小车运行速度、加速度的检测。通过 MCU 对各模块信息的综合处理来控制小车稳定运行。 26致致 谢谢 首先,感谢刘富老师在论文完成的过程中的悉心指导。在我们每遇到难题时总是不断指导我,给我提供新的思路,帮我克服问题。教导我首先:要摆正心态不急不慌,从理论上分析,再实际检查测试。每一步都尽心尽力。在这过程中我不仅学到了知识,还学到了对待问题踏踏实实,认认真真,精益求精的精神,更学到了如何作一个有理想的,对社会有贡献的人。其次,感谢学校给我提供了这么一个锻炼自我,提高自我的机会。在论文的完成过程中我不仅全程参与其中,尽心尽力走好每一步,更敢于突破提出新问题,新思路。当然因为实力有限,很多问题至今仍未能解决,但我们都不会随便放弃的! 最后,感谢在这么长时间一直支持我们,鼓励我们,帮助我们的领导、老师以及学长们!谢谢你们! 27参考文献参考文献1 Fescale Semiconductor MC9S12XS128M.Technical Data Freescale Semiconductor,Inc,2005.2 余志生.汽车理论M.北京:机械工业出版社.2000.3 卓晴, 黄开胜,邵贝贝.学做智能车M. 北京:北航出版社,2007.4 邵贝贝.嵌入式实时操作系统(第 2 版)M.北京:清华大学出版社,2004.5 谢卫.控制电机M.北京:中国电力出版社,2008.6 王久和.电压型 PWM 整流器的非线性控制M.北京:机械工业出版社,20087 童诗白.模拟电子技术基础M.北京:高等教育出版社,2001.8 沈长生常用电子元器件使用一读通M.北京:人民邮电出版社20049 邹澎,周晓萍.电磁场与电磁波M.北京:清华大学出版社,2008 10 刘金琨.先进 PID 控制 MATLAB 仿真(第 3 版 )M.北京:电子工业出版社,2009.11 Adam L.Buchsbaum. Algorithm Engineering and ExperimentationOverseaM. Publishing House,2001.12 宗光华智能车的创意设计与实践M北京:北京航空航天大学出版社,2004.13 Todd D Morton. 嵌入式微控制器M.严隽永译.北京:机械工业出版社,2005.14 王宜怀.嵌入式系统使用 HCS12 微控制器的设计与应用M.北京:北京航空航天大学出版社,2009.15 J.H.Holland. Adaptation in Natural and Artificial SystemsM.The Unversity Of Mic higan Press,1975. 28附录附录 源程序代码源程序代码#include declare.hvolatile int i, j, k, l;volatile int start, start_flag, start_flag1;volatile int state, state_flag, state_flag1;volatile float d_cornerl, d_cornerm, d_cornerr;volatile int o_corner, corner;volatile int max55;volatile int motor_control;volatile int wanted_speed, cur_speed, avg_speed, delta_speed;volatile float corner0;volatile float l04_max, r40_max; volatile float l_max, m_max, r_max; volatile float ad_result5, data5,o_data5; volatile static int m=0; /=锁相环初始化程序=/外部晶振时钟16M,总线时钟倍频为32M/输入参数:无;输出参数无/-/void setbusclk_32m( void ) CLKSEL = 0X00; / disengage PLL to system PLLCTL_PLLON = 1; / turn on PLL SYNR = 0 x04 | 0 x07; / pllclock=2*osc*(1+SYNR)/(1+REFDV)=64MHz REFDV = 0 x40 | 0 x03; POSTDIV = 0 x00; _asm( nop ); / BUS CLOCK=32M _asm( nop ); while( !(CRGFLG_LOCK=1) ); /when pll is steady ,then use it CLKSEL_PLLSEL = 1; /engage PLL to system /-/=AD初始化程序=/输入参数:无;输出参数:无/-/void ad_init( void ) ATD0CTL1 = 0 x40; /7:外部触发,65:转换位数选择:00-8位,01-10,10-12位精度;4:放电 ATD0CTL2 = 0 x60; /禁止外部触发, 中断禁止 ATD0CTL3 = 0 xa8; /右对齐无符号,每次转换5个序列, No FIFO, Freeze模式下继续转 ATD0CTL4=0 x61;/765:ATD0CTL5 = 0 x30; /6:0特殊通道禁止,5:1连续转换 ,4:1多通道轮流采样 ATD0DIEN = 0 x00; /禁止数字输入 /-/=PWM初始化程序=/输入参数:无;输出参数:无/-/void pwm_init( void ) 29 PWME = 0 x00; /PWM使能 PWMPRCLK = 0 x00; /clock A clock B为总线时钟 PWMSCLA = 0 x32; PWMSCLB = 0X32; /clk SB=clk B/(2*pwmsclb)=320KHZ PWMCLK = 0 xFF; /PWM clock select register,0:AB,1:SASB PWMPOL = 0 xFF; /PWM 极性选择:1:high,0:low PWMCAE = 0 x00; /对齐方式:1:中心对齐,0:左对齐 PWMCTL = 0 x70; /01,23,45,16位的寄存器工作方式 /-/=I/O初始化程序=/输入参数:无;输出参数:无/-/void io_init( void ) DDRS = 0 x00; /端口定义为输入 PTS = 0XFF; /赋初值,防止干扰 DDRA = 0X00; DDRE = 0X00; PORTA = 0XFF; /-/=PIT初始化程序=/输入参数:t;输出参数:无/ /-/void pit_init( void ) PITCE_PCE1 = 1; /定时器通道使能选择 PITMUX_PMUX1 = 1; /对定时器通道的8位时基进行选择,8位计数器只有PMUX0,PMUX1两个 PITMTLD1 = 159; /设置8位计数器初值,以实现24位的计数,范围为0255,PMUX=x时使用PITMTLDx PITLD1 = 200*t - 1; /16位定时器初值设定,200*t=1*tMS,PCEx=1时,选择PITLDx PITINTE_PINTE1 = 1; /PIT中断通道1使能,当计数器递减溢出时,申请中断 PITCE_PCE0 = 1; /定时器通道使能选择 PITMUX_PMUX0 = 1; /对定时器通道的8位时基进行选择,8位计数器只有PMUX0,PMUX1两个 PITMTLD0 = 159; /设置8位计数器初值,以实现24位的计数,范围为0255,PMUX=x时使用PITMTLDx PITLD0 = 199; /16位定时器初值设定,200*t=1*tMS,PCEx=1时,选择PITLDx PITINTE_PINTE0 = 1; /PIT中断通道1使能,当计数器递减溢出时,申请中断 PITCFLMT_PITE = 1; /定时器使能 /-/=ECT初始化程序=/输入参数:无;输出参数:无/ /-/void ect_init( void ) TSCR1 = 0 x80; /定时器允许正常工作 TSCR2 = 0 x04; /定时器溢出中断禁止,定时计数器复位 30中断禁止,预分频因子为16 PACTL = 0 x50; /
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 营销创新


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!