MATLAB环境下FIR滤波器的设计与仿真-新品速递_第1页
MATLAB环境下FIR滤波器的设计与仿真-新品速递_第2页
MATLAB环境下FIR滤波器的设计与仿真-新品速递_第3页
MATLAB环境下FIR滤波器的设计与仿真-新品速递_第4页
MATLAB环境下FIR滤波器的设计与仿真-新品速递_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

精品文档-下载后可编辑MATLAB环境下FIR滤波器的设计与仿真-新品速递

随着信息时代的到来,数字信号处理已经成为当今一门及其重要的学科和技术,并且在通信、语音、图像、自动控制等众多领域得到了广泛的应用,在数字信号处理中,数字滤波器占有及其重要的地位,它具有精度高,可靠性好、灵活性大等特点,现代数字滤波器可以用软件和硬件两种方式来实现,软件方式实现的优点是可以通过滤波器参数的改变去调整滤波器的性能。

MATLAB是一种面向科学和工程计算的语言,它集数值分析,矩阵运算、信号处理和图形显示于一体,具有编程效率高、调试手段丰富、扩充能力强等特点,MATLAB的信号处理工具箱具有强大的函数功能,它不仅可以用来设计数字滤波器,还可以使设计达到化,是数字滤波器设计的强有力工具。

1FIR滤波器的设计

1.1FIR滤波器简介[1]

根据冲激响应的时域特性,数字滤波器可分为无限长冲激响应(IIR)和有限长冲激响应滤波器(FIR),FIR的突出优点是:系统总是稳定的、易于实现线性相位、允许设计多通带(或多阻带)滤波器,但与IIR相比,在满足同样阻带衰减的情况下需要的阶数较高,滤波器的阶数越高,占用的运算时间越多,因此在满足指标要求的情况下应尽量减少滤波器的阶数。

FIR滤波器的基本结构可以理解为一个分节的延时线,把每一节的输出加权累加,可得到滤波器的输出,FIR滤波器的冲激响应h(n)是有限长的,数学上M阶FIR滤波器可以表示为:

FIR滤波器的设计问题实质上是确定能满足所要求的转移序列或脉冲响应的常数的问题,设计方法主要有窗函数,频率采样法和等波纹逼近法等。

1.2窗函数设计法的步骤[3][4]

窗函数设计法是一种通过截短和计权的方法使无限长非因果序列成为有限长脉冲应响应序列的设计方法,通常在设计滤波器之前,应该先根据具体的工程应用确定滤波器的技术指标,在大多数实际应用中,数字滤波器常常被用来实现选频操作,所以指标的形式一般为在频域中以分贝值给出的相对幅度响应和相位响应。

用窗函数法设计FIR滤波器的步骤如下:

(1)根据过渡带宽及阻带衰减要求,选择窗函数的类型并估计窗口长度N(或阶数M=N-1),窗函数类型可根据阻带衰减As独立选择,因为窗口长度N对阻带衰减As没有影响,在确定窗函数类型以后,可根据过渡带宽小于给定指标确定所拟用的窗函数的窗口长度N,设待求滤波器的过渡带宽为Δw,它与窗口长度N近似成反比,窗函数类型确定后,其计算公式也确定了,不过这些公式是近似的,得出的窗口长度还要在计算中逐步修正,原则是在保证阻带衰减满足要求的情况下,尽量选择较小的N,在N和窗函数类型确定后,即可调用MATLAB中的窗函数求出窗函数wd(n)。

(2)根据待求滤波器的理想频率响应求出理想单位脉冲响应hd(n),如果给出待求滤波器频率应为Hd(ejw),则理想的单位脉冲响应可以用下面的傅里叶反变换式求出:

在一般情况下,hd(n)是不能用封闭公式表示的,需要采用数值方法表示;从w=0到w=2π采样N点,采用离散傅里叶反变换(IDFT)即可求出。

(3)计算滤波器的单位脉冲响应h(n),它是理想单位脉冲响应和窗函数的乘积,即h(n)=hd(n)×wd(n),在MATLAB中用点乘命令表示为h=hd×wd。

(4)验算技术指标是否满足要求,为了计算数字滤波器在频域中的特性,可调用freqz子程序,如果不满足要求,可根据具体情况,调整窗函数类型或长度,直到满足要求为止。

使用窗函数法设计时要满足以下两个条件:

(1)窗谱主瓣尽可能地窄,以获得较陡的过渡带;

(2)尽量减少窗谱的旁瓣的相对幅度,也就是使能量尽量集中于主瓣,减小峰肩和纹波,进行增加阻带的衰减。

根据工程经验,给定的滤波器指标参数一般为通带截止频率wp、阻带截止频率ws、实际通带波动Rp和阻带衰减As。窗函数设计的经验公式为:

在实际工程中常用的窗函数有五种,即矩形窗、三角窗、汉宁窗、海明窗和凯泽窗,这些窗函数在MATLAB中分别用boxcar、triang、hanning、hamming、kaiser实现,它们之间的性能比较如表1所示。

2MATLAB环境下的设计实例[2][4]

2.1高通滤波器的设计

用窗函数设计高通滤波器,性能指标如下:通带截止频率ws=0.2π,阻带截止频率wp=0.3π,实际通带波动Rp=0.25dB,阻带衰减As=70dB。

分析:从表1可以看出凯泽窗能提供74dB的阻带衰减,所以选用凯泽窗进行设计,程序主要部分如下:

程序运行结果如图1所示,实际通带波动为0.04369,阻带衰减为70,滤波器长度为89,线性相位斜率为6.7553,符合设计要求。

2.2低通滤波器的设计

用窗函数设计低通滤波器,性能指标如下:通带截止频率wp=0.1π,阻带截止频率ws=0.25π,实际通带波动Rp=0.10dB,阻带衰减As=40dB。

分析:从表1中可以看出,汉宁窗、海明窗和凯泽窗能提供大于40dB的阻带衰减,但汉宁窗的旁瓣峰值较小,而主瓣宽度和海明窗一样,可以使滤波器的阶数较少,所以选用汉宁窗进行设计,程序主要部分如下:

仿真结果如图2所示,实际通带波动为0.76565,阻带衰减为44,滤波器长度为67,符合设计要求。

与其他语言的程序设计相比,MATLAB环境下可以更方便、快捷地设计出具有严格线性相位的FIR滤波器,节省大量的编程时间,提高编程效率,且参数的修改也十分方便,还可

温馨提示

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

评论

0/150

提交评论