Hyunsik Nam, Wansik Choi, Changsun Ahn
原文链接:https://link.springer.com/article/10.1007%2Fs12239-019-0097-5
![9bc473174823ca8f0b0fcab5cdcac90a.png](https://i-blog.csdnimg.cn/blog_migrate/2a3adbb63c82e8aba6d787dc0643e44f.jpeg)
关键词:自动驾驶汽车,转向控制,规避转向,模型预测控制,电压约束
![42687b8a617ac7925673781eabaf4275.gif](https://i-blog.csdnimg.cn/blog_migrate/ee949d43dbcc09375317f528b96a34b1.gif)
引言
模型预测控制(MPC)是一种基于模型的控制方法,用于在满足多个约束的同时控制动态系统。MPC中使用的模型表示系统的动力学特性。该模型能够预测由控制变量的变化引起的系统状态的变化。优化器会确定一系列优化控制变量,这些变量在能够在满足约束的前提下最小化成本函数值。MPC中使用的模型通常很简单,并且出于减少计算量的考虑,常采用线性形式表示模型。通过当前状态测量的反馈,可以减弱模型误差所造成的影响(García等,1989)。 由于MPC能够明确考虑约束条件和次优性能(Falcone等,2007a,2007b,2007c; Shim等,2012),因此常使用MPC设计自动驾驶汽车的转向控制器。这些MPC中的模型大多基于车辆动力学模型,而没有考虑执行器的动力学特性。MPC的控制输出不是执行器层的信号(电压、电流等),而是高层级的信号(转向角、制动力等)。实际上,这类控制器的设计是在执行器控制器具有完美跟踪能力的前提下进行的(Kim等人,2014)。 针对大多数的驾驶员操纵,例如以规则速度行驶的车道变更和转弯操纵,不考虑执行器模型的控制器可以满足其控制精度,因为执行器的带宽足以覆盖常规操作所需的动作频率。然而,在某些操纵中,例如需要非常快速的转向动作的规避转向操纵( Keller等,2014),仅有简单的车辆动力学模型是不够的。在这种情况下,通常在常规操作中可忽略的模型误差或模型的缺失引起的影响将变得十分显著,或者如果在模型中未适当考虑扰动,扰动的数值将会过大,并导致对于扰动的抑制不足。 这项研究的目的是为转向控制器设计一种适用于规避转向操纵的MPC。为此,我们需要在MPC设计中同时考虑转向系统模型与车辆模型。该模型应提供有关不不可忽视干扰的信息,并通过监视执行器的性能极限来考虑执行器带宽。但是,为了保持较低的计算负荷,应使结构尽可能的简单。 2研究问题描述
为了代替人类驾驶员,配备有自动转向系统的自动驾驶汽车需要具备决策、控制、执行等方面的自动功能。在自动驾驶汽车中,转向系统负责执行转向操作。图 1显示了自动转向控制功能的常用框架(Kim和Song,2002年)。在高层级控制器中确定所需的转向角,由电机控制器或ECU调节电机电流以跟踪所需的转向角。控制系统建模
控制系统建模包括车辆模型、转向系统模型、扰动模型、电压模型。
车辆模型采用道路跟随模型,该模型基于二自由度自行车模型,增加了车辆相对于目标轨迹的侧向位移、航向角误差这两个附加状态(Ulsoy等,2012),可表示为:该系统有两个输入:ECU的控制输入与轮胎的扰动转矩。由于电气部分与ECU部分的动态特性快于机械部分,因此可以将上式简化为:
在双移线工况下将上述简化后的转向系统模型与原始系统进行比较,如图5所示,简化后的系统仍具有有意义的物理状态,且能够较容易的获得对应的状态空间形式。
本文中提到的扰动模型是在小轮胎滑移角的前提下建立的,假设关系线性的有效范围为-4°~4°。
将扰动模型与转向模型表示的车辆状态代入,可得到:
4
控制器的设计
在III中,我们得到了MPC中将要使用到的模型,包括5状态的车辆模型、3状态的转向系统模型、1状态的扰动模型、0状态的电机电压模型,模型的总状态数为9。 为了减少计算量,将模型分别放入两个MPC结构之中,如图6所示,一个为车辆模型MPC,另一个为转向系统模型MPC,使得9个状态的优化问题转换为两个具有5个状态、3个状态的小型优化问题的组合,减少了计算量。扰动模型位于MPC结构的外部。而电压模型包含在两个MPC模块中,使得这两个模块确定的指令角度都不会使得电压超过饱和限值。由于电压模型是状态的代数方程,因此电压模型的引入不会增加MPC方程的维数,即不增加方程的复杂程度。也可以给出系统的输出约束与输入约束如下:
该部分的完整解释详见Son et al.,2017。
矩阵R被设计为非负标量,矩阵Q被设计为式(20)所示的形式,原因是我们只希望对相对侧向位移与相对航向角误差进行惩罚,因此在对角线上仅有第一与第二个元素为非零。
![4155e7a2ba85f3a6b032e2a55f9139f8.png](https://i-blog.csdnimg.cn/blog_migrate/9e1a4cf7e52ffaffe1d0d3c1e5c2dbae.png)
矩阵R被设计为非负标量,矩阵Q被设计为式(22)所示的形式,理由与车辆模型MPC中的矩阵Q类似。指令角度相对于时间的导数受到R的惩罚,从而抑制了指令角度的过大噪声。
5
仿真与实验验证
为了验证本文所提出的用于规避转向条件下跟踪控制的 MPC ,我们对其进行了仿真与实验测试。为了进行比较,我们设计了两个基于 MPC 的控制器,一个为仅基于车辆模型的常规 MPC ,另一个为基于车辆模型与转向系统模型的改进 MPC 。 使用CarSim对进行仿真验证,仿真车速为30km/h。图7(a)、图7(b)分别为常规MPC与改进MPC在规避转向操作下的仿真结果。可以看到,常规MPC可以计算出适当的期望转向角,但由于电压饱和,伺服控制器无法跟踪期望转向角。而改进MPC在考虑扰动与电压限制的情况下计算出了相应的期望转向角,使得伺服控制器能够成功对其实现跟踪。仿真结果表明,额外考虑转向系统模型的MPC具有比常规MPC更加精确的实际系统模型,并能够有效处理系统约束问题。(a)
(b)
图8 不同MPC在规避转向操纵下的实验表现6
结论
本文设计了一种用于自动驾驶汽车转向控制器的MPC,该MPC适用于转向操纵中的规避转向操纵。规避转向操纵需要进行非常快速的转向操作,而仅依靠简单的车辆动力学构建参考模型是不够的。因此,本文在MPC设计中同时考虑了转向系统模型与车辆模型。 本文对转向系统进行了建模,该模型可以在保持简单结构以减少计算负荷的同时,提供有关扰动、系统带宽和电压状态的信息。仿真和实验结果表明,在允许的电压范围内,该控制器能够很好地完成跟踪任务,并且在规避转向操作期间的表现优于仅基于车辆模型的常规 MPC。END
![ae2d0b190668d6790bc80f826bfd50ab.png](https://i-blog.csdnimg.cn/blog_migrate/9faedca31f1ed96cbba20c05b52f5927.jpeg)
联系人:李老师
电话:021-69589225
邮箱:11666104@tongji.edu.cn