第7章 有限脉冲响应数字滤波器的设计.ppt

上传人:仙人指路1688 文档编号:2710961 上传时间:2023-02-23 格式:PPT 页数:133 大小:2.07MB
返回 下载 相关 举报
第7章 有限脉冲响应数字滤波器的设计.ppt_第1页
第1页 / 共133页
第7章 有限脉冲响应数字滤波器的设计.ppt_第2页
第2页 / 共133页
第7章 有限脉冲响应数字滤波器的设计.ppt_第3页
第3页 / 共133页
第7章 有限脉冲响应数字滤波器的设计.ppt_第4页
第4页 / 共133页
第7章 有限脉冲响应数字滤波器的设计.ppt_第5页
第5页 / 共133页
点击查看更多>>
资源描述

《第7章 有限脉冲响应数字滤波器的设计.ppt》由会员分享,可在线阅读,更多相关《第7章 有限脉冲响应数字滤波器的设计.ppt(133页珍藏版)》请在三一办公上搜索。

1、第7章 有限脉冲响应数字滤波器的设计,7.1 线性相位FIR数字滤波器的条件和特点 7.2 利用窗函数法设计FIR滤波器7.3 利用频率采样法设计FIR滤波器7.5 IIR和FIR数字滤波器的比较,n,FIR滤波器的设计方法:,窗函数法,频率采样法,切比雪夫等波纹法,神经网络法,遗传法等,FIR滤波器相对于IIR滤波器的优点:,(1)容易做到线性相位,(2)极点是位于原点的N阶极点,所以FIR滤波器永远稳定。,(3)可以具有任意幅度,7.1 线性相位FIR数字滤波器的条件和特点,1.线性相位条件,FIR滤波器能够做到线性相位,对于长度为N的h(n),其传输函数为,Hg()-幅度特性()-相位特

2、性,Hg()不同于|H(ej)|,工程上关心的是信号经过滤波器后,滤波器对所有频率成分的各个分量的时间延迟相同,即各频率成分同时到达输出端,否则,信号失真。,()=-,为常数,-第一类线性相位,()=0,0是起始相位,-第二类线性相位,两种情况都满足群时延是一个常数,即,满足第一类线性相位的条件是:h(n)是实序列且对(N-1)/2偶对称,即h(n)=h(N-n-1)满足第二类线性相位的条件是:h(n)是实序列且对(N-1)/2奇对称,即h(n)=-h(N-n-1),(1)第一类线性相位条件证明:,将h(n)=h(N-n-1)式代入得,令m=N-n-1,则有,按照上式可以将H(z)表示为,如果

3、h(n)=h(N-n-1)那么()=-,将z=e j代入上式,得到:,对照,幅度函数Hg()和相位函数分别为,(2)第二类线性相位条件证明:,令m=N-n-1,则有,同样H(z)可以表示为,如果h(n)=-h(N-n-1)那么()=0-,因此,幅度函数和相位函数分别为,将z=e j代入上式,得到:,群延迟:,2.线性相位FIR滤波器幅度特性Hg()的特点,因为,h(n)关于(N-1)/2偶对称,余弦也关于(N-1)/2偶对称,1)h(n)=h(N-n-1),N=奇数,幅度函数H g()为,所以,以(N-1)/2为中心,把两两相等的项进行合并。,由于N是奇数,故中间项n=(N-1)/2不能合并。

4、,因此幅度函数可以表示为,令m=(N-1)/2-n,则有,式中cosm对于变量项来说是偶函数,关于=0,2皆为偶对称,因此幅度特性也关于=0,2是偶对称。,具有这种传输函数的滤波器称为型滤波器,2)h(n)=h(N-n-1),N=偶数,和N=奇数类似,不同点是由于N=偶数,Hg()中没有单独项,相等的项合并成N/2项。,3)h(n)=-h(N-n-1),N=奇数,令m=N/2-n,则有,幅度特性关于=奇对称,并且在=处为零,所以不适合作高通和带阻滤波器,h(n)关于(N-1)/2奇对称正弦也关于(N-1)/2奇对称,乘积偶对称,将相同项合并,得到,-II型滤波器,令m=(N-1)/2-n,则有

5、,sin(m)对于来说,在=0、2 处均为零,即幅度特性在=0、2 处为零,并且在=0、2 处奇对称,,不能做高通和低通滤波器,只能做带通滤波器,-III型滤波器,令m=N/2-n,则有,正弦项在=0、2 处为零,Hg()在=0、2 处为零,且关于=0、2 奇对称,对=偶对称,不适合做低通滤波器,-型滤波器,4)h(n)=-h(N-n-1),N=偶数,总结:,第一类线性相位,第二类线性相位,1.N为奇数:Hg()关于=0、2 偶对称,2.N为偶数:Hg()关于=奇对称且Hg()=0,1.N为奇数:Hg()关于=0、2 奇对称,2.N为偶数:Hg()关于=0、2奇对称关于=偶对称,I型:可实现所

