%画出频率响应w=linspace(0,4*Wc,512);h1=freqs(num,den,w);h2-freqs(numt,dent,w);plot(w,abs(h1),w,abs(h2);grid;0.80.60.40.2025670134804.2.2低通到高通低通到高通的变换为HHp(s)= H,(s) = 00 / s将=j,s=jo代入s=0/s得1@00=-000=-0% %o0op一0模拟高通滤波器的设计步骤:1)由高通滤波器的频率指标确定低通的频率指标0,=1/0s0,=1/0p2)设计低通滤波器3)由变换获得高通滤波器Hp(s)= Hμp(s)s =1/ s
%画出频率响应 w=linspace(0,4*Wc,512); h1=freqs(num,den,w); h2=freqs(numt,dent,w); plot(w,abs(h1),w,abs(h2)); grid; 0 1 2 3 4 5 6 7 8 0 0.2 0.4 0.6 0.8 1 4.2.2 低通到高通 低通到高通的变换为 H s H s s s HP L ( ) ( ) / = =0 将 s = j , s = j 代入 s /s =0 得 = −0 s 0 = −0 −s − p p 0 s 0 = −0 −s − p p 0 模拟高通滤波器的设计步骤: 1)由高通滤波器的频率指标确定低通的频率指标 p p =1/ s s =1/ 2)设计低通滤波器 3)由变换获得高通滤波器 H s H s s s HP LP ( ) = ( ) =1/
例:用BW滤波器,设计一个3dB截频为wc的1阶高通滤波器。解:低通滤波器的3dB截频为:可=1/の1满足指标的1阶BW低通滤波器为:Hu(s)=so.+1-Hup(s)= Hp(3)=1/s0./s+1 s+0例:设计满足下列条件的模拟BW型高通滤波器fp=5KHz,As=40dBfs=1kHz,Ap=1dB,解:1)确定低通滤波器参数wp=1/(2p×5000),ws=1/(2p×1000),Ap=1dB,As=40dB2)设计低通滤波器由N,Wc=buttord(Wp,Ws,ApAs,'s'),[num,den] = butter(N, Wc,'s');得:N=46.4166×10-18H(s)=s*+1.3152×10-,*+8.6485×10°s2+3.3315×10-13s+6.4166×10-183)由变换HHP(s)=HLP(1/s)获得高通滤波器54H(s)=$*+5.192×10*s*+1.3478×10°s2+2.0497×10/3s+1.5585×1017MATLAB函数[numt,dent]= Ip2hp(num,den, W0)可用来完成低通到高通的变换。%高通滤波器的设计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(%.4eln',num);disp(LP分母多项式);fprintf(%.4eln',den),[numt,dent]= lp2hp(num,den, 1);disp(HP分子多项式)fprintf(%.4eln',numt);disp(HP分母多项式)fprintf(%.4eln',dent);
例:用 BW 滤波器,设计一个 3dB 截频为 wc 的 1 阶高通滤波器。 解:低通滤波器的 3dB 截频为: c c =1/ 满足指标的 1 阶 BW 低通滤波器为: 1 1 ( ) + = c LP s H s c c HP LP s s s s s H s H s + = + = = = / 1 1 ( ) ( ) 1/ 例: 设计满足下列条件的模拟 BW 型高通滤波器 fp=5KHz, fs=1kHz, Ap=1dB, As=40dB 解:1)确定低通滤波器参数 wp=1/(2p 5000), ws=1/(2p 1000) , Ap=1dB, As=40dB 2) 设计低通滤波器 由 [N,Wc]=buttord(Wp,Ws,Ap,As,'s'); [num,den] = butter(N,Wc,'s'); 得: N=4 4 4 3 9 2 13 18 18 1.3152 10 8.6485 10 3.3315 10 6.4166 10 6.4166 10 ( ) − − − − − + + + + = s s s s H s 3) 由变换 HHP(s)=HLP(1/s)获得高通滤波器 4 4 3 9 2 13 17 4 5.192 10 1.3478 10 2.0497 10 1.5585 10 ( ) + + + + = s s s s s H s MATLAB 函数 [numt,dent] = lp2hp(num,den,W0) 可用来完成低通到高通的变换。 %高通滤波器的设计 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);