您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 电子设计/PCB > 基于MATLAB的数字带通滤波器
1《Matlab程序设计》课程设计(论文)题目名称____MATLAB的数字带通滤波器学院________汽车学院_____专业_____车辆工程__班级_____2012级本科1班_学号_______201203130121________学生姓名________刘金龙_____指导教师________陈佩江__________2015年07月08日2摘要:关于滤波器设计的传统思路,本文借助Matlab软件中滤波器设计工具,探讨一种更为简洁、高效的设计方式。传统的数字滤波器的设计过程复杂,计算工作量大,滤波特性调整困难,影响了它的应用。本文介绍了一种利用MATLAB信号处理工具箱(SignalProcessingToolbox)快速有效的设计由软件组成的常规数字滤波器的设计方法。本文给出了使用MATLAB语言进行程序设计和利用信号处理工具箱的FDATool工具进行界面设计的方法。利用MATLAB设计滤波器,可以随时对比设计要求和滤波器特性调整参数,直观简便,极大的减轻了工作量,有利于滤波器设计的最优化。关键词:带通滤波器;MATLAB;设计工具随着信息科学与计算技术的迅速发展,数字信号处理的理论与应用得到飞跃式发展,形成了一门极为重要的学科[1]。滤波技术是信号分析、处理技术的重要分支。无论是信号的获取、传输,还是信号的处理和交换都离不开滤波技术,它对信号安全可靠和有效灵活地传递是至关重要的。故滤波技术是极为敏感与热门的课题,对滤波器的研制也历来为各国所重视[3]。任务与要求设计任务:要求设计一个IIR带通滤波器,其中通带的中心频率为5.0po,通带的截止频率4.01p,6.02p,通带最大衰减dBp3;阻带最小衰减dBs15,阻带截止频率3.01s,7.02s。设计要求:1.根据设计任务要求给出实现方案及实现过程。2.给出所实现的滤波器幅频特性及相频特性曲线并加以分析。3.论文要求思路清晰,结构合理,语言流畅,书写格式符合要求。一、设计任务设计一数字带通滤波器,用IIR来实现,其主要技术指标:通带边缘频率:wp1=0.4,wp2=0.6通带最大衰减:Ap=3dB3阻带边缘频率:ws1=0.3,ws2=0.7阻带最小衰减:As=15dB设计总体要求:用MATLAB语言编程进行设计,给出IIR数字滤波器的参数,给出幅度和相位响应曲线,对IIR实现形式和特点等方面进行讨论。二、设计方法IIR数字滤波器具有无限宽的冲激响应,与模拟滤波器相匹配,所以IIR滤波器的设计可以采取在模拟滤波器设计的基础上进一步变换的方法。比较常用的原型滤波器有巴特沃什滤波器(Butterworth)、切比雪夫滤波器(Chebyshev)、椭圆滤波器(Ellipse)和贝塞尔滤波器(Bessel)等。他们有各自的特点,巴特沃什滤波器具有单调下降的幅频特性;切比雪夫滤波器的幅频特性在通带和阻带里有波动,可以提高选择性;贝塞尔滤波器通带内有较好的线性相位特性;椭圆滤波器的选择性最好。本设计IIR数字滤波器采用巴特沃什滤波器[3]。设计巴特沃什数字滤波器时,首先应根据参数要求设计出相应的模拟滤波器,其步骤如下:(1)由模拟滤波器的设计指标wp,ws,Ap,As和式(1)确定滤波器阶数N。)lg(2)110110lg(1.01.0wwspAsApN(1)(2)由式(2)确定wc。NAsscNApp)110()110((2)(3)若N是奇数,则有式(3)和式(4)确定滤波器的系统函数;若N是偶数,则式(3)和式(5)确定滤波器的系统函数。然后把设计好的模拟Butterworth滤波器变换成数字滤波器,常采用的方法有脉冲响应不变法和双线性变换法[4]。4)()(wsHsHcLO(3)2/)1(121)(sin21)1(1)(NkkLOssssH(4)2/121)(sin21)(NkkLOsssH(5)巴特沃什滤波器是根据幅频特性在通频内具有最平坦特性而定义的滤波器。一维巴特沃什滤波器的平方幅频特性函数为221()1NcHj(6)可以看出,滤波器的幅频特性随着滤波器阶次N的增加而变得越来越好。在截止频率Ωc处的函数值始终为12的情况下,在通带内更多的频带区的值接近1;在阻带内函数更迅速的趋近0。巴特沃什滤波器的主要特征:(1)对于所有N,20()1ajH(2)对于所有N,212()cajH(3)2()ajH是Ω的单调下降函数。(4)2()ajH随着阶次N的增大而更加接近于理想滤波器。最常用于设计IIR数字带通滤波器的方法基于原型模拟传输函数的双线性变换。模拟传输函数通常是:巴特沃什、切比雪夫1型、切比雪夫2型和椭圆传输函数。巴特沃什低通传输函数在dc处有一个最大平坦的幅度响应,且随着频率增加幅度响应单调地减少。本设计IIR数字带通滤波器就采用巴特沃什型。巴特沃什型数字带通滤波器的设计,MATLAB调用形式如下:[N,wn]=buttord(wp,ws,Ap,As)[num,den]=butter(N,wn)5在buttord中,调用参数wp,ws,是数字带通滤波器的归一化通带和阻带截止频率,Ap是通带最大衰减,As是阻带最小衰减。返回参数N是巴特沃什滤波器的阶数,wn是3dB截止频率,函数butter获得数字(den)和(num)是巴特沃什滤波器系统函数H(z)的分母多项式和分子多项式。三、数字带通滤波器的具体设计及实现3.1用MATLAB设计的IIR数字带通滤波器的具体程序如下:ws=[0.30.7];%ws为归一化阻带边界频率wp=[0.40.6];%wp为归一化通带边界频率Ap=3;%Ap单位为dB的通带波形As=15;%As单位为dB的最小阻带衰减[n1,wn1]=buttord(wp,ws,Ap,As);%估计数字滤波器的阶数%wn1为归一化截止频率[num,den]=butter(n1,wn1);%设计数字滤波器%计算单位为dB的gain函数%单位圆上将函数转化为256等份w=0:pi/255:pi;%计算相位h=freqz(num,den,w);%频率计算g=20*log10(abs(h));%计算幅度pha=angle(h);%相角计算%画带通滤波器的幅度曲线图subplot(1,2,1);%创建子图plot(w/pi,g);%二维直角坐标曲线图grid%画坐标网格图axis([01-605]);%轴的刻度与表现xlabel('\omega/\pi');ylabel('幅度');%横坐标表示频率%纵坐标表示分贝数6title('数字带通滤波器幅频曲线');%写标题subplot(1,2,2);plot(w/pi,pha);grid%画带通滤波器的相位曲线图xlabel('\omega/\pi');ylabel('相位');title('数字带通滤波器相位曲线');3.2IIR数字带通滤波器的仿真结果及其分析从仿真过程和结果可以得出:IIR数字滤波器的阶数为:n1=3截止频率为:wn1=0.37590.6241系统函数()Hz的分子系数为:num=0.03110-0.093300.09330-0.0311系统函数()Hz的分母系数为:den=1.0000-0.00001.4703-0.00000.9195-0.00000.2004根据运行结果可写出IIR滤波器的系统函数为:根据上述系统传递函数得到仿真数字滤波器的频率特性曲线如下7图1IIR数字带通滤波器的幅频响应和相位响应从图可以看出巴特沃什滤波器具有单调下降的幅频特性,并在截止频率wc处的函数值为0.5的情况下,通带内的值为1;在阻带内函数值更迅速的趋近0。相频特性曲线则呈非线性这表明会使信号产生失真。3.3其它方法的滤波器设计3.3.1ChebyshevⅡ型滤波器设计条件同上,程序如下:Wp=[0.4,0.6];Ws=[0.0154,0.7];ap=3;as=15;[N,Wn]=cheb2ord(Wp,Ws,ap,as);[num,den]=cheby2(N,as,Wn);figure;freqz(num,den)特性曲线如图所示:由图可知,ChebyshevII型滤波器在0.0154π到0.6π左右为单调递减8趋势的通带,在接近0.6π左右时即为阻带ChebyshevII型滤波器其通带内为单调,阻带内等波纹,但其阻带内波纹较大。3.3.2椭圆型滤波器设计条件同上,程序如下:Wp=[0.4,0.6];Ws=[0.0154,0.7];ap=3;as=15;[N,Wn]=ellipord(Wp,Ws,ap,as);[num,den]=ellip(N,ap,as,Wn);figure;freqz(num,den)特性曲线如图所示:椭圆滤波器的幅频特性曲线与Butterworth和chebyshev滤波器相比,通带附近波形斜率很大,ellip函数可以得到下降斜度更大的滤波器,得到通带和阻带均为等波纹。一般情况下,椭圆滤波器能以最低的阶实现指定的性能指标。其相频特性曲线为三者中波动最大的,其在通带范围时迅速升高和下降,然后恢复正常。9四、结论利用MATLAB的信号处理工具箱强大的信号处理功能,采用编程的方法设计数字滤波器,使设计达到了最优化;并且它可以快速的实现数字滤波器的仿真,使设计达到了最简化。本文设计的数字滤波器采用IIR来实现,IIR采用巴特沃什函数法,按设计指标要求进行设计。利用MATLAB采用编程的方法实现。通过对IIR数字滤波器程序的编写和实现可知IIR数字滤波器幅频特性较好,而相频特性曲线呈非线性,会使信号产生失真,阶数比较低,系统相对不稳定,这个问题有待解决。参考文献[1]胡光书.数字信号处理:理论、算法与实现[M],北京:清华大学出版社,1997:136-155.[2]邓华.MATLAB通信仿真及应用实例解析[M],北京:人民邮电出版社,1997:123-156.[3]楼天顺.基于MATLAB的系统分析与设计-信号处理[M],西安:西安电子科技大学出版社,1998:133-142.[4]蒋志凯.数字滤波与卡尔曼滤波[M],北京:中国科学技术出版社,1993:100-120.
本文标题:基于MATLAB的数字带通滤波器
链接地址:https://www.777doc.com/doc-7266735 .html