资源描述:
《高通滤波器matlab编写)切比雪夫.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、设计一个高通滤波器,并检验它的性能采样率为10kHZ阻带边缘为1.5Khz,衰减为40bB通带边缘为2kHz,波纹为3Db采用切比雪夫2型滤波器Fs=1e4;fs=1.5e3;fp=2e3;As=40;Rp=3;wp=2*fp/Fs;ws=2*fs/Fs;用MATLAB工具:设计的滤波器性能>>Fs=1e4;>>fs=1.5e3;>>fp=2e3;>>As=40;>>Rp=3;>>wp=2*fp/Fs;>>ws=2*fs/Fs;>>[N,wn]=cheb2ord(wp,ws,Rp,As);>>[b,a]=cheby2(N,As,wn,'high');>>[db,mag,pha,grd,
2、w]=freqz_m(b,a);>>subplot(2,2,1);plot(w/pi,mag);>>axis([0,1,0,1]);>>setX([00.30.41]);>>setY([0.010.72791])>>title('MagnitudeResponse');>>subplot(2,2,2);plot(w/pi,db);>>axis([01-700])>>setX([00.30.41])>>setY([-40-2.7589])>>title('MagnitudeResponseindB');输入信号x=cos(0.6*pi*n);取200个抽样值,为了便于观看,在画图是裁剪掉
3、100个值不直观,直接做频谱图为了说明该滤波器的性能,做一组对比。换上另一种频率的信号x=cos(0.2*pi*n);由上图可以看到该信号完全被滤去了可以看出在20和180点的信号几乎淹没了。注意在此时选取点数时一定要是周期的整数倍,此题N=2*pi/0.6pi=10/3,周期是10如果选取201点,可以看出频率已经泄露>>n=0:200;>>x=cos(0.6*pi*n);>>y=filter(b,a,x);>>subplot(2,2,3);plot(n,x);>>subplot(2,2,4);plot(n,y);>>x1=fft(x,201);>>x11=abs(x1);>>sub
4、plot(2,2,1);stem(n,x11);>>y1=fft(y,201);>>y11=abs(y1);>>subplot(2,2,2);stem(n,y11);>>setX([060140201])>>title('FFTofy');>>subplot(2,2,1);stem(n,x11);>>setX([060140201])>>title('FFTofx');>>g=x11-y11;>>subplot(2,2,3);stem(n,g);