版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、引言第八届“飞思卡尔”杯全国大学生智能汽车竞赛技 术 报 告学 校:北京科技大学队伍名称:北京科技大学电磁一队参赛队员:山峰 刘刚 郭文俊带队教师:张文明 杨珏- 1 -关于技术报告和研究论文使用授权的说明 本人完全了解第八届“飞思卡尔”杯全国大学生智能汽车邀请赛关保留、使用技术报告和研究论文的规定,即:参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。参赛队员签名: 带队教师签名: 日 期: 引言自从第五届出现磁导组开始到今年第八届比赛,电磁小车已经在智能车
2、的赛道上奔驰了4年,从第六届取消了前瞻长度的限制,电磁车速度开始有了质的飞跃,第七届改成直立状态行走后,虽然对速度有一定的影响,但也以其独特魅力和新的技术挑战让参赛者向往不已,到今年第八届改回四轮行进方式并采用了A车模,小车的速度再次出现大幅提升。经过四年的探索,电磁小车的传感器及传感器布局都已经几近相同,考验车手的更多的将是细节。本文中,我们小组通过对小车设计制作整体思路、电路、算法、调试、车辆参数的介绍,详尽地阐述了我们的思想和创意,具体表现在电路的创新设计,以及算法方面的独特想法,而对单片机具体参数的调试也让我们付出了艰辛的劳动。这份报告凝聚着我们的心血和智慧,是我们共同努力后的成果。在
3、准备比赛的过程中,我们小组成员涉猎控制、模式识别、传感技术、汽车电子、电气、计算机、机械等多个学科,这次磨练对我们的知识融合和实践动手能力的培养有极大的推动作用,在此要感谢清华大学,感谢他们将这项很有意义的科技竞赛引入中国;也感谢北京科技大学相关学院对此次比赛的关注,我们的成果离不开学校的大力支持及指导老师悉心的教导;还要感谢的是和我们一起协作的队员们,协助,互促,共勉使我们能够走到今天。目录目录引言- 1 -目录- 2 -第一章 方案设计- 5 -1.1系统总体方案的设计- 5 -1.2系统总体方案设计图- 6 -第二章 智能车机械结构调整与优化- 7 -2.1智能车车体机械建模- 7 -2
4、.2智能车前轮定位的调整- 8 -2.2.1主销后倾角- 8 -2.2.2主销内倾角- 8 -2.2.3车轮外倾角- 8 -2.2.4 前轮前束- 9 -2.3智能车转向机构调整优化- 9 -2.4智能车后轮减速齿轮机构调整- 11 -2.5 编码器的安装- 11 -2.6 智能车重心位置的调整- 12 -2.7其它机械结构的调整- 12 -第三章 电路设计说明- 13 -3.1 主控板和驱动板的硬件设计- 13 -3.1.1 电源管理模块- 13 -3.1.2 电机驱动模块- 14 -3.1.3 数模转换模块- 14 -3.1.4 单片机及其他电路部分设计- 15 -3.2 智能车传感器模块
5、设计- 18 -3.2.1电感传感器的原理- 18 -3.2.2磁传感器信号处理电路- 18 -3.2.3磁传感器的布局原理及改进- 21 -第四章 智能车控制软件设计说明- 23 -4.1底层初始化- 23 -4.2传感器采集处理算法- 23 -4.3寻线行驶算法实现- 24 -4.3.1定位算法- 24 -4.3.2基于位置式PID的方向控制- 26 -4.3.3基于增量式PID的速度控制- 28 -4.3弯道策略分析- 28 -4.4弯道策略制定- 30 -第五章 开发工具、制作、安装、调试过程说明- 33 -5.1 开发工具- 33 -5.2 调试过程- 33 -5.2.1 上位机系统
6、- 33 -5.2.2 控制算法的参数整定- 35 -5.3 整车机械方面的调整- 36 -第六章 模型车的主要技术参数说明- 37 -6.1 智能车外形参数- 37 -6.2 电路部分参数- 37 -6.3 传感器个数以及种类- 37 -6.4 除了车模原有的驱动电机、舵机之外伺服电机数量- 37 -6.5赛道信息检测精度、频率- 37 -结论- 38 -参考文献- 39 -附录 程序源代码IIII第一章 方案设计第一章 方案设计本章主要简要地介绍智能车系统总体设计思路,在后面的章节中将整个系统分为机械结构、控制模块、控制算法等三部分对智能车控制系统进行深入的介绍分析。1.1系统总体方案的设
7、计根据竞赛规则相关规定,智能车系统采用大赛组委会统一提供的A型车模,以飞思卡尔半导体公司生产的32位微控制器K60作为核心控制器,在IAR开发环境中进行软件开发。赛车的位置信号由车体前方的电磁传感器采集,经内部AD进行模数转换后,输入到控制核心,用于赛车的运动控制决策。通过编码器测速模块来检测车速,并采用K60 的输入捕捉功能进行脉冲计数计算速度和路程;电机转速控制采用 PID 控制,通过 PWM 控制驱动电路调整电机的转速,完成智能车速度的闭环控制。此外,还增加了键盘作为输入输出设备,用于智能车的角度和方位控制。图1.1 电磁车整体布局1.2系统总体方案设计图K60核心控制单元速度传感器直流
8、电机电机驱动模块舵机转向控制液晶显示模块七路电感传感器上位机干簧管键盘,拨档开关运放模块图1.2系统总体方框图根据以上系统方案设计,赛车共包括七大模块:K60主控模块、传感器模块、电源模块、电机驱动模块、速度检测模块辅助调试模块。各模块的作用如下:K60主控模块,作为整个智能车的“大脑”,将采集电感传感器、编码器等传感器的信号,根据控制算法做出控制决策,驱动直流电机和伺服电机完成对智能车的控制。传感器模块,是智能车的“眼睛”,可以通过一定的前瞻性,提前感知前方的赛道信息,为智能车的“大脑”做出决策提供必要的依据和充足的反应时间。电源模块,为整个系统提供合适而又稳定的电源。电机驱动模块,驱动直流
9、电机和伺服电机完成智能车的加减速控制和转向控制。速度检测模块,检测反馈智能车后轮的转速,用于速度的闭环控制。辅助调试模块主要用于智能车系统的功能调试、赛车状态监控等方面。 第二章 智能车机械结构调整与优化第二章 智能车机械结构调整与优化智能车系统任何的控制都是在一定的机械结构基础上实现的,因此在设计整个软件架构和算法之前一定要对整个车模的机械结构有一个感性的认识,然后建立相应的数学模型。从而再针对具体的设计方案来调整赛车的机械结构,并在实际的调试过程中不断的改进和提高。本章将主要介绍智能车车模的机械结构和调整方案。 2.1智能车车体机械建模此次比赛选用的赛车车模采用A型车模。赛车机械结构只使用
10、竞赛提供车模的底盘部分及转向和驱动部分。控制采用前轮转向,后轮驱动方案。我们对机械结构的要求是:简单而高效。我们在不断的尝试后确定了以下的设计方案:图2.1 智能车器件布局图2.2智能车前轮定位的调整现代汽车在正常行驶过程中,为了使汽车直线行驶稳定,转向轻便,转向后能自动回正,减少轮胎和转向系零件的磨损等,在转向轮、转向节和前轴之间须形成一定的相对安装位置,叫车轮定位,其主要的参数有:主销后倾、主销内倾、车轮外倾和前束。智能车竞赛模型车的四项参数都可以调整,但是由于模型车加工和制造精度的问题,在通用的规律中还存在着一些偶然性。2.2.1主销后倾角主销后倾角是指在纵向平面内主销轴线与地面垂直线之
11、间的夹角。它在车辆转弯时会产生与车轮偏转方向相反的回正力矩,使车轮自动恢复到原来的中间位置上。所以,主销后倾角越大,车速越高,前轮自动回正的能力就越强,但是过大的回正力矩会使车辆转向沉重。通常主销后倾角值设定在1°到3°。模型车通过增减黄色垫片的数量来改变主销后倾角的,由于竞赛所用的转向舵机力矩不大,过大的主销后倾角会使转向变得沉重,转弯反应迟滞,所以设置为0°,以便增加其转向的灵活性。2.2.2主销内倾角主销内倾角是指在横向平面内主销轴线与地面垂直线之间的夹角,它的作用也是使前轮自动回正。角度越大前轮自动回正的作用就越强,但转向时也就越费力,轮胎磨损增大;反之,
12、角度越小前轮自动回正的作用就越弱。通常汽车的主销内倾角不大于8°。 对于模型车,通过调整前桥的螺杆的长度可以改变主销内倾角的大小,由于过大的内倾角也会增大转向阻力,增加轮胎磨损,所以在调整时可以近似调整为0°3°左右,不宜太大。主销内倾和主销后倾都有使汽车转向自动回正,保持直线行驶的功能。不同之处是主销内倾的回正与车速无关,主销后倾的回正与车速有关,因此高速时主销后倾的回正作用大,低速时主销内倾的回正作用大。 2.2.3车轮外倾角前轮外倾角是指通过车轮中心的汽车横向平面与车轮平面的交线与地面垂线之间的夹角,对汽车的转向性能有直接影响,它的作用是提高前轮的转向安全性
13、和转向操纵的轻便性。在汽车的横向平面内,轮胎呈“八”字型时称为“负外倾”,而呈现“V”字形张开时称为正外倾。如果车轮垂直地面一旦满载就易产生变形,可能引起车轮上部向内倾侧,导致车轮联接件损坏。所以事先将车轮校偏一个正外倾角度,一般这个角度约在1°左右,以减少承载轴承负荷,增加零件使用寿命,提高汽车的安全性能。 模型车提供了专门的外倾角调整配件,近似调节其外倾角。由于竞赛中模型主要用于竞速,所以要求尽量减轻重量,其底盘和前桥上承受的载荷不大,所以外倾角调整为0°即可,并且要与前轮前束匹配。2.2.4 前轮前束所谓前束是指两轮之间的后距离数值与前距离数值之差,也指前轮中心线与纵
14、向中心线的夹角。前轮前束的作用是保证汽车的行驶性能,减少轮胎的磨损。前轮在滚动时,其惯性力自然将轮胎向内偏斜,如果前束适当,轮胎滚动时的偏斜方向就会抵消,轮胎内外侧磨损的现象会减少。像内八字那样前端小后端大的称为“前束”,反之则称为“后束”或“负前束”。在实际的汽车中,一般前束为012mm。在模型车中,前轮前束是通过调整伺服电机带动的左右横拉杆实现的。主销在垂直方向的位置确定后,改变左右横拉杆的长度即可以改变前轮前束的大小。在实际的调整过程中,我们发现较小的前束,约束02mm可以减小转向阻力,使模型车转向更为轻便,但实际效果不是十分明显。虽然模型车的主销后倾角、主销内倾角、车轮外倾角和前束等均
15、可以调整,但是由于车模加工和制造精度的问题,在通用的规律中还存在着不少的偶然性,一切是实际调整的效果为准。2.3智能车转向机构调整优化理想的转向模型,是指在轮胎不打滑时,忽略左右两侧轮胎由于受力不均产生的变形,忽略轮胎受重力影响下的变形时车辆的的转向建模。在这种理想的模型下,车体的转向半径可以计算得到。图2.2 智能车转向示意图如图2.2,假设智能车系统为理想的转向模型,且其重心位于其几何中心。车轮满足转向原理,左右轮的轴线与后轮轴线这三条直线必然交于一点。转向机构在车辆运行过程中有着非常重要的作用。合适的前桥和转向机构可以保证在车辆直线行驶过程中不会跑偏,能保证车辆行驶的方向稳定性;而在车辆
16、转向时,合适的转向机构可以使车辆自行回到直线行驶状态,具有好的回正性。正是由于这些原因,转向系统优化设计成为智能车设计中机械结构部分的重点,直接关系到赛车能否顺利地完成比赛。在实际操作中,我们通过理论计算的方案进行优化,然后做出实际结构以验证理论数据,并在实际调试过程中不断改进。在模型车制做过程中,赛车的转向是通过舵机带动左右横拉杆来实现的。转向舵机的转动速度和功率是一定,要想加快转向机构响应的速度,唯一的办法就是优化舵机的安装位置和其力矩延长杆的长度。由于功率是速度与力矩乘积的函数,过分追求速度,必然要损失力矩,力矩太小也会造成转向迟钝,因此设计时就要综合考虑转向机构响应速度与舵机力矩之间的
17、关系,通过优化得到一个最佳的转向效果。经过最后的实际的参数设计计算,最后得出一套可以稳定、高效工作的参数及机构。如图2.3,我们最终设计的这套转向拉杆,我们综合考虑了速度与扭矩间的关系,并根据模型车底盘的具体结构,简化了安装方式,实现了预期目标。图2.3 转向拉杆图2.4智能车后轮减速齿轮机构调整模型车后轮采用RS-380SH 电机驱动,电机轴与后轮轴之间的传动比为 18:76(电机轴齿轮齿数为18,后轴传动齿数为76)。齿轮传动机构对车模的驱动能力有很大的影响。齿轮传动部分安装位置的不恰当,会大大增加电机驱动后轮的负载,会严重影响最终成绩。调整的原则是:两传动齿轮轴保持平行, 齿轮间的配合间
18、隙要合适,过松容易打坏齿轮,过紧又会增加传动阻力,浪费动力;传动部分要轻松、顺畅,不能有迟滞或周期性振动的现象。判断齿轮传动是否良好的依据是,听一下电机带动后轮空转时的声音。声音刺耳响亮,说明齿轮间的配合间隙过大,传动中有撞齿现象;声音闷而且有迟滞,则说明齿轮间的配合间隙过小,或者两齿轮轴不平行,电机负载变大。调整好的齿轮传动噪音很小,并且不会有碰撞类的杂音,后轮减速齿轮机构就基本上调整好了,动力传递十分流畅。2.5 编码器的安装为了提高精度,本车使用了编码器。为了便于安装,使用加工件将编码器与后桥进行连接,较好的保证了两啮合齿轮轴的平行度及传动的平顺性。 图2.4 编码器安装2.6 智能车重
19、心位置的调整为了达到较远前瞻,必须把电感架到较远的位置,会引起车重心特别靠前,后轮正压力不足导致甩尾。为了使重心后移,我们尝试了很多传感器支架的搭建方式,使得保证结构稳定的前提下尽量减轻重量。同时,我们把舵机和电池均往后移,达到了预期的效果。2.7其它机械结构的调整另外,在模型车的机械结构方面还有很多可以改进的地方,比如说车轮、悬架、底盘、车身高度等。模型车在高速的条件下(2.3m/s3.5m/s),由于快速变化的加减速过程,使得模型车的轮胎与轮辋之间很容易发生相对位移,可能导致在加速时会损失部分驱动力。在实验中调试表明,赛车在高速下每跑完一圈,轮胎与轮辋之间通常会产生几个厘米的相对位移,严重
20、影响了赛车的加速过程。为了解决这个问题,我们在实际调试过程中对车轮进行了粘胎处理,可以有效地防止由于轮胎与轮辋错位而引起的驱动力损失的情况。此外,我们还对车身高度,以及底盘的形状和质量等,都进行了相应的改进和调整,均取得了不错效果。第三章 电路设计说明第三章 电路设计说明3.1 主控板和驱动板的硬件设计3.1.1 电源管理模块为满足需要,本车模上存在4种供电电压:1)智能车使用镍镉充电电池,充满时电压在7.88.2V。可直接用于电机和舵机供电。2)一些数字器件使用直流5V,5V电源选用开关型稳压芯片AS1015以及线性稳压芯片TPS7350。为了隔离电机的干扰,AS1015和TPS7350的输
21、入端加磁珠。3)使用3.3V为单片机运算放大器供电,采用线性稳压芯片TPS79333。输入端接AS1015和TPS7350输出端。4)电机驱动模块使用直流17V,使用一款5-12V 升压电源模块。加若干LED显示各类电源工作状况。该部分电路如图3.1所示。图3.1 电源管理模块原理图3.1.2 电机驱动模块电机驱动电路为一个由分立元件制作的直流电动机可逆双极型桥式驱动器,其功率元件由四支 N 沟道功率 MOSFET 管组成,额定工作电流可以轻易达到 100A 以上,大大提高了电动机的工作转矩和转速。该驱动器主要由以下部分组成: PWM信号输入接口、逻辑换向电路、死区控制电路、电源电路、上桥臂功
22、率 MOSFET 管栅极驱动电压泵升电路、功率 MOSFET 管栅极驱动电路、桥式功率驱动电路、缓冲保护电路等。该部分原理图如图3.2所示。图3.2 电机驱动模块原理图3.1.3 数模转换模块由于K60的内部AD比较精确,我们在测试外部AD后结果显示其结果与内部AD相差不大,而且方差较内部AD更大,当然这也有可能是测试方法有问题。内部AD较外部AD可以简化电路设计,综合考虑这下我们还是决定使用内部AD,考虑到我们所使用的传感器数量,引出8路AD。其接线方法如图3.3所示。图3.3接线图3.1.4 单片机及其他电路部分设计核心控制单元:K60(主频128MHz,FlashRom512KB,具备S
23、PI,SCI,IIC等常用接口),根据需要引出适量的管脚。如图3.4所示。图3.4 单片机PCB图3.5 单片机引出管脚测速模块:在电机上方架编码器,当电机转动时带动编码器转动,由此获取速度信息。用编码器测速较光栅片测速精度更高。测速模块供给主板的信号要经过整波,使用上拉电阻提高其峰值电压,再使用三态门将波形整为矩形波。测试模块实物如图3.5所示。图3.5 测速模块人机交互:增加数字键盘,拨档开关用于输入参数,策略调整,加入液晶屏显示小车状态便于调试。该部分整体电路如图3.6所示。图3.6 单片机及其他电路部分3.2 智能车传感器模块设计根据竞赛组委会的相关规定,我们选用磁传感器,磁传感器的应
24、用首先在于选型,为了找出适合的磁传感器,我们查阅了许多的产品资料,进行了大量的电感测试,发现只有在10mH电感中,得到感应电动势曲线是较为规整的正弦波,频率和赛道电源频率一致,为20kHz,幅值较其他型号的大,且随导线距离变化,规律为近大远小。其他电感得到信号不好,频率幅值变化杂乱,不宜采用。3.2.1电感传感器的原理根据电磁学,我们知道在导线中通入变化的电流(如按正弦规律变化的电流),则导线周围会产生变化的磁场,且磁场与电流的变化规律具有一致性。如果在此磁场中置一由线圈组成的电感,则该电感上会产生感应电动势,且该感应电动势的大小和通过线圈回路的磁通量的变化率成正比。由于在导线周围不同位置,磁
25、感应强度的大小和方向不同,所以不同位置上的电感产生的感应电动势也应该是不同。据此,则可以确定电感的大致位置。3.2.2磁传感器信号处理电路确定使用电感作为检测导线的传感器,但是其感应信号较微弱,且混有杂波,所以要进行信号处理。要进行以下三个步骤才能得到较为理想的信号:信号的滤波,信号的放大,信号的检波。1)信号的滤波比赛选择20kHz的交变磁场作为路径导航信号,在频谱上可以有效地避开周围其它磁场的干扰,因此信号放大需要进行选频放大,使得20kHz 的信号能够有效的放大,并且去除其它干扰信号的影响。使用 LC并联谐振电路来实现选频电路(带通电路),如图2.9所示。图3.7 LC并联电路其中,E是
26、感应线圈中的感应电动势,L是感应线圈的电感值,R0是电感的内阻,C 是并联谐振电容。电路谐振频率为: (2.1)已知感应电动势的频率=20kHz,感应线圈电感为L=10mH,可以计算出谐振电容的容量为C=6.33×10-9 F 。通常在市场上可以购买到的标称电容与上述容值最为接近的电容为 6.8nF,所以在实际电路中选用 6.8nF的电容作为谐振电容。2)信号的放大由第一步处理后的电压波形已经是较为规整的20kHz正弦波,但是幅值较小,随着距离衰减很快,不利于电压采样,所以要进行放大,官方给出的如下参考方案即用三极管进行放大,但是用三极管放大有一个不可避免的缺点就是温漂较大,而且在实
27、际应用中静电现象严重。图3.8 共射三极管放大电路因此我们放弃三极管放大的方案,而是采用集成运放进行信号的放大处理,集成运放较三极管优势是准确受温度影响很小,可靠性高。集成运放放大电路有同相比例运算电路和反相比例运算电路,我们在实际中使用反相比例运算电路。由于运放使用单电源供电,因此在同相端加vcc/2的基准电位,基准电位由电阻分压得到。3)信号的检波测量放大后的感应电动势的幅值E可以有多种方法。 最简单的方法就是使用二极管检波电路将交变的电压信号检波形成直流信号,然后再通过单片机的AD采集获得正比于感应电压幅值的数值。我们采用的为竞赛组委会给出的第一种方案即使用两个二极管进行倍压检波。倍压检
28、波电路可以获得正比于交流电压信号峰峰值的直流信号。为了能够获得更大的动态范围, 倍压检波电路中的二极管推荐使用肖特基二极管或者锗二极管。由于这类二极管的开启电压一般在0.10.3V左右,小于普通的硅二极管(0.7V),可以增加输出信号的动态范围和增加整体电路的灵敏度。这里选用常见的的肖特基二极管1N5817。最终方案确定如下图3.10最终方案3.2.3磁传感器的布局原理及改进对于直导线,当装有小车的中轴线对称的两个线圈的小车沿其直线行驶,即两个线圈的位置关于导线对称时,则两个线圈中感应出来的电动势大小应相同、且方向亦相同。若小车偏离直导线,即两个线圈关于导线不对称时,则通过两个线圈的磁通量是不
29、一样的。这时,距离导线较近的线圈中感应出的电动势应大于距离导线较远的那个线圈中的。根据这两个不对称的信号的差值,即可调整小车的方向,引导其沿直线行驶。 对于弧形导线,即路径的转弯处,由于弧线两侧的磁力线密度不同,则当载有线圈的小车行驶至此处时,两边的线圈感应出的电动势是不同的。具体的就是,弧线内侧线圈的感应电动势大于弧线外侧线圈的,据此信号可以引导小车拐弯。 另外,当小车驶离导线偏远致使两个线圈处于导线的一侧时,两个线圈中感应电动势也是不平衡的。距离导线较近的线圈中感应出的电动势大于距离导线较远的线圈。由此,可以引导小车重新回到导线上。 由于磁感线的闭合性和方向性,通过两线圈的磁通量的变化方向
30、具有一致性,即产生的感应电动势方向相同,所以由以上分析,比较两个线圈中产生的感应电动势大小即可判断小车相对于导线的位置,进而做出调整,引导小车大致循线行驶。采用双水平线圈检测方案,在边缘情况下,其单调性发生变化,这样存在一个定位不清的区域(如图3.11箭头所指)。同一个差值,会对应多个位置,不利于定位。另外,受单个线圈感应电动势的最大距离限制,两个线圈的检测广度很有限。图3.11 双线圈差值法有定位不清区域现提出一种优化方案:5个垂直放置的电感按“一”字排布,每个电感相距约为5cm(见图3.12),这样覆盖赛道范围约为25cm。三个“一”字排布的电感可以大大提高检测密度和广度,向前有两个电感,
31、最可以提高前瞻,改善小车入弯状态和路径,两个45°的电感,可以改善入弯和出弯的姿态。间距5cm图3.12 电感排布检测方案第四章 智能车控制软件设计说明第四章 智能车控制软件设计说明控制程序是人的思想在车模体现,程序要体系化,模块化,稳定化,目标是将硬件电路和机械性能发挥到最大,让车模用最快的速度完成比赛。4.1底层初始化编写初始化函数SystemInit(),初始化用到的模块,如下(子函数略):void SystemInit(void) pll_init(1); /时钟初始化 gpio_init(); /IO口初始化 pwm_init(); / 波初始化 interrupt_ini
32、t();/中断初始化 timer_init(); /计时器初始化 uart_init(); /串口初始化 i2c_init(); /IIC初始化 spi_init(); /SPI初始化 adc_init(); /AD初始化 pulse_counter_init(); /计数器初始化 PIDInit(); /PID初始化 flash_init(); /flash初始化 LCDInit(); /LCD初始化 CarStatusInit(); /和程控有关的初始化 4.2传感器采集处理算法编写采集函数SensorCollection(),其功能为控制AD采集某个通道(对应某个电感)的电压值,然后读出
33、该值返回给函数。由于系统中存在噪声或干扰,进行算法滤波抑制和防止干扰是一项重要措施。在这里选择“加权递推平均滤波法”。定义一个循环队列,把连续取N个采样值入队,假设队列的长度为N,每次采样到一个新数据放入队尾,队满后对首数据出队原队首位置成为队尾并入队(即始终保持队列中的N个数据为最新)。越接近现时刻的数据,权取得越大。把队列中的N个数据进行加权平均运算,就可获得新的滤波结果。特点是给予新采样值的权系数越大,则灵敏度越高,但信号平滑度越差。优点是适合采样周期较短的系统,改变权重即可调整灵敏度。该滤波器采集某一通道数据N次,然后进行滤波计算,流程图如图4.1所示:新采集7个通道数据各一次更新队列
34、,数据入队继续采集将形成的队列进行加权计算平均值,越早的数据权重越小,越新的数据权重越大得出新的平均值图4.1 加权递推平均滤波流程图4.3寻线行驶算法实现4.3.1定位算法图3.12所示传感器的寻线原理:某一时刻,采五个“一”字排布的电感的感应电动势,找出一个感应电动势最大的电感(计为M),导线必然会离这个电感最近。然后读出该电感相邻左右两个电感的值(分别计为L和R)。会有以下三种情况:当L值大于R值,说明导线在L和M之间;当L值小于R值,说明导线在R和M之间;当L值约等于R值,说明导线在M正上。对于特殊情况,如M在最左或最后,缺相邻的L或R,可直接将导线位置定位于M,且由M值大小得出远离程
35、度。该情况说明传感器偏离赛道很严重。以上这种通过找感应电动势最大的电感M和相邻电感L和R在确定电感和导线的相对位置的方法,是一种初步的定位方法。这里再次深化讨论,先设立一个阈值T,分两种情况:当|L值R值|T,即L值约等于R值,说明导线在M正上,得出确切位置;当|L值R值|T,说明导线在M和L或者M和R之间。图4.3 标定算法计算的偏移拟合曲线 此定位算法,在直道上的作用比较明显,但在弯道不足以适用所有类型的弯道。所以,在此基础上,引入在弯道计算偏移比较明显的中间标定差值法,即:在直道处进行中间电感M的标定,取其标定值与实时值作差。用此方法得到的在弯道处偏移的曲线如图4.2所示:将以上五电感位
36、移算法与中间电感标定差值算法综合计算,即可得到直道和弯道同样灵敏的控制量。程序流程图如4.3所示。新采集7个通道数据各一次排序得出最大值M,同时找出L值和R值,并判断是否存在满足要求的L和R YN判断是否满足|L值R值|>TNYx=Xm、图4.3 传感器定位五电感算法流程图4.3.2基于位置式PID的方向控制PID控制是工程实际中应用最为广泛的调节器控制方法。问世至今70多年来,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。单位反馈的PID控制原理框图如图4.4: ueYRController ControllerPlant图4.4 单位反馈的PID控制原理框
37、图单位反馈e代表理想输入与实际输出的误差,这个误差信号被送到控制器,控制器算出误差信号的积分值和微分值,并将它们与原误差信号进行线性组合,得到输出量u。 (4.2)其中,Kp、Ki 、Kd分别称为比例系数、积分系数、微分系数。u接着被送到了执行机构,这样就获得了新的输出信号,这个新的输出信号被再次送到感应器以发现新的误差信号,这个过程就这样周而复始地进行。数字控制系统中,PID控制器是通过计算机PID控制算法程序实现的。计算机直接数字控制系统大多数是采样-数据控制系统。进入计算机的连续-时间信号,必须经过采样和整量化后,变成数字量,方能进入计算机的存贮器和寄存器,而在数字计算机中的计算和处理,
38、不论是积分还是微分,只能用数值计算去逼近。用矩形数值积分代替上式中的积分项,对导数项用后向差分逼近,得到数字PID控制器的基本算式(位置算式): (4.3)其中T是采样时间,、为三个待调参数,在实际代码实现算法时,处理成以下形式:loca_PreU = Kp * loca_error + Ki * loca_PreIntegral + Kd * loca_derror(4.4)根据以往资料和测试,将定位算法解算出的导线位置当作反馈值(Feedback),参考值(Ref)设为0,则有:loca_error = loca_Ref loca_Feedback (4.5)loca_derror = l
39、oca_error - loca_PreError 注: PreError为上次的error (4.6)loca_PreIntegral += loca_error (4.7)为了防止频繁调节和意外输出过大,设置调节死区(-LOCA_DEADLINE, LOCA_DEADLINE)。loca_error在死区内,不进行调节,维持上一状态。设置调节范围(-LOCA_MAX,LOCA_MAX),假如loca_PreU算出结果越界,那么就赋给边界值 LOCA_MAX。4.3.3基于增量式PID的速度控制对位置式加以变换,可以得到PID算法的另一种实现形式(增量式): (4.8)在实际代码实现时,处理
40、成vl_PreU += (Kp * d_error + Ki * error + Kd*dd_error) (4.9)将测速模块得到的单位时间脉冲数给vi_FeedBack,vi_Ref为设定速度。error = vi_Ref - vi_FeedBack (4.10)d_error = error - vi_PreError (4.11)dd_error = d_error - _PreDerror (4.12)这里设计High,Middle,Low作为设定速度值(vi_Ref),分别对应直道,弯道,最低速度(由传感器状态确定)。位于直道时,设定速度为最大。为提高稳定性,也设置相应的调节死区和
41、调节范围。4.3弯道策略分析在车辆进弯时,需要对三个参数进行设定:切弯路径、转向角度、入弯速度。其中,切弯路径主要决定了车辆是选择内道过弯还是外道过弯。切内道,路经最短,但是如果地面附着系数过小会导致车辆出现侧滑的不稳定行驶状态,原因是切内道时,曲率半径过小,同时速度又很快,所以模型车需要的向心力会很大,而赛道本身是平面结构,向心力将全部由来自地面的摩擦力提供,因此赛道表面的附着系数将对赛车的运行状态有很大影响。切外道,路径会略长,但是有更多的调整机会,同时曲率半径的增加会使得模型车可以拥有更高的过弯速度。转向角度决定了车辆过弯的稳定性。合适的转向角度会减少车辆在转弯时的调整,不仅路径可以保证
42、最优,运动状态的稳定也会带来效率的提高,减少时间。在考虑转向角度设置时需要注意以下几个问题:对于检测赛道偏移量的传感器而言,在增量较小时的转向灵敏度;检测到较大弯道时的转向灵敏度;对于类似S弯的变向连续弯道的处理。对于入弯速度的分析,应该综合考虑路径和转向角度的影响。简单而言,我们会采取入弯减速,出弯加速的方案,这样理论上可以减少过弯时耗费的时间。然而,在过去几届比赛中,通过观察各参赛车对弯道的处理后,我们发现并不是所有人都选择了相同的方案。正如前面说到的那样,不联系路径和转向角度,只是单纯地分析过弯速度,会造成思路的局限甚至错误。例如,在不能及时判断入弯和出弯的标志点就采取“入弯减速、出弯加
43、速”的方案,会出现弯道内行驶状态不稳定、路径差,同时出弯加速时机过晚,一样会浪费时间。所以现在本系统参考实际驾驶时的一些经验,对过弯速度的处理方式确定为:入弯时急减速,以得到足够的调整时间,获得正确的转向角度;在弯道内适当提速,并保持角度不变,为出弯时的加速节约时间;出弯时,先准确判断标志,然后加速,虽然会耗费一些时间,但是面对连续变向弯道可以减少判断出错的概率,保证行驶状态的稳定性,而且弯道内的有限加速对后面的提速也有很大的帮助。综合考虑用可以接收的额外时间换回行驶稳定性还是值得的。下面以常见的几种弯道转角处理方式解释各方案的优缺点,其中,横坐标表示由传感器采集回来的赛道中心线相对赛车中心线
44、的偏移量,纵坐标表示转角大小。图4.5弯道转角处理方式a图表示偏移量与转向角度呈线性关系,在计算及程序编写上都比较简单,也可以实现控制赛车行驶的目标,但是由于规则制定比较简单,对赛车实际行驶状态的分析不够全面,所以在实际应用时不能简单套用。b图表示的是在赛车略微偏离赛道中心时,不要对行驶方向作太大调整,而是在当偏离度大到预定值时急速调整转角以保证过弯的及时,同时在以判断出是急弯后,也不要进行大的变动,因为此时转角的值已经很大,仅需对舵机进行微调就可以保证方向的正确性。这种方案的优点是综合考虑了赛车对个弯道的适应程度,同时保证了在直线行驶时的稳定性,和抗干扰性,但是对急弯的响应可能不够及时,这是
45、该方案的主要缺点。c图表示的对弯道的处理方案与B图恰好相反,它提高了相应灵敏度,降低了抗干扰性,对于多弯道,且弯道曲率半径较小的赛道有比较好的适应性。d、e图是两种比较特殊的处理方案,它们不能用于赛车的全程控制,只是考虑到赛车的实际运行特点对某部分的偏移量有特别要求是使用。对于传统四轮车辆,转向时前轮有比较严格的角度关系,而它们的得到是由转向系统决定的。这样两套系统都对某个值做出了限制,必然会有矛盾,在车由0度转到最大转角时,并不是每时每刻都能同时满足两种条件的限制,那么为了赛车行驶的稳定性,我们可能会在小范围内对转角波动,以得到附近最合适的转角值,减小矛盾。4.4弯道策略制定在智能车比赛中,
46、我们使用的是通用二输入一输出系统,其中两个输入量是中心线偏移量,和相邻两次检测的偏移量差值;输出量可以分别选用舵机转角值和速度输出值做两套系统。中心线偏移量的隶属度函数表为9级:表4.1中心线偏移量的隶属度函数表Lable123456789下底小值0716243746556880下底大值91728404958718265535左腰斜率2555142324242323625右腰斜率2851423242423236255偏移量差值的隶属度函数表为3级(计算时需要先做加100运算)。中间电感标定差值(为方便讨论将差值最大值设定为100)的隶属度函数表为9级:表4.1.1中间电感标定差值的隶属度函数表
47、Lable123456789模糊界限值2030405060708090100左腰斜率2555142324242323625右腰斜率2851423242423236255 由表4.1和表4.2对转角值进行计算,得到的计算值进行累加,即得到转角值。这些模糊系数的调试占据了程序调试工作的大部分时间。 此外,加入前向电感进行预测,对转角进行预测累加,使转角提前,对前瞻的扩展性有很好的作用。表4.2偏移量差值的隶属度函数表Lable123下底小值089110下底大值90111255左腰斜率2552312右腰斜率1223255速度规则表为:表4.3速度规则表中心线偏移量偏移量差值bigbigmidbigm
48、idbigmidmidlowmidlowlowbigbigmidbigmidbigmidmidlowmidlowlow速度精确值为:表4.4速度精确值Lowlowmidmidmidbigbig2632322837转角规则表为:表4.5转角规则表中心线偏移量偏移量差值tinytinytinysmallsmallsmallmiddlemiddlemiddlelargelargelargehugetinytinysmallsmallsmallmiddlemiddlemiddlelargelargelargehugehugetinytinytinysmallsmallsmallmiddlemiddle
49、middlelargelargehuge转角精确值为:表4.6转角精确值tinytinysmallsmallsmallmiddlemiddlemiddlelargelargelargehugehuge22580135170240320410510这套控制方案是基于2013年第八届“飞思卡尔”全国大学生智能车竞赛的要求,参考四轮电磁组第六届制定的。它实现了对不同曲率弯道的转角合理分配,速度精确限制等目标。但是由于大量的模糊控制的应用,导致程序调试极其繁琐,这是该系统的主要缺点。第五章 开发工具、制作、安装、调试过程说明第五章 开发工具、制作、安装、调试过程说明5.1 开发工具程序的开发是在IAR
50、下进行的,包括源程序的编写、编译和链接,并最终生成可执行文件。IAR Embedded Workbench(简称EW)的C/C+交叉编译器和调试器是今天世界最完整的和最容易使用专业嵌入式应用开发工具。EW对不同的微处理器提供一样直观用户界面。EW今天已经支持35种以上的8位/16位32位ARM的微处理器结构。 EW包括:嵌入式C/C+优化编译器,汇编器,连接定位器,库管理员,编辑器,项目管理器和C-SPY调试器中。使用IAR的编译器最优化最紧凑的代码,节省硬件资源,最大限度地降低产品成本,提高产品竞争力5.2 调试过程5.2.1 上位机系统要分析车模在赛道行驶的实
51、时情况,必须采集小车在行驶过程中各个功能模块的实时数据,我们采用的是用SD卡存储实时数据,然后用上位机分析。它是调试的必备工具,包括软件和硬件部分1)硬件方面设计K60从片用于接收单片机传来的实时数据并写入SD卡,在单片机最小系统上,已经设计了SPI接口。二者之间通过SPI传输数据。图5.1 K60从片2)软件方面:用C#编写一个简单的上位机接收程序(见图5.2),车模在赛道跑时,数据写入SD卡,跑完后用上位机读取SD卡中的数据进行处理。图5.2 上位机程序界面相对应的,要在车模的单片机中加入下位机程序部分,在每次采集完数据后使用SPI模块,将数据发到K60从片。5.2.2 控制算法的参数整定
52、运用 PID 控制的关键是调整三个比例系数,即参数整定。PID 整定的方法有两类:一是理论计算整定法。它主要是依据系统的数学模型,经过理论计算确定控制器参数。由于智能车整个系统是机电高耦合的分布参数系统,并且要考虑赛道具体环境,要建立精确的智能车运动控制数学模型有一定难度,而且对车身机械结构经常进行不断修正,模型参数变化较频繁,可操作性不强;二是工程整定方法,它主要依赖工程经验,直接在控制系统的试验中进行,且方法简单,采用了这种方法。1) 方向控制算法的参数整定方向控制采用位置式PID控制。由于小车循黑线本质上是一个随动系统,积分项在弯道累积的偏差错误地加在直道的跟踪上,造成在进入直道时转向不
53、够准确,跑直道时虽然能跟踪黑线,但是转向调整往往超调,导致车身在直道上左右震荡,这种震荡严重影响了车的整体表现。将积分项系数Ki设为0,发现车能在直线高速行驶时仍能保持车身非常稳定,没有震荡,所以没有必要使用 Ki 参数。该控制方案调整为PD控制。Kp和Kd参数由工程整定得出,经过多次试验,得到一组稳定快速的参数为10和20。设置合适的调节范围LOCA_MAX。在车模中上,边界值由舵机转角的最大值决定。经试验测量为控制舵机的PWM波占空比寄存器变化为200时,达到舵机最大转角。故LOCA_MAX = 200调节合适的调节死区,死区太小会造成调节不灵敏,太大则调节过于频繁。经试验测量设为2时较为适合。2) 速度控制算法的参数整定速度控制采用增量式PID控制,同样采用上一小节的工程整定法。经多次试验得出,Kp,Ki ,Kd 分别取30,3,2,调节死区V_DEADLINE设置为1,调节范围设置为950(全速时为1000),车模行驶直道和弯道加减速反映迅速,整体速度良好。5.3 整车机械方面的调整车模的机械也是很重要的一方面,针对电磁
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年规范化设备采购协议范例
- 2024年设备维护保养服务协议
- 2024年基站场地租赁协议模板
- 店铺出租协议文本 2024 年
- 2024泵车租赁协议定制集锦
- 2024年商业街店铺租赁协议
- 2024年专业委托信用担保服务协议
- 2024年规范化小型物流服务协议
- 2024年定制反担保保障协议
- 2024年度房产指标交易协议模板
- 关于新疆土地承包合同范本
- 【基于近五年数据的云南嘉华食品实业财务报表分析15000字】
- 2023年汉字听写大会汉字听写知识竞赛题库及答案(共三套)
- 防火及动火作业监理实施细则
- 《大学计算机基础(Windows10+Office2016)》试卷213749
- 机械动力学PPT完整全套教学课件
- 粗铜冶炼技改项目可行性研究报告
- 结构形态造型
- 温润童心博爱至善
- 04D702-1 常用低压配电设备安装
- 大学生心理健康教育课程说课课件
评论
0/150
提交评论