版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第八届“飞思卡尔”杯全国大学生智能汽车竞赛技术报告第八届“飞思卡尔”杯全国大学生智能汽车竞赛技 术 报 告学 校:山东工商学院队伍名称:深蓝航速参赛队员:王庭娇 韩冰 田南南带队教师:隋金雪 杨莉关于技术报告和研究论文使用授权的说明本人完全了解第七届“飞思卡尔”杯全国大学生智能汽车竞赛关保留、使用技术报告和研究论文的规定,即:参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。参赛队员签名: 带队教师签名: 日 期: 摘要本系统采用32位MK60DN512ZVL
2、L10 Kinetis ARM Cortex-M4单片机为控制核心,通过CMOS摄像头采集的图像经过硬件二值化获取赛道信息,从而判断道路状况。根据赛道装框运算并输出PWM控制舵机的转向角度,同时通过光电编码器获得速度反馈,经过PID实现智能车的调速控制。在调试过程中使用了C#上位机,蓝牙无线通信等手段进行辅助,经验证本系统方案可行。关键词:Kinetis CMOS摄像头 硬件二值化 PID C#AbstractThe system adopts 32 bit MK60DN512ZVLL10 Kinetis ARM microcontroller Cortex-M4
3、 as the control core, Image by CMOS camera acquisition after hardware two values to obtain information of the track, so as to judge the condition of the road. According to the steering angle track loading operation and output PWM contr
4、ol steering gear, get the speed feedbackby photoelectric encoder, through the speed control PID to realize the intelligent control of the vehicle. In the process of debugging using the C# PC, Bluetooth wireless communication means such as auxiliary, proved tha
5、t the present system is feasible.Keywords: Kinetis CMOS camera The hardware of two value PID C#目录摘要IIIAbstractIV引言1第一章 智能车总体设计2第二章 智能车机械调整3第三章 智能车硬件设计63.1 电源模块设计63.2 隔离模块93.3 摄像头信号处理模块103.4 电机驱动模块12第四章 智能车软件设计124.1 图像处理算法124.2 舵机控制算法174.3 电机速度控制21第五章 智能车辅助调试22第六章 总结23参考文献2425引言随着电子技术的迅速发展,它在现代汽
6、车上的应用范围不断扩大,许多传统的机械机构已经被更稳定、更安全的电子系统取代。智能汽车无疑是未来汽车行业发展方向。为加强大学生实践、创新能力和团队精神的培养,促进高等教育教学改革,受中国教育部高等教育司委托,由教育部高等学校自动化专业教学指导分委员会主办全国大学生智能汽车竞赛。该竞赛是以智能汽车为研究对象的创意性科技竞赛,是面向全国大学生的一种探索性工程实践活动,是教育部倡导的大学生科技竞赛之一。该竞赛旨在促进高等学校素质教育,培养大学生的综合知识运用能力、基本工程实践能力和创新意识,激发大学生从事科学研究与探索的兴趣和潜能。该竞赛以飞思卡尔半导体公司为协办方,得到了中国教育部、飞思卡尔公司和
7、各高校师生的高度评价,已发展成在中国30个省市自治区近300所高校广泛参与的全国大学生智能汽车竞赛。大学生智能汽车竞赛根据参赛队伍和队员情况,分别设立光电组、摄像头组、电磁组、创意组等多个赛题组别。该竞赛由竞赛秘书处设计、规范标准硬软件技术平台,竞赛过程包括理论设计、实际制作、整车调试、现场比赛等环节,要求学生组成团队,协同工作,初步体会一个工程性的研究开发项目从设计到实现的全过程。该竞赛融科学性、趣味性和观赏性为一体,是以迅猛发展、前景广阔的汽车电子为背景,涵盖自动控制、模式识别、传感技术、电子、电气、计算机、机械与汽车等多学科专业的创意性比赛。该竞赛规则透明,评价标准客观,坚持公开、公平、
8、公正的原则,力求向健康、普及、持续的方向发展。本文介绍基于颜色识别与PID控制的深蓝航速队CCD摄像头组智能汽车设计,摄像头组是利用机器视觉,通过模仿识别公路上条带状路标实现自主导航仍是现阶段智能车辆最常用的导航方法。这种方法简单实用,适应现有高速公路结构环境特点,与其它视觉方法如三维视觉识别技术相比,具有更快的图像处理速度和更好的控制实时性,因而具有现实应用的可行性和广阔的应用前景。第一章 智能车总体设计只能车的整体系统大体由信息采集模块,处理模块,制动控制模块和辅助调试模块组成,下面给出智能车整体系统框图。 图1智能车总体结构图智能车系统的总体工作模式为:CMOS图像传感器拍摄赛道图像,经
9、过信号处理模块进行硬件二值化获得纯黑白图像,采用LM1881进行视频同步分离,获得奇偶场信号与行同步信号。二值化图像信号、奇偶场信号、行同步信号输入到K60微控制器,进行进一步处理获得主要的赛道信息;通过光电编码器来检测车速,并采用K60的输入捕捉功能进行脉冲计算获得速度;从而可以对速度实现PID控制。转向舵机采用PD控制,让舵机转动更加精准稳定。电机和舵机使用PWM信号进行控制。图2 智能车总体效果图第二章 智能车机械调整智能车机械组成包括:车身,车轮,电池,CCD摄像头及其支架,伺服舵机及其输出杆、连杆,直流电机及其传动齿轮,E6A2-CW3CE 旋转编码器及其固定板,印制电路板(PCB)
10、,MK60DN512ZVLL10单片机最小系统。对车模的机械结构改造主要包括对后轮稳定性的调整及转向结构的调整两个方面。机械结构的整体设计要同时考虑摄像头的安装位置、PCB形状及安装位置、舵机安装位置及电池前后位置等几个方面。(1)摄像头 使用铝合金方管手工制作摄像头承托零件,搭配碳素纤维杆构成摄像头支架,质量较轻,将摄像头安装于碳素杆的上部 。由于购买的摄像头前端为非广角镜头,需要安装一定的高度,才能采集足够的赛道信息。最终将摄像头固定在29cm的高度。 (2)PCB设计设计PCB形状,最大程度的贴合车模形状,一改往年规则的电路板轮廓,使得电路板能更大程度的节省车模空间,降低了车模的重心。另
11、外,将最小系统直接插在焊有排针的PCB上,大大减少了外部接线和电路板总体积。另外,舵机安装位置及电池位置调整在后面将给出详细介绍。2、对前轮的调整(1)主销后倾主销后倾,是将主销(即转向轴线)的上端略向后倾斜。从小车的侧面看去,主销轴线与通过前轮中心的垂线之间形成一个夹角,即主销后倾角,一般在3-5度。主销后倾的作用是增加小车直线行驶时的稳定性和在转向后使前轮自动回正。(2)主销内倾所谓主销内倾,是将主销(即转向轴线)的上端向内倾斜。从小车的前面看去,主销轴线与通过前轮中心的垂线之间形成一个夹角,即主销内倾角。主销内倾的作用是使车轮转向后能及时自动回正,但是转向更费力,轮胎磨损也会增大。主销内
12、倾和主销后倾都有使前轮自动回正的功能,主销后倾与车速的关系比较大,车速越快,回正作用越强。所以高速靠后倾,低速靠内倾。(3)前轮前束所谓前轮前束,是车轮在水平方向上前端距离小于后端距离,即常说的内八字。及车体的行进方向与车轮的纵向切面之间的夹角,约为1.5度,因为小车转向的时候受力的主要是外侧的轮子,采用这种策略能够使小车在转向的时候外侧的前轮转角大于内侧前轮,增大转角极限值,使小车过弯更加流畅。3、对后轮的调整车模后轮一般在行驶过程会有抖动,进而导致车身和摄像头一起抖动,调整固定后轮的四个螺丝,将后轮调正可以有效减小这种震动。另外,将差速调整到足够平滑,松紧适度,也可以有效减小抖动,尤其是平
13、稳的经过弯道。4、底盘调整车模原有一根避震弹簧,我们调整之后车模携带四个避震结构,两个上下避震,另外两个左右避震。这样能使车模更快的从抖动状态恢复平稳。5、重心调整由于小车配带了液晶显示屏模块,车身重量比一般车模要大,所以要降低重心才能更好的稳定车模的机械性能,前轮和后轮都以一个降低车身高度的垫片安装位置,加上足够的垫片,将车模底盘高度降到最低,同时调整电池的前后位置,使重心在车模重心靠后2cm左右的位置。6、舵机安装将舵机竖直安装在车前方的正中心位置,输出轴的长度约1.8CM。因为舵机安装在中间位置能保证左右转向的对称性。输出轴太长会导致前轮的转向太灵敏,输出轴太短会导致前轮的转向太慢,调整
14、速度慢,转向滞后。于是我们选择了一个比较合适的长度。图3 舵机传动改装第三章 智能车硬件设计智能车硬件除CPU核心板外其他部分全都集成到一块14CM*9CM的双面PCB板上。PCB由队内成员自主设计开发。其中包括电源模块、隔离模块、信号处理模块以及电机驱动模块。图4 PCB效果图3.1 电源模块设计直流电源使用竞赛组委会提供的电池,竞赛规定全部电容容量不超过2000uF,电容最高充电电压不得超过25V,禁止使用DC-DC升压电路为驱动电机以及舵机提供动力。 据此原则,使用三端稳压器获得5V和3.3V电压。图5 三端稳压器原理三端固定式稳压器的基本应用电路如图所示,只要把正输入电压加到输入端,公
15、共端接地,其输出端便能输出芯片标称正电压。在实际应用电路中,芯片输入端和输出端与地之间除分别接大容量滤波电容外,通常还需在芯片引出根部接小容量(0.110F)电容, 到地。用于抑制芯片自激振荡,压窄芯片的高频带宽,减小高频噪声。电容的具体取值应随芯片输出电压的高低及应用电路的方式不同而异。LM2940CT-5.0是National Semiconductor公司成产的低压差三端稳压芯片(1A Low dropout voltage regulator),典型压差为0.5V,典型输出电流为1A。利用LM2940CT-5.0芯片为除单片机以外的IC、编码器提供5V电源。图6 LM2940 5V稳压
16、原理LM1117-3.3是常用的三端稳压器,由于整个系统仅有单片机核心需要3.3V供电,故采用SOT-223封装的LM1117-3.3。芯片在该封装下最大输出电流为0.8A,完全可以满足单片机的供电需求。图7 LM1117 3.3V稳压原理LM1117-ADJ是低压差稳压芯片(1A Low dropout voltage regulator),压差低于1V,典型输出电流为1A。由于该芯片的稳压输出电压可以通过外围电路中的电位器设定,故采用此芯片为舵机供电。以此来满足舵机供电可调整的需求。在本智能车的设计中,利用LM1117-ADJ芯片为SD-5舵机提供5V电源。图8 LM1117-ADJ稳压原
17、理另外,由于电机驱动采用MOS管实现,则需要一个12V的电压实现MOS的导通。从而使用了IB0512隔离升压模块实现。图9 IB0512接口图示3.2 隔离模块由于单片机与外围传感器的供电电压不同,则信号输入与输出需要经过电压峰值的转换来保证系统的稳定性。信号输入模块通过74HC245实现,将5V的摄像头信号以及编码器脉冲信号转换为3.3V,让3.3V供电的K60可以正常读取。图10 74HC245信号输入接口信号的输出通过74HC244实现,将3.3V的PWM信号转换为5V实现对电机的驱动。图11 74HC244信号输出接口由于舵机在工作过程中会出现电流反冲,瞬时电压过大等情况。如果不进行隔
18、离,会对其他的IC芯片以及单片机造成损害,甚至烧毁芯片。所以需要光电隔离器件对这部分信号进行隔离。光电耦合器对输入、输出电信号起隔离作用,光电耦合器一般由三部分组成:光的发射、光的接收及信号放大。输入的电信号驱动发光二极管(LED),使之发出一定波长的光,被光探测器接收而产生光电流,再经过进一步放大后输出。这就完成了电光电的转换,从而起到输入、输出、隔离的作用。由于光耦合器输入输出间互相隔离,电信号传输具有单向性等特点,因而具有良好的电绝缘能力和抗干扰能力。TLP181是一款单路光电耦合器,适用于低频率信号的光电耦合隔离。由于舵机的驱动频率为50-200Hz,故使用TLP181完全可以满足需求
19、。图12 P181光电隔离电路3.3 摄像头信号处理模块对摄像头的数据处理直接采用了“硬件二值化”的处理方法,极大降低了环境光线对采集的数据的准确性的影响。首先使用LM1881视频分离芯片对PAL制式的模拟图像信号进行分离,分理处场同步信号与行同步信号,再将模拟信号送入AD8032进行硬件二值化,最终在场、行同步信号的参与下将二值化以后的数字信号存入单片机预置的数组中。图13 LM1881同步信号分离模块图14 AD8032硬件二值化模块3.4 电机驱动模块由于第八届比赛中摄像头组使用B车模进行比赛,B车模的电机功率较大,使用集成半桥芯片驱动很容易出现过热现象,很难获得理想的性能。我们使用IR
20、2104与LR7843搭建MOS管的H全桥来驱动电机,从而避免驱动过热问题。图15 电机驱动模块第四章 智能车软件设计智能车的软件设计包括图像处理、舵机控制、电机控制。通过三部分系统协同工作来实现智能车在预定赛道上的高速运行。4.1 图像处理算法由于如果对每一行图像都进行采集存储,会增大MK60DN512ZVLL10单片机的数据处理和存储的负担,而且智能车转向控制只要有若干行的信息分辨率就足够了,因此只需要对特定行进行采集。本方案只采集指定的20行图像信息,每行采集100个点。设置一个行计数器(count_row),当行中断输入口捕捉到一个上升沿时,脉冲累加器的寄存器置位,表明一个行同步信号刚
21、刚过去,新的一行刚刚开始,将count_row加1。当count_row加到count_row_end时,表明指定采集的行视频信号已到,此时进行图像采集。图像采集利用了AD8032高速电压比较器进行A/D转换, 将图像信息的模拟信号通过电压比较电路有效地将赛道中黑色转换成高电平,将白色转换成低电平,黑白的阀值可以通过电位器调整。通过场中断,行中断和数据口就可以控制采集分场、行,最终从I/O口提取到摄像头传回的“硬件二值化”之后的纯黑白图像。采集后的图像信息存入pixMAXROWMAXCOLUM二维数组,方便利用串行通信在上位机上使用VB、VC自编软件或LabVIEW、MATLAB进行调试。其中
22、MAXROW、 MAXCOLUM分别为宏定义的图像行数与列数,值为MAXROW=20,MAXCOLUM=100图像采集串口发送到电脑后如图所示:图16 智能车眼中的赛道视频信号可以反应出黑线中心线的模拟位置,由图像中可以看出,在弯道上内侧黑线图像容易丢失,所以利用两条黑线计算出黑线中心线的位置即相当于提取出了赛道的可靠特征信息,进而对舵机和直流电机进行控制。左右黑线边缘的扫描从图像的最下端的第一行开始进行,从第一行的中心点开始向两侧循环扫描判断,直到扫描到黑点为止。第一行的左右边缘所在为止分别写入LeftEdge0和RightEdge0。从第二行开始,扫描的基准点都定为上一行黑点的位置向中心偏
23、移20个点处,由此点开始再向两侧扫描。如此循环,可以沿着边缘变化的趋势提取出每一行的边缘位置数据,存入LeftEdge、RightEdge数组,减少了运算量和误差数据的影响。图像提取的示意图如下。由第一行重点开始向两侧遍历第二行的基准点第三行的基准点寻到黑线后向中心偏移20个点定位下一行基准点图17 黑线提取示例黑线中心线提取算法主要基于边沿提取算法。常用的中线提取算法为分别提取出黑线的左边沿(LeftEdgeMAXROW)和右边沿(RightEdgeMAXROW),那么中心线的位置就是CenterMAXROW=(LeftEdgeMAXROW+ RightEdgeMAXROW)/2。当一边的黑
24、线丢失时,可以只利用外侧边缘控制提取中线信息,也可以根据实验给予补偿值将黑线还原,也可以将无黑线的点极值化或赋值无效标识,实现软件滤波,防止误判。其中的LeftEdge、RightEdge都为一维数组,用于存放图像处理后获取到的左右边缘位置数据。Center用于存放左右边缘数组运算后的中心线数据。提取出中线后,使用“最小二乘法”计算出赛道的斜率、曲率两个特征量。最小二乘法的解释如下:设:y = ax + e 其中:y、x 可测;e 不可测的干扰项;a 未知参数。通过 N 次实验,得到测量数据 yk 和xk k = 1、2、3 ,确定未知参数 a 称“参数估计”。 使准则 J 为最小 :令:0,
25、 导出 a = ?则可推出: 根据此理论,我们可以在赛道图像上建立平面直角坐标系,并利用最小二乘法计算出中线的斜率。坐标系建立如图:图18 黑线提取示例为了方便计算,将平面直角坐标系逆时针旋转90度后建立,从而可以将直线斜率的计算结果近似为0,左转斜率为正数,右转斜率为负数。通过斜率的正负可以判断赛道的方向,通过斜率绝对值的大小可以判断赛道的弯曲程度。最小二乘法的C语言实现如下:float getSlope(unsigned char slope_tmp )int i,j,sum_xy,sum_xx;float slope_return=0;sum_xy=0;sum_xx=0;for(i=1;
26、i<20;i+) /更换坐标轴为以第一行重点为原点 get_slopei=slope_tmpi-slope_tmp0 ; get_slope0=0;for(i=0;i<20;i+) sum_xy=sum_xy+i*get_slopei; sum_xx=sum_xx+i*i; slope_return=(float)sum_xy/(float)sum_xx; return slope_return;利用此理论,我们可以利用中心线计算出赛道的斜率、曲率两个特征量,用于智能车的速度、转向控制。4.2 舵机控制算法舵机的PWM控制信号的频率范围为50HZ到200HZ。而舵盘的输出转角仅与P
27、WM控制信号的高电平时间成正比,当高电平时间为1500s时,输出转角为0度。智能车的实际最大转角约40度,对应的高电平时间分别为1856s和1144s。舵机转角计算公式为:转角=(Servo_control*10000/40000-1500)*90度。理论0度转角位置处Servo_control=6000,理论+40度转角位置处Servo_control=7424,理论-40度转角位置处Servo_control=4576。黑线中心线位置计算出以后,只要和当前赛车中心线或视野中心线(CenterMAXROW)做减法,即可算出黑线偏差(Deviation)。由于图像传感器采集5行信息,故可以得到
28、Deviation 20数组。若Deviation row为正,说明该行采集到的黑线中心线位于视野中心线的右方,若为负则相反。如图所示:图19 转向点提取在设计算法之前,需要一些经验数据,来方便进行舵机算法的设计。分别按循线、微切、重切三种情况进行实验,如图所示:图20 转向轨迹最优获取利用一行的Deviationrow进行舵机控制。该控制算法的优点是方法简单,如果采用前端的行进行控制还可以在一场图像未采集完成之前提前控制舵机,从而减小舵机的纯滞后环节。利用Deviation row计算出偏差的平均值Devitaion_avg作为比例系数P,使用P比例系数计算出相应的PWM控制量Servo_c
29、ontrol,从而可实现对舵机的开环控制。控制量可使用线性或非线性方法进行计算,如下图所示:图21 舵机转向线性控制在低速测试过程中发现在偏离中线很小的范围内,将中线偏差值的增益减到很小,取得的实际效果在弯道较多、直道较短的赛道上,车子转弯流畅,直道也能基本保持直线加速,车身左右抖动较小。在高速测试时,发现在长直道上,车身左右震荡比较严重,究其原因,硬件上,我们认为首先是轮轴本身的松动并且转向机构左右转向性能可能存在不对称性,设计有待改进,软件上,则是动态适应能力不够。由于在直线上偏差量较小,为使得智能车在直线上运行更平稳,可以降低直线上的调成比例,并且同时增加弯道上的调整比例,从而实现快速的
30、出入弯道并且平稳的通过直道。图22 舵机转向分段线性控制考虑到舵机左右性能不平衡以及赛道适应性能因素,使用非线性控制能达到更好的转向效果。上述方法在高速运行时可能会出现过弯震荡,究其原因就是因为偏差值Devitaion_avg在比例的突变点的跳变引起的。为了解决此问题,在实验中我们分别尝试了通过二次曲线和三次曲线来控制偏差以及斜率的增益系数,经过反复测试,修改相应的参量,达了到S弯、长直道以及大弯的优化路线,控制效果比较理想。图23 舵机转向曲线控制4.3 电机速度控制电机控制使用PID算法实现。反馈量为光电编码器的脉冲。数字PID有多种改进形式,如位置式PID、增量式PID、PI控制及PD控
31、制,应视系统的需求进行选择。本例采用了经典PID: PIDOUT = Kp*error + Ki*sum_error + Kd*(error ex_error)PIDOUT:PID输出控制参数, 体现为PWM宽度调整Kp: P调节参数Ki : I调节参数Kd : D调节参数error :误差量, 为期望速度 实际速度, 误差量可以是正数,也可以是负数ex_error : 误差量, 为本次速度 上次速度, 误差量可以是正数,也可以是负数sum_error :误差总和运用PID控制的关键是调整KP、KI、KD三个参数,即参数整定。PID控制器的参数整定是控制系统设计的核心内容。它是根据被控过程的特性确定PID控制器的比例系数、积分时间和微分时间的大小。PID参数的整定方法有两大类:一是理论计算整定法。它主要是依据系统的数学模型,经过理论计算确定控制器参数;二是工程整定方法,它
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教学资料-感恩老师主题班会-完整版课件
- 苏教版小学一年级语文下册第三单元难点梳理教案
- 第12单元 通过ile构建镜像
- 冠心病的并发症和护理
- 高层管理人员绩效考核制度
- 安全持续提升处置方案
- 室外电气安装验收记录
- 学校学生就餐管理制度
- 文物保护工程从业资格实务试题精讲(完整版)
- 脑梗健康康复教育
- 成都市金牛区卫生健康局所属事业单位2026年招募医务社会工作服务岗位(5人)笔试备考题库及答案详解
- 无粘结预应力钢绞线施工方案及工艺方法
- 【世界经济论坛】塑造学习的未来:人工智能时代的教育准备
- 2026年高考(浙江卷)历史试题及答案
- 电商运营流程与管理制度
- 痰湿体质的中医护理
- 2025手术体位相关性周围神经损伤预防专家共识解读课件
- DBJ-T 13-491-2025 福建省建筑修缮工程施工质量验收标准
- 2023-2024学年北京市海淀区九年级(上)期末数学试卷(含解析)
- 《反应器操作与控制》教学课件-04流化床反应器操作与控制
- DIY甜品创业计划书
评论
0/150
提交评论