找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 8130|回复: 0
打印 上一主题 下一主题
收起左侧

飞思卡尔无人小车的技术设计资料

[复制链接]
跳转到指定楼层
楼主
ID:446164 发表于 2018-12-14 10:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
   在这里分享一篇飞思卡尔无人小车的技术资料。
   主要内容包括系统总体设计方案,主控板设计,传感器模块设计等等。

这份技术报告中,我们小组通过对整体方案、电路、算法、调试、车辆参数的介绍,详尽地阐述了我们的思想和创意,具体表现在电路的创新设计,以及算法方面的独特想法,而对单片机具体参数的调试也让我们付出了艰辛的劳动。这份报告凝聚着我们的心血和智慧,是我们共同努力后的成果。

在准备比赛的过程中,我们小组成员涉猎控制、模式识别、传感技术、汽车电子、电气、计算机、机械等多个学科,这次磨练对我们的知识融合和实践动手能力的培养有极大的推动作用,在此要感谢清华大学,感谢他们将这项很有意义的科技竞赛引入中国;也感谢北京科技大学相关学院对此次比赛的关注,我们的成果离不开学校的大力支持及指导老师悉心的教导;还要感谢的是和我们一起协作的队员们,协助,互促,共勉使我们能够走到今天。

引言
目录
第一章、方案设计
1.1系统总体方案的选定
1.2系统总体方案的设计
小结
第二章、智能车机械结构调整与优化
2.1智能车车体机械建模
2.2智能车前轮定位的调整
2.2.1主销后倾角
2.2.2主销内倾角
2.2.3车轮外倾角
2.2.4 前轮前束
2.3智能车转向机构调整优化
2.4智能车后轮减速齿轮机构调整
2.5其它机械结构的调整
第三章、电路设计说明
3.1 主控板的设计
3.1.1 电源管理模块
3.1.2 电机驱动模块
3.1.3 主控板设计
3.1.4 接口模块
3.1.5 信号采集模块
3.2 智能车传感器模块设计
3.2.1光电传感器的原理
3.2.2 激光传感器的设计
第四章、智能车控制软件设计说明
4.1光感器的路径精确识别技术
4.1.1 光电传感器路径识别状态分析
4.1.2 光电传感器路径识别算法
4.2弯道策略分析
4.3弯道策略制定
第五章、开发工具、制作、安装、调试过程说明
5.1 开发工具
5.2 调试过程
第六章、模型车的主要技术参数说明
6.1 智能车外形参数
6.2 电路部分参数
6.3 除了车模原有的驱动电机、舵机之外伺服电机数量
结论
参考文献

第一章、方案设计
本章主要简要地介绍智能车系统总体方案的选定和总体设计思路,在后面的章节中将整个系统分为机械结构、控制模块、控制算法等三部分对智能车控制系统进行深入的介绍分析。
1.1系统总体方案的选定
通过学习竞赛规则和往届竞赛相关技术资料了解到,路径识别模块是智能车系统的关键模块之一,路径识别方案的好坏,直接关系到最终性能的优劣,因此确定路径识别模块的类型是决定智能车总体方案的关键。如图2.1,而目前能够用于智能车辆路径识别的传感器主要有光电传感器和CCD/CMOS传感器。光电传感器寻迹方案的优点是电路简单、信号处理速度快,但是其前瞻距离有限;CCD摄像头寻迹方案的优点则是可以更远更早地感知赛道的变化,但是信号处理却比较复杂,如何对摄像头记录的图像进行处理和识别,加快处理速度是摄像头方案的难点之一。在比较了两种传感器优劣之后,考虑到CCD传感器图像处理的困难后,决定选用应用广泛的光电传感器,相信通过选用大前瞻的光电传感器,加之精简的程序控制和较快的信息处理速度,光电传感器还是可以极好的控制效果的。








图1.1 光电传感器参赛车与CCD传感器参赛车
1.2系统总体方案的设计
竞赛规则规定,智能车系统采用飞思卡尔的16位微控制器MC9S12DG128B单片机作为核心控制单元用于智能车系统的控制。在选定智能车系统采用光电传感器方案后,赛车的位置信号由车体前方的光电传感器采集,经S12 MCU的I/O口处理后,用于赛车的运动控制决策,同时内部ECT模块发出PWM波,驱动直流电机对智能车进行加速和减速控制,以及伺服电机对赛车进行转向控制,使赛车在赛道上能够自主行驶,并以最短的时间最快的速度跑完全程。为了对赛车的速度进行精确的控制,在智能车后轴上安装光电编码器,采集车轮转速的脉冲信号,经MCU捕获后进行PID自动控制,完成智能车速度的闭环控制。此外,还增加了键盘作为输入输出设备,用于智能车的角度和方位控制。系统总体方框图如图1.2。
1


