当前位置:文档之家› MATLAB的建模和仿真

MATLAB的建模和仿真

课程设计说明书题目:基于Matlab的IIR滤波器设计与仿真班级:2012 级电气五班*名:**学号:************指导教师:***日期:2015年 1 月12日课程设计任务书基于MATLAB的IIR滤波器设计与仿真前言数字信号处理(digital signal processing,DSP)是从20世纪60年代以来,随着信息学科和计算机学科的高速发展而迅速发展起来的一门新兴学科。

数字信号处理是把信号用数字或符号表示的序列,通过计算机或通用(专用)信号处理设备,用数字的数值计算方法处理(例如滤波、变换、压缩、增强、估计、识别等),以达到提取有用信息便于应用处理的目的。

数字信号处理系统有精度高、灵活性高、可靠性高、容易大规模集成、时分复用、可获得高性能指标、二维与多维处理等特点。

正是由于这些突出的特点,使得它在通信、语音、雷达、地震测报、声呐、遥感、生物医学、电视、仪器中得到愈来愈广泛的应用。

在数字信号处理中起着重要的作用并已获得广泛应用的是数字滤波器(DF,Digital Filter),根据其单位冲激响应函数的时域特性可分为两类:无限冲激响应IIR(Infinite Impulse Response)滤波器和有限冲激响应FIR(Finite Impulse Response)滤波器。

MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来结算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的有点,使MATLAB成为一个强大的数学软件,在新的版本中也加入了对C,FORTRAN,C++,JA V A的支持。

可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用。

1 数字滤波器概述数字滤波器是对数字信号实现滤波的线性时不变系统。

数字滤波实质上是一种运算过程,实现对信号的运算处理。

输入数字信号(数字序列)通过特定的运算转变为输出的数字序列,因此,数字滤波器本质上是一个完成特定运算的数字计算过程,也可以理解为一台计算机。

描述离散系统输出与输入关系的卷积和差分方程只是给数字信号滤波器提供运算规则,使其按照这个规则完成对输入数据的处理。

时域离散系统的频域特性:Y(eωj)=X(eωj)H(eωj)其中Y(eωj)、X(eωj)分别是数字滤波器的输出序列和输入序列的频域特性(或称为频谱特性),H(e ωj )是数字滤波器的单位取样响应的频谱,又称为数字滤波器的频域响应。

输入序列的频谱X(e ωj )经过滤波后X(e ωj )H(e ωj ),因此,只要按照输入信号频谱的特点和处理信号的目的,适当选择H(e ωj ),使得滤波后的X(e ωj )H(e ωj )满足设计的要求,这就是数字滤波器的滤波原理。

数字滤波器根据其冲击响应函数的时域特性,可分为两种,即无限长冲激响应(IIR )数字滤波器和有限长冲激响应(FIR )数字滤波器。

