在前面章节的基于车辆运动学的模型预测控制中,我们采用的是非线性优化求解最优控制量,求解运算量比较大,其模型误差的建立是在车体的动坐标系下,需要提前将跟踪轨迹转换到车体坐标系下进行误差求解,这种模型很难进行线性化,因此只能采用非线性优化求解最优控制序列。为了更有效的描述轨迹的跟踪误差,同时方便进行误差模型的线性化,我们将控制误差的参考坐标系转换到跟踪轨迹的frenet坐标系中,如下图所示(车辆控制对象依旧是阿克曼构型车辆):

所上图所示,横向位移误差和航向角误差分别为 [公式] , [公式] 。则有:

式中, [公式] 是跟踪轨迹的曲率, [公式] 为当前车辆后轮轴中心速度, [公式] 为车辆转向角,L为后轮中心到前轮中心的距离, [公式] 为车辆当前角速度, [公式] 为参考线对应的期望角速度, [公式] 为车辆横向沿着[公式]方向的线速度。

则有:

令:

则有:

和前面章节横纵向混合约束的动力学MPC控制一样,进行双线性变换之后的线性化系数如下:

离散化后的线性模型为:

预测时域内的状态变量方程如下:

则有:

为了满足以最小的控制量达到最小的控制误差,优化目标函数可以表示为如下:

其中Q和R代表优化目标的权重。

k 为误差量权重,r 为控制量权重。

上式可以通过二次规划求解满足最小J的控制量 。至此,MPC的优化目标代价方程构造完毕。同时还可以通过限制控制量 范围来约束转角和油门的范围,可以通过uup和uul量矩阵表示,如下所示:

则有约束条件:

最后可以通过调用osqp算法库获得最优的转向角控制序列uu。