第三届全国大学生智能汽车邀请赛技术报告
图1.2系统总体方框图
根据以上系统方案设计,赛车共包括七大模块:MC9S12DG128B主控模块、传感器模块、电源模块、电机驱动模块、速度检测模块辅助调试模块。各模块的作用如下:
MC9S12DG128B主控模块,作为整个智能车的“大脑”,将采集光电传感器、光电编码器等传感器的信号,根据控制算法做出控制决策,驱动直流电机和伺服电机完成对智能车的控制。
传感器模块,是智能车的“眼睛”,可以通过一定的前瞻性,提前感知前方的赛道信息,为智能车的“大脑”做出决策提供必要的依据和充足的反应时间。
电源模块,为整个系统提供合适而又稳定的电源。
电机驱动模块,驱动直流电机和伺服电机完成智能车的加减速控制和转向控制。
速度检测模块,检测反馈智能车后轮的转速,用于速度的闭环控制。
辅助调试模块主要用于智能车系统的功能调试、赛车状态监控等方面。      
小结
本章重点分析了智能车系统总体方案的选择,并介绍了系统的总体设计,以及简要地分析了系统各模块的作用。在今后的章节中,将对整个系统机械结构、控制模块和控制算法等三个方面的实现进行详细介绍。

第二章、智能车机械结构调整与优化

我们对机械结构的要求是:简单而高效。我们在不断的尝试后确定了以下的设计方案:

图2.1 智能车器件布局图
智能车系统任何的控制都是在一定的机械结构基础上实现的,因此在设计整个软件架构和算法之前一定要对整个车模的机械结构有一个感性的认识,然后建立相应的数学模型。从而再针对具体的设计方案来调整赛车的机械结构,并在实际的调试过程中不断的改进和提高。本章将主要介绍智能车车模的机械结构和调整方案。
2.1智能车车体机械建模
此次竞赛选用的智能车竞赛专用车模(G768仿真车模)。智能车的控制采用的是前轮转向,后轮驱动方案。智能车的外形大致如下:

图2.2  智能车外形图
其基本的尺寸参数如表2.1:
表2.1 模型车基本尺寸参数

基本尺寸

尺寸

轴距

198mm

前轮距

137mm

后轮距

138mm/146mm

车轮直径

52mm

主减传动比

18/76



