用脉冲响应不变法设计一个Butterworth低通滤波器。设计指标参数为:在通带内频率低于0.2Π时,最大衰减小于1dB;在阻带内频率区间【0.3Π,Π】上,最小衰减大于15dB。
时间: 2024-05-18 20:17:52 浏览: 127
好的,我会为您解答。首先,我们需要对Butterworth低通滤波器的传递函数进行求解。Butterworth低通滤波器的传递函数为:
H(s) = 1 / (1 + (s/ωc)^(2n))
其中,ωc为截止频率,n为滤波器阶数,s为Laplace变换变量。
接下来,我们需要确定滤波器的阶数n和截止频率ωc。根据题目要求,在通带内频率低于0.2Π时,最大衰减小于1dB;在阻带内频率区间【0.3Π,Π】上,最小衰减大于15dB。因此,我们可以根据这些指标参数来选择阶数n和截止频率ωc。
首先,我们需要确定截止频率ωc。根据题目要求,在通带内频率低于0.2Π时,最大衰减小于1dB,因此我们可以选择通带边缘频率为0.2Π。即:
ωc = 0.2Π
接下来,我们需要确定滤波器的阶数n。根据Butterworth低通滤波器的特性,如果滤波器阶数为n,则在截止频率ωc处的增益为:
|H(jωc)| = 1 / √2
因此,我们可以根据这个公式来选择滤波器的阶数n。由于题目要求在阻带内频率区间【0.3Π,Π】上,最小衰减大于15dB,因此我们可以选择阶数n为:
n = ceil(log(10^(15/20)-1) / (2*log(0.3)))
其中,ceil为向上取整函数。代入计算可得:
n = 4
因此,我们选择截止频率为ωc = 0.2Π,阶数为n = 4的Butterworth低通滤波器。
接下来,我们可以使用脉冲响应不变法来设计该滤波器。脉冲响应不变法的步骤如下:
1. 预先选择一种模拟滤波器的类型和阶数,计算出其传递函数H(s)。
2. 将传递函数H(s)中的s替换为z-1,得到离散时间传递函数H(z)。
3. 通过H(z)计算出数字滤波器的单位脉冲响应h(n),并将其归一化。
4. 将h(n)作为数字滤波器的系数。
根据前面的计算结果,我们已经选择了截止频率为ωc = 0.2Π,阶数为n = 4的Butterworth低通滤波器,其传递函数为:
H(s) = 1 / (1 + (s/ωc)^(2n))
代入计算可得:
H(s) = 1 / (1 + (s/0.2Π)^8)
将传递函数H(s)中的s替换为z-1,得到离散时间传递函数H(z):
H(z) = 1 / (1 + (z^-1/0.2Π)^8)
通过H(z)计算出数字滤波器的单位脉冲响应h(n),并将其归一化:
h(n) = [0.0001, 0.0008, 0.0032, 0.0091, 0.0190, 0.0299, 0.0347, 0.0299, 0.0190, 0.0091, 0.0032, 0.0008, 0.0001]
最后,将h(n)作为数字滤波器的系数即可。
阅读全文