牛少锋,叶宝林,吴维敏
(1.浙江理工大学信息学院,浙江 杭州 310018;2.嘉兴学院信息科学与工程学院;3.浙江大学工业控制技术国家重点实验室)
随着中国汽车行业和无人驾驶技术的发展,汽车行业正在大力投资开发先进的高级驾驶辅助系统(Advanced Driving Assistance System),ADAS 利用各类传感器,如:摄像头、雷达单元、超声波传感器和转向角传感器等进行数据采集,通过识别、侦测等技术处理,让驾驶员及时意识到危险状况,起到预防和降低事故频率的作用。
车道保持辅助(LKA)系统不仅是ADAS 的重要组成部分,也是自动驾驶汽车的一个核心技术。LKA的目标为解决驾驶员疲劳驾驶而分心或注意力不集中的情况,防止车辆偏离车道而设计,保证车辆在目标车道线内依规定速度安全行驶,避免因驾驶员的不当操作而引发交通事故。针对不同的控制机构,房泽平[1]以前轮转角作为控制器参考输入,采用直接横摆力矩和车道线保持的串级控制策略来保证稳定的车道线保持功能。吴乙万[2]等提出一种基于主动转矩分配的四轮独立驱/制动电动车车道保持辅助控制方法,起到了防止车辆偏离目标车道的效果。无论选用哪一种控制机构,对于底层控制器来说,控制算法对车道保持辅助系统的性能影响是关键[3]。目前,国内外的学者基于不同控制算法的LKA 系统做了大量研究,施卫[4]等提出基于LQR 算法的车道保持控制方法,结合驾驶员意图识别对车辆当前的行驶状态进行判断,帮助驾驶员纠正车辆偏离动作。董婷[5]为提高行驶的安全性,改进了单点预瞄最优曲率驾驶员模型,提出基于PID控制的车道保持控制方法。Marino等基于横摆角速度的跟踪误差设计了一种嵌套PID转向控制方法,在不确定曲率的道路情况下进行路径跟踪,实现了稳定的车道保持效果[6]。随着模型预测控制(MPC)的兴起,得益于处理多约束和在线优化的特性,罗莉华[7]等研究了传统模型预测控制的转向控制策略,迅速消除侧向位移偏差和横摆角偏差,保证车辆沿着车道中心线行驶。
综上所述,大多数文献主要采用传统的PID、LQR或传统的MPC 控制算法来实现车道保持系统。虽然它们提高了驾驶安全性,但由于缺乏处理车辆安全约束的能力,很难获得平稳的动态响应效果。因此,本文在传统模型预测控制理论的基础上,设计了自适应MPC 和非线性MPC 两种新型车道保持控制器,并在Matlab/Simulink 平台上进行了仿真测试,比较了两种控制器在相同路况下的总体性能。与以前的文献相比,本文主要贡献:①本文为LKA 系统设计了两种MPC方案,所设计的LKA 控制器不仅能保证车辆在车道线中心行驶,而且能满足预先设定的约束条件,具有良好的稳定性;②本文比较了两种模型的加速度和速度曲线,就如何在确保车辆行驶安全的前提下提升乘客的舒适性和稳定性提供了指导意见。
在车道保持辅助系统研究中,将车辆的动力学特性进行合理建模是一个关键点,通常对于车辆来讲,动力学的研究,主要探讨轮胎以及相关部件的受力情况,一般包括横向、侧向以及横摆运动。这里假设悬架是刚性的,并忽略左右车轮轮胎垂直载荷的变化以及轮胎回正力矩的影响[8],主要考虑车辆的横向运动,近似认为纵向加速为0,实际车辆将被简化为二自由度自行车模型,如图1所示,通过对车辆进行横向运动受力和转矩平衡分析,可以得到:
图1 车辆动力学模型
其中,Iz为车辆的转动惯量,β为质心侧偏角,m为整车质量,Fyf和Fyr分别为作用在车辆前后轮的侧向合力,Lf和Lr分别为车辆质心到车辆前后轴中心的距离,δf为前轮偏角,和分别为车辆的纵向加速度和横向加速度。基于Pacejka 在汽车操纵动力学研究中提出的魔术轮胎模型[9],当车辆的侧向加速度小于0.4g 时,侧向力与车辆侧偏角可以近似认为呈线性关系,此时轮胎的侧向力可用下式表示:
其中,Cf和Cr分别为前、后轮胎的侧偏刚度,αf和αr分别为前后轮胎的侧偏角。
如图2所示,在车辆行驶过程中,通过传感模块测量车道中心线与自驾车之间的横向偏差e1和相对偏航角e2,以及计算前方道路的弯曲程度,目前已经有较多成熟的曲率估计装置及算法,再通过特定的控制算法调整车辆的前轮转向角使得e1和e2尽可能小,从而逼近于0,让车辆保持在车道中心线行驶。相对偏航角和横向偏差的动力学分别为=ω -vx*r。其中,r代表道路半径曲率,ω为横摆角速度。
图2 车道保持辅助原理图
模型预测控制(MPC)是一种多变量的进阶过程控制策略,它的主要思想是通过解决有限时域约束最优控制问题,来找到未来行动的最佳控制序列。一般来说MPC 有三个核心步骤:预测模型、滚动优化和反馈控制,分别对应预测方程的建立、目标函数设计和约束设计三个步骤,本文建立了两种MPC方案来实现无人驾驶车道跟随系统。
MPC 控制一般使用线性时不变(linear time invariant)动态模型预测未来行为,通过将模型进行一定的线性化处理,在采样时间内进行目标函数的求解,将控制序列的第一个元素作用在实际对象中,从而实现最优控制。但是在实际车辆驾驶过程中,LTI预测精度可能会出现严重降低的情形,以至于MPC性能变差。因此,本文设计了自适应MPC控制器来实现LKA 系统,在离散化后的每一个控制时刻工作点,不断更新相关增益系数矩阵以及控制器的状态来适应车辆的当前环境和状态,以此补偿模型的非线性以及未知干扰带来的影响。
由公式⑴~公式⑶可以推导得到车辆横向动力学的状态微分方程,结合车身坐标系和大地惯性坐标系的转换关系,通过高阶泰勒展开方式将非线性形式转为线性形式,转化为MPC状态预测方程和输出方程形式为:
自适应MPC 控制器预测时域设为10,控制时域设为2,通过控制前轮转角实现侧向速度和横摆角速度的输出。
非线性模型预测控制的原理与传统的线性MPC一样,使用基于模型的预测和约束优化的组合来计算每个控制间隔的控制动作。然而,预测模型可能是高度非线性的并且有可能包含时变参数,本文通过使用非线性MPC 方法,在非线性成本和约束条件下,求解开环约束非线性优化问题来实现LKA 系统,引入常数τ 来近似表征动力学特性,将预测的前方道路曲率与纵向速度的乘积来作为测量扰动,转化为NMPC 的状态预测方程和输出方程形式为:
其中,r表示预测道路曲率,ωod表示白噪声来作为测量扰动,xod作为输出干扰添加到e2的输出中。通过控制加速度和前轮转角两个控制量,实现纵向车速、相对偏航角以及横向误差三个变量的输出。
为验证所设计的MPC 算法的车道保持系统,在Matlab/Simulink[10]平台搭建仿真环境,为达到驾驶员转向命令和车道保持控制器之间能够随意切换的效果,加入车道检测数据模块,设置安全横向距离为1m,采用自定义二维道路场景进行模拟,仿真模型框架图如图3所示。
图3 Matlab/Simulink仿真模型
LKA 控制器的横向位移偏差、相对偏航角、转向角随时间的变化情况,如图4 所示。可以看到横向偏差在[-0.5,0.5]范围内波动,横摆角偏差在[-0.15,0.15]范围内波动,同时,车辆前轮转向角也在MPC设计约束范围[-0.5,0.5]范围内,表明所设计的LKA 系统可以保证车辆在车道中心安全行驶,并且有较好的稳定性。
图4 LKA系统性能曲线图
图5 表明了所设计的LKA 系统和车道偏离检测的实时状态,可以明显看到在5.5s、19s、31s、33s 附近检测到车道偏离,此时LKA 系统开启,在短暂时间后车辆回归车道中心。即驾驶员可以正确驾驶车辆时,控制权会返回给驾驶员,此时LKA系统关闭。
图5 LKA与车道偏离状态变化图
此外,设置仿真时间15s、纵向速度为20m/s、纵向加速度约束为[-3,3]、e1 和e2 约束均为[-0.5,0.5],观察相同条件下基于AMPC 和NMPC 两种控制策略下的车道保持辅助系统性能。
两种LKA 系统的MPC 控制器的转向角、横向偏差和相对偏航角随时间变化的数据对比如图6 所示,AMPC 和NMPC 的横向偏差和相对偏航角范围均在[-0.095,0.075]与[-0.06,0.02]之内,符合设定约束之内,从直观上看,两种控制器均能够很好的实现LKA 系统,车辆正在沿着期望的路径行驶。为了进一步比较两种控制器的性能,提取了两种模型的加速度和速度变化曲线,如图7所示,NMPC 的曲线相对AMPC 更加平滑一些,这表明NMPC 控制器在加速度执行和速度追踪方面表现得更为平稳,在保证车辆行驶安全性的前提下,可以提供更好的舒适性和稳定性。
图6 转向角、横向偏差和相对偏航角对比图
图7 AMPC与NMPC加速度与速度曲线对比图
本文通过对车辆横向动力学进行合理建模,引入车道检测模块,基于传统模型预测控制理论,建立了自适应MPC 和非线性MPC 两种控制器,实现了车道保持辅助系统,实验结果表明:在发生车道偏离时,所设计的LKA 系统可以及时帮助驾驶员调整前轮转向,回归车道中心。此外,NMPC 模型相对于AMPC 模型具有更平滑的加速度和速度指令,一定程度上给予乘客更好的稳定性和舒适性。但是NMPC 要求处理系统的计算性能较高,花费时间较长,未来将从实时性与稳定性两者综合的角度出发,进而实现高性能、高效率的LKA系统控制方案。