2.2智能车前轮定位的调整
现代汽车在正常行驶过程中,为了使汽车直线行驶稳定,转向轻便,转向后能自动回正,减少轮胎和转向系零件的磨损等,在转向轮、转向节和前轴之间须形成一定的相对安装位置,叫车轮定位,其主要的参数有:主销后倾、主销内倾、车轮外倾和前束[2]。智能车竞赛模型车的四项参数都可以调整,但是由于模型车加工和制造精度的问题,在通用的规律中还存在着一些偶然性。
2.2.1主销后倾角
主销后倾角是指在纵向平面内主销轴线与地面垂直线之间的夹角[2]。它在车辆转弯时会产生与车轮偏转方向相反的回正力矩,使车轮自动恢复到原来的中间位置上。所以,主销后倾角越大,车速越高,前轮自动回正的能力就越强,但是过大的回正力矩会使车辆转向沉重。通常主销后倾角值设定在1°到3°。
模型车通过增减黄色垫片的数量来改变主销后倾角的,由于竞赛所用的转向舵机力矩不大,过大的主销后倾角会使转向变得沉重,转弯反应迟滞,所以设置为0°,以便增加其转向的灵活性。
2.2.2主销内倾角
主销内倾角是指在横向平面内主销轴线与地面垂直线之间的夹角,它的作用也是使前轮自动回正[2]。角度越大前轮自动回正的作用就越强,但转向时也就越费力,轮胎磨损增大;反之,角度越小前轮自动回正的作用就越弱。通常汽车的主销内倾角不大于8°。
对于模型车,通过调整前桥的螺杆的长度可以改变主销内倾角的大小,由于过大的内倾角也会增大转向阻力,增加轮胎磨损,所以在调整时可以近似调整为0°~3°左右,不宜太大。
主销内倾和主销后倾都有使汽车转向自动回正,保持直线行驶的功能。不同之处是主销内倾的回正与车速无关,主销后倾的回正与车速有关,因此高速时主销后倾的回正作用大,低速时主销内倾的回正作用大。
2.2.3车轮外倾角
前轮外倾角是指通过车轮中心的汽车横向平面与车轮平面的交线与地面垂线之间的夹角[2],对汽车的转向性能有直接影响,它的作用是提高前轮的转向安全性和转向操纵的轻便性[1]。在汽车的横向平面内,轮胎呈“八”字型时称为“负外倾”,而呈现“V”字形张开时称为正外倾。如果车轮垂直地面一旦满载就易产生变形,可能引起车轮上部向内倾侧,导致车轮联接件损坏。所以事先将车轮校偏一个正外倾角度,一般这个角度约在1°左右,以减少承载轴承负荷,增加零件使用寿命,提高汽车的安全性能。
模型车提供了专门的外倾角调整配件,近似调节其外倾角。由于竞赛中模型主要用于竞速,所以要求尽量减轻重量,其底盘和前桥上承受的载荷不大,所以外倾角调整为0°即可,并且要与前轮前束匹配。
2.2.4 前轮前束
所谓前束是指两轮之间的后距离数值与前距离数值之差,也指前轮中心线与纵向中心线的夹角[2]。前轮前束的作用是保证汽车的行驶性能,减少轮胎的磨损。前轮在滚动时,其惯性力自然将轮胎向内偏斜,如果前束适当,轮胎滚动时的偏斜方向就会抵消,轮胎内外侧磨损的现象会减少。像内八字那样前端小后端大的称为“前束”,反之则称为“后束”或“负前束”。在实际的汽车中,一般前束为0~12mm 。
在模型车中,前轮前束是通过调整伺服电机带动的左右横拉杆实现的。主销在垂直方向的位置确定后,改变左右横拉杆的长度即可以改变前轮前束的大小。在实际的调整过程中,我们发现较小的前束,约束0~2mm可以减小转向阻力,使模型车转向更为轻便,但实际效果不是十分明显。
虽然模型车的主销后倾角、主销内倾角、车轮外倾角和前束等均可以调整,但是由于车模加工和制造精度的问题,在通用的规律中还存在着不少的偶然性,一切是实际调整的效果为准。
2.3智能车转向机构调整优化
理想的转向模型,是指在轮胎不打滑时,忽略左右两侧轮胎由于受力不均产生的变形,忽略轮胎受重力影响下的变形时车辆的的转向建模。在这种理想的模型下,车体的转向半径可以计算得到。
图2.3 智能车转向示意图
如图2.3,假设智能车系统为理想的转向模型,且其重心位于其几何中心。车轮满足转向原理,左右轮的轴线与后轮轴线这三条直线必然交于一点。
转向机构在车辆运行过程中有着非常重要的作用。合适的前桥和转向机构可以保证在车辆直线行驶过程中不会跑偏,能保证车辆行驶的方向稳定性;而在车辆转向时,合适的转向机构可以使车辆自行回到直线行驶状态,具有好的回正性。正是由于这些原因,转向系统优化设计成为智能车设计中机械结构部分的重点,直接关系到赛车能否顺利地完成比赛。在实际操作中,我们通过理论计算的方案进行优化,然后做出实际结构以验证理论数据,并在实际调试过程中不断改进。
在模型车制做过程中,赛车的转向是通过舵机带动左右横拉杆来实现的。转向舵机的转动速度和功率是一定,要想加快转向机构响应的速度,唯一的办法就是优化舵机的安装位置和其力矩延长杆的长度。由于功率是速度与力矩乘积的函数,过分追求速度,必然要损失力矩,力矩太小也会造成转向迟钝,因此设计时就要综合考虑转向机构响应速度与舵机力矩之间的关系,通过优化得到一个最佳的转向效果。经过最后的实际的参数设计计算,最后得出一套可以稳定、高效工作的参数及机构。
如图3.3,我们最终设计的这套转向拉杆,我们综合考虑了速度与扭矩间的关系,并根据模型车底盘的具体结构,简化了安装方式,实现了预期目标。
图3.3 转向拉杆图
2.4智能车后轮减速齿轮机构调整
模型车后轮采用RS-380SH 电机驱动,电机轴与后轮轴之间的传动比为 18:76(电机轴齿轮齿数为18,后轴传动齿数为76)。齿轮传动机构对车模的驱动能力有很大的影响。齿轮传动部分安装位置的不恰当,会大大增加电机驱动后轮的负载,会严重影响最终成绩。调整的原则是:两传动齿轮轴保持平行, 齿轮间的配合间隙要合适,过松容易打坏齿轮,过紧又会增加传动阻力,浪费动力;传动部分要轻松、顺畅,不能有迟滞或周期性振动的现象。判断齿轮传动是否良好的依据是,听一下电机带动后轮空转时的声音。声音刺耳响亮,说明齿轮间的配合间隙过大,传动中有撞齿现象;声音闷而且有迟滞,则说明齿轮间的配合间隙过小,或者两齿轮轴不平行,电机负载变大。调整好的齿轮传动噪音很小,并且不会有碰撞类的杂音,后轮减速齿轮机构就基本上调整好了,动力传递十分流畅。
2.5其它机械结构的调整
另外,在模型车的机械结构方面还有很多可以改进的地方,比如说车轮、悬架、底盘、车身高度等。
模型车在高速的条件下(2.3m/s~3.5m/s),由于快速变化的加减速过程,使得模型车的轮胎与轮辋之间很容易发生相对位移,可能导致在加速时会损失部分驱动力。在实验中调试表明,赛车在高速下每跑完一圈,轮胎与轮辋之间通常会产生几个厘米的相对位移,严重影响了赛车的加速过程。为了解决这个问题,我们在实际调试过程中对车轮进行了粘胎处理,可以有效地防止由于轮胎与轮辋错位而引起的驱动力损失的情况。
此外,我们还对模型车的前后悬架弹簧的预紧力进行调节,选用不同弹性系统的弹簧等方法进行了改进,并且对车身高度,以及底盘的形状和质量 、后轮的轮距等,都进行了相应的改进和调整,均取得了不错效果。

