刘宁 刘帅明 任泽 李文鑫
摘 要:精准的路径跟踪是智能车自主驾驶的必要条件,而参考轨迹的生成是实现精准路径跟踪的前提条件。文章介绍了一种根据摄像头采集的图像提取道路信息并拟合出中心线,使用比例-积分-微分控制使智能车实现精准的路径跟踪,并使用软件进行仿真,通过仿真验证其效果并进行实车试验的方法。实验表明可以实现一般道路的路径跟踪。
关键词:PID控制;图像处理;路径跟踪
中图分类号:U495 文献标识码:A 文章编号:1671-7988(2020)21-29-04
Abstract: Accurate path tracking is a necessary condition for intelligent car self-driving, and the generation of reference track is a prerequisite for achieving accurate path tracking. This article introduces a method to extract road information from the image splendour edited and fit out the centerline according to the image collected by the camera, use the scale- integral-differential control to make the smart car achieve accurate path tracking, and use the software to simulate the effect of the simulation and carry out the real car test. Experiments show that the path tracking of general roads can be achieved.
Keywords: PID control; Image processing; Path following
CLC NO.: U495 Document Code: A Article ID: 1671-7988(2020)21-29-04
引言
智能汽车(Intelligent Car)是电子计算机等最新科技成果与现代汽车工业相结合的产物,具有自动变速、路径识别、甚至自动驾驶等功能。智能车(smart car)是以单片机为核心辅助各种传感器从而在特定赛道上完成自动循迹的汽车。汽车智能化现代汽车发展的方向之一,通过对智能车的研究可以增加对智能汽车的认识和了解,进一步的对智能汽车控制思想和方式进行研究。本文以全国大学生智能车竞赛为背景,介绍一种基于摄像头的智能车路径跟踪与仿真的方法。
1 攝像头的图像处理
摄像头就好比智能车的“眼睛”,它为微控制器提供当前的道路信息,可将采集到的图像信息实时的传给微控制器进行处理。[1]本文中摄像头安装在车辆纵向平分线上,所采用的摄像头为MT9V032 CMOS数字摄像头,其具有全局快门,采集智能车高速运动下图像不失真和高动态性能的优点。本文中所提到的道路是白色黑边且其余背景颜色为蓝色哑光,其目的是减少外界干扰并提高摄像头的识别率。
如图2所示为图像处理的原理。摄像头所采集到的图像为灰度图像且以数组的形式发送到单片机微控制器中,为减少单片机运算量且满足对道路识别的要求,其分辨率设置为120*188,每隔五行处理一次数据。采用 DMA 采集图像,DMA 采集高速且不经过 CPU,这样便能够采集更多的有效数据。[2]考虑到实验在室内进行,因此采用固定阀值对图像进行二值化处理,对于中线的提取采用由内而外的方法,即从一行的中间像素开始向两边比较,由于在黑边到白边的过渡在数组内表现为值的跳变,因此当检测到跳变时记录跳变所在横坐标的数值,对记录左右两侧的横坐标求平均值即得到道路中线的位置。
2 PID控制
智能车在实际运动过程中其驱动电机速度是受到单片机所发出的占空比(PWM)所影响的,且对不同电机给定同一PWM值时,电机响应时间也不同;此外,出于对响应的快速性、准确性和稳定性的要求。因此需要对电机进行算法控制,使其响应快速、准确、稳定。为实现上述目的,故采用较为常用的PID控制。它是一种线性控制器,根据期望输入值R(t)与实际输出值C(t)构成的控制偏差,将偏差按比例、积分和微分通过线性组合构成控制量,对被控对象进行控制[3]。其基本公式为:
2.1 电机同步的PID控制
本文中所提到的智能车采用双电机后驱形式,为保证其直线行驶的稳定,因此需要对左右两驱动电机进行控制。
图4为电机同步PID控制的原理图。在该控制中,利用编码器形成闭环控制。单片机每隔一段时间读取一次左右编码器数值以检测电机转速,以左右驱动电机中的一个电机作为被控制电机(图中以左电机作为被控电机),将两编码器获得电机转速进行差值(Error),并将该差值作为控制量,设置允许最大差值,将实际得出的差值与允许最大差值进行比较,如果实际得出的差值小于允许最大差值,则不对电机进行控制,电机继续以上个周期的占空比(PWM)运行;如果实际得出的差值大于允许最大差值则对该差值进行PID运算,运算结果与上周期PWM相加从而对被控制电机的占空比进行调整,最终实现两电机的速度差在较小范围内,智能车能够实现直线行驶。
2.2 路径跟踪的PID控制
图5为路径跟踪的PID控制原理图。在对智能车中的控制中,除去对驱动电机进行控制外,对于转向舵机进行控制,对舵机的控制关系到路径跟踪的精度。根据上述,通过对数字图像的处理提取出道路的中线,中线横坐标与摄像头中心横坐标的差值表现为车辆运动方向与道路中线的夹角。因此需要对舵机进行控制,使车辆运动方向始终与中线方向一致。对于舵机的控制与驱动电机的控制类似,值得注意的是对于舵机的控制参数调试与车辆车速和舵机响应速度有关,当车速较快时,比例系数应作响应减小或通过对舵机电平周期的延长使舵机响应速度降低。车辆在通过弯道时,驱动电机需要降速,因此需要再增加一个控制器用于弯道控制,从而形成自适应PID控制器。处理器根据不同路况选择不同控制参数。
2.3 PID参数的整定
在PID控制器中,比例(P)、积分(I)、微分(D)控制算法各有作用:比例,反映当前系统的基本偏差 e(t),比例系数大,可以加快调节,减小误差,但过大的比例会使系统稳定性下降,甚至造成系统不稳定;积分,反应系统的累计偏差,使系统消除稳态误差,提高無差度,因为有误差,积分调节就进行,直至无误差;微分,反映系统偏差信号的变化率e(t)-e(t-1),具有预见性,能预见偏差变化的趋势,产生超前的控制作用,在偏差还没有形成之前,已被微分调节作用消除,因此可以改善系统的动态性能。但是微分对噪声干扰有放大作用,加强微分对系统抗干扰不利。特别的,积分和微分都不能单独起作用,必须与比例控制配合才能起到较好的作用。
对于参数的整定方法主要有两大类:理论计算整定法和工程整定法。理论计算整定法有对数频率特性法和根轨迹法等;工程整定法有凑试法、临界比例法、经验法等。理论计算整定需要建立系统的数学模型进而求出参数,由于在实际中被控系统的数学模型不易得出,因此一般选用工程整定法,直接在过程控制系统中进行现场整定。由于凑试法需要进行多轮多次实验,操作繁琐,因此本文采用Z-N经验法确定具体参数。具体步骤为首先将控制器设置为纯比例控制,调节比例系数使系统达到等幅振荡状态,得出此时的比例系数Kp和振荡周期Tu,再根据表1确定其他参数值。参数选定后还需要进行微调使控制更加准确、快速和稳定。特别的,由于舵机存在较大滞后,因此选用PD控制更加合理。
3 仿真实验
由于智能车仿真程序具有运行效率高、误差结果直观等优势, 已逐渐成为了车辆运动参数调整的有力工具,清华大学设计了基于光学摄像头的智能车仿真程序Plastid。[4]利用仿真程序可实现道路、车辆的构建以及控制策略的仿真和分析。在系统中,道路和赛车模型可直接构建,输入赛道和车辆参数建立赛道和车辆模型,如图6、7所示。车辆控制策略文件可由visual C++ 6.0编辑生成dll文件在仿真系统中调用进行仿真实验。试验结束后还可以通过仿真回放的方式观察车辆控制问题。仿真效果良好时可进一步进行实车实验。
4 总结
文章从摄像头图像处理、PID控制、实验仿真等三个方面阐述了一种装有摄像头的智能车路径跟踪与仿真方法。阐述了一种通过对摄像头所采集的图像的处理获得道路中线的方法,并根据所获得的道路中线通过对车辆采用PID控制可以实现精准的路径跟踪。通过实验仿真能够验证控制策略的可行性,缩短实验时间,减少车辆调试的工作量;因此我们采用了基于光学摄像头的智能车仿真程序Plastid仿真系统。在仿真通过的情况下进行实车实验,实车实验结果表明摄像头图像处理和PID控制策略的结合能够实现智能车的精准路径跟踪。
参考文献
[1] 许耀华,王文宇,宋文凤.基于摄像头的无人驾驶车辆的道路检测[J].汽车实用技术,2018(04):35-37+92.
[2] 李永,冯伟峰,李思光,王俊人.基于MT9V032摄像头的智能车软件设计[J].花炮科技与市场,2020(01):250.
[3] 丁鹏.自寻迹智能车PID控制研究[D].衡阳:南华大学,2018.
[4] 李少伟,程辉,王胜正.智能车运动控制算法仿真与验证[J].电子测量技术,2018,41(03):54-59.