主要内容

卡尔曼滤波器

预测或估计动态系统的状态

图书馆

过滤/自适应滤波器

dspadpt3

  • 卡尔曼滤波块

描述

使用卡尔曼滤波块从一系列不完全和/或噪声测量中预测或估计动态系统的状态。假设你有一个有噪声的线性系统,它由以下方程定义:

x k 一个 x k 1 + w k 1 z k H x k + v k

这个块可以使用之前估计的状态, x k 1 ,以预测当前的状态k, x k ,由下式表示:

x k 一个 x k 1 P k 一个 P k 1 一个 T +

该块还可以使用电流测量, z k ,预测状态为 x k ,估计当前状态值k, x k ,因此它是一个更精确的近似:

K k P k H T H P k H T + R 1 x k x k + K k z k H x k P k K k H P k

前式中的变量定义在下表中。

变量 定义 默认值或初始条件
x 状态 N/A
x 估计状态 0 ([6 1])
x 预测状态 N/A
一个 状态转移矩阵

1 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1

w 过程噪声 N/A
z 测量 N/A
H 测量矩阵

1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1

v 测量噪声 N/A
P 估计误差协方差 10 *眼(6)
P- 预测误差协方差 N/A
工艺噪声协方差 0.05 *眼(6)
K 卡尔曼增益 N/A
R 测量噪声协方差 (4)
单位矩阵 N/A

在前面的方程中,z是测量值的向量。大多数情况下,块处理Z,一个M × N矩阵,其中M是测量值的数量,N是过滤器的数量。

使用过滤器数量参数指定用于预测或估计当前值的筛选器的数量。

使用使过滤器参数指定在每个时间步骤中启用或禁用哪些筛选器。如果您选择总是,过滤器总是启用的。如果你选择指定通过输入端口<启用>,启用端口出现在块上。该端口的输入必须是由1和0组成的行向量,其长度等于过滤器的数量。例如,如果有3个过滤器,且Enable端口的输入为[1 0 1],则此时只启用第一个和第三个过滤器。如果您选择当禁用过滤器时,重置估计状态和估计误差协方差复选框时,与禁用过滤器对应的估计和预测状态以及估计误差协方差将重置为它们的初始值。

请注意

所有滤波器都具有相同的状态转移矩阵、测量矩阵、初始条件和噪声协方差,但它们的状态、测量、使能和MSE信号是唯一的。在状态、测量、使能和MSE信号中,每一列对应一个过滤器。

使用测量矩阵来源参数指定如何输入测量矩阵值。如果您选择通过对话框指定,测量矩阵参数将出现在对话框中。如果您选择输入端口, H端口出现在块上。使用此端口指定您的测量矩阵。

参数

过滤器数量

指定用于预测或估计当前值的筛选器的数量。

使过滤器

指定在每个时间步骤中启用或禁用哪些筛选器。如果您选择总是,过滤器总是启用的。如果你选择指定通过输入端口<启用>,启用端口出现在块上。

当禁用过滤器时,重置估计状态和估计误差协方差

如果选中此复选框,则与禁用过滤器对应的估计和预测状态以及估计误差协方差将重置为其初始值。的时候,此参数是可见的使过滤器参数,您可以选择指定通过输入端口<启用>

估计状态的初始条件

输入估计状态的初始条件。

估计误差协方差的初始条件

输入估计误差协方差的初始条件。

状态转移矩阵

输入状态转换矩阵。

工艺噪声协方差

进入过程噪声协方差。

测量矩阵来源

指定如何输入测量矩阵值。如果您选择通过对话框指定,测量矩阵参数将出现在对话框中。如果您选择输入端口, H端口出现在块上。

测量矩阵

输入测量矩阵值。如果选择,此参数是可见的通过对话框指定测量矩阵来源参数。

测量噪声协方差

输入测量噪声协方差。

输出估计测量值

如果您希望块输出估计的测量值,则选中此复选框。

输出估计状态

如果您希望块输出估计的状态,则选中此复选框。

估计状态的输出MSE

如果您希望块输出估计状态的均方误差,则选中此复选框。

输出预测测量

如果您希望块输出预期的测量值,则选中此复选框。

输出预测状态

如果您希望块输出预测状态,则选中此复选框。

预测状态的输出MSE

如果您希望块输出预测状态的均方误差,则选中此复选框。

参考文献

海金,西蒙。自适应滤波理论.上马鞍河,新泽西州:普伦蒂斯大厅,1996年。

Welch, Greg和Gary Bishop,“卡尔曼滤波器介绍”TR 95-041,计算机科学系,北卡罗莱纳大学。

万博1manbetx支持的数据类型

港口 输入/输出 万博1manbetx支持的数据类型

Z

M × N的测量M是测量向量的长度N是滤波器的数量。

  • 双精度浮点

  • 单精度浮点

启用

1 × N的向量,其中N是过滤器的个数。

  • 双精度浮点

  • 单精度浮点

  • 布尔

H

M × P测量矩阵,其中M是测量向量的长度P是滤波器状态向量的长度。

与Z口相同

Z_est

M × N估计的测量矩阵,其中M是测量向量的长度,N是滤波器的数量。

与Z口相同

间的

P乘N的估计状态矩阵其中P是过滤器状态向量的长度N是过滤器的数量。

与Z口相同

MSE_est

表示估计状态的均方误差的1 × n向量。N是过滤器的数量。

与Z口相同

Z_prd

M × N的预测测量矩阵,其中M是测量向量的长度,N是滤波器的数量。

与Z口相同

X_prd

P × N的预测状态矩阵,其中P是滤波器状态向量的长度,N是滤波器的数量。

与Z口相同

MSE_prd

表示预测状态的均方误差的1 × n向量。N是过滤器的数量。

与Z口相同

另请参阅

低密度脂蛋白解算器

DSP系统工具箱

扩展功能

C/ c++代码生成
使用Simulink®Coder™生成C和c++代码。万博1manbetx

版本历史

在R2007a中介绍