第三章、电路设计说明3.1 主控板的设计3.1.1 电源管理模块
图3.1 电源管理模块原理图
电源模块对于一个控制系统来说极其重要,关系到整个系统是否能够正常工作,因此在设计控制系统时应选好合适的电源。
竞赛规则规定,比赛使用智能车竞赛统一配发的标准车模用7.2V 2000mAh Ni-cd供电,而单片机系统、路径识别的光电传感器、光电码编码器等均需要5V电源,伺服电机工作电压范围4V到6V(为提高伺服电机响应速度,采用7.2V 供电),直流电机可以使用7.2V 2000mAh Ni-cd蓄电池直接供电,智能车电压调节电路示例见图3。
5V电源模块用于为单片机系统、传感器模块等供电。常用的电源有串联型线性稳压电源(LM2940、7805等)和开关型稳压电源(LM2596、LM2575等)两大类。前者具有纹波小、电路结构简单的优点,但是效率较低,功耗大;后者功耗小,效率高,但电路却比较复杂,电路的纹波大。对于单片机,需要提供稳定的5V电源,由于LM2940的稳压的线性度非常好,所以选用LM2940-5单独对其进行供电;而其它模块则需要通过较大的电流,而LM2596-5,转换效率高,带载能力大,缺点是其纹波电压大,不适合做单片机电源,不过对其它模块供电还是能保证充电的电源。利用LM2940-5和LM2596-5对控制系统和执行部分开供电,可以有效地防止各器件之间发生干扰,以及电流不足的问题,使得系统能够稳定地工作
3.1.2 电机驱动模块

图3.2 电机驱动模块原理图
电机驱动采用主办方提供的33886作为驱动芯片, MCU通过IN1引脚输入PWM波,以调节33886的DNC口的输出电压,调节电机转速的快慢,并且在IN2口输入电压以调节电机的反转和制动功能。
3.1.3 主控板设计
智能车控制系统主控电路图3.3:
图3.3 MC9S12DG128主控板电路图
智能车系统以MC68S912DG128B为控制核心,可以直接利用清华大学的S12最小系统板,另外再设计了一块外围电路的主控板。如图4.3 所示,MC9S12DG128单片机在控制系统所需要使用的管脚如下,主要包括了传感器控制与检测部分、电机驱动部分、ECT部分、BDM 调试接口以及其它常用电路的接口等。
表3.1 MC9S12DG12单片机管脚分配表

