算法科普——运动学LMPC和动力学LMPC之间的区别与联系

2022-01-25 13:34:18 浏览数 (1)

在上一期算法科普中,笔者介绍了LMPC的前世今生。

详见:车辆路径跟踪控制方法系列:LMPC的前世今生

不过上一期内容,并未深入介绍LMPC的各种分支,因此本期将主要介绍两种运动学层面的LMPC控制器和一种动力学层面的LMPC控制器。

一种常见的运动学层面的LMPC控制器的预测模型是直接对运动学模型作雅克比线性化,如[1]中:

基于这种模型的代码可见: 代码详解——《无人驾驶车辆模型预测控制》3.3.3代码详解

以及: 代码详解——S-Function模块(三)

另一种运动学层面的LMPC的预测模型则是通过对车辆或移动机器人的运动学模型进行几何推导获得,如[2]中为:

[3]中则为:

这些预测模型的一个共同特征是通过当前误差预测未来误差,所以在速度较快或参考路径曲率变化幅度较大时性能不佳,如[4]中所述的速度较快情况:

动力学层面的LMPC控制器的预测模型则通常形如[1]中所述:

或[5]中所述:

[5]中的模型与[2-3]中的运动学预测模型存在一些相同的特征,都是非全局的车身坐标系下的模型。

上述动力学模型与运动学模型存在一些不同,运动学模型是以误差为状态量,而动力学模型可以直接以车辆的车身坐标等状态作为状态量。产生这个区别的原因,是因为如果运动学模型以车身坐标等状态作为状态量,则A矩阵的二次至N次方均为零矩阵,即预测模型在第二个预测步数以后均严重失真,甚至会导致控制失败。

动力学层面的LMPC控制器的预测模型的这个特征,使得动力学层面的LMPC控制器可以实现先预测未来状态,再根据预测获得的状态和参考路径计算未来误差的功能,避免了运动学层面的LMPC控制器仅能以当前误差预测未来误差的问题。不过也必须认识到,除了[5]中提到的轮胎参数会对预测精确性产生影响之外,小角度假设(即假设sinφ=φ,cosφ=1)等线性化过程在预测时域较长时也会产生较大的影响。

参考文献:

[1] 龚建伟, 姜岩, 徐威. 无人驾驶车辆模型预测控制[M]. 北京理工大学出版社, 2014.

[2] Bai G, Meng Y, Liu L, et al. Review and comparison of path tracking based on model predictive control[J]. Electronics, 2019, 8(10): 1077.

[3] Nayl T, Nikolakopoulos G, Gustafsson T. A full error dynamics switching modeling and control scheme for an articulated vehicle[J]. International Journal of Control, Automation and Systems, 2015, 13(5): 1221-1232.

[4] Bai G, Liu L, Meng Y, et al. Path tracking of mining vehicles based on nonlinear model predictive control[J]. Applied Sciences, 2019, 9(7): 1372.

[5] 王国栋, 刘洋, 李绍松, 等. 基于轮胎状态刚度预测的极限工况路径跟踪控制研究[J/OL]. 自动化学报:1-11 [2020-09-15]. https://doi.org/10.16383/j.aas.c190349.

0 人点赞