FIR滤波器组的设计与Matlab仿真

上传人:宝路 文档编号:2156797 上传时间:2017-07-20 格式:DOC 页数:4 大小:84.50KB
返回 下载 相关 举报
FIR滤波器组的设计与Matlab仿真_第1页
第1页 / 共4页
FIR滤波器组的设计与Matlab仿真_第2页
第2页 / 共4页
FIR滤波器组的设计与Matlab仿真_第3页
第3页 / 共4页
FIR滤波器组的设计与Matlab仿真_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《FIR滤波器组的设计与Matlab仿真》由会员分享,可在线阅读,更多相关《FIR滤波器组的设计与Matlab仿真(4页珍藏版)》请在金锄头文库上搜索。

1、FIR 滤波器组的设计与 Matlab 仿真1 引言在许多数字信号处理系统中,如语音或音频信号处理中,有限冲激响应(FIR)滤波器是最常用的组件之一,它完成信号预调、频带选择和滤波等功能。FIR 滤波器虽然在截止频率的边沿陡峭性能上不及无限冲激响应(IIR)滤波器,但是却具有严格的线性相位特性,稳定性好,能设计成多通带(或多阻带)滤波器组,所以能够在数字信号处理领域得到广泛的应用。Matlab 是 mathswork 公司推出的一套高性能的数值计算和可视化软件,它集数值分析、信号运算、矩阵运算、信号处理和图形显示于一体,具有很强的绘图功能。利用它自带的丰富的函数和信号处理工具箱,可以很方便地设