S12单片机管脚分配

IO

PA0-PA7

光电传感器检测

PB2-PB7

光电传感器检测

PB0、PB1、PT1

光电传感器控制

PM2-PM5

4路拨码开关

PAD0-PAD7

备用I/O口

PT2-PT5

7279键盘/4路选择指示灯

PT6

1路选择指示灯

ECT

PT0

码盘脉冲检测

PWM1

备用PWM

PWM3

备用PWM

PWM5

直流电机PWM

PWM7

伺服电机PWM

串口通信

RXD0

串口接收

TXD0

串口发射



3.1.4 接口模块

图3.4 接口模块原理图
接口模块的作用即外部设备单片机的接口,分别有电机接口,转向主舵机接口,伺服电机接口,光电编码器接口,电源接口。
3.1.5 信号采集模块
从简洁的设计角度,我们直接从微控制器的电源线上串联上限流电阻,再和光电传感串联使用。限流电阻既在光电传感器检测时起到了上拉电阻的作用。和微控制器共地,简化了电路结构。

图3.5 信号采集模块原理图
3.2 智能车传感器模块设计
在确定智能车总体方案时,我们选择光电传感器的方案。为了获得更大前瞻距离,为控制系统后续处理赢得更多的时间,在从众多光电传感器中选择了大前瞻的激光传感器,前瞻距离可以达到普通光电传感器的数倍甚至十几倍,完全满足竞赛的要求。
3.2.1光电传感器的原理
光电传感器检测路面信息的原理是由发射管发射一定波长的红外线,经地面反射到接收管[13]。如图4.7,由于在黑色和白色上反射系数不同,在黑色上大部分光线被吸收,而白色上可以反射回大部分光线,所以接收到的反射光强是不一样,进而导致接收管的特性曲线发生变化程度不同,而从外部观测可以近似认为接收管两端输出电阻不同,进而经分压后的电压就不一样,就可以将黑白路面区分开来。
图3.6  光电传感器原理
3.2.2 激光传感器的设计
激光传感器与普通的光电传感器原理都是一样,但是其前瞻能力远大于普通的光电传感器,可以达到40-50厘米,对于智能车来说已经足够。
在竞赛中,规则规定传感器最多不能超过16个,我选用了14个激光传感器,所有的传感器呈“一”字排布。如图4.8,激光传感器由两部份构成,一部份为发射部份,一部分为接收部份。发射部份由一个振荡管发出180KHz频率的振荡波后,经三极管放大,激光管发光;接收部份由一个相匹配180KHz的接收管接收返回的光强,经过电容滤波后直接接入S12单片机的PA与PB口(PA与PB口两下8位的数据口组成一个16位的数据口,用于检测14路传感器信号),检测返回电压的高低。由于激光传感器使用了调制处理,接收管只能接受相同频率的反射光,因而可以有效防止可见光对反射激光的影响。
图3.7  激光传感器发射与接收电路
图3.8  激光传感器的控制电路
为了简化14路激光传感器的控制,减少激光传感器相互之间的干扰,传感器的控制采用了分时发光的策略,使用74LS138作为分时控制器,如图4.9,由S12的3个IO口来控制7组传感器的开断,同一时间控制每组相隔最远的两路传感器发光,这样接收管就接收不到相邻传感器发射的激光了,因而达到了防止相互传感器之间干扰的目的。

第四章、智能车控制软件设计说明4.1光感器的路径精确识别技术
在智能车系统中,光电(激光)传感器就是整个系统的“眼睛”,其对于路径的识别在控制系统中尤为重要。
4.1.1 光电传感器路径识别状态分析
由于往届竞赛对光电传感器排布方式研究已经比较深入,传统的“一”字型排布方式在众多排布方式中效果显著,是最常用的一种排布方式。模型车也充分利用了往年的成熟的传感器技术,其排布方式如图5.1。
图4.1 模型车激光传感器一字排布图
对于我们模型车,传感器在赛道上可能的状态有:在普通的赛道处、在起点处、在十字交叉线处,分别如下图(并未列出所有的状态图),下面将分别进行分析。
图4.2激光传感器在普通赛道上

