IIR数字滤波器的结构及设计_第1页
IIR数字滤波器的结构及设计_第2页
IIR数字滤波器的结构及设计_第3页
IIR数字滤波器的结构及设计_第4页
IIR数字滤波器的结构及设计_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

-.z4.3IIR数字滤波器的构造与设计IIR滤波器系统函数的极点可以在单位圆内的任何位置,实现IIR滤波器的阶次较低,所用的存储单元较少,效率高,又由于IIR数字滤波器能够保存一些模拟滤波器的优良特性,因此应用很广。设计IIR数字滤波器的方法主要有基于冲激响应不变法的IIR数字滤波器设计,基于双线性Z变换法的IIR数字滤波器设计,数字高通、带通及带阻IIR滤波器设计,基于MATLAB函数直接设计IIR数字滤波器。基于冲激响应不变法的IIR数字滤波器设计冲激响应不变法的设计原理是利用数字滤波器的单位抽样响应序列H(z)来逼近模拟滤波器的冲激响应g(t)。按照冲激响应不变法的原理,通过模拟滤波器的系统传递函数G(s),可以直接求得数字滤波器的系统函数H(z),其转换步骤如下:1)利用ω=ΩT(可由关系式推导出),将,转换成,Ω,而,不变;2)求解低通模拟滤波器的传递函数G(s);3)将模拟滤波器的传递函数G(s)转换为数字滤波器的传递函数H(z)。尽管通过冲激响应不变法求取数字滤波器的系统传递函数比较方便,并具有良好的时域逼近特性,但假设G(s)不是带限的,或是抽样频率不高,则在中将发生混叠失真,数字滤波器的频率响应不能重现模拟滤波器的频率响应。只有当模拟滤波器的频率响应在超过折叠频率后的衰减很大时,混叠失真才很小,此时采样脉冲响应不变法设计的数字滤波器才能满足设计的要求,这是冲激响应不变法的一个严重的缺点。【例4-1】设模拟低通巴特沃斯滤波器,通带纹波为=1dB,通带上限角频率=0.2π,阻带下限角频率=0.3π,阻带最小衰减=15dB,根据该低通模拟滤波器,利用冲激响应不变法设计响应的数字低通滤波器,并绘出设计后的数字滤波器的特性曲线。实现例4-1的MATLAB程序如例程4-1所示,程序的运行结果如图4-1所示。例程4-1利用冲激响应不变法设计数字低通滤波器%利用模拟巴特沃斯滤波器设计数字低通滤波器%冲激响应不变法wp=0.2*pi;ws=0.3*pi;Rp=1;As=15;T=1;%性能指标Rip=10^(-Rp/20);Atn=10^(-As/20);OmgP=wp*T;OmgS=ws*T;[N,OmgC]=buttord(OmgP,OmgS,Rp,As,'s');%选取模拟滤波器的阶数[cs,ds]=butter(N,OmgC,'s');%设计出所需的模拟低通滤波器[b,a]=impinvar(cs,ds,T);%应用脉冲响应不变法进展转换%求得相对、绝对频响及相位、群迟延响应[db,mag,pha,grd,w]=freqz_m(b,a);%下面绘出各条曲线subplot(2,2,1);plot(w/pi,mag);title('幅频特性');*label('w(/pi)');ylabel('|H(jw)|');a*is([0,1,0,1.1]);set(gca,'*TickMode','manual','*Tick',[00.20.30.51]);set(gca,'YTickMode','manual','YTick',[0AtnRip1]);gridsubplot(2,2,2);plot(w/pi,db);title('幅频特性(db)');*label('w(/pi)');ylabel('dB');a*is([0,1,-40,5]);set(gca,'*TickMode','manual','*Tick',[00.20.30.51]);set(gca,'YTickMode','manual','YTick',[-40-As-Rp0]);gridsubplot(2,2,3);plot(w/pi,pha/pi);title('相频特性');*label('w(/pi)');ylabel('pha(/pi)');a*is([0,1,-1,1]);set(gca,'*TickMode','manual','*Tick',[00.20.30.51]);gridsubplot(2,2,4);plot(w/pi,grd);title('群延时');*label('w(/pi)');ylabel('Sample');a*is([0,1,0,12]);set(gca,'*TickMode','manual','*Tick',[00.20.30.51]);grid%所使用的M文件函数function[db,mag,pha,grd,w]=freqz_m(b,a)%滤波器的幅值响应(相对、绝对)、相位响应及群延迟%Usage:[db,mag,pha,grd,w]=freqz_m(b,a)%500点对应[0,pi]%w采样频率;b系统函数H(z)的分子项(对FIR,b=h)%a系统函数H(z)的分母项(对FIR,a=1)[H,w]=freqz(b,a,500);%500点的复频响应mag=abs(H);%绝对幅值响应db=20*log10(mag/ma*(mag));%相对幅值响应pha=angle(H);%相位响应grd=grpdelay(b,a,w);%群延迟响应图4-1利用冲激响应不变法设计的数字低通滤波器的特性曲线基于双线性Z变换法的IIR数字滤波器设计由于的频率映射关系是根据推导的,所以使jΩ轴每隔2π/Ts便映射到单位圆上一周,利用冲激响应不变法设计数字滤波器时可能会导致上述的频域混叠现象。为了抑制这一问题,需要找到由s平面到z平面的另外的映射关系,这种关系应保证:1)s平面的整个jΩ轴仅映射为z平面单位圆上的一周;2)假设G(s)是稳定的,由G(s)映射得到的H(z)也应该是稳定的;3)这种映射是可逆的,既能由G(s)得到H(z),也能由H(z)得到G(s);4)如果G(j0)=1,则。双线性Z变换满足以上4个条件的映射关系,其变换公式为(4-10)双线性Z变换的根本思路是:首先将整个s平面压缩到一条从–π/Ts到π/Ts的带宽为2π/Ts的横带里,然后通过标准的变换关系将横带变换成整个z平面上去,这样就得到s平面与z平面间的一一对应的单值关系。在MATLAB中,双线性Z变换可以通过bilinear函数实现,其调用格式为:[Bz,Az]=bilinear(B,A,Fs);其中B,A为模拟滤波器传递函数G(s)的分子分母多项式的系数向量,而Bz,Az为数字滤波器的传递函数H(z)的分子分母多项式的系数向量。【例4-2】使用双线性Z变换法设计一个低通数字滤波器,给定的数字滤波器的技术指标为fp=100Hz,fs=300Hz,αp=3dB,αp=20dB,抽样频率为Fs=1000Hz。实现例4-2的MATLAB程序如例程4-2所示,程序的运行结果如图4-2所示。例程4-2基于双线性Z变换法设计数字滤波器clearall;fp=100;fs=300;Fs=1000;rp=3;rs=20;%wp=2*pi*fp/Fs;ws=2*pi*fs/Fs;Fs=Fs/Fs;%Firstlytofinishfrequencyprewarping;wap=tan(wp/2);was=tan(ws/2);[n,wn]=buttord(wap,was,rp,rs,'s')%Note:'s'![z,p,k]=buttap(n);[bp,ap]=zp2tf(z,p,k)[bs,as]=lp2lp(bp,ap,wap)%Note:s=(2/Ts)(z-1)(z+1);Ts=1,thatis2fs=1,fs=0.5;[bz,az]=bilinear(bs,as,Fs/2)[h,w]=freqz(bz,az,256,Fs*1000);plot(w,abs(h));gridon;【运行结果】n=2wn=0.4363bp=001ap=1.00001.41421.0000bs=0.1056as=1.00000.45950.1056bz=0.06750.13490.0675az=1.0000-1.14300.4128图4-2基于双线性Z变换法设计的数字滤波器的特性曲线数字高通、带通及带阻IIR滤波器设计除了低通数字滤波器之外,实际中还常常需要高通、带通及带阻数字滤波器,这三种数字滤波器的设计步骤如下:步骤1:将数字滤波器H(z)的技术指标ωp和ωs,通过Ω=tan(ω/2)转变为模拟滤波器G(s)的技术指标Ωp和Ωs,作归一化处理后,得到ηp=1,ηs=Ωs/Ωp;步骤2:化解为模拟原型滤波器G(s)的技术指标;步骤3:设计模拟原型滤波器G(p);步骤4:将G(p)转换为模拟滤波器的转移函数G(s);步骤5:将G(s)转换成数字滤波器的转移函数H(z),s=(z–1)(z+1)。所谓原型滤波器是指归一化的低通滤波器。本节主要讨论通过IIR数字滤波器的原型转换设计法和IIR数字滤波器的直接设计方法来设计数字高通、带通及带阻滤波器其转换方法主要有3种:一是直接由模拟低通滤波器转换成数字高通、带通或带阻滤波器;二是先由模拟低通滤波器转换成模拟高通、带通或带阻滤波器,然后再把它转换成相应的数字滤波器;三是将模拟低通滤波器先转换成数字低通滤波器,再通过变量代换变换成高通、带通或带阻滤波器。1.直接由模拟低通滤波器转换成数字高通、带通或带阻滤波器(1)模拟低通滤波器转换成数字高通滤波器【例4-3】利用巴特沃斯模拟滤波器设计数字高通滤波器,要求通带截止频率为0.6π,通带内衰减不大于1dB,阻带起始频率为0.4π,阻带内衰减不小于15dB,采样周期Ts=1。该例的MATLAB实现如例程4-3所示,该数字滤波器的幅频特性曲线如图4-3所示。例程4-3基于巴特沃斯模拟滤波器设计数字高通滤波器Wp=0.6*pi;Ws=0.4*pi;Ap=1;As=15;[N,wn]=buttord(Wp/pi,Ws/pi,Ap,As);%计算巴特沃斯滤波器阶次和截止频率[b,a]=butter(N,wn,'high');%频率变换法设计巴特沃斯高通滤波器[db,mag,pha,grd,w]=freqz_m(b,a);%数字滤波器响应Plot(w/pi,mag);Title('数字滤波器幅频响应|H(ejOmega)|')图4-3基于巴特沃斯模拟滤波器设计的数字高通滤波器幅频响应曲线(2)模拟低通滤波器转换成数字带通滤波器【例4-4】利用巴特沃斯模拟滤波器设计数字带通滤波器,要求通带上下截止频率为0.4π、0.3π,通带内衰减不大于3dB,阻带上下起始频率为0.5π、0.2π,阻带内衰减不小于18dB。该例的MATLAB实现如例程4-4所示,该数字滤波器的幅频特性曲线如图4-4所示。例程4-4基于巴特沃斯模拟滤波器设计数字带通滤波器Wp=[0.3*pi,0.4*pi];Ws=[0.2*pi,0.5*pi];Ap=3;As=18;[N,wn]=buttord(Wp/pi,Ws/pi,Ap,As);%计算巴特沃斯滤波器阶次和截止频率[b,a]=butter(N,wn,'bandpass');%频率变换法设计巴特沃斯带通滤波器[db,mag,pha,grd,w]=freqz_m(b,a);%数字滤波器响应Plot(w/pi,mag);Title('数字滤波器幅频响应|H(ejOmega)|')图4-4基于巴特沃斯模拟滤波器设计的数字带通滤波器的幅频响应曲线(3)模拟低通滤波器转换成数字带阻滤波器【例4-5】利用巴特沃斯模拟滤波器设计数字带阻滤波器,要求通带上下截止频率为0.8π和0.2π,通带内衰减不大于1dB,阻带上下起始频率为0.7π和0.4π,阻带内衰减不小于30dB。该例的MATLAB实现如例程4-5所示,该数字滤波器的幅频特性曲线如图4-5所示。例程4-5基于巴特沃斯模拟滤波器设计数字带阻滤波器Wp=[0.4*pi,0.7*pi];Ws=[0.2*pi,0.8*pi];Ap=1;As=30;[N,wn]=buttord(Wp/pi,Ws/pi,Ap,As);%计算巴特沃斯滤波器阶次和截止频率[b,a]=butter(N,wn,'stop');%频率变换法设计巴特沃斯带通滤波器[db,mag,pha,grd,w]=freqz_m(b,a);%数字滤波器响应plot(w/pi,mag);Title('数字滤波器幅频响|H(ejOmega)|')图4-5基于巴特沃斯模拟滤波器设计数字带阻滤波器2.先由模拟低通滤波器转换成模拟高通、带通或带阻滤波器,然后再把它转换成相应的数字滤波器首先由频率变换将模拟低通原型滤波器变换成模拟高通、带通或带阻滤波器,然后根据双线性Z变换将模拟高通滤波器变换成相应的高通、带通或带阻数字滤波器。其模拟低通原型滤波器变换成模拟高通、带通或带阻滤波器的关系式如表4-1所示。表4-1模拟低通原型滤波器变换成模拟高通、带通或带阻滤波器频率变换模拟滤波器类型频率变换公式高通带通带

温馨提示

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

评论

0/150

提交评论