2、计和仿真 FIR 滤波器组。2 用窗函数法设计 FIR 滤波器一个离散时间系统 H(z)=B(z)/A(z) ,若分母多项式 A(z )的系数 a1=aN=0,那么该系统即变成 FIR 系统,即(1)nMzbbz 010)(显然,系数 b0,b 1,b M 即是该系统的单位抽样响应 h(0) ,h(1) ,h(M) ,且当 nM时,h(n)0。所对应的 FIR 滤波器的转移函数为(2)nnzhzH0)()(H(z)的频率响应应近似为 Hd(ejw),而且是线性相位的。FIR 滤波器有许多行之有效的设计方法,如窗函数法、频率抽样法及最佳一致逼近法等,其中窗函数法很适合于带通滤波器组的设计。一个截

3、止频率为 c的理想低通滤波器 Hd(ejw),其冲激响应 hd(n)是无限长和非因果的。对 hd(n)加窗(窗函数用 w(n)表示,窗宽为有限值 M)的结果,便得到一个 FIR 滤波器 h(n),它是对所要求的理想低通滤波器的逼近。如果窗函数 w(n)和 FIR 滤波器 h(n)的频率特性分别用 W(ejw)和 H(ejw)表示,则 H(ejw)将等于 W(ejw)和 Hd(ejw)的卷积。由于窗函数频谱主瓣不是无限窄,因而 FIR 滤波器的频率特性在通带和阻带之间形成了一个过渡带。由于窗函数频谱中存在着旁瓣,因而 FIR 滤波器的频率特性在通带和阻带内产生了一些起伏振荡的波纹。窗函数法设计的

4、基本思想是对于给定的滤波器技术要求,选择滤波器长度 M 和具有最窄主瓣宽度和尽可能最小的旁瓣衰减的某个窗函数 w(n)。常用的窗函数有矩形窗、巴特利特(Bartlett )窗、汉宁( Hanning)窗、哈明(Hamming)窗、布莱克曼(Blackman)窗和凯塞(Kaiser)窗,他们的主要区别在于参数主瓣 3dB 带宽 B、最大边瓣峰值 A(dB)和边瓣谱峰渐进衰减速度 D(Db/oct)之间的差别。3 FIR 滤波器组的设计与 Matlab 仿真3.1 FIR 滤波器组的设计用窗函数法设计 FIR 滤波器组的基本思路为: (1)根据所要求的分析频率范围和频率分辨率选择一组分析频率 k

5、及相对应的原型理想低通滤波器的截止频率 ck(k=0 ,1,L-1 ) ,L 为滤波器组的通道数,得出理想带通滤波器组的复合频率响应。(2)用窗函数法近似实现各个理想带通滤波器。实际的复合频率响应等于理想复合频率响应与设计窗的频率特性的卷积。在用窗函数法设计 FIR 滤波器时,还需要知道通带内的纹波幅度 ,它可以根据阻带衰减量 As 的要求来确定,通常的典型值为As=-20lg=4060 (3)如果选择 Kaiser 窗,参数 的计算公式为当 As 50 时,=0.1102(A s-8.7);当 21As 50 时,=0.5845(A s-21)0.5+0.07886(As-21)。 (4)滤

6、波器的阶数为M=(As-7.95)/14.36F+1 (5)式中F 是归一化过渡带宽,即F=fT,而f=/2 (6)过渡带宽 的选择根据对每个滤波器的频率分辨率要求来决定,必须满足限制条件 k2 ck (7)如果各通道采用相同的设计窗,保证中心频率及带宽的选择能覆盖- 到 频率范围(不管滤波器的中心频率和带宽如何分布) ,那么最终得到的实际复合响应一定是理想的,即具有平坦幅度和线性相位。在数字语音处理中,语音信号取样频率 f s=9.6kHz,频谱分析范围为 200Hz 到3200Hz,设计一 FIR 带通滤波器组,使阻带内衰减为 60dB。选取滤波器通道数 L=15,均匀分布,则理想的原型低

7、通滤波器的截止频率为f c=(3200-200)/(2x15)=100Hz中心频率为f k =(200k+100)Hz, k=1,2,15采用 Kaiser 窗函数设计,要求 =10 -3,取 As=-20lg=60,则由式(4) 、 (5) 、 (6)和(7)可计算出相应的参数为=0.1102(A s-8.7)=5.65326f2f c=200HzFfT=200Hz/9600HzM=(As-7.95)/14.36F+1175则带通滤波器组的实际复合冲激响应为h(n)=w(nd) (n-n d)其中延时 nd =(M-1)/2=87。3.2 Matlab 仿真在 Matlab 平台上进行 FI

8、R 滤波器组的仿真主要有两种途径:一是基于数据流的仿真,一是基于时间流的仿真。基于数据流的仿真是用 Matlab 函数以命令行的形式实现,在仿真过程中不能改变初始数据或仿真参数,若想改变只有终止仿真重新操作。基于时间流的仿真是用动态仿真工具 Simulink 来实现,它提供了很多模块库,只需将所需模块调出进行连接即可,初始数据或仿真参数在仿真过程中可以改变,以便动态地观察系统随之引起的变化。两种方法相比较而言,基于数据流的仿真有较高的灵活性,对一些特殊的功能模块,由于有 Matlab 大量函数的支持,用软件编程实现比较容易。而 Simulink 提供的模块库虽然也很多,但仍然不能满足通信系统的

9、要求,有一定的限制。因此,我们用函数编程来仿真。对前面提到的数字语音处理中的 FIR 带通滤波器组用 Matlab 进行仿真,根据系统所给参数编程,其源程序为如下:%ideal_lp.mfunction hd=ideal_lp(wc,M)alpha=(M-1)/2;n=0:1:(M-1);m=n-alpha+eps;hd=sin(wc*m)./(pi*m);%freqz_m.mfunction db,mag,pha,grd,w=freqz_m(b,a)H,w=freqz(b,a,1000,whole);H=(H(1:1:501);w=(w(1:1:501);mag=abs(H);db=20*l

10、og10(mag+eps)/max(mag);pha=angle(H);grd=grpdelay(b,a,w);%firkaiser.mhh=0;L=15;As=60;beta=0.1102*(As-8.7);delta_f=(3200-200)/L;delta_F=delta_f/9600;M=round(As-7.95)/(14.36*delta_F)+1);for i=1:Lw1=200*i*2*pi/9600;w2=200*(i+1)*2*pi/9600;n=0:1:(M-1);hd=ideal_lp(w2,M)-ideal_lp(w1,M);w_kaiser=(kaiser(M,be

11、ta);h=hd.*w_kaiser;hh=hh+h;db,mag,pha,grd,w=freqz_m(h,1);delta_w=2*pi/1000;subplot(2,1,1);plot(w/pi,db);title(Magnitude Response in dB);gridaxis(0 1 -70 10);xlabel(frequency in pi units);ylabel(Decibels)hold onendhold offdb,mag,pha,grd,w=freqz_m(hh,1);delta_w=2*pi/1000;subplot(2,1,2);plot(w/pi,db);t

12、itle(Magnitude Response in dB);gridaxis(0 1 -100 10);xlabel(frequency in pi units);ylabel(Decibels)仿真的结果如图 1 所示,上半部分为各个通道独立的幅频特性,下半部分为滤波器组复合幅频特性。从图中可以看出,阻带衰减达 63dB,满足技术指标的要求。图 1 幅频特性图将源程序中滤波器组的幅频特性纵轴输出参数稍做调整,则可以得到图 2 所示的幅频特性,从图中可以看出通带纹波幅度 小于 0.02dB(即小于 10-3) ,完全满足技术指标的要求。图 2 通带纹波幅度4 结束语MATLAB 在数字信号处理中的应用越来越广泛,用 MATLAB 来设计和仿真 FIR 滤波器组即简便又易于调整参数,是以往其他设计和仿真方法所无法比拟的,是工程技术人员进行系统设计和仿真的得力助手。参考文献:1美维纳K恩格尔著。Digital Signal Processing Using MATLAB。西安交通大学出版社,2002 年2美Shoichiro Nakamura 著。Numerical Analysis and Graphic Visualization with MATLAB (Second Edition)。电子工业出版社,2002 年3姚天任著。数字语音处理。华中科技大学出版社,2002 年

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号