模拟滤波器到数字滤波器的转换
在信号处理领域,将模拟滤波器转换为数字滤波器是一个常见的需求。本文将详细介绍两种常用的转换方法:冲激不变法(Impulse Invariance Method)和双线性变换法(Bilinear Transform),并通过具体的代码示例展示如何实现这些转换。
冲激不变法
冲激不变法的核心思想是通过在时间间隔 $T$ 对模拟滤波器的冲激响应进行采样,从而保留模拟滤波器的冲激响应特性。由于数字滤波器的冲激响应是模拟滤波器冲激响应的采样版本,因此可以得到数字滤波器的系统函数 $H(z)$ 为:
[H(z) = \sum_{n=0}^{\infty} h[n]z^{-n}]
其中,$h[n] = h(nT)$,$h[n]$ 是模拟滤波器冲激响应 $h(t)$ 的采样版本。
对于经典的无限脉冲响应(IIR)滤波器,其系统函数 $H(s) = B(s)/A(s)$ 是 $s$ 的多项式之比,且分子的阶数小于等于分母的阶数。可以对 $H(s)$ 进行部分分式展开:
[H(s) = \sum_{j=1}^{N} \frac{R_j}{s + p_j}]
相应的冲激响应为:
[h(t) = \sum_{j=1}^{M} R_j e^{-p_j t}]
采样后的版本为:
[h[n] = h[nT] = \sum_{j=1}^{M} R_j e^{-p_j nT} = \sum_{j=1}^{M} R_j (e^{-p_j T})^n]
将其代入 $H(z)$ 的表达式中,得到:
[H(z) = \sum_{j=1}^{M} \frac{R_j z}{z - e^{-p_j T}}
超级会员免费看
订阅专栏 解锁全文
1380

被折叠的 条评论
为什么被折叠?



