窗函数法设计FIR数字滤波器_第1页
窗函数法设计FIR数字滤波器_第2页
窗函数法设计FIR数字滤波器_第3页
窗函数法设计FIR数字滤波器_第4页
窗函数法设计FIR数字滤波器_第5页
已阅读5页,还剩52页未读, 继续免费阅读

下载本文档

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

文档简介

窗函数法设计FIR数字滤波器设计方法吉伯斯现象常用窗函数Kaiser(凯泽)窗利用Kaiser窗实现多带滤波器设计方法问题:理想滤波器的Hd

(ejW)已知,设计一物理可实现的滤波器,使其频响特性逼近Hd(ejW)。

hd

[k]一般情况下是非因果无限长序列,需对其进行截短和因果化处理。设计方法

可实现性处理方案

方案一:(1)将hd[k]关于k=0对称截短,即h[k]=hd[k],-L

k

L(2)若h[k]非因果系统,可将其右移使其成为因果系统h[k]=hd[k-L],0

k

2L只能设计I型或III型线性相位FIR滤波器(1)将线性相位因子ej(-0.5MW+b)加入Hd

(ejW)

中(2)计算出hd[k]后,取其在0

k

M范围的值h[k]=hd[k],0

k

M设计方法

可实现性处理方案

方案二:可设计四种类型的线性相位FIR滤波器设计方法

设计结果分析等于零,即h[k]=hd[k],0

k

M最小积分平方误差由Parseval定理结论:上述方法所设计的滤波器是在积分平方误差最小意义下的最佳滤波器。

设计方法(采用方案二)1.根据要求确定线性相位FIR滤波器的类型2.确定理想滤波器的幅度函数Ad(W)和相位fd(W)fd(W)=-0.5MW+b3.计算IDTFT得hd[k]4.截短hd[k]h[k]=hd[k],0

k

M

最小积分平方误差设计FIR的步骤例:设计一个幅度响应能逼近理想带通滤波器的线性相位FIR滤波器(Wc1=0.3p,Wc2=0.7p,M=30

)。

解:

(1)确定线性相位FIR滤波器类型:可选用I型或II型(2)确定理想滤波器的幅度函数Ad(W)和相位fd(W)fd(W)=-0.5MW

例:设计一个幅度响应能逼近理想带通滤波器的线性相位FIR滤波器(Wc1=0.3p,Wc2=0.7p,M=30

)。

解:(3)计算IDTFT得hd[k](4)截断hd[k]长度为N=M+1的矩形窗fd(W)=-0.5MW+b例:设计一个幅度响应能逼近理想带通滤波器的线性相位FIR滤波器。

解:单位脉冲响应

幅度函数

Wc1=0.3p,Wc2=0.7p,M=30

例:设计一个幅度响应能逼近理想带通滤波器的线性相位FIR滤波器。

结论:

当Wc1=0,滤波器为理想低通

当Wc2=p,滤波器为理想高通

1.

理想低通和高通滤波器是带通滤波器的特殊情况例:设计一个幅度响应能逼近理想带通滤波器的线性相位FIR滤波器。

结论:2.

理想带阻滤波器可通过带通滤波器得到由于|HBS(ejW)|=1-

|HBP(ejW)|,故其中吉伯斯现象矩形窗设计的FIR低通滤波器在不同阶数时的幅度函数(Wc=p/2)

所设计滤波器的幅度函数在通带和阻带都呈现出振荡现象,且最大波纹大约为幅度的9%,这个现象称为Gibbs现象。

吉伯斯现象

产生吉伯斯现象原因分析由于所设计滤波器的单位脉冲响应N=M+1利用DFTF的性质可得所设计FIR滤波器的频率响应

H(ejW)逼近Hd(ejW)的好坏,取决于窗函数的频谱W(ejW)窗函数的频谱吉伯斯现象

窗函数的频谱2pNN04pNWp3pN矩形窗的幅度函数W(W)1.W(W)的主瓣宽度4p/N2.旁瓣相对衰减为常数=13dB吉伯斯现象

矩形窗设计FIR滤波器的频率响应H(ejW)H(ejW)主要由主瓣的面积确定H(ejW)的波动由旁瓣引起吉伯斯现象

矩形窗设计FIR滤波器的频率响应H(ejW)H(ejW)逐渐减小,形成了滤波器的过渡带

FIR滤波器过渡带的宽度和窗函数主瓣的宽度密切相关

