实验五:双线性变换法的设计IIR 数字滤波器 联系客服

发布时间 : 星期一 文章实验五:双线性变换法的设计IIR 数字滤波器更新完毕开始阅读33de40b2541810a6f524ccbff121dd36a22dc479

pha=angle(H)*180/pi; subplot(2,1,2)

plot(F,pha);grid on %画出相频特性图 xlabel('Frequency(Hz)'); ylabel('phase');

3、已知四阶归一化低通巴特沃斯模拟滤波器系统函数为Ha(s)?1s?5s?2s?2s?1432,编写MATLAB程

序实现从Ha?s?设计3dB截止频率为wc??4的四阶高通巴特沃斯数字滤波器。 clear;

T=1; fs=1/T; N=4; wc=pi/4;

omegach=2*tan(wc/2)/T;%模拟滤波器的截止频率 M=1;

N=[1,sqrt(5),2,sqrt(2),1];

[h,w]=freqs(M,N,512); %模拟滤波器的幅频响应 subplot(2,1,1);

plot(w,20*log10(abs(h))); axis([0,10,-90,0]),grid on;

xlabel('Hz');ylabel('幅度'); title('归一化模拟低通滤波器'); [Ms,Ns]=lp2lp(M,N,omegach); %对低通滤波器进行频率变换 [hs,ws]=freqs(Ms,Ns,512); %模拟滤波器的幅频响应

9

subplot(2,1,2);plot(ws,20*log10(abs(hs))); grid;

axis([0,10,-90,0]);

xlabel('Hz');ylabel('幅度'); title('去归一化模拟低通滤波器'); [Mz,Nz]=bilinear(Ms,Ns,1/T); %对模拟滤波器双线性变换 [h1,w1]=freqz(Mz,Nz); %数字滤波器的幅频响应 figure

plot(w1/pi,20*log10(abs(h1))); grid;

xlabel('ω/π');ylabel('幅度(dB)'); title('数字低通滤波器'); axis([0,1,-160,0])

?t)?cos(400?t)?cos(800?t)中的三个信号分离出来。 4、设计低通滤波器,把输入信号x(t)?cos(200要求:画出滤波前后信号的波形及频谱及低通滤波器的幅频响应。

提示:[b,a]=butter(n,Wn);%计算H(z)分子、分母多项式系数 y=filter(b,a,x);%对输入的信号进行滤波 程序:

fn=2000;%采样频率 N=2000;%数据点数 n=0:N-1;

t=0:1/fs:200/fs;%采样时间序列 f0=100;%信号频率

x=cos(2*pi*f0*t)+cos(2*pi*200*t)+cos(2*pi*400*t); subplot(3,1,1); plot(t,x);

10

xlabel('t');

ylabel('sin(2*pi*100*t)'); title('时域信号');

Y=fft(x,N);%对信号进行FFT变换 magY=abs(Y);%求得FFT变换后的幅度 f=n*fs/N;%频率序列 subplot(3,1,2);

plot(f(1:N/2),magY(1:N/2));%画出幅频响应 xlabel('f'); ylabel('幅度'); title('N=2000'); grid; %滤波器

fp=90; %通带截止频率 fs=110; %阻带起始频率 Rp=3; %通带最大衰减 Rs=25;%阻带最小衰减

Wp=fp/(fn/2);%计算归一化角频率 Ws=fs/(fn/2);

[n,Wn]=buttord(Wp,Ws,Rp,Rs);%计算阶数和截止频率 [b,a]=butter(n,Wn);%计算H(z)分子、分母多项式系数

[H,F]=freqz(b,a,1000,2000);%计算H(z)的幅频响应,freqz(b,a,计算点数,采样速率) subplot(3,1,3)

plot(F,20*log10(abs(H))) %画出幅频特性图 axis([0,1000,-200,3]); y=filter(b,a,x); figure; plot(t,y);

11

12