6、有滤波器,II型:Hg()=0,不能实现高通、带阻滤波器,III型:只能实现带通滤波器(Hg(0)=Hg()=Hg(2)=0),IV型:不能实现低通、带通滤波器,3.线性相位FIR滤波器零点分布特点,若zi是H(z)的零点,即H(zi)=0,=0,可见,zi-1也是H(z)的零点,又h(n)是实序列H(z)的零点是实数或共轭成对出现,按零点位置分四种情况:,(1)zi既不在实轴也不在单位圆 4个零点,zi是H(z)的零点zi*也是H(z)的零点,(2)zi在单位圆上-2个零点,(3)zi在实轴上,零点为实数,2个零点,(4)zi在实轴上且在单位圆上,零点为1,1个零点,4.线性相位FIR滤波器

7、网络结构,令m=N-n-1,则有,(1)设N为偶数,则有,线性相位满足:,(2)如果N为奇数,则将中间项h(N-1)/2单独列出,共有N个抽头系数,共需要N个乘法器,比较:,N为偶数时,需要N/2个乘法器,(2)线性相位滤波器,(1)FIR直接型,N为奇数,需要(N+1)/2个乘法器,乘法器节约了近一半,第一类线性相位网络结构,图7.1.3 第二类线性相位网络结构,设计任务:选择有限长度的脉冲响应,得到系统函数,使幅频特性满足技术指标,同时使相频特性达到线性相位。,7.2 利用窗函数法设计FIR滤波器,1 设计思想:设希望设计的理想滤波器传输函数为Hd(ej),hd(n)是与其对应的单位脉冲响

8、应,而hd(n)往往是无限长,因此 要对hd(n)进行截取,得到h(n),对应的频率响应为H(ej),用截取后的频率响应H(ej)逼近Hd(ej),方法:hd(n).w(n),w(n)长度为0N-1,起到对无限长序列的截断作用-窗函数法,N越大H(ej)越逼近Hd(ej),误差越小,但N增大也使成本加大,所以应选择合适的长度N,在满足技术要求的情况下尽量减少h(n)的长度。,最常见的方法是取w(n)=RN(n),h(n)=hd(n)RN(n),相应的单位取样响应hd(n)为,为了构造一个长度为N的线性相位滤波器,只有将hd(n)截取一段,并保证截取的一段对(N-1)/2对称。即=(N-1)/2

9、,2 窗函数法频率响应的求取(以低通滤波器为例),理想低通滤波器的频率响应为,设截取的一段用h(n)表示,h(n)=hd(n)WN(n),),说明:实际设计的滤波器的幅度特性等于理想低通滤波器的幅度特性Hdg()与矩形窗函数幅度特性WRg()的卷积,图7.2.1 理想低通的单位脉冲响应及矩形窗,矩形窗对理想低通幅度特性的影响,(1)=0时卷积结果H(0)等于WRg()在-c c之间的积分,将H(0)值归一化到1。,(2)=c时Hdg()刚好与WRg(-)一半重叠,卷积结果H(c)等于H(0)的一半,(3)=c-2/N时WRg(-)的主瓣全部在 c 之间,而最大的负旁瓣在 c之外,幅度特性H(c

10、-2/N)最大,(4)=c+2/N时WRg(-)的主瓣刚好全部移出 c之外,而最大的负旁瓣在 c之间,幅度特性H(c+2/N)最大的负值,通过以上分析可知,对hd(n)加矩形窗处理后,H()和原理想低通Hd()差别有以下几点:(1)理想特性曲线在截止频率=c处的间断点变为连续曲线,形成一个过渡带。(2)由于旁瓣的作用,通带内增加了波动,最大的峰值在c-2/N处。阻带内产生了余振,最大的负峰在c+2/N处。(3)过渡带的宽度,正峰位置到负峰位置,近似等于WRg()主瓣宽度,即4/N。(4)通带内最大尖峰比H(0)高8.95%,阻带最大负峰比零值低8.95%,常用的窗函数 1.矩形窗(Rectan

11、gle Window)wR(n)=RN(n)其频率响应为,增加N可以使过渡带变窄,也可使主瓣幅度加高,但旁瓣幅度也增加,H()的波动幅度没有改善,所以增加N并不能减少吉布斯效应。,窗函数的选取原则:(1)主瓣宽度要尽量窄,以减少过渡带(2)尽量减少旁瓣,使能量尽量集中在主瓣,以减少通带的波动,提高阻带衰减,减少通带内的波动,加大阻带衰减的有效办法:改变窗函数的形状,图7.2.4 矩形窗函数长度的影响,2.三角形窗(Bartlett Window),其频率响应为,3.汉宁(Hanning)窗升余弦窗,图7.2.3 汉宁窗的幅度特性,4.哈明(Hamming)窗改进的升余弦窗,其频域函数WHm(e

12、 j)为,其幅度函数WHm()为,当N1时,可近似表示为,5.布莱克曼(Blackman)窗,其频域函数为,其幅度函数为,图7.2.4 常用的窗函数,图7.2.5 常用窗函数的幅度特性(a)矩形窗;(b)巴特利特窗(三角形窗);(c)汉宁窗;(d)哈明窗;(e)布莱克曼窗,图7.2.6 理想低通加窗后的幅度特性(N=51,c=0.5)(a)矩形窗;(b)巴特利特窗(三角形窗);(c)汉宁窗;(d)哈明窗;(e)布莱克曼窗,表7.2.2 六种窗函数的基本参数,7.2.3 用窗函数法设计FIR滤波器的步骤(1)根据对过渡带及阻带衰减的指标要求,选择窗函数的类型,并估计窗口长度N。先按照阻带衰减选择