吉伯斯现象

矩形窗设计FIR滤波器的频率响应H(ejW)H(ejW)完全由旁瓣的面积确定旁瓣的大小决定了FIR滤波器在阻带的衰减

吉伯斯现象

矩形窗设计FIR滤波器的频率响应H(ejW)

矩形窗截断产生的波峰大约是9%,故用矩形窗设计出的滤波器阻带最大衰减

-20log10(9%)

21dB吉伯斯现象

结论1.

窗函数的主瓣宽度决定了H(ejW)过渡带的宽度,窗函数长度N增大,过渡带减小。2.旁瓣的大小决定了FIR滤波器在阻带的衰减用矩形窗设计出的滤波器阻带最大衰减为20log10(9%)

-21dB

如何提高阻带衰减?选用旁瓣幅度较小的窗函数常用窗函数

矩形窗Ap=-20lg(1-dp)

0.82dB,As=-20lg(ds

)

21dBdp=ds=0.09Hann(汉纳)窗常用窗函数w=hanning(M+1)Hann(汉纳)窗Ap

0.056dB,As

44dBdp=ds=0.0064常用窗函数Hamming(哈明)窗Ap

0.019dB,As

53dBdp=ds=0.0022常用窗函数w=hamming(M+1)Blackman窗Ap

0.0017dB,As

74dBdp=ds=0.0002常用窗函数(w=blackman(M+1))常用窗函数性质例:用非矩形窗设计截频为Wc=0.5p的线性相位理想低通滤波器,并将设计结果与利用矩形窗设计结果比较。解:(1)确定线性相位FIR滤波器类型:可选用I型或II型fd(W)=-0.5MW(2)确定理想滤波器的幅度函数Ad(W)和相位fd(W)(3)计算IDTFT得hd[k](4)截断hd[k]可以是汉宁窗、哈明窗或Blackman窗例:用非矩形窗设计截频为Wc=0.5p的线性相为理想低通,并将设计结果与利用矩形窗设计结果比较。矩形窗和汉宁窗设计的低通对比00.250.50.751-80-60-44-200SquareHanning例:用非矩形窗设计截频为Wc=0.5p的线性相为理想低通,并将设计结果与利用矩形窗设计结果比较。矩形窗和哈明窗设计的低通对比00.250.50.751-80-60-52-200Square

Hamming例:用非矩形窗设计截频为Wc=0.5p的线性相为理想低通,并将设计结果与利用矩形窗设计结果比较。矩形窗和Blackman窗设计的低通对比00.250.50.751-100-75-60-40-200Square

BlackmanKaiser(凯泽)窗(w=kaiser(N,beta))b是一可调参数,调节窗函数的形状。I0(x

):零阶第一类修正贝塞尔函数

(themodifiedzeroth-orderBesselfunction)I0(x

)可用幂级数表示为一般求20项就能达到所需精度。

定义Kaiser(凯泽)窗——b取不同值时窗的形状0246810121416182000.51b=00246810121416182000.51b=10246810121416182000.51b=3Kaiser(凯泽)窗A=-20log10(min{dp,ds})N与b的确定Kaiser(凯泽)窗

Kaiser窗设计FIR滤波器的MATLAB函数[M,Wc,beta,ftype]=kaiserord(f,a,dev)f:

表示需设计的FIR滤波器的频带a:B个元素的向量,表示FIR滤波器在B个频带中的幅度值。一般对通带取值为1,阻带取值为0。dev:B个元素的向量,表示FIR滤波器在B个频带中的波动值。

返回参数M及beta,分别表示FIR滤波器阶数M及Kaiser窗的参数b

返回参数Wc和ftype是函数fir1的调用参数[w]=kaiser(N,belta)N:

窗宽度(M+1)h=fir1(M,Wc,'ftype',window)M表示滤波器的阶数Wc表示理想FIR滤波器的B个频带ftype表示滤波器的类型,缺省值为空window是一长度为M+1的向量,Hamming窗Matlab设计FIR数字滤波器

获得FIR滤波器的单位脉冲响应

计算M,beta

获得窗[w]=kaiser(M+1,beta)[w]=hanning(M+1)[w]=hamming(M+1)[w]=blackman(M+1)例:用Kaiser窗设计满足下列指标的I型线性相位FIR低通滤波器。Wp=0.3p,Ws=0.5p,Ap=0.1dB,As=40dB解:(1)由给指标确定待逼近理想低通的截频Wc

