主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

IIR Filter

实现无限冲激响应 (IIR) 滤波器

库:
Motor Control Blockset / Signal Management
Motor Control Blockset HDL Support / Signal Management

描述

IIR Filter 模块对指定输入信号实现离散一阶无限冲激响应 (IIR) 滤波器。该模块支持定点和浮点数据类型。当该模块与 Motor Control Blockset™ 中附带的示例所采用的模型设置和配置结合使用时,该模块还会针对代码生成进行优化。

建议您对该模块使用定步长离散求解器,以实现代码生成并确保精确仿真。

方程

您可以使用滤波器系数 (a) 模块参数来配置 IIR 滤波器,以设置滤波器所需的截止频率 (fc)。您也可以选择通过输入端口提供滤波器系数值。

如果您知道滤波器的截止频率,则可以使用以下方程计算所需的滤波器系数:

a= ( 2πTsfc2πTsfc+1 )

该模块还包括一个选项,用于在模块封装上显示与给定滤波器系数和采样时间对应的截止频率。

使用滤波器类型参数将模块配置为低通或高通滤波器。

以下两个方程描述该模块如何计算其输出。

低通滤波器:

y(k)=au(k)+(1a)y(k1)

高通滤波器:

y(k)=(1a)[u(k)u(k1)+y(k1)]

其中:

  • fc 是 IIR 滤波器的截止频率。

  • a 是滤波器系数 (0 < a ≤ 1)。

  • y(k) 是在时间 k 处的输出值。

  • y(k1) 是在时间 k1 处的输出值。

  • x(k) 是在时间 k 处的输入值。

  • x(k1) 是在时间 k1 处的输入值。

  • Ts 是 IIR Filter 模块的采样时间。

低通和高通 IIR 滤波器都可以建模为 RC 滤波器,其中状态值对应于电容器两端的电压降。

以下方程描述了该模块如何根据初始输入 u0 和初始状态 x0 计算初始输出 y0

低通滤波器:

y0=x0

高通滤波器:

y0=u0x0

端口

输入

全部展开

原始输入信号在时域中的采样值。

数据类型: single | double | fixed point

IIR 滤波器的滤波器系数。此信号的数据类型必须与输入信号 x 的数据类型相同。当与定点数据类型结合使用时,这可能会限制信号精度。

依赖关系

要启用此端口,请将滤波器系数参数设置为输入端口

数据类型: single | double | fixed point

IIR 滤波器状态信号的初始值。

依赖关系

要启用此参数,请将初始状态参数设置为输入端口

数据类型: single | double | fixed point

当处于高电平有效状态时,重置模块以传送初始状态的外部信号。

依赖关系

要启用此参数,请将外部重置参数设置为高电平重置为初始条件

数据类型: single | double | fixed point

输出

全部展开

IIR Filter 模块在时域中返回的滤波后的输出信号。

数据类型: single | double | fixed point

参数

全部展开

IIR 滤波器的类型。

选择以下方法之一来指定滤波器系数:

  • 通过对话框指定 - 如果您要使用“模块参数”对话框指定滤波器系数值,请选择此选项。

  • 输入端口 - 如果您要使用输入端口指定滤波器系数值,请选择此选项。

IIR 滤波器的滤波器系数。此信号的数据类型必须与输入信号 x 的数据类型相同。当与定点数据类型结合使用时,这可能会限制信号精度。

依赖关系

要启用此参数,请将滤波器系数参数设置为通过对话框指定

指定是否将初始状态值作为模块参数或输入端口提供。

将此参数设置为以下选项之一:

  • 通过对话框指定 - 如果您要使用“模块参数”对话框指定初始状态值,请选择此选项。

  • 输入端口 - 如果您要使用输入端口指定初始状态值,请选择此选项。

IIR 滤波器状态的初始值。

依赖关系

要启用此参数,请将初始状态参数设置为通过对话框指定

指定是否提供外部重置信号作为输入端口。

将此参数设置为以下选项之一:

  • none - 如果您不想提供外部重置信号,请选择此选项。

  • 高电平重置为初始条件 - 如果您想使用输入端口提供外部重置信号,请选择此选项。

为模块选择此参数以显示理论截止频率(Hz) 参数。

依赖关系

要启用此参数,请将滤波器系数参数设置为通过对话框指定

每两个连续的模块执行实例之间的固定时间间隔(以秒为单位)。

注意

该模块使用此值计算并在模块对话框中显示理论截止频率(Hz)。此参数不设置模块的采样时间。该模块从模型继承采样时间。

依赖关系

要显示此参数,请执行以下操作:

  • 滤波器系数参数设置为通过对话框指定

  • 选择显示截止频率参数。

计算的 IIR 滤波器的理论截止频率(以赫兹为单位)。此参数不可配置。

依赖关系

要显示此参数,请执行以下操作:

  • 滤波器系数参数设置为通过对话框指定

  • 选择显示截止频率参数。

扩展功能

全部展开

C/C++ 代码生成
使用 Simulink® Coder™ 生成 C 代码和 C++ 代码。

定点转换
使用 Fixed-Point Designer™ 设计和仿真定点系统。

版本历史记录

在 R2020a 中推出

全部展开

另请参阅