车辆运动学模型的线性化和离散化

目录

1 线性化

1.1 泰勒展开

1.2 线性化

2 离散化

2.1 欧拉法和积分中值定理(仅供查看公式)

2.2 离散化


由于车辆的运动学模型是非线性的,所以在设计控制器之前需要进行模型线性化,而车辆的动力学模型本身就是线性化模型,所以不需要进行线性化。(所谓线性化,就是把不能写成X_dot=AX+Bu形式的非线性方程组,写成这种形式

由于计算机能够处理的数据都是离散化的,所以紧接着还要进行模型的离散化,主要使用积分中值定理和欧拉法可以进行推导。

1 线性化

1.1 泰勒展开

把y_dot作为f函数,以此为对象进行泰勒级数展开,时刻记住y_dot=f(x,u)=f(x0,u0)+...

如下所示:

线性模型为什么重要 为何要进行模型线性化_线性方程组

1.2 线性化

以车辆运动学模型为例,此处假设质心侧偏角β≈0,对该系统进行建模并将其线性化。

个人理解,所谓线性化,就是把不能写成X_dot=AX+Bu形式的非线性方程组,写成这种形式;

推导过程如下:

线性模型为什么重要 为何要进行模型线性化_线性模型为什么重要_02

注意:

1、公式中的θ等效于知识总结(二)中推导公式的Ψ。

2、非线性模型经过线性化后,得到的都是增量模型(在当前状态的基础上的增大或减小量),或者说成是局部模型。线性化后的模型只有在线性化点Xr附近才有意义,离线性化点越远,线性化的模型的预测误差越大。

3、展开点也就是参考点(Xr,Yr,θr),可以看做参考轨迹。这样上面的方程组可以看做一个以误差为变量的新的状态空间方程。轨迹跟踪的目标也就成了控制误差,误差越小跟踪越好。

2 离散化

2.1 欧拉法和积分中值定理(仅供查看公式)

   注意:下图中最后一行中值定理还缺了bu

线性模型为什么重要 为何要进行模型线性化_自动驾驶_03

注意:下图中,A是矩阵,所以要用I这个单位矩阵。另外右侧同样缺了bu这一项,此处仅供查看回忆欧拉法的公式

 

线性模型为什么重要 为何要进行模型线性化_线性方程组_04

2.2 离散化

   一般Ax+Bu全都采用前向欧拉法(B站老王x中点欧拉,u前向欧拉)。

   (1)推导如下:

   

线性模型为什么重要 为何要进行模型线性化_线性方程组_05

   (2)下面这个直接求差分推导+前向欧拉,同上面是一样的,最后的A和B矩阵相同:

线性模型为什么重要 为何要进行模型线性化_离散化_06

   

模型的用处就是在当前状态给定某控制输入时,预测(估计) 系统未来的状态。控制领域利用模型设计合适的输入,以期控制系统到达目标状态。