
巴特沃斯带阻数字滤波器设计matlab程序及仿真图.doc
4页fs=15000;T= 1/fs;rp=1;rs=40;wp1=0.11*pi;wp2=0.81*pi;ws1=0.31*pi;ws2=0.61*pi;%数字带阻滤波器技术指标wc1=(2/T)*tan(wp1/2);%频率预畸变wc2=(2/T)*tan(wp2/2);wr1=(2/T)*tan(ws1/2);wr2=(2/T)*tan(ws2/2);w0=sqrt(wc1*wc2);B=wc2-wc1;wp=1;%归一化通带截止频率ws=wp*(wr1*B) / (w0^2-wr1^2) ; %归一化阻带截止频率[N,wc]=buttord(wp,ws,rp,rs,'s')%求滤波器阶数和 3dB 截止频率 [Z,P,K]=buttap(N)%设计模拟低通滤波器 [Md,Nd]=zp2tf(Z,P,K)%将零极点形式转换为传输函数形式[M,N]=lp2bs(Md,Nd,w0,B)%对低通滤波器进行频率变换,转换为带阻滤波器[h,w]=freqs(M,N);%模拟带阻滤波器的幅频响应plot(w/(2*pi),abs(h));grid;xlabel('频率 Hz');ylabel('幅度');title('模拟带阻滤波器');[b,a]=bilinear(M,N,15000)%对模拟滤波器双线性变换 figure(1);freqz(b,a);[H,W]=freqz(b,a); %绘出频率响应;axis([0,1,-100,20]);figure(2);plot(W*fs/(2*pi),abs(H));grid on; xlabel('频率/Hz');ylabel('幅值');n=0:199;t=n/fs;x=sin(2*pi*400*t)+3*sin(2*pi*3000*t)+2*sin(2*pi*5000*t);figure(3);subplot(311);plot(t,x);axis([0,0.01,-5,5]);title('输入信号 ');grid on;y=filter(b,a,x);subplot(312);stem(y,'.');title('输出序列');grid on;ya=y*sinc(fs*(ones(length(n),1)*t-(n/fs)'*ones(1,length(t))));subplot(313);plot(t,ya);axis([0,0.01,-3,3]);title('输出波形');grid on;t=(0:100)/fs;figure(4)fs=1.5*10000;n=(0:100)/fs;f=sin(2*pi*400*t)+3*sin(2*pi*3000*t)+2*sin(2*pi*5000*t);y=fftfilt(b,x);[H1,f1]=freqz(f,[1]);[H2,f2]=freqz(y,[1]);f1=f1/pi*fs/2;f2=f2/pi*fs/2;subplot(2,1,1);plot(f1,abs(H1));title('输入信号的频谱');subplot(2,1,2);plot(f2,abs(H2));title('输出信号的频谱');基于 Matlab 的带阻滤波器设计0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-800-600-400-2000Normalized Frequency ( rad/sample)Phase(degrees)0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-100-500Normalized Frequency ( rad/sample)Magnitude (dB)0 1000 2000 3000 4000 5000 6000 7000 800000.20.40.60.811.21.4信 信 /Hz信信0 0.001 0.002 0.003 0.004 0.005 0.006 0.007 0.008 0.009 0.01-505 信 信 信 信0 20 40 60 80 100 120 140 160 180 200-202 信 信 信 信0 0.001 0.002 0.003 0.004 0.005 0.006 0.007 0.008 0.009 0.01-202信 信 信 信0 1000 2000 3000 4000 5000 6000 7000 8000050100150200 信 信 信 信 信 信 信0 1000 2000 3000 4000 5000 6000 7000 80000102030 信 信 信 信 信 信 信N =4wc =1.7947b =0.0186 -0.0410 0.1082 -0.1355 0.1810 -0.1355 0.1082 -0.0410 0.0186a =1.0000 -0.6707 -1.3750 0.5678 1.1964 -0.2996 -0.4631 0.0496 0.0762>。












