主要内容

卡尔曼筛选

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

图书馆

过滤/自适应滤波器

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 ^ 估计州 零([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是滤波器的数量。

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

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

笔记

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

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

有关如何使用此块的演示,请参阅雷达跟踪示例。您可以通过键入打开此示例

aero_radmod_dsp

在MATLAB®命令提示符。

参数

数量的过滤器

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

启用过滤器

指定每次步骤启用或禁用哪些过滤器。如果你选择总是,过滤器总是启用。如果你选择通过输入端口指定<启用>,启用端口显示在块上。

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

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

估计状态的初始条件

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

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

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

状态转移矩阵

输入状态转换矩阵。

过程噪声协方差

进入过程噪声协方差。

测量矩阵的来源

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

测量矩阵

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

测量噪声协方差

输入测量噪声协方差。

输出估计测量

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

输出估计状态

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

估计状态的输出MSE

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

输出预测测量

如果您想要块输出预测的测量值,请选择此复选框。

输出预测状态

如果您想要块输出预测的状态,请选择此复选框。

预测状态的输出MSE

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

参考文献

[1] Haykin,Simon。自适应滤波器理论。上鞍河,新泽西:普朗特霍尔,1996年。

[2] Welch, Greg和Gary Bishop,“An Introduction to the Kalman Filter”,TR 95-041, Department of Computer Science, University of North Carolina。

万博1manbetx支持的数据类型

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

Z.

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

  • 双精度浮点

  • 单精度浮点

使能够

1-by-n矢量1s和0s,其中n是滤波器的数量。

  • 双精度浮点

  • 单精度浮点

  • 布尔

H

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

与z端口相同

z_est.

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

与z端口相同

X_EST.

p-by-n估计状态矩阵,其中P是滤波器状态向量的长度,n是滤波器的数量。

与z端口相同

MSE_EST.

1-by-n矢量表示估计状态的平均平方误差。n是过滤器的数量。

与z端口相同

Z_PRD.

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

与z端口相同

X_prd

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

与z端口相同

MSE_prd

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

与z端口相同

也可以看看

LDL求解器

DSP系统工具箱

扩展能力

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

在R2007A介绍