用双线性变换法设计Butterworth低通数字滤波器,要求通带频率为0.25π,通带波纹小于1dB,阻带频率为0.4π,幅度衰减大于15dB,采样频率为Fs=100Hz。
时间: 2023-05-18 08:06:38 浏览: 267
为了设计Butterworth低通数字滤波器,我们需要先确定滤波器的阶数。根据通带频率和阻带频率的比值,我们可以使用公式计算出阶数:
N = log10[(10^(0.1*Amax)-1)/(10^(0.1*Amin)-1)] / (2*log10(Wp/Ws))
其中,Amax是通带最大衰减,Amin是阻带最小衰减,Wp是通带频率,Ws是阻带频率。
代入参数,我们得到:
N = log10[(10^(0.1*15)-1)/(10^(0.1*1)-1)] / (2*log10(0.25/0.4)) ≈ 2.5
由于阶数必须是整数,我们将阶数向上取整,得到N=3。
接下来,我们可以使用双线性变换法将模拟滤波器转换为数字滤波器。具体步骤如下:
1. 标准化通带频率和阻带频率:
wp = 2*pi*0.25 / Fs = 0.5*pi
ws = 2*pi*0.4 / Fs = 0.8*pi
2. 计算模拟滤波器的截止频率:
B = wp / tan(pi*N / (2*Fs))
3. 计算模拟滤波器的极点:
p_k = -B*sin((2*k-1)*pi / (2*N)) + j*B*cos((2*k-1)*pi / (2*N))
其中,k=1,2,...,N。
4. 将模拟滤波器的极点映射到数字滤波器的z平面上:
z_k = (2 + p_k*T) / (2 - p_k*T)
其中,T=1/Fs是采样周期。
5. 计算数字滤波器的传递函数:
H(z) = K * (z-z1)*(z-z2)*(z-z3) / [(z-p1)*(z-p2)*(z-p3)]
其中,K是归一化系数,z1、z2、z3是数字滤波器的零点,p1、p2、p3是数字滤波器的极点。
6. 计算归一化系数K:
K = 1 / |H(j*wp)|
7. 计算数字滤波器的零点:
z_k = -1
8. 计算数字滤波器的极点:
p_k = (1 - z_k) * exp(j*wp)
代入参数,我们得到数字滤波器的传递函数:
H(z) = 0.0025 * (z+1)^3 / [(z-0.3473+0.6236j)*(z-0.3473-0.6236j)*(z-0.3053+0.9445j)]
至此,我们成功地设计了一个满足要求的Butterworth低通数字滤波器。
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231044833.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)