13、窗函数类型。原则是在保证阻带衰减满足要求的情况下,尽量选择主瓣窄的窗函数。然后根据过渡带宽度估计窗口长度N。待求滤波器的过渡带宽度Bt近似等于窗函数主瓣宽度,且近似与窗口长度N成反比,NA/Bt,A取决于窗口类型,例如,矩形窗的A=4,哈明窗的A=8等,参数A的近似和精确取值参考表7.2.2。,(2)构造希望逼近的频率响应函数Hd(ej)。即 对所谓的“标准窗函数法”,就是选择Hd(ej)为线性相位理想滤波器(理想低通、理想高通、理想带通、理想带阻)。以低通滤波器为例,Hdg()应满足:(7.2.19),对(7.2.19)式给出的线性相位理想低通滤波器作为Hd(ej),由(7.2.2)式求出单

14、位脉冲响应hd(n):为保证线性相位特性,=(N1)/2。,(4)加窗得到设计结果:h(n)=hd(n)w(n)。,(5)验证技术指标是否满足要求。设计出的滤波器频率响应用下式计算:,若不满足重复(2)(3)(4)。,如果Hd(ej)较复杂,或者不能用封闭公式表示,则不能用上式求出hd(n)。我们可以对Hd(ej)从=0到=2采样M点,采样值为,k=0,1,2,M1,进行M点IDFT(IFFT),得到:(7.2.22)根据频域采样理论,hdM(n)与hd(n)应满足如下关系:,因此,如果M选得较大,可以保证在窗口内hdM(n)有效逼近hd(n)。,【例7.2.1】用窗函数法设计线性相位高通FI

15、RDF,要求通带截止频率p=/2 rad,阻带截止频率s=/4 rad,通带最大衰减 p=1 dB,阻带最小衰减 s=40 dB。解(1)选择窗函数w(n),计算窗函数长度N。已知阻带最小衰减 s=40 dB,由表(7.2.2)可知汉宁窗和哈明窗均满足要求,我们选择汉宁窗。本例中过渡带宽度Btps=/4,汉宁窗的精确过渡带宽度Bt=6.2/N,所以要求Bt=6.2/N/4,解之得N24.8。对高通滤波器N必须取奇数,取N=25。由式(7.2.11),有,(2)构造Hd(ej):式中,(3)求出hd(n):将=12代入得,(n12)对应全通滤波器,是截止频率为3/8的理想低通滤波器的单位脉冲响应

16、,二者之差就是理想高通滤波器的单位脉冲响应。这就是求理想高通滤波器的单位脉冲响应的另一个公式。(4)加窗:,7.2.4 窗函数法的MATLAB设计函数简介实际设计时一般用MATLAB工具箱函数。可调用工具箱函数fir1实现窗函数法设计步骤(2)(4)的解题过程。(1)fir1是用窗函数法设计线性相位FIR数字滤波器的工具箱函数,以实现线性相位FIR数字滤波器的标准窗函数法设计。这里的所谓“标准”,是指在设计低通、高通、带通和带阻FIR滤波器时,Hd(ej)分别表示相应的线性相位理想低通、高通、带通和带阻滤波器的频率响应函数。因而将所设计的滤波器的频率响应称为标准频率响应。,Fir1的调用格式及

17、功能:hn=fir1(M,wc),返回6 dB截止频率为wc的M阶(单位脉冲响应h(n)长度N=M+1)FIR低通(wc为标量)滤波器系数向量hn,默认选用哈明窗。滤波器单位脉冲响应h(n)与向量hn的关系为h(n)=hn(n+1)n=0,1,2,M而且满足线性相位条件:h(n)=h(N1n)。其中wc为对归一化的数字频率,0wc1。当wc=wcl,wcu时,得到的是带通滤波器,其6 dB通带为wclwcu。,hn=fir1(M,wc,ftype),可设计高通和带阻FIR滤波器。当ftype=high时,设计高通FIR滤波器;当ftype=stop,且wc=wcl,wcu时,设计带阻FIR滤波