由于理想低通滤波器的|H(ejW)|在截频Wc处收敛于0.5,因此常将截频Wc取在过渡带的中点Wc=(Wp+Ws)/2=0.4p例:用Kaiser窗设计满足下列指标的I型线性相位FIR低通滤波器。Wp=0.3p,Ws=0.5p,Ap=0.1dB,As=40dB解:(2)由给指标确定Kaiser窗的参数N和bA=-20lg(min{dp,ds})=As=40dBI型线性相位滤波器阶数必须是偶数,取M=24w={0.1414,0.217,0.3023,0.3948,0.4914,0.5887,0.6832,0.7709,0.8485,0.9126,0.9604,0.99,1,0.99,0.9604,0.9126,0.8485,0.7709,0.6832,0.5887,0.4914,0.3948,0.3023,0.217,0.1414}例:用Kaiser窗设计满足下列指标的I型线性相位FIR低通滤波器。Wp=0.3p,Ws=0.5p,Ap=0.1dB,As=40dB解:(3)设计截频Wc=0.4p的I型线性相位FIR低通滤波器fd(W)=-0.5MW例:用Kaiser窗设计满足下列指标的I型线性相位FIR低通滤波器。Wp=0.3p,Ws=0.5p,Ap=0.1dB,As=40dB解:单位脉冲响应设计结果增益响应G(W)=20lg|H(ejW)|wp=0.3*pi;ws=0.5*pi;As=40;M=ceil((As-7.95)/(ws-wp)/2.285)M=M+mod(M,2)beta=0.1102*(As-8.7);w=kaiser(M+1,beta);wc=(wp+ws)/2;alpha=M/2;k=0:M;hd=(wc/pi)*sinc((wc/pi)*(k-alpha));h=hd.*w';omega=linspace(0,pi,512);mag=freqz(h,[1],omega);magdb=20*log10(abs(mag));plot(omega/pi,magdb);axis([10,1,-100,0]);grid;利用MATLAB实现上例

Wp=0.3p,Ws=0.5p,Ap=0.1dB,As=40dBAp=0.0217As=47.2042利用MATLAB实现上例

Wp=0.3p,Ws=0.5p,Ap=0.1dB,As=40dB例:设计一满足下列指标的线性相位FIR高通滤波器。Wp=0.67p,Ws=0.53p,Ap=0.3dB,As=50dB解:由As确定截断所用窗函数:Hamming窗或kaiser窗1)由过渡带宽度确定滤波器长度N可选I型滤波器,取N=51;或选IV型滤波器,取N=502)由给指标确定待逼近理想高通的截频Wc=0.6p一、采用Hamming窗截断,设计过程如下3)确定线性相位FIR滤波器类型:4)设计截频Wc=0.6p的线性相位FIR高通滤波器例:设计一满足下列指标的线性相位FIR高通滤波器。Wp=0.67p,Ws=0.53p,Ap=0.3dB,As=50dB解:由As确定截断所用窗函数:Hamming窗或kaiser窗一、采用Hamming窗截断,设计过程如下采用I型线性相位滤波器,N=51,M=50fd(W)=-0.5MW4)设计截频Wc=0.6p的线性相位FIR高通滤波器例:设计一满足下列指标的线性相位FIR高通滤波器。Wp=0.67p,Ws=0.53p,Ap=0.3dB,As=50dB解:由As确定截断所用窗函数:Hamming窗或kaiser窗一、采用Hamming窗截断,设计过程如下采用I型线性相位滤波器,N=51,M=50截断,得I型线性相位FIR高通滤波器的单位脉冲响应h[k]=hd[k]w51[k]4)设计截频Wc=0.6p的线性相位FIR高通滤波器例:设计一满足下列指标的线性相位FIR高通滤波器。Wp=0.67p,Ws=0.53p,Ap=0.3dB,As=50dB解:由As确定截断所用窗函数:Hamming窗或kaiser窗一、采用Hamming窗截断,设计过程如下采用IV型线性相位滤波器,N=50,M=49fd(W)=-0.5MW+0.5p4)设计截频Wc=0.6p的线性相位FIR高通滤波器例:设计一满足下列指标的线性相位FIR高通滤波器。Wp=0.67p,Ws=0.53p,Ap=0.3dB,As=50dB解:由As确定截断所用窗函数:Hamming窗或kaiser窗一、采用Hamming窗截断,设计过程如下采用IV型线性相位滤波器,N=50,M=49截断,得IV型线性相位FIR高通滤波器的单位脉冲响应h[k]=hd[k]w50[k]用Hamming窗设计的Wc=0.6pFIRHP滤波器的幅度响应00.40.60.81-110-80-530GainresponseofhighpassFIRfilterNormalizedfrequencyGain,dBtypeItypeIVI型N=51

