Digital Filter
DiscreteDigitalFilter 方块是一个高度先进的信号处理工具,专门用于在仿真过程中对离散时间信号进行滤波。它支持多种经典的无限冲激响应(IIR)滤波器近似算法(巴特沃斯 Butterworth、切比雪夫 I 型 Chebyshev I、贝塞尔 Bessel)构建的级联双二阶(Biquad)结构,以及有限冲激响应(FIR)移动平均滤波器。
该方块根据当前的采样频率(由求解器的固定步长推导而来)动态计算滤波器系数,以确保实时且数学精确的滤波。
数学模型
输入与输出
| Direction | ID | Label | 类型 | Status |
|---|---|---|---|---|
| → In | in |
In | number | Required |
| ← Out | out |
Out | number | Output |
参数
| 参数 | Label | 类型 | 默认值 | 描述 |
|---|---|---|---|---|
designMethod |
Design Method | select | Butterworth |
|
filterType |
Filter Type | select | Lowpass |
|
cutoffFreq |
Cutoff Freq (Hz) | number | 10 |
|
bandwidth |
Bandwidth (Hz) | number | 2 |
|
order |
Filter Order | select | 2 |
|
ripple |
Ripple (dB) | number | 1 |
|
windowSize |
Window Size | number | 10 |
使用示例
- 消除传感器噪声:将噪声信号接入
DigitalFilter(Butterworth Lowpass,10 Hz),并将滤波后的平滑信号输出至 Scope。 - 消除 50/60 Hz 工频干扰:使用中心频率为 50 Hz、带宽为 2 Hz 的陷波(Notch)滤波器。
说明与最佳实践
- 实时动态计算:当参数或求解器步长更改时,滤波器系数会自动即时重新计算。
- 双二阶级联结构:高阶 IIR 滤波器均以双二阶(Biquad)单元级联实现,最大程度降低舍入误差并确保数值稳定性。
相关模块
- DiscreteTransferFunction:通用离散传递函数
- DiscreteStateSpace:离散状态空间模型
- MovingAverage:专用的滑动平均方块