图4.3  激光传器在起点处
图4.4 激光传感器在十字交叉线处
为了识别赛车是处于什么样状态下,用于进行赛道记忆和速度控制,对于我们的数字型激光传感器,每个传感器只有0与1 两种状态,我们分别把14路传感器标记为1到14号传感器,每个传感器又可以对应一个是否在黑线上的标志位,分别为Sen_Flag[0]到Sen_Flag[13],相应在黑线上为1,不在黑线上为0,从而通过对任一时刻传感器标志位的读取就可以知道此时模型车的状态。
为了精确地识别起跑线和十字交叉线,在程序设计时还定义了一个名为Sen_ChangeCount的变量,表示传感器状态变化(由1变为0和由0变为1)的次数。
从上面的传感器状态图中可以轻松看出,在普通赛道上出除了赛车移出赛道之外传感器变化次数都为2次,而在起跑线处模型车的传感器状态变化次数为4次,在十字交叉线时传感器状态变化次数为0次。
为了进一步把各种状态分开,在程序中还定义了变量Sen_FlagCount,用于统计所有传感器状态标志位之和,即在黑线上的传感器的数目。结合以上几个变量,就可以准确地分清各个传感器状态了。各个传感器状态如下表:
表4.1 传感器状态判定表

模型车状态

Sen_ChangeCount

Sen_FlagCount

起跑线处

4

>=8且<=11

十字交叉线处

0

=14

在普通赛道上

未移出黑线

2

>=1且<=3

在普通赛道上

移出黑线

0

0


通过上表,就可以轻松地把模型车任一时刻的传感器状态识别出来,也为赛道记忆识别起点等提供的必要的保障。
4.1.2 光电传感器路径识别算法
路径识别算法是我们使用的是模糊算法,这种算法的优点是能够根据传感器返回的状态值,得到车的重心偏离黑线的程度,还可以通过一定的算法,计算出舵机的转向角度,并且在一定程度上具有抗拒微小干扰的能力。具体算法介绍如下:
图4.5 传感器重心取值分配图
(1)、将每个传感器进行加权处理,给相应各个传感器的权重值,如图5.5所示。
(2)、当传感器检测到黑线时相应的传感器返回所在的权重值,并计算所有传感器的平均加权值,即偏离程度。计算公式为:
      式(4 .1)
式中,Sen_Flag为对应传感器的状态值,Sen_QuanZhong为对应传感器的权重值,Sen_Jiaquan为传感器的加权平均值。
for(i=0;i<14;i++)
{
          Sen_Jiaquan+=(Sen_Flag*Sen_QuanZhong);      
         Sen_FlagCount+=Sen_Flag;   
}
Sen_Jiaquan= Sen_Jiaquan /Sen_FlagCount;
由上程序段即可以计算出此时模型车传感器的加权平均值,由此可以得到模型车的状态,为下一步控制决策提供必要的信息。
(3)、建立偏离程度和舵机转动角度所对应的PWM脉宽关系的模型,拟合二者的函数关系曲线。
在这里我们认为舵机转动的角度是和PWM脉宽成线性的正比关系,因此以一次函数来唯一确定PWM脉宽与舵机转动角度之间的关系。
建立的一次函数方程为:
      式4 .2)