IV型N=50例:设计一满足下列指标的线性相位FIR高通滤波器。Wp=0.67p,Ws=0.53p,Ap=0.3dB,As=50dB解:由As确定截断所用窗函数:Hamming窗或kaiser窗二、采用Hamming窗截断,利用MATLAB实现%Program:利用hamming窗设计FIR高通滤波器%filterspecificationWp=0.67*pi;Ws=0.53*pi;Ap=0.3;As=50;%determinethelengthofthefilter

N=ceil(7*pi/(Wp-Ws));N=mod(N+1,2)+N;M=N-1;fprintf(’N=%.0f\n',N);%generatewindoww=hamming(N)';例:设计一满足下列指标的线性相位FIR高通滤波器。Wp=0.67p,Ws=0.53p,Ap=0.3dB,As=50dB解:由As确定截断所用窗函数:Hamming窗或kaiser窗二、采用Hamming窗截断,利用MATLAB实现%cutofffrequencyofidealhighpassfilterWc=(Wp+Ws)/2;k=0:M;hd=-(Wc/pi)*sinc(Wc*(k-0.5*M)/pi);hd(0.5*M+1)=hd(0.5*M+1)+1;h=hd.*w;omega=linspace(0,pi,512);mag=freqz(h,[1],omega);magdb=20*log10(abs(mag));plot(omega/pi,magdb);例:设计一满足下列指标的线性相位FIR高通滤波器。Wp=0.67p,Ws=0.53p,Ap=0.3dB,As=50dB解:由As确定截断所用窗函数:Hamming窗或kaiser窗三、采用Kaiser窗截断,利用MATLAB实现%Program:利用kaiser窗设计FIR高通滤波器Ap=0.3;As=50;Rp=1-10.^(-0.05*Ap);Rs=10.^(-0.05*As);f=[0.53,0.67];a=[0,1];dev=[Rp,Rs];[M,Wc,beta,ftype]=kaiserord(f,a,dev);%使滤波器为I型M=mod(M,2)+M;h=fir1(M,Wc,ftype,kaiser(M+1,beta))omega=linspace(0,pi,512);mag=freqz(h,[1],omega);plot(omega/pi,20*log10(abs(mag)));Kaiser窗设计的高通滤波器N=42,Ap=0.034dB,As=52.4dBWp=0.67p,Ws=0.53p,Ap=0.3dB,As=50dB00.10.20.30.40.50.60.70.80.91-140-120-100-80-60-40-20020例:理想数字微分器的频率响应为HDIF(ejW)=jW,|W|

p。试用窗口法设计一线性相位FIR滤波器,使其幅度响应逼近理想数字微分器。解:

1)确定线性相位FIR滤波器类型:fd(W)=-0.5MW+0.5p2)确定理想滤波器的幅度函数Ad(W)和相位fd(W)3)计算IDTFT得hd[k]由于HDIF(ejW)=jW,含有90

相移,故选用III型或IV型例:理想数字微分器的频率响应为HDIF(ejW)=jW,|W|

p。试用窗口法设计一线性相位FIR滤波器,使其幅度响应逼近理想数字微分器。解:3)计算IDTFT得hd[k]4)截断hDIF[k]例:理想数字微分器的频率响应为HDIF(ejW)=jW,|W|

p。试用窗口法设计一线性相位FIR滤波器,使其幅度响应逼近理想数字微分器。A(W)p-p0WM=10p-pA(W)W0M=9由于III型性相位FIR滤波器在W=p存在固有的零点,所以M=10的微分器的幅度函数在W=p附近误差较大。

利用Kaiser窗实现多带滤波器若FIR滤波器有4个频带,其分别为

0

W

pf1pf2

W

pf3pf4

W

pf5pf6

W

pFIR滤波器在4个频带中的幅度值为

a1a2a3a4(通带取1,阻带取0)FIR滤波器在4个频带中的波动

d1

d2

d3

d4则可以利用MATLAB中的kaiserord和fir1函数实现

f=[f1f2f3f4f5f6];

温馨提示

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

评论

0/150

提交评论