3.5 数字高通滤波器设计-数字信号处理

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

例:设计满足下列条件的模拟Butterworth低通滤波器
fp=1kHz, fs=2kHz, Ap=1dB, As=40dB
0
BW型: N=8
-20 Gain in dB
-40
-60
-80 0
500
1000
1500
2000
2500
3000
Frequency in Hz
Ap=0.62dB,
As=40dB
z 1 p z 1
0.06745(1 z 1 ) 2 1 1.143z 1 0.4128z 2
Butterworth模拟低通滤波器设计
3. 利用MATLAB设计BW LP
源自文库
[N,wc]=buttord(wp,ws,Ap,As,'s')
确定模拟Butterworth filter的阶数N和3-dB截频wc。 wc是由阻带参数确定的。 's' 表示模拟域。
0.7
0.8
0.9
1
3.5 数字高通滤波器设计
IIR数字滤波器的设计方法除了以上所述的借助 于模拟滤波器的设计方法以外,人们还提出了 计算机辅助设计的方法.
Y(z) = X(z) H(z) H(z) =Y(z) / X(z)
3.5 数字高通滤波器设计
Y(z) z 1 z 1 z 2 H(z) 2 X(z) z 2z 1 1 2z 1 z 2
3.5 数字高通滤波器设计
(4)将G(P)转换为模拟高通滤波器的转移函数
H(s) H(P)
P p s
将H(s)转换成数字高通滤波器的转移函数,
H ( z ) H (s)
s z 1 z 1
(5)将H(s)转换成数字高通滤波器的转移函数,
H(z) H(s)
s z 1 z 1
例:设计满足下列条件的模拟Butterworth低通滤波器
fp=1kHz, fs=2kHz, Ap=1dB, As=40dB Wp=2*pi*1000;Ws=2*pi*2000;Ap=1;As=40; [N,Wc]=buttord(Wp,Ws,Ap,As,'s'); fprintf('Order of the filter=%.0f\n',N) [num,den] = butter(N,Wc,'s'); disp('Numerator polynomial'); fprintf('%.4e\n',num); disp('Denominator polynomial'); fprintf('%.4e\n',den); omega=[Wp Ws];h = freqs(num,den,omega); fprintf('Ap= %.4f\n',-20*log10(abs(h(1)))); fprintf('As= %.4f\n',-20*log10(abs(h(2)))); omega = [0: 200: 12000*pi]; h = freqs(num,den,omega); gain=20*log10(abs(h));plot(omega/(2*pi),gain); xlabel('Frequency in Hz');ylabel('Gain in dB');
3.5 数字高通滤波器设计
例1:试设计一个数字高通滤波器,要 求通带下限频率ω p=0.8π ,阻带上限频率 ω s=0.44π ,通带衰减不大于3dB,阻带衰减不 小于20dB.
3.5 数字高通滤波器设计
解:
由步骤1得 Ω p= tan(ω p/2)=3.07768, Ω s= tan (ω s/2)=0.82727 则 η p=1, η s=Ω s/Ω p=0.2688 由步骤2得 λ p =1, λ s=1/η s=3.72028 步骤3,设计低通滤波器G(P),求得
例: 设计满足下列条件的模拟BW型高通滤波器 fp=5kHz, fs=1kHz, Ap1dB, As 40dB
0 -10 Gain in dB
-20
-30
-40
-50 -60
-70
0
1000
2000 3000 4000 Frequency in Hz
5000
6000
Ap= 40.0000 As= 0.1098
例:利用AF-BW filter及双线性变换法设计一DF,满足 p=0.2p, s=0.6p, Ap2dB, As15dB %Design DF BW low-pass filter using impulse invariance %DF BW LP specfication Wp=0.2*pi; Ws=0.6*pi; Ap=2; As=15; T=2;Fs=1/T; %Sampling frequency(Hz) %Analog Butterworth specfication wp=2*tan(Wp/2)/T;ws=2*tan(Ws/2)/T; %determine the order of AF filter and the 3-dB cutoff frequency [N,wc]=buttord(wp,ws,Ap,As,'s') %determine the AF-BW filter [numa,dena]=butter(N,wc,'s')
[num,den]=butter(N,wc,'s')
确定阶数为N,3-dB截频为wc(radian/s)的Butterworth filter分子和分母多项式。's' 表示模拟域。
[z,p,k]=buttap(N)
确定N阶归一化的Butterworth filter 的零点、极点和 增益(gain)
例:利用AF-BW filter及双线性变换法设计一DF,满足 p=0.2p, s=0.6p, Ap2dB, As15dB
0 -5 -10 -15 -20
Gain,db
Ap= 0.3945 As= 15.0000
-25 -30 -35 -40 -45 -50
0
0.1
0.2
0.3
0.4 0.5 0.6 Normalized frequency
设计出G (s)
3.5 数字高通滤波器设计
将数字高通滤波器的技术指标ω p,ω s, 通过Ω = tan(ω /2)转变为模拟高通的技术 指标Ω p,Ω s,,作归一化处理后得η p=1, η s=Ω s/Ω p (2) 利用频率转换关系λ η =1,将模拟高通H(s) 的技术指标转换为归一化低通滤波器G(P)的技 术指标,并有P=jλ ; (3) 设计模拟低通滤波器G(P) (1)
例:利用AF-BW filter及双线性变换法设计一DF,满足 p=0.2p, s=0.6p, Ap2dB, As15dB
%determine the DF filter [numd,dend]=bilinear(numa,dena,Fs) %plot the frequency response w=linspace(0,pi,1024); h=freqz(numd,dend,w); plot(w/pi,20*log10(abs(h))); axis([0 1 -50 0]);grid; xlabel('Normalized frequency'); ylabel('Gain,dB'); %computer Ap As of the designed filter w=[Wp Ws];h=freqz(numd,dend,w); fprintf('Ap= %.4f\n',-20*log10( abs(h(1)))); fprintf('As= %.4f\n',-20*log10( abs(h(2))));
1 10 s / 10 1 N lg( p / 10 ) 1.749 lg s 2 10 1
3.5 数字高通滤波器设计
取N=2