IIR 数字滤波器的特征是,具有无限持续时间冲激响应,需要用递归模型:y(n)=)(0i n x a N i i -∑=+)(1i n y b Ni i -∑=来实现,其差分方程为:H(z)=∑∑=-=-+Nk kk M r r rZ a Z b 101 系统函数为:设计IIR 滤波器的任务就是寻求一个物理上可实现的系统函数H(z),使其频率响应H(z)满足所希望得到的频域指标,即符合给定的通带截止频率、阻带截止频率、通带衰减系数和阻带衰减系数。

数字滤波器由数字乘法器、加法器和延时单元组成的一种算法或装置。

数字滤波器的功能是对输入离散信号的数字代码进行运算处理,以达到改变信号频谱的目的。

由于电子计算机技术和大规模集成电路的发展,数字滤波器已经可用计算机软件实现,也可用大规模集成数字硬件实时实现。

数字滤波器是一个离散时间系统(按预定的算法,将输入离散时间信号(对应数字频率)转换为所要求的输出离散时间信号的特定功能装置)。

应用数字滤波器处理模拟信号(对应模拟频率)时,首先须对输入模拟信号进行限带、抽样和模数转换。

为得到模拟信号,数字滤波器处理的输出数字信号须经数模转换、平滑。

数字滤波器具有高精度、高可靠性、可程控改变特性或复用、便于集成等优点。

数字滤波器在语言信号处理、图像信号处理、医学生物信号处理以及其他应用领域都得到了广泛应用。

数字滤波器有低通、高通、带通、带阻和全通等类型。

它可以是时不变的或时变的、因果的或非因果的、线性的或非线性的。

滤波器的种类很多,分类方法也不同。

从处理信号分:经典滤波器、现代滤波器从实现的网络结构方法上分:FIR (有限脉冲响应)、IIR (无限脉冲响应)从功能上分:低通、高通、带通、带阻从设计方法上来分:Butterworth (巴特沃斯),Chebyshev (切比雪夫),椭圆函数(Ellipse ),贝塞尔(Bessel )等等。

数字滤波器与模拟滤波器的区别 数字滤波器的传输函数)(ωj e H 都是以2π为周期的,滤波器的低通频带处于2π的整数倍处,而高频频带处于π的奇数倍附近。

数字滤波器的技术要求:H(e ωj )=)()(ωϕωj j e e H 其中:)(ωj e H 幅频特性 )(ωϕ相频特性2 IIR 数字滤波器设计方法就广义而言,数字滤波器是一个用有限精度算法实现的线性移不变时间系统。

设计实现一个数字滤波器一般包括四个基本步骤:1 按照实际需要确定滤波器的性能要求。

比如确定所设计的滤波器是低通、高通、带通还是带阻,截止频率是多少,阻带的衰减有多大,通带的波动是多少等;2 用一个因果稳定的系统函数去逼近这个性能要求;(IIR ,FIR )3 用一个有限精度的算法去实现这个系统函数;(运算结构)4 实际的技术实现。

(通用计算机软件或专用数字滤波器硬件)IIR 数字滤波器的设计方法图1IIR 数字滤波器设计方法数字滤波器(Digital Filter)是指输入、输出都是离散时间信号,通过一定运算关系改变输入信号所含频率成分的相对比例或者滤除某些频率成分的器件。

数字滤波器在数字信号处理中起着非常重要的作用,在信号的过滤、检测与参数的估计等方面,是使用最为广泛的一种线性系统。

实现数字滤波器的方法有两种,一是采用计算机软件进行,就是把所要完成的工作通过程序让计算机来实现;二十设计专用的数字处理硬件。

这个地方主要用到的就是第一种方法。

即是用Mafiab提供的信号处理工具箱来实现数字滤波器。

Matlab信号处理工具箱提供了丰富的设计方法,可以使得繁琐的程序设计简化成函数的调用,只要以正确的指标参数调用函数,就可以正确快捷的得到设计结果。

IIR数字滤波器的最通用的方法是借助于模拟滤波器的设计方法。

模拟滤波器设计已经有了相当成熟的技术和方法,有完整的设计公式,还有比较完整的图表可以查询,因此设计数字滤波器可以充分利用这些丰富的资源来进行。

对于IIR数字滤波器的设计具体步骤如下:(1)按照一定的规则将给出的数字滤波器的技术指标转换为模拟低通滤波器的技术指标。

(2)根据转换后的技术指标设计模拟低通滤波器G(s)(G(s)是低通滤波器的传递函数)。

(3)再按照一定的规则将G(s)转换成H(z)(H(z)是数字滤波器的传递函数)。

若设计的数字滤波器是低通的,上述的过程可以结束,若设计的是高通、带通或者是带阻滤波器,那么还需要下面的步骤:将高通。

带通或带阻数字滤波器的技术指标转换为低通模拟滤波器的技术指标,然后设计出低通G(s),再将G(s)转换为H(z)。

Matlab信号工具箱提供了几个直接设计IIR数字滤波器的函数,直接调用这些函数就可以很方便的对滤波器进行设计。

这里选取巴特沃斯法、切比雪夫Ⅰ、切比雪夫Ⅱ、椭圆法四种方法进行比较。

给出用上述方法设计数字滤波器的函数如下:Butterworth滤波器:[N,Wn]=buttord(Wp,Ws,Rp,Rs)[b,a]=butter(N,Wn)[b,a]=butter(N,Wn,’ftype’)[h,f]=freqz(b,a,n,Fs)其中:Wp表示通带截止频率;Ws表示阻带截止频率;Rp表示通带纹波系数;Rs 表示阻带纹波系数;N表示滤波器最小阶数;Wn表示截止频率。

b,a分别表示阶次位N+1的数字滤波器系统传递函数的分子和分母多项式系数向量;Fs位采样频率;n为在区间[0 Fs]频率范围内选取的频率点数,f记录频率点数。

N取2的幂次方,可以提高运算的速度,因为freqz函数采用基2的FFT算法。

Ftype=high时,位高通滤波器;ftype=bandpass时,位带通滤波器;ftype=stop时,位带阻滤波器。

Chebyshev eⅠ型滤波器:[N,Wn]=cheb1ord(Wp,Ws,Rp,Rs)[b,a]=cheby1(N,Rp,Wn)[b,a]=cheby1(N,Rp,Wn,’ftype’)[h,f]=freqz(b,a,n,Fs)Chebyshev eⅡ型滤波器:[N,Wn]=cheb2ord(Wp,Ws,Rp,Rs)[b,a]=cheby2(N,Rs,Wn)[b,a]=cheby2(N,Rs,Wn,’ftype’)[h,f]=freqz(b,a,n,Fs)椭圆滤波器:[N,Wn]=ellipord(Wp,Ws,Rp,Rs)[b,a]=ellip(N,Rp,Rs,Wn)[b,a]=ellip(N,Rp,Rs,Wn,’ftype’)[h,f]=freqz(b,a,n,Fs)比较结果分析通过对各种类型的滤波器通过不同方法进行设计,可以使一些结论得到验证。

利用Butterworth滤波器、Chebyshev eⅠ型滤波器、Chebyshev eⅡ型滤波器、椭圆滤波器都可以进行低通、高通、带通、带阻滤波器的设计,但是各有特点。

Butterworth滤波器通带内的幅频响应曲线能得到最大限度的平滑,但牺牲了截止频率的坡度。

Chebyshev eⅠ型滤波器通带内等波纹,阻带内单调;Chebyshev eⅡ型滤波器通带内单调,然而阻带内等波纹;椭圆滤波器阻带和通带内都是等波纹的,但下降的坡度更大,而且可以以更低的阶数实现和其他两类滤波器一样的性能指标。

3 IIR数字滤波器的特点IIR数字滤波器采用递归型结构,即结构上带有反馈环路。

IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、并联型四种结构形式,都具有反馈回路。

由于运算中的舍入处理,使误差不断累积,有时会产生微弱的寄生振荡。

IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有现成的设计数据或图表可查,其设计工作量比较小,对计算工具的要求不高。

相关主题