式中,TurnAngle为舵机应转的角度,PWMMiddle为车轮摆正是舵机PWM脉宽应赋的PWMDTYx的值,Sen_Jiaquan为由传感器状态求得的偏离程度,PWMHalf为舵机由中心摆到车轮允许的最大值PWMDTYx的变化值,Factor 为影响比例因数。由此,我们求出了在不同的传感器状态下舵机应转的角度。
4.2弯道策略分析
在车辆进弯时,需要对三个参数进行设定:切弯路径、转向角度、入弯速度。
其中,切弯路径主要决定了车辆是选择内道过弯还是外道过弯。切内道,路经最短,但是如果地面附着系数过小会导致车辆出现侧滑的不稳定行驶状态,原因是切内道时,曲率半径过小,同时速度又很快,所以模型车需要的向心力会很大,而赛道本身是平面结构,向心力将全部由来自地面的摩擦力提供,因此赛道表面的附着系数将对赛车的运行状态有很大影响。切外道,路径会略长,但是有更多的调整机会,同时曲率半径的增加会使得模型车可以拥有更高的过弯速度。
转向角度决定了车辆过弯的稳定性。合适的转向角度会减少车辆在转弯时的调整,不仅路径可以保证最优,运动状态的稳定也会带来效率的提高,减少时间。在考虑转向角度设置时需要注意以下几个问题:对于检测赛道偏移量的传感器而言,在增量较小时的转向灵敏度;检测到较大弯道时的转向灵敏度;对于类似S弯的变向连续弯道的处理。
对于入弯速度的分析,应该综合考虑路径和转向角度的影响。简单而言,我们会采取入弯减速,出弯加速的方案,这样理论上可以减少过弯时耗费的时间。然而,在过去几届比赛中,通过观察各参赛车对弯道的处理后,我们发现并不是所有人都选择了相同的方案。正如前面说到的那样,不联系路径和转向角度,只是单纯地分析过弯速度,会造成思路的局限甚至错误。例如,在不能及时判断入弯和出弯的标志点就采取“入弯减速、出弯加速”的方案,会出现弯道内行驶状态不稳定、路径差,同时出弯加速时机过晚,一样会浪费时间。所以现在本系统参考实际驾驶时的一些经验,对过弯速度的处理方式确定为:入弯时急减速,以得到足够的调整时间,获得正确的转向角度;在弯道内适当提速,并保持角度不变,为出弯时的加速节约时间;出弯时,先准确判断标志,然后加速,虽然会耗费一些时间,但是面对连续变向弯道可以减少判断出错的概率,保证行驶状态的稳定性,而且弯道内的有限加速对后面的提速也有很大的帮助。综合考虑用可以接收的额外时间换回行驶稳定性还是值得的。
下面以常见的几种弯道转角处理方式解释各方案的优缺点,其中,横坐标表示由传感器采集回来的赛道中心线相对赛车中心线的偏移量,纵坐标表示转角大小。
图4.6弯道转角处理方式
a图表示偏移量与转向角度呈线性关系,在计算及程序编写上都比较简单,也可以实现控制赛车行驶的目标,但是由于规则制定比较简单,对赛车实际行驶状态的分析不够全面,所以在实际应用时不能简单套用。
b图表示的是在赛车略微偏离赛道中心时,不要对行驶方向作太大调整,而是在当偏离度大到预定值时急速调整转角以保证过弯的及时,同时在以判断出是急弯后,也不要进行大的变动,因为此时转角的值已经很大,仅需对舵机进行微调就可以保证方向的正确性。这种方案的优点是综合考虑了赛车对个弯道的适应程度,同时保证了在直线行驶时的稳定性,和抗干扰性,但是对急弯的响应可能不够及时,这是该方案的主要缺点。
c图表示的对弯道的处理方案与B图恰好相反,它提高了相应灵敏度,降低了抗干扰性,对于多弯道,且弯道曲率半径较小的赛道有比较好的适应性。
d、e图是两种比较特殊的处理方案,它们不能用于赛车的全程控制,只是考虑到赛车的实际运行特点对某部分的偏移量有特别要求是使用。对于传统四轮车辆,转向时前轮有比较严格的角度关系,而它们的得到是由转向系统决定的。这样两套系统都对某个值做出了限制,必然会有矛盾,在车由0度转到最大转角时,并不是每时每刻都能同时满足两种条件的限制,那么为了赛车行驶的稳定性,我们可能会在小范围内对转角波动,以得到附近最合适的转角值,减小矛盾。
4.3弯道策略制定
在智能车比赛中,我们使用的是通用二输入一输出系统,其中两个输入量是中心线偏移量,和相邻两次检测的偏移量差值;输出量可以分别选用舵机转角值和速度输出值做两套系统。
中心线偏移量的隶属度函数表为9级:
表4.2中心线偏移量的隶属度函数表

Lable

1

2

3

4

5

6

7

8

9

下底小值

0

7

16

24

37

46

55

68

80

下底大值

9

17

28

40

49

58

71

82

65535

左腰斜率

255

51

42

32

42

42

32

36

25

右腰斜率

28

51

42

32

42

42

32

36

255

偏移量差值的隶属度函数表为3级(计算时需要先做加100运算):

