广东工业大学firefly队智能车设计报告.docx
- 文档编号:15556448
- 上传时间:2023-07-05
- 格式:DOCX
- 页数:84
- 大小:903.97KB
广东工业大学firefly队智能车设计报告.docx
《广东工业大学firefly队智能车设计报告.docx》由会员分享,可在线阅读,更多相关《广东工业大学firefly队智能车设计报告.docx(84页珍藏版)》请在冰点文库上搜索。
广东工业大学firefly队智能车设计报告
第一章引言……………………………………………………………………1
1.1比赛背景介绍……………………………………………………………1
1.2本文结构…………………………………………………………………2
第二章设计思路及技术方案…………………………………………………3
2.1电源和驱动模块…………………………………………………………3
2.1.1电源供电模块………………………………………………………3
2.1.2电机驱动模块………………………………………………………4
2.2传感器模块………………………………………………………………5
2.2.1路径检测模块………………………………………………………5
2.2.2速度测量模块………………………………………………………5
2.3控制模块………………………………………………………………6
2.3.1角度控制模块………………………………………………………6
2.3.2速度控制模块………………………………………………………7
2.3.3总体控制策略………………………………………………………8
2.4本章小结…………………………………………………………………9
第三章硬件系统设计与实现…………………………………………………10
3.1车模机械结构调整………………………………………………………10
3.1.1前轮定位…………………………………………………………11
3.1.2齿轮传动机械调整………………………………………………12
3.1.3舵机调整…………………………………………………………13
3.1.4速度采集模块装……………………………………………………13
3.1.5红外传感器安装…………………………………………………14
3.2智能小车电路设计………………………………………………………15
3.2.1系统硬件结构图……………………………………………………15
3.2.2电源供电电路………………………………………………………16
3.2.3电机驱动电路………………………………………………………17
3.2.4红外传感器电路……………………………………………………18
3.2.5液晶调试电路………………………………………………………18
3.3本章小结………………………………………………………………19
第四章软件系统设计与实现…………………………………………………21
4.1需求分析………………………………………………………………21
4.2系统各模块软件设计…………………………………………………21
4.2.1时钟模块……………………………………………………………21
4.2.2PWM模块……………………………………………………………22
4.2.3AD模块………………………………………………………………23
4.2.4ECT模块……………………………………………………………24
4.2.5EEPROM模块…………………………………………………………24
4.2.6串口通信模块………………………………………………………24
4.2.7LCD调试模块………………………………………………………25
4.2.8普通I/O口…………………………………………………………25
4.3小车偏角测量…………………………………………………………26
4.3.1黑线提取算法………………………………………………………26
4.3.2小车偏角测量算法…………………………………………………29
4.4起始线和交叉线处理……………………………………………………31
4.4.1起始线处理…………………………………………………………31
4.4.2交叉线处理…………………………………………………………32
4.5角度模糊自适应PID控制算法…………………………………………32
4.5.1模糊PID控制系统结构……………………………………………32
4.5.2PID控制器参数整定原则…………………………………………33
4.5.3精确量的模糊化……………………………………………………33
4.5.4模糊规则的确定……………………………………………………35
4.5.5反模糊化……………………………………………………………36
4.6速度控制算法……………………………………………………………37
4.6.1速度数据采集………………………………………………………37
4.6.2速度控制算法……………………………………………………38
4.7赛道记忆算法…………………………………………………………39
4.7.1第一圈记忆算法原理……………………………………………39
4.7.2记忆算法软件流程图……………………………………………40
4.7.3第二圈控制策略…………………………………………………41
4.8总体控制策略…………………………………………………………43
4.9 本章小结………………………………………………………………44
第五章系统调试……………………………………………………………45
5.1软件开发调试平台……………………………………………………46
5.2LCD调试………………………………………………………………48
5.3实验结果与分析…………………………………………………………50
5.4本章小结…………………………………………………………………53
第六章结论……………………………………………………………………54
6.1系统主要技术参数………………………………………………………54
6.2主要问题分析与解决……………………………………………………55
6.3展望………………………………………………………………………56
参考文献…………………………………………………………………………57
附录:
程序源代码………………………………………………………………57
摘要
本文详细介绍了我们为第三届全国大学生智能车竞赛而准备的智能车系统方案。
该系统以Freescale16位单片机MC9S12DG128作为系统控制处理器,采用光电传感器采样模块获取赛道信息,通过模糊自适应PID控制算法对舵机转向进行控制。
采用脉冲编码传感器实时获取小车速度,并通过反馈式PID算法形成速度闭环控制。
我们还使用了赛道记忆算法,小车会根据第一圈纪录下的赛道信息实行第二圈对应的控制策略。
本文在硬件方面将介绍赛车的机械结构和调整方法,光电传感器和测速传感器的制作、电源、驱动模块的设计、参数调整和有关测试;软件方面我们将说明本系统的舵机转向策略、速度闭环控制与速度分配策略。
除智能车系统本身的介绍外,我们还将叙述该系统开发过程中所用到的开发工具、软件以及各种调试、测试方法。
关键词:
智能汽车;模糊控制;PID控制;赛道记忆。
第一章引言
1.1比赛背景介绍
受教育部高等教育司委托,高等学校自动化专业教学指导委员会负责主办全国大学生智能车竞赛。
该项比赛已列入教育部主办的全国五大竞赛之一。
在此之前已经成功举办过两届赛事。
本比赛其专业知识涉及控制、模式识别、传感技术、汽车电子、电气、计算机、机械等多个学科,对学生的知识融合和动手能力的培养,对高等学校控制及汽车电子学科学术水平的提高,具有良好的推动作用。
在本次比赛中,参赛选手须使用大赛组委会统一提供的竞赛车模,核心控制模块可以采用组委会提供的HCS12模块,也可以选用飞思卡尔公司8位、16位系列微控制器芯片自制控制电路板。
所有参赛队都应该按照组委会规定的比赛规则自主构思控制方案及系统设计,包括传感器信号采集处理、控制算法及执行、动力电机驱动、转向舵机控制等,最终实现一套能够自主识别路线,并且可以实时输出车体状态的智能车控制软硬件系统。
各参赛队完成智能车工程制作及调试后,于指定日期与地点参加比赛。
参赛队伍之名(成绩)由赛车现场成功完成赛道比赛时间为主,技术方案及制作工程质量评分为辅来决定。
1.2本文结构
本文采用先总后分的结构,对系统设计的各个模块进行了方案分析和确定,突出强调了系统机械结构、硬件电路和软件程序的统一。
在对各部分进行介绍时,详细阐述了我们在整个比赛阶段所作的探索以及对诸多细节的改进。
全文共由六个章节组成,第一章为引言,二至五章为主体部分,第六章为总结。
首先,基于比赛规则和控制器性能,在第二章里我们对系统的各个模块进行介绍和方案选择,确定了系统的整体设计框架。
然后,第三章介绍了对车模机械性能的一些探索和改进,同时对电路板的设计与传感器的安装进行了描述。
除此之外还介绍了电源、驱动电路的设计以及传感器方案电路设计。
接下来的第四章里详细描述了系统设计中用到的各个S12功能模块、小车偏角测量算法和车体控制算法。
第五章列举了各种开发调试工具,以及算法调试的介绍。
最后,第六章对系统综合性能进行了评价,并指出了今后的改进方向。
第二章设计思路及技术方案
由比赛的规则可知,比赛赛道在正式比赛当天才公开,并且试车后不可能对赛车有大范围的改动。
因此要保证小车在各种不同环境和赛道下能够稳定行驶,再进行速度的提升。
故稳定性是设计中首要解决的问题,然后在此基础上提升速度。
我们针对提高小车稳定性和速度,规划整个智能车系统各个模块的设计,得出本智能车控制系统模型框图如图2.1所示。
图2.1智能车控制系统模型框图
2.1电源和驱动模块
2.1.1电源供电模块
电源供电部分关系到整个系统工作的稳定性,由于采用的是镍镉电池供电,内阻比较大,电机启动或者突然加速的瞬间,电池输出的电流很大,电池两端电压突然会降低。
为了保证单片机和其他模块工作正常,所以在对电源供电的设计方面,要求电路工作效率高,输出电压稳定。
而且随着车子在跑道上跑,随着电池电量的消耗,电池两端的电压也会慢慢降低,这就要求稳压芯片的选取要工作压差小。
本系统所需电压有5V、6V、7.2V,其中7.2V部分为电机驱动电压,可由电池直接提供。
根据不同的工作原理可将电源分成两类:
线性稳压电源、开关稳压电源。
线性稳压电源:
一般的线性稳压电源的输入电压与输出电压之间的电压差大,稳压电源内部的调整管上的损耗大,效率低。
但近年来开发出各种低压差(LDO)的新型线性稳压器IC,效率也有较大的提高,线性稳压电源还有一个优点就是外围元件最少、输出噪声最小、静态电流最小,价格也便宜。
开关稳压电源:
开关稳压电源中有一个工作在开关状态的晶体管(一般是MOSFET),故称为开关电源开关管工作于饱和导通及截止两种状态,所以开关管管耗小并且与输入电压大小无关,相对于线性稳压电源一个明显的优点是工作效率高,一般可达80%~95%。
1)5V部分:
主要用于单片机供电,霍尔传感器、红外管、液晶调试和驱动电路的逻辑门供电。
稳压芯片选择:
方案一:
普通常用稳压芯片LM7805。
优点:
价格便宜。
缺点:
效率低,发热量大。
压差大,外部供电要在7.5V以上才可以稳定稳压到5V
方案二:
开关稳压芯片LM2575/LM2576。
优点:
工作效率高,发热量小,输出电流大,约3A。
工作电压可以低至6.5V。
缺点:
外围电路复杂,成本高,由于是开关稳压,稳压后的波纹大。
方案三:
低压差线性稳压芯片LM2940。
优点:
低压差,工作压差可以小于0.5V,在电池两端的电压降到5.5V还能稳定地输出5V的电压,电压波纹小,可以给单片机稳定的供电。
外围电路简单,需要的滤波电容小。
2)6V部分:
主要用于舵机供电
方案一:
直接串联两支硅二极管。
优点:
电路简单;缺点:
电压不稳定。
方案二:
通过可调稳压芯片LM2575ADJ稳压。
优点:
电压稳定,工作效率高;缺点:
成本高,电路复杂。
经过分析,最终决定设计两路5V稳压电路,其中一路采用LM2940稳压后独立为单片机供电,另外一路是为系统其他模块提供5V供电,采用了更大的输出电流的稳压芯片LM2576。
6V供电采用可调稳压芯片LM2575ADJ稳压。
因为舵机的响应速度跟电压有关,稳定的电压会使舵机有着稳定的响应速度,对方向控制不会随着电压的降低而产生控制响应不及时。
2.1.2电机驱动模块
电机作为速度控制的主体,它的驱动能力直接影响小车的速度快慢和瞬时提速的能力,以下是电机驱动模块的两个方案比较。
方案一:
采用集成电机驱动芯片MC33886。
优点:
外围电路简单,可以实现全桥驱动;缺点:
发热量大,价格昂贵,驱动电流不够大。
方案二:
采用MOS管组成驱动电路。
优点:
驱动电流大,选择大电流的MOS管可以轻易达到100多安;缺点:
要搭全桥控制电路复杂,而且不小心很容易造成短路。
经过比较分析,驱动电路采用MC33886并利用门电路设计了一套逻辑控制,两个I/O口来分别控制车子前进和后退,一路PWM输入。
并且有保护措施,防止I/O口逻辑错误输入,以及防止供电不足单片机重启时候,电机极速转动。
2.2传感器模块
2.2.1路径检测模块
路径识别模块是智能车系统的关键模块之一,路径识别方案的好坏,直接关系到最终性能的优劣。
我们组选择的是光电组。
传感器的收发距离对于车子的前瞻性有着直接的影响。
参考过往届光电组的设计报告,发觉大多数采用的传感器都是红外传感器,说明相对于超声波传感器等其他类型的传感器还是有一定优势的,所以我们重点放在红外传感器的设计和测试,选取了不同厂家不同型号的红外管来测试路径识别的性能。
对于红外对管的选取和电路设计,我们作了几个方案论证。
方案一:
通过38K载波发射和一体接收头接收。
优点:
发射距离远,抗干扰能力强;缺点:
接收方向范围过大(大于135度),不利于对道路黑线位置检测,硬件软件较复杂。
方案二:
一体化发射/接收管。
优点:
硬件电路简单,方便;缺点:
可以收发距离太近。
方案三:
二极管形式发射接收管。
优点:
发射功率大,距离比一体化发射/接收管稍远;缺点:
硬件电路稍复杂。
最后经过分析比较,我们采用第三种方案。
具体设计说明在第三章硬件结构设计有详细说明。
2.2.2速度测量模块
小车速度检测常用的方法主要有透射光栅轮检测、霍尔开关检测以及脉冲编码器测速,透射光栅轮检测和霍尔开关检测原理示意图如图2.2所示。
方案一:
光栅式。
透射光栅轮检测是在光栅轮两侧安装集成式光电开关,光栅轮随着转动断续地遮挡红外线光束,使得接收管接收到断续的光脉冲信号。
由于栅距比较小,精度比较高,速度的实时检测比较好,但是由于红外线集成式光电开关的恢复特性较差,在高频下电路输出的高低电平的区分度较差,须将电平信号整形后方可使用。
方案二:
霍尔式。
霍尔开关的开关速度比较快,精度容易调节(只需调节小磁铁块的个数与间距),而且电路简单。
缺点是磁铁的安装比较困难。
图2.2简易速度检测方式
方案三;脉冲编码器。
编码器每转一圈就可以产生很多个脉冲(不同型号脉冲数不同),通过安装在后轮的齿轮传动带动编码器,车轮只要有转动脉冲编码器就会产生脉冲,所以只要计下一定时间的脉冲数即可知道小车速度,检测精度远远比其他两种方案高,而且电路简单安装方便稳定。
经过比较分析,我们最终选择脉冲编码传感器作为速度检测模块。
2.3控制模块
2.3.1角度控制模块
本智能车方向的控制是通过PWM波对舵机进行控制来实现的。
舵机的控制是通过周期固定的脉冲信号控制的,舵机的转位正比于脉冲的宽度,这个连续的脉冲信号可以由PWM实现。
舵机内部会产生一个频率为50Hz的基准信号,通过基准信号与外部所给PWM波的正脉冲持续时间进行比较,从而确定转向和转角的大小。
对舵机的控制我们采用模糊自适应PID控制,根据小车偏角测量算法(4.3节有详细介绍)计算出当前时刻小车前进方向与黑线的夹角,然后对方向控制量进行校正。
我们使用了S12里面专用的模糊控制指令,提高舵机转向的准确度和响应速度,这对于小车的提速是很关键的一点。
图2.3为智能车角度控制处理流程图。
图2.3智能车角度控制处理流程图
2.3.2速度控制模块
本届大赛组委会规定使用的后轮驱动电机型号为RS-380SH,工作在7.2V电压下,空载电流为0.5A,转速为16200r/min。
在工作电流为3.3A,转速达到14060r/min时,工作效率最大。
由于单片机输出的脉宽无法驱动大赛提供的直流电机,因此需要通过电机驱动芯片MC33886驱动电机正转、反转。
由于单片机带有PWM输出端口,PWM波获取方便,为了加强灵活性,能实时改变控制量,所以我们利用PWM脉宽与速度的对应关系对电机进行控制。
速度控制算法方面,我们用反馈式PID算法形成速度闭环控制。
它的控制流程如图2.4所示:
图2.4智能车速度控制流程图
2.3.3总体控制策略
由于比赛赛道预先不知,所以我们制定了两个方案来增强小车对不同赛道的适应能力,一个是赛道记忆算法,这是我们的首选算法,小车第一圈把赛道信息存储下来,第二圈根据第一圈存储的赛道信息采用相应的控制策略;另一个是普通的算法,原理是即时采集分析数据即时控制,这是备用算法,如果赛道不适合赛道记忆算法或赛道记忆算法出问题的话,就使用普通算法。
2.4本章小结
本章对智能车系统的电源和驱动模块,角度和速度测量模块以及总体控制策略进行方案比较,并且通过理论及实践的验证,最终确定了一套稳定性和控制性能较优的软硬件系统方案。
第三章硬件系统设计与实现
由于智能车比拼的是速度,车模的机械结构及硬件电路设计对智能车的稳定行驶有着关键的作用,机械调整的好坏以及电路设计的优劣,直接影响到车子的行驶性能,以下是我们对赛车机械结构的一些调整和电路设计进行介绍。
3.1车模机械结构调整
本次设计中采用的车模是1:
10的实车模型,机械结构可调性非常高。
该模型车底盘采用的是等长双横臂式独立悬架。
我们队伍设计车子最终组装后的照片图3.1、3.2所示。
图3.1 车模图片
3.1.1前轮定位
前轮定位调整的原则是保障汽车直线行驶的稳定性,转向轻便和减少轮胎的磨损。
其中车模前轮定位可调的参数有:
主销内倾角、主销后倾角和后轮距。
1)主销内倾角
主销内倾角具有使车轮自动回正的作用,还能使转向轻便,再考虑到车子高速过弯时,车子会因转向过度发生侧滑,为了增大车子的抓地力,我们把车轮调整成内八字。
经过试验,车子在转弯时明显比调整之前稳定。
2)主销后倾角
主销后倾角能使车轮产生回正的稳定力矩,保证汽车能稳定地直线行驶,但是主销后倾角会使车子转向沉重,兼顾到本次比赛采用的舵机性能偏软,所以我们把后倾角调整到0°,这有可以使施加更轻便的作用力就可以转向。
3)后轮距
模型车可以通过更换零件来调整后轮距,使后轮两档可调,配用零件比车子事先装好的长4mm,更换更长的配用零件增大后轮距,使模型车不容易发生侧滑。
3.1.2齿轮传动机构调整
车模后轮采用RS-380SH电机驱动。
电机轴与后轮轴之间的传动比为9:
38(电机轴齿轮齿数为18,后轮轴传动轮齿数为76)。
齿轮传动机构对车模的驱动能力有很大的影响。
齿轮传动部分安装位置的不恰当,会大大增加电机驱动后轮的负载,从而影响到最终成绩。
调整的原则是:
两传动齿轮轴保持平行,齿轮间的配合间隙要合适,过松容易打坏齿轮,过紧又会增加传动阻力,白白浪费动力;传动部分要轻松、顺畅,容易转动,不能有卡住或迟滞现象。
3.1.3舵机调整
舵机是一种位置伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。
其工作原理是:
控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。
它内部有一个基准电路,产生周期为20ms,宽度为1.5ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。
最后,电压差的正负输出到电机驱动芯片决定电机的正反转。
当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。
舵机的控制信号是PWM信号,利用占空比的变化改变舵机的位置。
对于这个比赛,由于舵机存在着比较大的延迟,提高舵机的响应速度对于提高成绩有着重要作用。
可以通过改造舵机的装配方式以提高转向性能,因为舵机通过拉杆连接到前轮,改变舵机安装位置,增加转动输出力臂,可以使车子转向更迅速。
3.1.4速度采集模块安装
我们采用脉冲编码传感器作为速度采集,选取了体积非常小而且重量轻的编码器型号。
通过自制的一块板把脉冲编码器与车体连在一起固定在右后轮处让两个齿轮恰好地连接,这样,即使车震动的较厉害,脉冲编码器也可以稳定正常工作。
编码器的安装后图片如图3.5
3.1.5红外传感器安装
由于采用的方案是红外传感,总共13对红外发射接收管,设计在一块电路板上。
通过重量非常轻的碳素材料做支架伸出车子前面约10CM,支架后部固定在舵机附近的螺丝位。
如图3.6所示。
3.2智能车电路设计
3.2.1系统硬件结构图
智能车系统硬件结构如图3.7所示
图3.7 小车系统硬件结构图
3.2.2电源供电电路
电源供电部分关系到整个系统工作的稳定。
由于采用的是电池供电,为了更好地提高工作效率,和稳定的电压输出,我们设计两路2940供电,一路独立为单片机供电(电路图如图3.8所示),另外一路为脉冲编码器、红外传感器、驱动逻辑及LCD调试模块提供5V供电(电路图如图3.9所示)。
图3.8MCU供电电路
图3.9传感器及LCD等供电电路
6V供电:
舵机供电电路如图3.10所示,因为舵机的响应速度跟电压有关,这样设计就会有稳定的电压使舵机有着稳定的响应速度,对方向控制不会随着电压的降低而产生控制响应不及时。
图3.10舵机供电电路
3.2.3电机驱动电路
赛车的行驶速度是决定比赛成绩最重要的条件,而驱动电机的性能又最终决定了赛车的最大行驶极限以及瞬间提速、减速的效果。
为了更好的进行车模的速度控制,我们经过方案分析,最终确定使用MC33886芯片作为电机的驱动芯片,并且获得不错的控制效果。
电机驱动电路图如图3.11所示。
图3.11电机33886驱动
3.2.4红外传感器电路
红外发射电路采用二极管形式发射接受管,外围放大电路采用I/O口控制红外发射,接收管引出接到CPU的AD转换。
通过I/O口瞬间点亮,可以提高红外发射功率,流经红外发射管的电流可以达到180mA。
由于点亮时间很短,不会造成红外管烧毁,从而提高收发距离,而且采集数据的时候才点亮红外管,节省功耗。
由于接收管制造工艺等原因难免会出现不一致性,采集的电压会不均匀,在接收管电路部分串联一个可调的电阻,利于接收管采集电压的调整,使得采集的A/D值基本一致。
红外传感器电路图和实物如图3.12和3.13所示
3.12红外传感器电路
图3.13红外传感器
3.2.5液晶调试电路
现场调试很重要,在硬件上我们采用手机液晶显示屏和按键来作为调试工具,不用重新下载程序就可以对于车子控制的一些参数修改。
手机液晶是3.3V供电,所以还要设计3.3V的供电电路。
采用稳压芯片LM1117-3.3V可以从5V的电源端稳压成3.3V。
图3.14和3.15分别是稳压电路、液晶按键与单片机连接的原理图。
图3.16是液晶调试模块的实物图。
图3.143.3V稳压电路
图3.15液晶按键调试电路
图3.16液晶数码管调试模块
3.3本章小结
本章主要介绍了车模的安装与改造、电路板和传感器的安装方式。
其中,对舵
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 广东工业大学 firefly 智能 设计 报告
![提示](https://static.bingdoc.com/images/bang_tan.gif)