18、器。应当注意,在设计高通和带阻FIR滤波器时,阶数M只能取偶数(h(n)长度N=M+1为奇数)。不过,当用户将M设置为奇数时,fir1会自动对M加1。hn=fir1(M,wc,window),可以指定窗函数向量window。如果缺省window参数,则fir1默认为哈明窗。例如:,hn=fir1(M,wc,bartlett(M+1),使用Bartlett窗设计;hn=fir1(M,wc,blackman(M+1),使用blackman窗设计;hn=fir1(M,wc,ftype,window),通过选择wc、ftype和window参数(含义同上),可以设计各种加窗滤波器。(2)fir2为任意

19、形状幅度特性的窗函数法设计函数,用fir2设计时,可以指定任意形状的Hd(ej),它实质是一种频率采样法与窗函数法的综合设计函数。主要用于设计幅度特性形状特殊的滤波器(如数字微分器和多带滤波器等)。用help命令查阅其调用格式及调用参数的含义。,例7.2.1 的设计程序ep721.m如下:ep721.m:例7.2.1 用窗函数法设计线性相位高通FIR数字滤波器wp=pi/2;ws=pi/4;Bt=wp-ws;计算过渡带宽度N0=ceil(6.2*pi/Bt);根据表7.2.2汉宁窗计算所需h(n)长度N0,ceil(x)取大于等于x的最小整数N=N0+mod(N0+1,2);确保h(n)长度N

20、是奇数wc=(wp+ws)/2/pi;计算理想高通滤波器通带截止频率(关于归一化)hn=fir1(N-1,wc,high,hanning(N);调用fir1计算高通FIR数字滤波器的h(n)略去绘图部分,运行程序得到h(n)的25个值:h(n)=0.0004 0.0006 0.0028 0.00710.0000 0.0185 0.0210 0.0165 0.0624 0.0355 0.10610.2898 0.6249 0.2898 0.1061 0.0355 0.0624 0.0165 0.0210 0.0185 0.0000 0.0071 0.00280.00060.0004高通FIR数字

21、滤波器的h(n)及损耗函数如图7.2.9所示。,图7.2.9 高通FIR数字滤波器的h(n)波形及损耗函数曲线,【例7.2.2】对模拟信号进行低通滤波处理,要求通带0f 1.5kHz内衰减小于1 dB,阻带2.5kHzf 上衰减大于40 dB。希望对模拟信号采样后用线性相位FIR数字滤波器实现上述滤波,采样频率Fs=10 kHz。用窗函数法设计满足要求的FIR数字低通滤波器,求出h(n),并画出损耗函数曲线。为了降低运算量,希望滤波器阶数尽量低。解(1)确定相应的数字滤波器指标:通带截止频率为,阻带截止频率为 阻带最小衰减为 s=40dB(2)用窗函数法设计FIR数字低通滤波器,为了降低阶数选

22、择凯塞窗。根据式(7.2.16)计算凯塞窗的控制参数为,指标要求过渡带宽度Bt=sp=0.2,根据式(7.2.17)计算滤波器阶数为取满足要求的最小整数M=23。所以h(n)长度为N=M+1=24。但是,如果用汉宁窗,h(n)长度为N=40。理想低通滤波器的通带截止频率c=(s+p)/2=0.4,所以由式(7.2.2)和式(7.2.3),得到:式中,w(n)是长度为24(=3.395)的凯塞窗函数。,实现本例设计的MATLAB程序为ep722.m。ep722.m:例7.2.2 用凯塞窗函数设计线性相位低通FIR数字滤波器 fp=1500;fs=2500;rs=40;wp=2*pi*fp/Fs;

23、ws=2*pi*fs/Fs;Bt=ws-wp;%计算过渡带宽度 alph=0.5842*(rs-21)0.4+0.07886*(rs-21);%根据(7.2.16)式计算kaiser窗的控制参数 N=ceil(rs-8)/2.285/Bt);%根据(7.2.17)式计算kaiser窗所需阶数N,wc=(wp+ws)/2/pi;%计算理想高通滤波器通带截止频率(关于归一化)hn=fir1(N,wc,kaiser(N+1,alph);%调用kaiser计算低通FIRDF的h(n)以下绘图部分省去运行程序得到h(n)的24个值:h(n)=0.00390.00410.00620.01470.00000

24、.02860.0242 0.03320.07550.00000.1966 0.37240.37240.1966 0.00000.07550.0332 0.0242 0.02860.00000.0147 0.00620.00410.0039,低通FIR数字滤波器的h(n)波形和损耗函数曲线如图7.2.10所示。,图7.2.10 低通FIR数字滤波器的h(n)波形及损耗函数曲线,【例7.2.3】窗函数法设计一个线性相位FIR带阻滤波器。要求通带下截止频率lp=0.2,阻带下截止频率ls=0.35,阻通带上截止频率us=0.65,通带上截止频率up=0.8,通带最大衰减 p=1 dB,阻带最小衰减

25、s=60 dB。解 本例直接调用fir1函数设计。因为阻带最小衰减 s=60 dB,所以选择布莱克曼窗,再根据过渡带宽度选择滤波器长度N,布莱克曼窗的过渡带宽度Bt=12/N,所以,解之得N=80。调用参数,设计程序为ep723.m,参数计算也由程序完成。ep723.m:例7.2.3 用窗函数法设计线性相位带阻FIR数字滤波器wlp=0.2*pi;wls=0.35*pi;wus=0.65*pi;wup=0.8*pi;%设计指标参数赋值B=wls-wlp;%过渡带宽度N=ceil(12*pi/B);%计算阶数N,ceil(x)为大于等于x的最小整数,wp=(wls+wlp)/2/pi,(wus+

26、wup)/2/pi;%设置理想带通截止频率hn=fir1(N,wp,stop,blackman(N+1);%带阻滤波器要求h(n)长度为奇数,所以取N+1省略绘图部分程序运行结果:N=81由于h(n)数据量太大,因而仅给出h(n)的波形及损耗函数曲线,如图7.2.11所示。,图7.2.11 带阻FIR数字滤波器的h(n)波形及损耗函数曲线,7.3 利用频率采样法设计FIR滤波器1 用频率采样法设计滤波器的基本思想设希望逼近的滤波器的频响函数用Hd(ej)表示,对它在=0到2之间等间隔采样N点,得到Hd(k):,(7.3.1),7.3 利用频率采样法设计FIR滤波器,设计思想:设待设计的滤波器的

27、传输函数用Hd(ej)表示,对它在=0到2之间等间隔采样N点,得到Hd(k),再对Hd(k)进行N点IDFT,得到h(n),依据:频率采样定理,式中,h(n)作为所设计的滤波器的单位取样响应,其系统函数H(z)为,-直接型结构,-频率采样结构,问题:,(1)如何实现线性相位(2)如何改进逼近误差,1.用频率采样法设计线性相位滤波器的条件 FIR滤波器具有第一类线性相位的条件是h(n)是实序列,且满足h(n)=h(N-n-1),在此基础上我们已推导出其传输函数应满足的条件是:,在=02之间等间隔采样N点,,结论:第一类线性相位条件:N为奇数 N为偶数,第二类线性相位条件:N为奇数 N为偶数,设用

28、理想低通作为希望设计的滤波器,截止频率为c,采样点数N,Hg(k)和(k)用下面公式计算:N=奇数时,,N=偶数时,,2.逼近误差及其改进措施 如果待设计的滤波器为Hd(ej),对应的单位取样响应为hd(n),,则由频率域采样定理知道,在频域02之间等间隔采样N点,得到Hd(k),由Hd(k)恢复得到h(n)应是hd(n)以N为周期,周期性延拓乘以RN(n),即,由于hd(n)是无限长的,所以周期延拓时会出现时域混叠,引起误差。,由频域采样值得到的系统函数,在=2k/N时值为1,所以在采样点处H(ejw)与H(k)相等,误差为0,但在采样点之间不一定相等,H(ejw)是由N项叠加而成,误差取决

29、与Hd(ejw)的平滑程度。,图7.3.1 频域幅度采样序列Hg(k)及其内插波形Hg(),图7.3.2 N=15和N=75的幅度内插波形Hg(),图7.3.1 理想低通滤波器增加过渡点,4 频率采样法设计步骤(1)根据阻带最小衰减 s选择过渡带采样点的个数m。(2)确定过渡带宽度Bt,估算频域采样点数(即滤波器长度)N。如果增加m个过渡带采样点,则过渡带宽度近似变成(m+1)2/N。当N确定时,m越大,过渡带越宽。如果给定过渡带宽度Bt,则要求(m+1)2/NBt,滤波器长度N必须满足如下估算公式:,(7.3.15),(3)构造一个希望逼近的频率响应函数:(4)按照(7.3.1)式进行频域采

30、样:,(7.3.1 6),(7.3.17),并加入过渡带采样。过渡带采样值可以设置为经验值,或用累试法确定,也可以采用优化算法估算。(5)对H(k)进行N点IDFT,得到第一类线性相位FIR数字滤波器的单位脉冲响应:,(6)检验设计结果。如果阻带最小衰减未达到指标要求,则要改变过渡带采样值,直到满足指标要求为止。如果滤波器边界频率未达到指标要求,则要微调Hdg()的边界频率。,【例7.3.1】用频率采样法设计第一类线性相位低通FIR数字滤波器,要求通带截止频率p=/3,阻带最小衰减大于40 dB,过渡带宽度Bt/16。解 查表7.3.1,s=40 dB时,过渡带采样点数m=1。将m=1和Bt/

31、16代入(7.3.15)式估算滤波器长度:N(m+1)2/Bt=64,留一点富余量,取N=65。构造Hd(ej)=Hdg()ej(N1)/2为理想低通特性,其幅度响应函数Hdg()如图7.3.3(a)中实线所示。,图7.3.3 一个过渡点的设计结果(T=0.38),设计由以下程序ep731.m完成:ep732.m:用频率采样法设计FIR低通滤波器 T=input(T=)输入过渡带采样值T Bt=pi/16;wp=pi/3;过渡带宽度为pi/16,通带截止频率为pi/3 m=1;N=ceil(m+1)*2*pi/Bt)+1;按式(7.3.15)估算采样点数N Np=fix(wp/(2*pi/N)

32、;Np+1为通带0,wp上采样点数 Ns=N2*Np1;Ns为阻带wp,2*piwp上采样点数,Hk=ones(1,Np+1),zeros(1,Ns),ones(1,Np);N为奇数,幅度采样向量偶对称A(k)=A(Nk)Hk(Np+2)=T;Ak(NNp)=T;加一个过渡采样 thetak=pi*(N1)*(0:N1)/N;相位采样向量(k)=(N1)k/N,0kN1 Hdk=Hk.*exp(j*thetak);构造频域采样向量Hd(k)hn=real(ifft(Hdk);h(n)=IDFTH(k)Hw=fft(hn,1024);计算频率响应函数:DFTh(n),wk=2*pi*0:1023

33、/1024;Hgw=Hw.*exp(j*wk*(N1)/2);计算幅度响应函数Hg()计算通带最大衰减Rp和阻带最小衰减Rs Rp=max(20*log10(abs(Hgw)hgmin=min(real(Hgw);Rs=20*log10(abs(hgmin)以下绘图部分略去,例:利用频率采样法设计线性相位低通滤波器,要求截止频率c=/2rad,采样点数N=33,选用h(n)=h(N-1-n)情况。解 用理想低通作为逼近滤波器。,对理想低通幅度特性采样情况如图7.3.2所示。将采样得到的,图7.3.2 对理想低通进行采样,图7.3.3 例7.3.1的幅度特性,图7.3.4 例7.3.1(N=65

34、)有两个过渡点幅度特性,7.7 滤波器分析设计工具FDAToolFDATool(Filter Design and Analysis Tool)是一个功能强大的数字滤波器设计与分析工具,它涵盖了信号处理工具箱中所有的滤波器设计方法。利用它可以方便地设计出满足各种性能指标的滤波器,并可查看该滤波器的各种分析图形。待滤波器设计满意后,还可以把其系数直接导出为MATLAB变量、文本文件或C语言头文件等。在命令窗中运行FDATool,启动滤波器分析设计工具,界面如图7.7.1所示。,图7.7.1 FDATool启动界面,FDATool的界面分上、下两个部分:上面部分显示有关滤波器的信息,下面部分用来指

35、定设计指标参数。下面按照滤波器的一般设计步骤对FDATool加以介绍。(1)在Filter type下选择滤波器类型:低通,高通,带通,带阻,微分器,Hilbert变换器,多带,任意频率响应,升余弦等(如果安装了滤波器设计工具箱,则会有更多选项),然后在Design Method下从众多的IIR或FIR滤波器设计方法中选择一个合适的设计方法(例如,IIR滤波器的巴特沃斯、切比雪夫、椭圆滤波器等设计方法)。,(2)在Filter Order下选择滤波器阶数,可以使用满足要求的最小滤波器阶数或直接指定滤波器的阶数。(3)根据前面两步中选择的设计方法,Options下会显示与该方法对应的可调节参数。

36、例如选择FIR窗函数设计法时,Options如图7.7.2所示。在该面板的Window中可选择不同的窗函数(包括自定义窗函数,或窗函数需要的参数),单击View按钮可在wvtool中查看选中的窗函数。,图7.7.2 FIR窗函数法对应的Options选项,(4)指定设计指标:选择滤波器的类型、设计方法和滤波器阶数时,相应的设计指标及其含义会在Filter Specifications中用图形直观地显示出来以供设计参考。这些设计指标的具体参数需要在Frequency Specifications和Magnitude Specifications下明确指定。例如,选择了FIR等波纹低通最小阶数设计

37、后的FADTool如图7.7.1所示,其中,Filter Specifications显示了所选设计需指定的设计指标参数。即必须在Frequency Specifications下设置频率单位(归一化频率单位或Hz等)、采样频率Fs、通带截止频率Fpass和阻带截止频率Fstop,在Magnitude Specifications下设置幅度单位(dB或线性)、通带最大衰减Apass和阻带最小衰减Astop。,一般说来,对不同的滤波器类型和设计方法需要不同的设计参数。这些参数设置栏会自动显示在Frequency Specifications和Magnitude Specifications中,参

38、照Filter Specifications中的图示,可以直观地看出这些参数的含义。(5)指定所有的设计指标后,单击FDATool最下面的Design Filter按钮即可完成滤波器设计。(设计完成后Design Filter按钮变为不可用,除非再次修改了设计指标。)(6)通过FDATool的工具条(如图7.7.3所示)查看设计的滤波器性能。,图7.7.3 FDATool的工具条,(7)使用菜单【EditConvert】可转换当前滤波器的实现结构。所有滤波器都能在直接型、直接型、转置直接型、转置直接型、状态空间模型和格形结构之间直接转换。此外,系统安装滤波器设计工具箱后将有更多的结构形式可供转

39、换。使用菜单【EditConvert to Secondorder Sections】或【EditConvert to Single Section】实现滤波器级联结构与直接型结构之间的转换。,(8)使用菜单【FileExport】可导出或保存设计结果。可以选择导出的是滤波器的系数向量还是整个滤波器对象(把设计结果导出为滤波器对象qfilt时,系统应安装有滤波器设计工具箱),可以选择把导出结果保存为MATLAB工作空间中的变量、文本文件或.MAT文件。(9)使用菜单【FileExport to C Header File】可以把滤波器系数保存为C语言格式的头文件,其中系数变量的数据类型可以选择

40、。,(10)使用菜单【fileExport to SPtool】可以把滤波器导出到信号处理工具SPtool中。有关SPtool的使用可参阅MATLAB帮助文件或参考文献25。(11)使用菜单【File】中与Session有关的子菜单,可以把整个设计保存为一个fda文件,或调入一个已有的设计文件,继续进行设计。(12)如果安装了其他相关组件,FDATool的菜单条上会出现【targets】项。例如安装了MATLAB与TI CCS的连接后,该菜单下会出现【Export to Code Composer-Studio(tm)IDE】子项,利用它可以把滤波器系数直接传递到TI CCS Studio或D

41、SP的内存中。,以上介绍了FDATool启动时默认显示的滤波器设计分析界面。此外,FDATool启动界面左下侧竖向工具栏内还有7个按钮(如图7.7.1所示),自上而下依次为;【Simulink模型实现】(需安装DSP模块库);【设计多采样率滤波器】;【频率变换】;【量化并分析滤波器】;【零极点编辑器】;【导入并分析滤波器】;【设计并分析滤波器(默认)】。如果安装了滤波器设计工具箱和信号处理工具箱,单击这些按钮还可以显示其他相应的设计分析界面。有关这方面的内容可参考文献25。下面仅对【量化并分析滤波器】按钮进行简单介绍,以便读者观察滤波器系数量化效应。,(13)进行滤波器量化。在MATLAB环境

42、下,运行在PC机上的滤波器都是双精度格式(即滤波器系数的数据类型为64位双精度浮点制),可认为没有量化误差。但在空间和能量都十分有限的设备(如手机)上,系统字长较短,常常要对滤波器进行定点或浮点量化处理。FDATool启动界面左下侧竖向工具栏内按钮【Set Quantization Parameters】提供滤波器量化分析的功能。下面仅对滤波器系数量化分析方法作简要介绍。按照前面的步骤设计的滤波器(系数未量化)称为参考滤波器(Reference Filter),系数量化后的滤波器称为量化滤波器(Quantized Filter)。下面主要针对定点量化介绍。,单击该按钮,显示滤波器量化分析界面如

43、图7.7.4所示。滤波器算法(Filter Arithmetic)默认双精度浮点格式(DoublePrecision Floating point)。这时不需要设置量化参数。选择Filter arithmetic为定点制,并选择滤波器系数(coefficient),进行16位量化,分子、分母小数部分字长选14位。对设计的8阶椭圆滤波器,采用4级级联结构时,系数量化前后零极点位置和频响特性曲线均无明显变化。,图7.7.4 滤波器量化分析界面,使用菜单【EditConvert to Single Section】将滤波器结构转换成直接型结构。量化字长不变,点击按钮【Apply】,显示量化参数设置与

44、量化结果界面,如图7.7.5所示。由图可见,实线所示的量化滤波器频响曲线与参考滤波器(虚线)偏差很大,且当前滤波器信息显示滤波器为不稳定状态。由此直观地看出,系数量化误差对直接型结构滤波器性能的影响比级联型结构大得多。,图7.7.5 量化参数设置与直接型结构系数量化结果界面,第9章关于系数量化误差敏感度理论将解释这一现象。通过FDATool的工具条查看量化前后的零极点位置如图7.7.6所示。由图可见,系数量化误差使极点位置偏移很大,更严重的是有3个极点移到单位圆外,所以滤波器不稳定。,图7.7.6 直接型结构系数量化前后的零极点位置,如前所述,FDATool是一个功能强大的数字滤波器设计与分析

45、工具。SPTool(Signal Processing Tool)提供了一个便于完成信号处理任务的GUI集成环境。利用它,可以从MATLAB工作空间或从数据文件直接导入已经设计好的信号、滤波器或频谱;可以分析、比较、聆听和输出时域信号;可以设计、分析和输出滤波器;可以完成对信号的滤波;可以对输入、输出信号进行各种谱分析并输出分析结果,等等。所以SPTool的功能更全,可以用于数字信号处理课程所有内容的实验。限于篇幅,本书对此不作详细介绍,请读者参阅参考书25。,习题与上机题1 已知FIR滤波器的单位脉冲响应为:(1)h(n)长度N=6 h(0)=h(5)=1.5 h(1)=h(4)=2 h(2

46、)=h(3)=3(2)h(n)长度N=7 h(0)=h(6)=3 h(1)=h(5)=2 h(2)=h(4)=1 h(3)=0试分别说明它们的幅度特性和相位特性各有什么特点。,2 已知第一类线性相位FIR滤波器的单位脉冲响应长度为16,其16个频域幅度采样值中的前9个为:Hg(0)=12,Hg(1)=8.34,Hg(2)=3.79,Hg(3)Hg(8)=0 根据第一类线性相位FIR滤波器幅度特性Hg()的特点,求其余7个频域幅度采样值。3 设FIR滤波器的系统函数为求出该滤波器的单位脉冲响应h(n),判断是否具有线性相位,求出其幅度特性和相位特性。,4 用矩形窗设计线性相位低通FIR滤波,要求

47、过渡带宽度不超过/8 rad。希望逼近的理想低通滤波器频率响应函数Hd(ej)为(1)求出理想低通滤波器的单位脉冲响应hd(n);(2)求出加矩形窗设计的低通FIR滤波器的单位脉冲响应h(n)表达式,确定与N之间的关系;(3)简述N取奇数或偶数对滤波特性的影响。,5 用矩形窗设计一线性相位高通滤波器,要求过渡带宽度不超过/10 rad。希望逼近的理想高通滤波器频率响应函数Hd(ej)为(1)求出该理想高通的单位脉冲响应hd(n);(2)求出加矩形窗设计的高通FIR滤波器的单位脉冲响应h(n)表达式,确定与N的关系;(3)N的取值有什么限制?为什么?,6 理想带通特性为(1)求出该理想带通的单位

48、脉冲响应ha(n);(2)写出用升余弦窗设计的滤波器的h(n)表达式,确定与N之间的关系;(3)要求过渡带宽度不超过/16 rad。N的取值是否有限制?为什么?,7 试完成下面两题:(1)设低通滤波器的单位脉冲响应与频率响应函数分别为h(n)和H(ej),另一个滤波器的单位脉冲响应为h1(n),它与h(n)的关系是h1(n)=(1)nh(n)。试证明滤波器h1(n)是一个高通滤波器。(2)设低通滤波器的单位脉冲响应与频率响应函数分别为h(n)和H(ej),截止频率为c,另一个滤波器的单位脉冲响应为h2(n),它与h(n)的关系是h2(n)=2h(n)cos0n,且c0(c)。试证明滤波器h2(

49、n)是一个带通滤波器。,8 题8图中h1(n)是偶对称序列,N=8,设 H1(k)=DFTh1(n)k=0,1,N 1 H2(k)=DFTh2(n)k=0,1,N 1(1)试确定H1(k)与 H2(k)的关系式。|H1(k)|=|H2(k)|是否成立?为什么?(2)用h1(n)和h2(n)分别构成的低通滤波器是否具有线性相位?群延时为多少?,题8图,9 对下面的每一种滤波器指标,选择满足FIRDF设计要求的窗函数类型和长度。(1)阻带衰减为20 dB,过渡带宽度为1 kHz,采样频率为12 kHz;(2)阻带衰减为50 dB,过渡带宽度为2 kHz,采样频率为20 kHz;(3)阻带衰减为50

50、 dB,过渡带宽度为500 Hz,采样频率为5 kHz。,10 利用矩形窗、升余弦窗、改进升余弦窗和布莱克曼窗设计线性相位FIR低通滤波器。要求希望逼近的理想低通滤波器通带截止频率c=/4 rad,N=21。求出分别对应的单位脉冲响应。(1)求出分别对应的单位脉冲响应h(n)的表达式。(2*)用MATLAB画出损耗函数曲线。11 将技术要求改为设计线性相位高通滤波器,重复题9。12 利用窗函数(哈明窗)法设计一数字微分器,逼近题12图所示的理想特性。(1)求出单位脉冲响应h(n)的表达式。(2*)对不同的长度N,用MATLAB画出幅频特性函数曲线,比较逼近误差情况。,题12图,13.用窗函数法

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号