表4.3偏移量差值的隶属度函数表

Lable

1

2

3

下底小值

0

89

110

下底大值

90

111

255

左腰斜率

255

23

12

右腰斜率

12

23

255



速度规则表为:
表4.4速度规则表


中心线偏移量

偏移量差值

big

big

midbig

midbig

mid

mid

lowmid

low

low

big

big

midbig

midbig

mid

mid

lowmid

low

low


速度精确值为:
表4.5速度精确值

Low

lowmid

mid

midbig

big

26

32

32

28

37



转角规则表为:
表4.6转角规则表


中心线偏移量

偏移量

差值

tiny

tiny

tinysmall

small

smallmiddle

middle

middlelarge

large

largehuge

tiny

tinysmall

small

smallmiddle

middle

middlelarge

large

largehuge

huge

tiny

tiny

tinysmall

small

smallmiddle

middle

middlelarge

large

huge



转角精确值为:
表4.7转角精确值

tiny

tinysmall

small

smallmiddle

middle

middlelarge

large

largehuge

huge

2

25

80

135

170

240

320

410

510


这套控制方案是基于07年第二届“飞思卡尔”全国大学生智能车竞赛的要求制定的,它实现了对不同曲率弯道的转角合理分配,速度精确限制等目标。

第五章、开发工具、制作、安装、调试过程说明5.1 开发工具
程序的开发是在组委会提供的CodeWarrior IDE下进行的,包括源程序的编写、编译和链接,并最终生成可执行文件。
CodeWarrior for S12 是面向以HC1和S12为CPU的单片机嵌入式应用开发软件包。包括集成开发环境IDE、处理器专家库、全芯片仿真、可视化参数显示工具、项目工程管理器、C交叉编译器、汇编器、链接器以及调试器。
5.2 调试过程
在调试过程中,我们开发了用于智能车监测智能车实时状态的智能车实时监测系统。能够方便的监测智能车在运动过程中转角,传感器状态,速度等信息,很大的方便了智能车的调试。
界面如图所示:
图5.1 赛道模拟结果
真实赛道如图:
图5.2 真实赛道



第六章、模型车的主要技术参数说明

6.1 智能车外形参数

车长:36cm
车宽:17cm
车高:7cm
车重:约1.5kg
6.2 电路部分参数

我们小组所改造的智能车采用一块比赛标准7.2V电池供电,电路中共有 16个电容,容量总计142.099μF。当模型车全功率开动时,功耗约为50W 。
6.3 除了车模原有的驱动电机、舵机之外伺服电机数量

     除了车模原有的驱动电机、舵机之外使用了1个伺服电机。

结论

自三月初报名参加“飞思卡尔”杯智能车邀请赛以来,我们小组成员查找资料,设计机构,组装车模,编写程序,分析问题,最后终于完成了最初目标,定下了现在这个方案。
在此份技术报告中,我们主要介绍了准备比赛时的基本思路,包括机械,电路,以及最重要的控制算法的创新思想。
在机械方面,我们分析了W型,A型,V型等排布方法,考虑到程序的稳定性、简便性,我们最后敲定了一字形排布,并通过反复实践决定了传感器的数量和位置。
在电路方面,我们以模块形式分类,在电源管理,电机驱动,接口,控制,信号采集,传感器这六个模块分别设计,在查找资料的基础上各准备了几套方案;然后我们分别实验,最后以报告中所提到的形式决定了我们最终的电路图。
在算法方面,我们使用C语言编程,利用比赛推荐的开发工具调试程序,经过小组成员不断讨论、改进,终于设计出一套比较通用的,稳定的程序。在这套算法中,我们结合路况调整车速,做到直线加速,弯道减速,保证在最短时间跑完全程。
现在,面对即将到来的大赛,在历时近五个月的充分准备之后,我们有信心在比赛中取得优异成绩。也许我们的知识还不够丰富,考虑问题也不够全面,但是这份技术报告作为我们五个月辛勤汗水来的结晶,凝聚着我们小组每个人的心血和智慧,随着它的诞生,这份经验将永伴我们一生,成为我们最珍贵的回忆。


完整的Word格式文档51黑下载地址:
第三届“飞思卡尔”杯全国大学生北京科技大学光电一队技术报告.doc (4.44 MB, 下载次数: 22)


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表