Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

模拟 IIR 低通滤波器的比较

设计截止频率为 2 GHz 的五阶模拟 Butterworth 低通滤波器。乘以 2π 以将频率转换为弧度/秒。计算滤波器在 4096 个点上的频率响应。

n = 5;
f = 2e9;

[zb,pb,kb] = butter(n,2*pi*f,'s');
[bb,ab] = zp2tf(zb,pb,kb);
[hb,wb] = freqs(bb,ab,4096);

设计一个具有相同边缘频率和 3 dB 通带波纹的五阶 Chebyshev I 类滤波器。计算它的频率响应。

[z1,p1,k1] = cheby1(n,3,2*pi*f,'s');
[b1,a1] = zp2tf(z1,p1,k1);
[h1,w1] = freqs(b1,a1,4096);

设计一个具有相同边缘频率和 30 dB 阻带衰减的 5 阶 Chebyshev II 类滤波器。计算它的频率响应。

[z2,p2,k2] = cheby2(n,30,2*pi*f,'s');
[b2,a2] = zp2tf(z2,p2,k2);
[h2,w2] = freqs(b2,a2,4096);

设计一个具有相同边缘频率和 3 dB 通带波纹、30 dB 阻带衰减的五阶椭圆滤波器。计算它的频率响应。

[ze,pe,ke] = ellip(n,3,30,2*pi*f,'s');
[be,ae] = zp2tf(ze,pe,ke);
[he,we] = freqs(be,ae,4096);

对衰减绘图,以分贝为单位。以千兆赫为单位表示频率。比较滤波器。

plot(wb/(2e9*pi),mag2db(abs(hb)))
hold on
plot(w1/(2e9*pi),mag2db(abs(h1)))
plot(w2/(2e9*pi),mag2db(abs(h2)))
plot(we/(2e9*pi),mag2db(abs(he)))
axis([0 4 -40 5])
grid
xlabel('Frequency (GHz)')
ylabel('Attenuation (dB)')
legend('butter','cheby1','cheby2','ellip')

Figure contains an axes. The axes contains 4 objects of type line. These objects represent butter, cheby1, cheby2, ellip.

Butterworth 和 Chebyshev II 类滤波器具有平坦的通带和宽过渡带。Chebyshev I 类和椭圆滤波器转降更快,但有通带波纹。Chebyshev II 类设计函数的频率输入设置阻带的起点,而不是通带的终点。

另请参阅

| | | | |