主要内容

卡尔曼滤波器

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

图书馆

过滤/自适应滤波器

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个过滤器,启用端口的输入为[1 0 1],则此时只启用第一个和第三个过滤器。如果您选择当过滤器被禁用时,重置估计状态和估计误差协方差复选框时,与禁用筛选器对应的估计状态和预测状态以及估计误差协方差将重置为初始值。

请注意

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

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

参数

过滤器数量

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

使过滤器

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

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

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

估计状态的初始条件

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

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

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

状态转移矩阵

输入状态转换矩阵。

过程噪声协方差

进入过程噪声协方差。

测量矩阵源

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

测量矩阵

输入测量矩阵值。选择后显示通过对话框指定测量矩阵源参数。

测量噪声协方差

输入测量噪声协方差。

输出估计测量值

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

输出估计状态

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

估计状态的输出MSE

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

输出预测测量值

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

输出预测状态

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

预测状态的输出MSE

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

参考文献

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

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

支持的数据类型

港口 输入/输出 支持的数据类型

Z

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

  • 双精度浮点数

  • 单精度浮点数

启用

1 × N的1和0的向量其中N是滤波器的个数。

  • 双精度浮点数

  • 单精度浮点数

  • 布尔

H

M-by-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++代码。

版本历史

在R2007a中引入

Baidu
map