資源描述:
《數字版權保護技術及其應用》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。
1、數字信號處理實驗實驗四、數字濾波器設計及應用綜合實驗學院:信息工程學院班級:電子101班姓名:學號:一、實驗目的1.熟悉IIR數字濾波器的設計原理及方法。2.熟悉FIR數字濾波器的設計原理及方法。3.掌握利用Matlab實現數字濾波器的方法4.掌握利用數字濾波器進行信號處理的方法。5.了解基于Simulink的動態(tài)仿真實現信號濾波的基本方法。二、實驗內容及要求實驗內容:綜合運用數字濾波器設計的相關知識,根據給定設計方法要求,用脈沖響應不變法和雙線性變換法設計IIR數字濾波器;利用窗函數設計法設計FIR數字濾波器。根據實際信號的頻譜特性,分析、確定濾波器設計技術指標,實
2、現對信號的濾波。1.IIR數字濾波器設計(1)用脈沖響應不變法設計巴特沃斯數字濾波器。該實驗所需M文件如下:①、butterworth低通濾波器原型設計函數:function[b,a]=afd_butt(Wp,Ws,Rp,As)N=ceil((log10((10^(Rp/10)-1)/(10^(As/10)-1)))/(2*log10(Wp/Ws)))fprintf('ButterworthFilterOrder=%2.0f',N)OmegaC=Wp/((10^(Rp/10)-1)^(1/(2*N)))[b,a]=u_buttap(N,OmegaC)②、非歸一
3、化Butterworth模擬低通濾波器設計函數:function[b,a]=u_buttap(N,Omegac);[z,p,k]=buttap(N);p=p*Omegac;k=k*Omegac^N;B=real(poly(z));b=k*B;a=real(poly(p));③、利用脈沖響應不變法從模擬到數字濾波器變換函數:function[b,a]=imp_invr(c,d,T)[R,p,k]=residue(c,d);p=exp(p*T);[b,a]=residuez(R,p,k);b=real(b');a=real(a');④、頻率響應函數freqz的修正:fun
4、ction[db,mag,pha,w]=freqz_m(b,a);[H,w]=freqz(b,a,1000,'whole');H=(H(1:501))';w=(w(1:501))';mag=abs(H);db=20*log10((mag+eps)/max(mag));pha=angle(H);本實驗程序如下:wp=0.2*pi;ws=0.3*pi;Rp=1;As=15;T=1;OmegaP=wp/T;OmegaS=ws/T;[cs,ds]=afd_butt(OmegaP,OmegaS,Rp,As);[b,a]=imp_invr(cs,ds,T)[db,mag,pha,
5、w]=freqz_m(b,a);subplot(2,1,1);plot(w/pi,mag);title('digitalfilterMagnitudeResponse')axis([0,1,0,1.1])subplot(2,1,2);plot(w/pi,db);title('digitalfilterMagnitudeinDB')axis([0,1,-40,5]);結果:N1=5.8858N=6ButterworthFilterOrder=6OmegaC=0.7032b=0.00000.00060.01010.01610.00410.0001a=1.0000-3.36
6、355.0684-4.27592.1066-0.57060.0661本實驗波形圖如下:(2)用雙線性變換法設計切比雪夫數字濾波器。本實驗所需M文件如下:非歸一化切比雪夫I型模擬低通濾波器原型設計:function[b,a]=u_chb1ap(N,Rp,Omegac);[z,p,k]=cheb1ap(N,Rp);a=real(poly(p));aNn=a(N+1);p=p*Omegac;a=real(poly(p));aNu=a(N+1);k=k*aNu/aNn;B=real(poly(z));b=k*B;本實驗程序如下:wp=0.2*pi;ws=0.3*pi;Rp=1
7、;As=15;T=1;OmegaP=(2/T)*tan(wp/2);OmegaS=(2/T)*tan(ws/2);ep=sqrt(10^(Rp/10)-1);Ripple=sqrt(1/(1+ep*ep));Attn=1/(10^(As/20));A1=1/Attn;a1=sqrt(A1*A1-1)/ep;a2=OmegaS/OmegaP;N=ceil(logm(a1+sqrt(a1*a1-1))/logm(a2+sqrt(a2*a2-1)));fprintf('ChebyshevFilterOrder=%2.0f',N)[cs,ds]=u_