實驗五IIR數(shù)字濾波器設計及軟件實現(xiàn).doc
實驗四:IIR數(shù)字濾波器設計及軟件實現(xiàn)一、實驗內容及步驟1、 調用信號產生函數(shù)mstg產生由三路抑制載波調幅信號相加構成的復合信號st,三路信號在時域混疊無法在時域分離,但頻域是可分離的,所以可以通過濾波的方法在頻域分離。2、 要求將st中三路調幅信號分離,通過觀察st的幅頻特性曲線,分別確定可以分離st中三路抑制載波單頻調幅信號的三個濾波器(低通、高通、帶通)的通帶截止頻率和阻帶截止頻率。要求濾波器的通帶最大衰減為0.1db,阻帶最小衰減為60db.3、 編程序調用MATLAB濾波器設計函數(shù)ellipord和ellip分別設計三個橢圓濾波器,并繪圖顯示其損耗函數(shù)曲線。4、 調用濾波器實現(xiàn)函數(shù)filter,用三個濾波器分別對信號產生函數(shù)mstg產生的信號st進行濾波,分離出st中的三路不同載波頻率的調幅信號yn1、yn2、yn3的,并繪圖顯示其時域波形,觀察分離效果。二、實驗結果顯示原信號圖形:高通濾波器輸出波形帶通濾波器輸出波形低通濾波器輸出波形帶阻濾波器輸出波形三、實驗結論:由上面所繪圖形可知,利用數(shù)字濾波器完全可以將時域混疊而頻域未混疊的波形分開,達到濾波目的。四、思考題(1)請閱讀信號產生函數(shù)mstg,確定三路調幅信號的載波頻率和調制信號頻率。答:第一路調幅信號的調制信號頻率為100HZ,載波頻率為1000HZ;第二路調幅信號的調制信號頻率為50HZ,載波頻率為500HZ;第三路調幅信號的調整信號頻率為25HZ,載波頻率為250HZ。(2)信號產生函數(shù)mstg中采樣點數(shù)N=1600,對st進行N點FFT可以得到6根理想譜線。如果取N=1800,可否得到6根理想譜線?為什么?N=2000呢?請改變函數(shù)mstg中采樣點數(shù)N的值,觀察頻譜圖驗證您的判斷是否正確?答:因為信號st是周期序列,譜分析時要求觀察時間為整數(shù)倍周期。分析可知,st的每個頻率成分都是25Hz的整數(shù)倍。采樣頻率Fs=10kHz=25400Hz,即在25Hz的正弦波的1個周期中采樣400點。所以,當N為400的整數(shù)倍時一定為st的整數(shù)個周期。因此,采樣點數(shù)N=800和N=2000時,對st進行N點FFT可以得到6根理想譜線。如果取N=1000,不是400的整數(shù)倍,不能得到6根理想譜線。(3)修改信號產生函數(shù)mstg,給每一路調幅信號加入載波成分,產生AM信號,觀察AM信號與抑制載波調幅信號的時域波形及其頻譜的差別??梢杂^察到AM的頻譜中含有離散的載波分量,且占用很大比重。五、實驗程序:1、信號產生函數(shù)mstg程序:function st=mstgN=800;FS=10000;T=1/FS;TP=N*T;t=0:T:(N-1)*T;K=0:N-1;f=K/TP;fc1=FS/10;%第一路調幅信號的載波頻率fc1=1000HZfm1=fc1/10;%第一路調幅信號的調制信號頻率為fm1=100hz.fc2=FS/20;%第二路調幅信號的載波頻率fc2=500HZfm2=fc2/10;%第二路調幅信號的調制信號頻率為fm2=50hz.fc3=FS/40;%第三路調幅信號的載波頻率fc3=250HZfm3=fc3/10;%第三路調幅信號的調制信號頻率為fm3=25hz.xt1=cos(2*pi*fm1*t).*cos(2*pi*fc1*t);xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t);xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t);st=xt1+xt2+xt3;fxt=fft(st,N);%計算信號st的頻譜.%繪圖subplot(211)plot(t,st);grid on;xlabel(t/s);ylabel(s(t);axis(0,TP/4,min(st),max(st);title(a) s(t)的波形)subplot(212)stem(f,abs(fxt)/max(abs(fxt),.);grid on;title(b) s(t)的頻譜)axis(0,FS/5,0,1.2);xlabel(f/HZ);ylabel(幅度);2、高通濾波器的程序%高通濾波器設計fp=800;fs=700;Fs=10000;wp=2*fp/Fs;ws=2*fs/Fs;rp=1;rs=40;N=800;st=mstg;T=1/Fs;Tp=N*T;t=0:T:(N-1)*T;k=0:N-1;f=k/Tp;N1,wpo=ellipord(wp,ws,rp,rs);%確定最小階數(shù)和截止頻率B,A=ellip(N1,rp,rs,wpo,high);%求傳遞函數(shù)的分子分母系數(shù)y=filter(B,A,st);%濾波fyt=fft(y,N);%求其頻譜subplot(2,1,1),plot(t,y),grid on;xlabel(t/s),ylabel(y(t),axis(0,Tp/4,min(y),max(y),title(a) y(t)的波形)subplot(2,1,2);stem(f,abs(fyt)/max(abs(fyt),.);grid on;title(b) y(t)的頻譜)axis(0,Fs/5,0,1.2);xlabel(f/Hz);ylabel(幅度)3、帶通濾波器%帶通濾波器fpl=400;fpu=600;fsl=350;fsu=650;Fs=10000;wp=2*fpl/Fs,2*fpu/Fs;ws=2*fsl/Fs,2*fsu/Fs;rp=1;rs=40;N=800;st=mstg;T=1/Fs;Tp=N*T;t=0:T:(N-1)*T;k=0:N-1;f=k/Tp;N1,wpo=ellipord(wp,ws,rp,rs);B,A=ellip(N1,rp,rs,wpo);y=filter(B,A,st);fyt=fft(y,N);subplot(2,1,1),plot(t,y),grid on;xlabel(t/s),ylabel(y(t),axis(0,Tp/4,min(y),max(y),title(a) y(t)的波形)subplot(2,1,2);stem(f,abs(fyt)/max(abs(fyt),.);grid;title(b) y(t)的頻譜)axis(0,Fs/5,0,1.2);xlabel(f/Hz);ylabel(幅度);4、低通濾波器設計%低通濾波器fp=350;fs=400;Fs=10000;wp=2*fp/Fs;ws=2*fs/Fs;rp=1;rs=40;N=800;st=mstg;T=1/Fs;Tp=N*T;t=0:T:(N-1)*T;k=0:N-1;f=k/Tp;N1,wpo=ellipord(wp,ws,rp,rs);B,A=ellip(N1,rp,rs,wpo);y=filter(B,A,st);fyt=fft(y,N);subplot(2,1,1),plot(t,y),grid,xlabel(t/s),ylabel(y(t),axis(0,Tp/4,min(y),max(y),title(a) y(t)的波形)subplot(2,1,2);stem(f,abs(fyt)/max(abs(fyt),.);grid;title(b) y(t)的頻譜)axis(0,Fs/5,0,1.2);xlabel(f/Hz);ylabel(幅度)5、帶阻濾波器的設計%帶阻濾波器的設計fpl=350;fpu=700;fsl=400;fsu=600;Fs=10000;wp=2*fpl/Fs,2*fpu/Fs;ws=2*fsl/Fs,2*fsu/Fs;rp=1;rs=40;N=800;st=mstg;T=1/Fs;Tp=N*T;t=0:T:(N-1)*T;k=0:N-1;f=k/Tp;N1,wpo=ellipord(wp,ws,rp,rs);B,A=ellip(N1,rp,rs,wpo,stop);y=filter(B,A,st);fyt=fft(y,N);subplot(2,1,1),plot(t,y),grid,xlabel(t/s),ylabel(y(t),axis(0,Tp/4,min(y),max(y),title(a) y(t)的波形)subplot(2,1,2);stem(f,abs(fyt)/max(abs(fyt),.);grid;title(b) y(t)的頻譜)axis(0,Fs/5,0,1.2);xlabel(f/Hz);ylabel(幅度)