当前位置:文档之家› 基于matlab的切比雪夫及巴特沃斯低通、高通滤波器的设计

基于matlab的切比雪夫及巴特沃斯低通、高通滤波器的设计


求低通原型 Ω������������ = ������1 cot
求阶次 N ε= N≥ ������������������������������
1 ε
100.1������ 1 − 1 = 100.1������ 2 − 1
٠������������ ٠������
100.3 − 1 = 1 ������������������������������4.91 2.27 = = 1.97 ������������������������������1.89 1.25
100.3 − 1 = 1
求N N≥ ������������������������������ 100.1������ 2 − 1
٠������ ٠������
������������������������������
=
������������������������������ ������������������������������
������������������������������
=
则 N=2,系统函数(因为Ω������ 为 1,故系统函数即原型函数) 0.50 + 0.64������ + 0.71
得到结果 bz = 0.0009 0.0019 az = 1.0000 -1.9114 0.9152 0.0009
bz 为分母,az 为分子,从左到右分别为 1、负一次方、负二次方。
验证表示结果正确。
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 -60 0.1 0 -70
DB值
代入求得数值 ������������ ������ = 632.02 ������ 2 + 32.45������ + 632.02
这样便得到了模拟滤波器的函数,利用双线性变换的公式转换到数字域 s= 2 1 − ������ −1 ������ 1 + ������ −1
得到数字域滤波器
������ ������ =
焦奥
根据双线性变换 Ω= 2 ������ tan⁡ ������ 2 得到 Ω������ = 25.14 Ω������ = 407.62 这就得到了模拟域的指标。 由巴特沃斯的方程 Α2 Ω = ������������ ������Ω
2
= 1+
1
٠٠������ 2������
20������������ ������������ ������Ω
Wc=203.81; b=[0 0 0.5*Wc^2];
a=[1 0.64*Wc 0.71*Wc^2]; [bz,az]=bilinear(b,a,200) w=[0:500]*pi/500; [H,w]=freqz(bz,az); f=200*w/(2*pi); subplot(121); plot(f,abs(H),'k'); xlabel('频率'); ylabel('幅值'); axis([0 50 0 1]); subplot(122); plot(f,20*log10(abs(H)),'k'); xlabel('频率'); ylabel('DB值'); axis([0 95 -50 1]); hold on plot([0 30],[-3 -3],'r'); hold on plot([30 30],[-180 -3],'r'); hold on text(30,-3,'30hz£¬3db'); text(40,-48,'90hz,´óÓÚ40db');
巴特沃斯低通、切比雪夫低通、高通 IIR 滤波器设计
05941401 1120141454
一、设计思路 IIR 滤波器可以分为低通、高通、带通、带阻等不同类型的滤波器,而以系统 函数类型又有巴特沃斯、切比雪夫等滤波器。其中巴特沃斯较为简单,切比雪夫 较为复杂;低阶比高阶简单,但却有着不够良好的滤波特性。在满足特定的指标 最低要求下,低阶、巴特沃斯滤波器能更大程度地节省运算量以及复杂程度。 滤波器在不同域内分为数字域和模拟域。其中数字域运用最广泛。在设计过 程中,一般是导出模拟域的滤波器,之后通过频率转换变为数字域滤波器,实现 模拟域到数字域的传递。在针对高通、带通、带阻的滤波器上,可以又低通到他 们的变换公式来进行较为方便的转换。 综上, IIR 滤波器的设计思路是, 先得到一个满足指标的尽可能简单的低通模 拟滤波器,之后用频域变换转换到数字域。 转换方法有双线性变换法、冲激响应不变法等。虽然方法不同,但具体过程 有很多相似之处。 首先将数字滤波器的指标转换为模拟滤波器的指标,之后根据 指标设计模拟滤波器, 再通过变换, 将模拟滤波器变换为数字滤波器, 是设计 IIR 滤波器的最基本框架。 以下先讨论较为简单的巴特沃斯低通滤波器。 二、巴特沃斯低通滤波 假设需要一个指标为 0~4hz 内衰减小于 3db、大于 60hz 时衰减不小于 30db 的滤波器。其中抽样频率为 400hz。 以双线性变换方法来设计。 首先将滤波器转换到模拟指标。 1 T = 1 ������ = ������ 400 Ω������ ′ = 2������������ ������ = 8������ ������������ = Ω������ ′������ = 0.02������ Ω������ ′ = 2������������ ������ = 120������ ������������ = Ω������ ′������ = 0.3������
0.0859
0.1719 az =
0.0859
1.0000
-1.0801
0.5682
数值正确。 以下设计切比雪夫高通滤波器 四、切比雪夫高通滤波器 求高通滤波器的常用方法是模拟低通转化为数字高通。 指标:通带截止频率 3khz,衰减不大于 3db;阻带上限截止频率 2khz, 衰减不小于 14db。抽样频率 10khz。 1 T = 1 ������ = ������ 10������ Ω������ ′ = 2������������ ������ = 6������������ ������������ = Ω������ ′������ = 0.6������ Ω������ ′ = 2������������ ������ = 4������������ ������������ = Ω������ ′������ = 0.4������ 根据双线性变换,并令Ω������ = 1 ������1 = Ω������ tan ������������ = 1.38 2 ������������ = 1.89 2
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0
DB值 幅值
0 30hz , 3db -5 -10 -15 -20 -25 -30 -35 -40 -45 90hz, 大 于 40db 0 10 20 30 频率 40 50 -50 0 20 40 60 频率 80
满足指标要求。 bz =
0.00095 + 0.0019������ −1 + 0.00095������ −2 1 − 1.91������ −1 + 0.91������ −2 至此,设计完成。
接下来用 matlab 实现上述变换设计。
b=[0 0 632.02]; a=[1 35.45 632.02]; [bz,az]=bilinear(b,a,400) w=[0:500]*pi/500; [H,w]=freqz(bz,az); f=400*w/(2*pi); subplot(121); plot(f,abs(H),'k'); xlabel('频率'); ylabel('幅值'); axis([0 50 0 1]); subplot(122); plot(f,20*log10(abs(H)),'k'); xlabel('频率'); ylabel('DB值'); axis([0 100 -70 2]); holdon plot([0 4],[-3 -3],'r'); holdon plot([4 4],[-180 -3],'r'); hold on plot([60 60],[-180 -48.5],'b'); hold on plot([0 60],[-48.5 -48.5],'b'); plot([0 200],[-30 -30],'g'); text(6,-3,'6hz,3db'); text(60,-45,'60hz,大于30db'); text(60,-30,hz , 3db -10
-20
-30
30db
幅值
-40 60hz, 大 于 30db -50
0
10
20 30 频率
40
50
0
50 频率
100
因为 N 取了 2,取为整数,大于计算的值,所以在 60hz 时,衰减超出指标。 以下讨论切比雪夫滤波器。 三、切比雪夫滤波器 切比雪夫滤波器是另一种滤波器,使用较为广泛的是低通滤波器,也能够通 过变换转化为其他滤波类型的滤波器。 以下设计切比雪夫低通滤波器,仍用双线性变换法。频率脉冲响应法与双线 性变换法的区别仅仅在于两个域的转换方面,在设计模拟滤波器的方面,是没有 影响的。频率脉冲法计算更加复杂,而且有混叠效应;双线性法通过预畸减小了 误差,并且没有混叠。 给出指标: 0~30hz 内衰减小于 3db、 大于 90hz 时衰减不小于 40db 的滤波器。 其中抽样频率为 200hz。 1 T = 1 ������ = ������ 200 Ω������ ′ = 2������������ ������ = 60������ ������������ = Ω������ ′������ = 0.3������ Ω������ ′ = 2������������ ������ = 180������
相关主题