主要内容

卡尔曼滤波器

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

图书馆

过滤/自适应滤波器

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端口出现在块上。使用此端口指定测量矩阵。

请参阅Radar Tracking示例以了解如何使用此块。您可以输入以下命令打开此示例

aero_radmod_dsp

在MATLAB®命令提示符。

参数

数量的过滤器

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

使过滤器

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

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

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

估计状态的初始条件

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

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

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

状态转移矩阵

输入状态转移矩阵。

过程噪声协方差

输入过程噪声协方差。

测量矩阵的来源

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

测量矩阵

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

测量噪声协方差

输入测量噪声协方差。

输出估计测量

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

输出估计状态

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

估计状态的输出MSE

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

输出预测测量

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

输出预测状态

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

预测状态的输出MSE

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

参考文献

[1]微积分,西蒙。自适应滤波器理论.上鞍河,新泽西州:普伦蒂斯霍尔,1996。

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

金宝app支持的数据类型

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

Z

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

  • 双精度浮点

  • 单精度浮点

启用

1乘N的1和0的向量其中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++代码。金宝app

介绍了R2007a