我想首先讲解状态外插方程。
使用状态外插方程,我们能够基于当前系统状态预测下一个系统状态。它把当前( 时刻)的状态向量外插至未来( 时刻)。
状态外插方程描述系统的动态模型。其他文献中也叫:
使用矩阵描述的状态外插方程的一般形式为:
是 时刻对 时刻系统状态的预测 | |
是 时刻系统状态向量的估计 | |
是 控制向量 或 输入向量 - 该系统的一个 可测量的(确定性的)输入 | |
是 过程噪声 或 扰动 - 能够影响系统状态的 不可测量的 输入 | |
是 状态转移矩阵 | |
是 控制矩阵 或 输入转移矩阵 (将控制量映射到状态变量上) |
下图给出了状态外插方程的原理描述。
状态变量可以表征我们所感兴趣的系统属性。
例如,运动中的车辆具有三个属性:位置、速度和加速度。
你也许会问,哪些属性是状态变量,哪些属性又是系统的输入呢?
对于一个弹簧,施加在弹簧上的力 是输入 ,弹簧形变 是系统状态。
对于一个自由落体中的物体,输入是重力 和阻力 ,物体高度 和速度 则是系统状态。
来看看几个状态外插方程的例子:
本例中我们来定义一架匀加速运动的飞机的状态外插方程。
这个例子里没有输入,在下一个例子里会加入输入:
考虑一架在三维空间匀加速运动的飞机。用于在笛卡尔空间 描述飞机位置、速度和加速度的状态向量 为:
状态转移矩阵 为:
状态外插方程为:
矩阵乘法结果:
本例和上个示例类似,但现在飞行员的操纵杆上有一个传感器,可以通过它读取飞行员的加速度操纵指令。
用于在笛卡尔坐标系 里描述飞机位置和速度估计值的状态向量 为:
在笛卡尔坐标系 里描述测量到的飞机加速度的控制向量 为:
状态转移矩阵 为:
控制矩阵 为:
状态外插方程为:
考虑一个自由落体中的物体,状态向量包括高度 和物体速度 :
状态转移矩阵 为:
控制矩阵 为:
输入向量 为:
式中 是重力加速度。
我们并没有感知加速度的传感器,但我们根据定律知道对于自由落体的物体,其加速度等于 ( g \).
状态外插方程是下面这样:
矩阵乘法结果是:
下表明确了状态外插方程中各个量的维度:
量 | 描述 | 维度 |
---|---|---|
状态向量 | ||
状态转移矩阵 | ||
输入向量 | ||
控制矩阵 | ||
过程噪声向量 |
线性卡尔曼滤波假设系统模型是 LTI(线性时不变) 的。
那么什么是“线性”,什么又是“时不变”呢?
线性系统 的所有系统方程中,变量永远不会互相乘在一起,它们只会和常量相乘,然后加在一起。线性系统用来描述变量之间的静态和动态关系。
所谓线性系统,就是一个输出函数 满足下述方程的系统:
式中:
和 是常值实数
和 是任何具有独立变量 的函数
线性系统具有两个基本性质:
一个 时不变 系统的 系统函数 不直接包含(显含)时间。
考虑一个增益为 的放大器。
这个系统是时不变的,尽管系统的输出会随着时间改变,但是系统函数本身并不是随时间改变的。
一个时不变系统的输入如果发生了时延(或时移),它的输出也会发生同样的时延或时移。