基于MatLab的IIR和FIR滤波器仿真.doc_第1页
基于MatLab的IIR和FIR滤波器仿真.doc_第2页
基于MatLab的IIR和FIR滤波器仿真.doc_第3页
基于MatLab的IIR和FIR滤波器仿真.doc_第4页
基于MatLab的IIR和FIR滤波器仿真.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

基于MatLab的IIR和FIR滤波器仿真专 业: 学 号: 姓 名: 2016年12月一、设计原理数字滤波器在数字信号处理中起着非常重要的作用,用于信号的过滤、检测与参数估计等方面,是使用最为广泛的一种现行系统。实现数字滤波器的方法有两种,一是采用计算机软件进行,就是把所要完成的工作通过程序让计算机来实现;二是设计专用的数字处理硬件。这个地方主要用到的就是第一种方法。即是用Matlab提供的信号处理工具箱来实现数字滤波器。Matlab信号处理工具箱提供了丰富的设计方法,可以使得繁琐的程序设计简化成函数的调用,只要以正确的指标参数调用函数,就可以正确快捷地得到设计结果。二、设计方案1、利用双线性变换设计IIR滤波器(只介绍巴特沃斯数字低通滤波器的设计),首先要设计出满足指标要求的模拟滤波器的传递函数,然后由通过双线性变换可得所要设计的IIR滤波器的系统函数。 对于IIR数字滤波器的设计具体步骤如下:(1)按照一定的规则将给出的数字滤波器的技术指标转换为模拟低通滤波器的技术指标。(2)根据转换后的技术指标设计模拟低通滤波器(H(s)(H(s)是低通滤波器的传递函数)。(3)再按照一定的规则将H(s)转换成H(z)(H(z)是数字滤波器的传递函数)。若设计的数字滤波器是低通的,上述的过程可以结束,若设计的是高通、带通或者是带阻滤波器,那么还需要下面的步骤:将高通、带通或带阻数字滤波器的技术指标转换为低通模拟滤波器的技术指标,然后设计出低通H(s),再将H(s)转换为H(z)。具体的变换是:首先将给定的数字滤波器的指标转换成模拟滤波器的技术指标,这里主要是边界频率Wp和Ws的转换,对p和s指标不作变化。边界频率的转换关系为。接着,按照模拟低通滤波器的技术指标根据相应设计公式求出滤波器的阶数N和3dB截止频率C;根据阶数N查巴特沃斯归一化低通滤波器参数表,得到归一化传输函数H(p);最后,将代入H(p)去归一,得到实际的模拟滤波器传输函数H(s)。之后,通过双线性变换法转换公式,得到所要设计的IIR滤波器的系统函数H(z)。2、 对于用窗函数法设计FIR滤波器的设计具体步骤如下:如果所希望的滤波器的理想频率响应函数为,则其对应的单位脉冲响应为窗函数设计法的基本原理是用有限长单位脉冲响应逼近。由于往往是无限长序列,且是非因果的,所以用窗函数将截断,并进行加权处理,得到:就作为实际设计的FIR数字滤波器的单位脉冲响应序列,其频率响应函数为式中,为所选窗函数的长度。用窗函数法设计的滤波器性能取决于窗函数的类型及窗口长度的取值。设计过程中,要根据对阻带最小衰减和过渡带宽度的要求选择合适的窗函数类型和窗口长度。设待求滤波器的过渡带用表示,它近似等于窗函数主瓣宽度。因过渡带近似与窗口长度成反比,决定于窗口形式。例如,矩形窗A=4,海明窗A=8等。按照过渡带及阻带衰减情况,选择窗函数形式。原则是在保证阻带衰减满足要求的情况下, 尽量选择主瓣窄的窗函数。这样选定窗函数类型和窗口长度后,求出单位脉冲响应,再求出。是否满足要求,要进行验算。一般在的尾部加零使长度满足的整数次幂,以便用FFT计算。如果要观察细节,补零点数增多即可。如果不满足要求,则要重新选择窗函数类型和长度,再次验算,直至满足要求。如果要求线性相位特性,则还必须满足:根据上式中的正、负号和长度的奇偶性又将线性相位FIR滤波器分成四类。要根据所设计的滤波特性正确选择其中一类。例如,要设计线性相位低通特性,可选择一类, 而不能选一类。三、仿真结果及分析1、IIR滤波器 (1)用双线性变换法去设计一个巴特沃斯IIR低通数字滤波器。设计指标参数为:在通带内频率低于0.2时,最大衰减小于1dB,在阻带内0.3,频率区间上,最小衰减大于15dB。 (2)以0.02为采样间隔,绘制出数字滤波器在频率区间0,/2上的幅频响应特性曲线。 (3)程序及图形 程序及实验结果如下:rp=1;rs=15;wp=.2*pi;ws=.3*pi;wap=tan(wp/2);was=tan(ws/2);n,wn=buttord(wap,was,rp,rs,s);z,p,k=buttap(n);bp,ap=zp2tf(z,p,k);bs,as=lp2lp(bp,ap,wap);bz,az=bilinear(bs,as,.5);h,f=freqz(bz,az,256,1);plot(f,abs(h);title(双线性z变换法获得数字低通滤波器,归一化频率轴);xlabel(omega/2pi);ylabel(低通滤波器的幅频相应);grid;figure;h,f=freqz(bz,az,256,100);ff=2*pi*f/100;absh=abs(h);plot(ff(1:128),absh(1:128);title(双线性z变换法获得数字低通滤波器,频率轴取0,pi/2);xlabel(omega);ylabel(低通滤波器的幅频相应);grid on; 运行结果:2、FIR滤波器 根据下列技术指标,设计一个线性相位的FIR数字低通滤波器。通带截止频率Wp=0.2,通带允许波动Ap=0.25dB;阻带截止频率Ws=0.2,阻带衰减As=50dB。 程序如下:wp=0.2*pi;N=10;b=fir1(N,wp/pi,boxcar(N+1);t=0:10;subplot(211)stem(t,b);title(滤波器的单位脉冲响应);h,w=freqz(b,1,256,1);h=abs(h);subplot(212)plot(w,h)title(幅频响应)运行结果:4、 体会与小结由于数字滤波器的概念比较抽象,加上其数值计算又比较繁琐,所以借助好的计算机软件来进行辅助设计,是数字滤波器研究领域的一个发展趋势。这样的软件有很多种,其中最具代表性的就是MATLAB。MATLAB语言及其工具箱将一个优秀软件包的易用性与可靠性,通用性和专业性,以及一般目的的应用和高深的专业应用近乎完美地集成在一起。利用MATLAB软件,可以使数字滤波器的设计和实现变得事半功倍,因此,本文借助MATLAB软件来进行应用研究。 通过这几个实验,对设计数字滤波器的整个过程有了很好的掌握。其中对双线性变换法,窗函数法设计模拟滤波器的运用,也更加清楚了。通过对数字低通滤波器的设计,熟悉了MATLAB的运行环境,初步掌握了MATLAB语言在数字信号处理中一些基本库函数的调用和编写基本程序等应用;熟悉了滤波器设计的一般原理,对滤波器有了一个感性的认识;学会了数字低通滤波器设计的一般步骤;加深了对滤波器设计中产生误差的原因以及双线性变换法优缺点的理解和认识。总之,使理论联系了实际,巩固并深化了对课本基本知识的认识和理解,使理论得以升华。 IIR数字滤波器和FIR数字滤波器各有优点,但是FIR数字滤波器比IIR数字滤波器有稳定、误差小、运算效率高等优势。通过具体的数字滤波器设计过程,充分说明在MATLAB环境中,数字滤波 器的设计已变得异常简单和高效率,而且结果更为稳定、可靠。相信随着MATLAB 软件在信息技术中的不断推广和使用,将会使科技工程人员从各类烦琐的计算工作中解脱出来,有时间思考和研究更重要的问题,这必将为科技的进步起到巨大的推动作用。 五、参考文献1严小军等.基于MATLAB的IIR数字滤波器设计与仿真,计算机与现代化,20072姚天任,孙红.现代数字信号处理.武汉:华中理工大学出版社,19993高西全,丁美玉.数字信号处理.西安:西安电子科技大学出版社,20054余成波等,数字信号处理及MATLAB实现,北京:清华大学出版社,20055祁才君,数字

温馨提示

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

评论

0/150

提交评论