logo资料库

巴特沃斯滤波器、切比雪夫1、2滤波器以及椭圆函数形滤波器.doc

第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
资料共7页,全文预览结束
滤波器种类 在本例中,选择三个频率为 5Hz,15Hz,25Hz 的信号,代码如下: F1=5;%第一个点频信号分量频率 F2=15;%第二个点频信号分量频率 F3=25; Fs=100;%采样率 T=10;%时宽 B=10;%FIR 截止频率 n=round(T*Fs);%采样点个数 t=linspace(0,T,n); x=cos(2*pi*F1*t)+cos(2*pi*F2*t)+cos(2*pi*F3*t); figure(11); plot(t,x); title('原始信号时域'); xlabel('t/s'); ylabel('幅度'); figure(13); fft_x=fftshift(fft(x)); f=linspace(-Fs/2,Fs/2,n); plot(f,abs(fft_x)); title('原始信号频谱'); xlabel('f/Hz'); ylabel('幅度'); axis([ 0 50 0 100]); 此行加入任意一个滤波器 figure(12); plot(t,y); title('滤波后信号时域'); xlabel('t/s'); ylabel('幅度'); figure(14); fft_y=fftshift(fft(y)); plot(f,abs(fft_y)); title('滤波后信号频谱'); xlabel('f/Hz'); ylabel('幅度'); axis([ 0 50 0 100]); 具体执行:C:\Users\Administrator\Desktop\任霞\复声强器\12 月 2 日实验 1、巴特沃思 (1)低通 fp=6; fs=9; 1
wp=2*fp/Fs; ws=2*fs/Fs; Rp=2; As=30; [N,wc]=buttord(wp,ws,Rp,As); [b,a]=butter(N,wc,'low'); y=filter(b,a,x); (2)高通 fp=21; fs=19; wp=2*fp/Fs; ws=2*fs/Fs; Rp=2; As=30; [N,wc]=buttord(wp,ws,Rp,As); [b,a]=butter(N,wc,'high'); y=filter(b,a,x); (3)带通 fp1=14; fp2=16; fs1=11; fs2=19; wp1=2*fp1/Fs; wp2=2*fp2/Fs; ws1=2*fs1/Fs; ws2=2*fs2/Fs; wp=[wp1,wp2]; ws=[ws1,ws2]; Rp=2; As=30; [N,wc]=buttord(wp,ws,Rp,As); [b,a]=butter(N,wc,'bandpass'); y=filter(b,a,x); (4)带阻 fp1=11; fp2=19; fs1=14; fs2=16; wp1=2*fp1/Fs; wp2=2*fp2/Fs; ws1=2*fs1/Fs; ws2=2*fs2/Fs; wp=[wp1,wp2]; 2
ws=[ws1,ws2]; Rp=2; As=30; [N,wc]=buttord(wp,ws,Rp,As); [b,a]=butter(N,wc,'stop'); y=filter(b,a,x); 2、切比雪夫Ⅰ型 (1)低通 fp=6; fs=9; wp=2*fp/Fs; ws=2*fs/Fs; Rp=2; As=30; [N,wc]=cheb1ord(ws,wp,Rp,As); [b,a]=cheby1(N,Rp,wc,'low'); y=filter(b,a,x); (2)高通 fp=23; fs=20; wp=2*fp/Fs; ws=2*fs/Fs; Rp=2; As=30; [N,wc]=cheb1ord(ws,wp,Rp,As); [b,a]=cheby1(N,Rp,wc,'high'); y=filter(b,a,x); (3)带通 fp1=14; fp2=16; fs1=11; fs2=19; wp1=2*fp1/Fs; wp2=2*fp2/Fs; ws1=2*fs1/Fs; ws2=2*fs2/Fs; wp=[wp1,wp2]; ws=[ws1,ws2]; Rp=2; As=30; [N,wc]=cheb1ord(ws,wp,Rp,As); [b,a]=cheby1(N,Rp,wc,'bandpass'); y=filter(b,a,x); 3
(4)带阻 fp1=11; fp2=19; fs1=14; fs2=16; wp1=2*fp1/Fs; wp2=2*fp2/Fs; ws1=2*fs1/Fs; ws2=2*fs2/Fs; wp=[wp1,wp2]; ws=[ws1,ws2]; Rp=2; As=30; [N,wc]=cheb1ord(ws,wp,Rp,As); [b,a]=cheby1(N,Rp,wc,'stop'); y=filter(b,a,x); 3、切比雪夫Ⅱ型 (1)低通 fp=6; fs=9; wp=2*fp/Fs; ws=2*fs/Fs; Rp=2; As=30; [N,wc]=cheb2ord(ws,wp,Rp,As); [b,a]=cheby2(N,As,wc,'low'); y=filter(b,a,x); (2)高通 fp=23; fs=20; wp=2*fp/Fs; ws=2*fs/Fs; Rp=2; As=30; [N,wc]=cheb2ord(ws,wp,Rp,As); [b,a]=cheby2(N,As,wc,'high'); y=filter(b,a,x); (3)带通 fp1=14; fp2=16; fs1=11; fs2=19; 4
wp1=2*fp1/Fs; wp2=2*fp2/Fs; ws1=2*fs1/Fs; ws2=2*fs2/Fs; wp=[wp1,wp2]; ws=[ws1,ws2]; Rp=2; As=30; [N,wc]=cheb2ord(ws,wp,Rp,As); [b,a]=cheby2(N,As,wc,'bandpass'); y=filter(b,a,x); (4)带阻 fp1=11; fp2=19; fs1=14; fs2=16; wp1=2*fp1/Fs; wp2=2*fp2/Fs; ws1=2*fs1/Fs; ws2=2*fs2/Fs; wp=[wp1,wp2]; ws=[ws1,ws2]; Rp=2; As=30; [N,wc]=cheb2ord(ws,wp,Rp,As); [b,a]=cheby2(N,As,wc,'stop'); y=filter(b,a,x); 4、椭圆函数型 (1)低通 fp=6; fs=9; wp=2*fp/Fs; ws=2*fs/Fs; Rp=2; As=30; [N,wc]=ellipord(wp,ws,Rp,As); [b,a]=ellip(N,Rp,As,wc,'low'); y=filter(b,a,x); (2)高通 fp=23; fs=21; wp=2*fp/Fs; ws=2*fs/Fs; 5
Rp=2; As=30; [N,wc]=ellipord(wp,ws,Rp,As); [b,a]=ellip(N,Rp,As,wc,'high'); y=filter(b,a,x); (3)带通 fp1=14; fp2=16; fs1=11; fs2=19; wp1=2*fp1/Fs; wp2=2*fp2/Fs; ws1=2*fs1/Fs; ws2=2*fs2/Fs; wp=[wp1,wp2]; ws=[ws1,ws2]; Rp=2; As=30; [N,wc]=ellipord(wp,ws,Rp,As); [b,a]=ellip(N,Rp,As,wc,'bandpass'); y=filter(b,a,x); (4)带阻 fp1=11; fp2=19; fs1=13; fs2=17; wp1=2*fp1/Fs; wp2=2*fp2/Fs; ws1=2*fs1/Fs; ws2=2*fs2/Fs; wp=[wp1,wp2]; ws=[ws1,ws2]; Rp=2; As=30; [N,wc]=ellipord(wp,ws,Rp,As); [b,a]=ellip(N,Rp,As,wc,'stop'); y=filter(b,a,x); 注: 1、冲激响应不变法:在[b,a]=ellip(N,Rp,As,wc,'stop');(此处以 ellip 函数为例)之后加[b0,a0]=impinvar(b,a,Fs);。(impinvar 函 数的位置是 C:\Users\Administrator\Desktop\任霞\DSP\第七章) 6
2、双线性变换法:在[b,a]=ellip(N,Rp,As,wc,'stop');(此处以 ellip 函数为例)之后加[b0,a0]=bilinear(b,a,Fs);。除此之外,还需要变 化,具体见书 453 上午例题 7.22。(bilinear 函数的位置是 C:\Users\Administrator\Desktop\任霞\DSP\第七章) 3、数字频带变换法:详细见书。 7
分享到:
收藏