数字滤波器的设计.ppt_第1页
数字滤波器的设计.ppt_第2页
数字滤波器的设计.ppt_第3页
数字滤波器的设计.ppt_第4页
数字滤波器的设计.ppt_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验八 IIR数字滤波器的设计,按频率选择特性不同,滤波器可以分为低通、高通、带通、带阻等类型。,由于抽样过程造成 频率特性延拓,数字 滤波器所有的频率特 性位于数字角频率轴 上的02区间。其 低频频率成分位于 的偶数倍附近,而高 频成分位于的奇数 倍附近。,理想滤波器对应的时域响应为非因果的,因而实际的滤波器频率特性是用一个具有因果冲激响应的系统函数对理想滤波器频率特性的逼近。,过渡带,低通滤波器幅频特性,IIR滤波器设计过程,按设计任务,确定滤波器性能要求,制定技术指标。 将数字滤波器指标转换成模拟滤波器指标。 设计一个满足设计指标的模拟滤波器系统函数H(s)逼近此性能指标。 将设计的模拟滤波器系统函数H(s)转换成数字滤波器系统函数H(z)。,在MATLAB中,经典设计IIR数字滤波器的步骤: (1)根据给定的性能指标和方法,首先对设计性能指标中的频率指标进行转换,转换后的频率指标作为模拟滤波器原型设计指标; (2)估计模拟滤波器最小阶数和边界频率,可利用MATLAB工具函数buttord,cheb1ord, cheb2ord等。 格式:N,Wc=buttord(wp,ws,Rp,Rs,s) wp, ws,Wc均以弧度/秒为单位。 (3)设计模拟低通滤波器原型,利用函数buttap,cheb1ap等。 格式:z,p,k=buttap(N) 功能:返回N阶归一化原型Butterworth模拟滤波器的零极点增益模型。利用zp2tf函数可求出滤波器的传递函数模型。B,A=zp2tfz,p,k,(4)由模拟低通原型经频率变换得到模拟滤波器(低通、高通,带通、带阻),函数为lp2lp, lp2hp, lp2bp, lp2bs. 格式:Bt,At=lp2lp(B,A,Wc) (5) 将模拟滤波器离散化得到IIR数字滤波器,函数为bilinear, impinvar. 格式:num2,den2=bilinear(Bt,At,fs) 例:试设计一个巴特沃斯数字带通滤波器,要求性能指标为:通带内的衰减-3dB, 0.45 w0.55 ,阻带内的衰减-15dB, 0 w0.3 , 0.7 w ,求此滤波器的系统函数和频率特性。 wp1=0.45*pi;wp2=0.55*pi;Rp=3;T=1 ws1=0.3*pi;ws2=0.7*pi;Rs=15;%数字滤波器指标 Wp1=2/T*tan(wp1/2);Wp2=2/T*tan(wp2/2); Ws1=2/T*tan(ws1/2);Ws2=2/T*tan(ws2/2);%模拟带通滤波器指标,Wpp1=(Wp1*Wp1-Wp1*Wp2)/Wp1/(Wp2-Wp1) Wpp2=(Wp2*Wp2-Wp1*Wp2)/Wp2/(Wp2-Wp1) Wp=max(abs(Wpp1),abs(Wpp2) Wss1=(Ws1*Ws1-Wp1*Wp2)/Ws1/(Wp2-Wp1) Wss2=(Ws2*Ws2-Wp1*Wp2)/Ws2/(Wp2-Wp1) Ws=min(abs(Wss1),abs(Wss2)%模拟低通滤波器的截止频率 N,Wc=buttord(Wp,Ws,Rp,Rs,s);%确定模拟滤波器的最小阶数和截止频率 z,p,k=buttap(N);%模拟原型低通滤波器零极点增益型 ba,aa=zp2tf(z,p,k) Wo=sqrt(Wp1*Wp2);B=Wp2-Wp1; b,a=lp2bp(ba,aa,Wo,B)%模拟原型低通转化为带通滤波器 bz,az=bilinear(b,a,1/T)%采用双线性变换转化为数字滤波器 freqz(bz,az,512),直接设计数字滤波器的MATLAB函数: N,wn=buttord(wp,ws,Rp,Rs) %数字频率采用标准化频率,取值范围为01之间,标准化频率1对应的数字频率为,对应的模拟频率为采样频率的一半。设计带通滤波器时,wp=wp1,wp2; ws=ws1,ws2 b,a=butter(N,wn) b,a=butter(N,wn,ftype) %N为滤波器的阶数,wn为滤波器的截止频率(01),“ftype”为滤波器的类型:high为高通,stop为带阻,截止频率为wn=w1,w2;带通滤波时, wn=w1,w2;缺省时为低通和带通滤波器,切比雪夫1型数字滤波器设计函数,阶数选择函数: N,wn=cheb1ord(Wp,Ws,rp,rs)设计的要求是在通带内的衰减不超过rp,在阻带内的衰减不小于 rs ,通带和阻带的截止频率为归一化频率值。 num,den=cheby1(N,rp,wn); num,den=cheby1(N,rp,wn,high); num,den=cheby1(N,rp,wn,stop);,1 wp=0.2*pi; %digital Passband freq in rad ws=0.3*pi; %digital Stopband freq in rad Fs=1000; wp1=2*Fs*tan(wp/2);ws1=2*Fs*tan(ws/2); Rp=1;Rs=15; N,Wn=buttord(wp1,ws1,Rp,Rs,s); %返回模拟滤波器的最小阶数和截止频率 Z,P,K=buttap(N); %模拟低通滤波器原型 Bap,Aap=zp2tf(Z,P,K); b,a=lp2lp(Bap,Aap,Wn); bz,az=bilinear(b,a,Fs); H,W=freqz(bz,az); plot(W,abs(H); grid xlabel(频率/弧度) ylabel(频率响应幅度) H,W=freqz(bz,az,50) figure stem(W,abs(H),第一题直接设计数字滤波器程序,wp=0.2; %归一化通带截止频率 ws=0.3; %归一化阻带截止频率 Rp=1;Rs=15; N,Wn=buttord(wp,ws,Rp,Rs); %返回模拟滤波器的最小阶数和截止频率 bz,az=butter(N,Wn); H,W=freqz(bz,az); plot(W,abs(H) grid xlabel(频率/弧度) ylabel(频率响应幅度) H,W=freqz(bz,az,50) figure stem(W,abs(H),例:设计一个butterworth高通数字滤波器,满足:通带边界频率为400Hz,阻带边界频率为200Hz;通带纹波小于3dB;阻带衰减大于15dB;采样频率为1000Hz。 MATLAB程序如下: fs=1000; wp=400*2/fs; ws=200*2/fs;rp=3;rs=15;Nn=128; N,wn=buttord(wp,ws,rp,rs); ba,az=butter(N,wn,high) freqz(b,a,Nn,fs),fs=1000; wp=100 250*2/fs; ws=50 300*2/fs; rp=3; rs=30; Nn=128; N,wn=cheb2ord(wp,ws,rp,rs) b,a=cheby2(N,rp,wn,bandpass) freqz(b,a,Nn,fs) 运行结果,4、带通滤波器程序,设计一个高通Chebyshev1型数字滤波器,要达到的要求:wp=80Hz,ws=60Hz,rp=1,rs=40,Fs=200Hz,wp=80,ws=60

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论