G(P) 1 P 2 2P 1
H(s) = G(P) |
p s
P=
H(z) H(s)
s
z 1 z 1
H(z) G(P)
P
Y(z) 2Y(z)z z Y(z) X(z)z X(z)z
1
2
1
2
y(n ) 2( y(n 1) y(n 2) x (n 1) x (n 2) y( n )
3.5 数字高通滤波器设计
差分方程
y(n ) 2( y(n 1) y(n 2) x (n 1) x (n 2) y(n ) x (n 1) x (n 2) y(n 2) 2 y(n 1)
3.5 数字高通滤波器设计
至今我们已较为详细的讨论了 (1)模拟低通滤波器的设计方法(巴特沃思及切比 雪夫Ⅰ型) (2)基于s域频率变换的模拟高通、带通、带阻滤 波器的设计方法 (3)基于双线性z变换的数字低通滤波器设计方法, 在此基础上我们很容易得到高通、带通及带阻 数字滤波器的设计方法
3.5 数字高通滤波器设计
例: 设计满足下列条件的模拟BW型高通滤波器 fp=5kHz, fs=1kHz, Ap1dB, As 40dB。
%高通滤波器的设计 wp=1/(2*pi*5000);ws=1/(2*pi*1000);Ap=1;As=40; [N,Wc]=buttord(wp,ws,Ap,As,'s'); [num,den] = butter(N,Wc,'s'); disp('LP 分子多项式'); fprintf('%.4e\n',num); disp('LP 分母多项式'); fprintf('%.4e\n',den); [numt,dent] = lp2hp(num,den,1); disp('HP 分子多项式'); fprintf('%.4e\n',numt); disp('HP 分母多项式'); fprintf(‘%.4e\n’,dent);
现以高通数字滤波器为例说明其设计过程
给出数字高 通的技术指 标 ω p, ω s,α p,α s
Ω=tan(ω/2)
得到模拟高通 滤波器的技术 指标Ω p , Ω s, α p,α s
得到模拟低通 的技术指标 λ p,λ s, α p, α s
数字高通转 移函数 H ( z )
得到模 拟高通H (s)
相关文档
最新文档