FIR滤波器设计文档推荐

上传人:粗**** 文档编号:135282069 上传时间:2020-06-14 格式:PDF 页数:50 大小:1.69MB
返回 下载 相关 举报
FIR滤波器设计文档推荐_第1页
第1页 / 共50页
FIR滤波器设计文档推荐_第2页
第2页 / 共50页
FIR滤波器设计文档推荐_第3页
第3页 / 共50页
FIR滤波器设计文档推荐_第4页
第4页 / 共50页
FIR滤波器设计文档推荐_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《FIR滤波器设计文档推荐》由会员分享,可在线阅读,更多相关《FIR滤波器设计文档推荐(50页珍藏版)》请在金锄头文库上搜索。

1、第 7 章 FIR 滤波器设计 第六章我们介绍了无限冲激响应 IIR 滤波器的设计方法 其中最常用的由模拟滤波器转换为 数字滤波器的方法为双线性变换法 因为这种方法无混叠效应 效果较好 但通过前面的例子我 们看到 IIR数字滤波器相位特性不好 非线性 如图6 11 图 6 13 图 6 15 也不易控制 然而在现代信号处理中 例如图像处理 数据传输 雷达接收以及一些要求较高的系统中对相位 特性要求较为严格 这种滤波器就无能为力了 改善相位特性的方法是采用有限冲激响应滤波器 本章首先对FIR滤波器原理及其使用函数作基本介绍 然后重点介绍窗函数法设计FIR滤波器 并对最优滤波器设计函数进行介绍 F

2、IR 滤波器原理概述及滤波函数 FIR滤波器原理及设计方法分类 根据第6 章对数字滤波器的介绍 我们知道FIR滤波器的传递函数为 1 0 N n n znh zX zY zH 7 1 可得 FIR滤波器的系统差分方程为 1 0 1 1 1 1 0 N m nxnbmnxmb NnxNbnxbnxbny 因此 FIR滤波器又称为卷积滤波器 根据第4 章中所描述的系统频率响应 FIR滤波器的频率 响应表达式为 1 0 N n jnj enbeH 7 2 信号通过FIR 滤波器不失真条件与 6 6 式所描述的相同 即滤波器在通带内具有恒定的幅频 特性和线性相位特性 理论上可以证明 这里从略 当FIR

3、滤波器的系数满足下列中心对称条 件 1 1 nNbnbnNbnb或 7 3 时 滤波器设计在逼近平直幅频特性的同时 还能获得严格的线性相位特性 线性相位FIR滤波 器的相位滞后和群延迟在整个频带上是相等且不变的 对于一个N 阶的线性相位FIR滤波器 群延迟为常数 即滤波后的信号简单地延迟常数个时间步长 这一特性使通带频率内信号通过滤 波器后仍保持原有波形形状而无相位失真 本章主要介绍的FIR 数字滤波器设计方法及MATLAB 信号处理工具箱提供的FIR 数字滤波器设 计函数 见表7 1 由于篇幅所限 本章我们主要介绍窗函数法和最优化设计方法 表 7 1 FIR滤波器设计的主要方法 函数设计方法

4、说明工具函数 窗函数法理想滤波器加窗处理fir1 单频带 fir2 多频带 kaiserord 最优化设计平方误差最小化逼近理想幅频 响应或Park McClellan 算法产 生等波纹滤波器 firls remez remezord 约束最小二乘逼近在满足最大误差限制条件下使 整个频带平方误差最小化 fircls fircls1 升余弦函数具有光滑 正弦过渡带的低通 滤波器设计 Fircos FIR数字滤波器滤波函数 相对于 IIR 滤波器的滤波函数 FIR数字滤波器滤波函数除了dimpulse 和 dstep 仅适用于IIR 滤波 器外 其他各种函数可直接应用于FIR滤波器 只是输入的分母

5、多项式向量a 1 另外 MATLAB 还提供了一个函数fftfilt 该函数利用效率高的基于FFT算法实现对数据的滤波 该函数只适用于 FIR滤波器 调用形式为 y fftfilt b x n 式中 b 为 FIR滤波器的系数向量 x 为输入数据 n 为 FFT长度 缺省时 函数选用最佳的FFT 长度 y 为滤波器的输出 该函数执行下面的操作 n length x y ifft fft x fft b n fft a n 应注意 y fftfilt b x 等价于 y filter b a x FIR滤波器的窗函数设计 窗函数的基本原理 FIR 滤波器设计的主要任务是根据给定的性能指标确定滤波

6、器的系数b 即系统单位脉冲序列 h n 它是一个有限长序列 FIR滤波器的理想频率响应 可写成复数形式的Fourier 级数形式 n nj d j d enheH 7 4 式中 hd n 是对应的单位脉冲响应序列 这说明滤波器的频率响应和单位脉冲响应互为Fourier 变换对 因此其单位脉冲响应可由下式求得 deeHnh njj dd 2 1 7 5 求得序列nhd后 通过z 变换 可得到zH d n n dd znhzH 7 6 注意 这里nhd为无限长序列 因此zH d 是物理上不可实现的 如何变成物理上可实现呢 一个自然的想法是只取其中的某些项 即只截取nhd中的一部分 比如n 0 N

7、1 N 为正整 数 这种处理相当于将nhd n 与函数w n 相乘 w n 具有下列形式 Nn Nnn nw 0 1 0 0 w n 相当于一个矩形 我们称之为矩形窗 即我们可采用矩形窗函数w n 将无限脉冲响应nhd 截取一段h n 来近似为nhd 这种截取在数学上表示为 h n nhdw n 7 7 这里应该强调的是 加窗函数不是可有可无的 而是将设计变为物理可实现所必须的 截取之后的滤波器传递函数变为 1 0 N n n znhzH 7 8 式中 N 为窗口宽度 H z 是物理可实现系统 为了获得线性相位 FIR 滤波器h n 必须满足中心对称条件 即7 3 式 序列h n 的延迟为 2

8、 1N 这种方法的基本原理是用一定宽度的矩形窗函数截取无限脉冲响应序列获得有限长的脉冲响应 序列 从而得到FIR滤波器的脉冲响应 故称为FIR滤波器的窗函数设计法 经过加矩形窗后所得的滤波器实际频率响应能否很好地逼近理想频率响应呢图7 1 示意给出了 理想滤波器加矩形窗后的情况 理想低通滤波器的频率响应如图中左上角图 矩形窗的频率响应 为左下角图 时间域内的乘积 7 7 式要求实际频率响应为这两个频率响应函数在频域内的卷 积 卷积定理 即得到图形为图7 1 右图 图 7 1 FIR滤波器理想与实际频率响应 由图可看出 加矩形窗后使实际频率响应偏离理想频率响应 主要影响有三个方面 1 理想幅频特

9、性陡直边缘处形成过渡带 过渡带宽取决于矩形窗函数频率响应的主瓣宽度 2 过渡带两侧形成肩峰和波纹 这是矩形窗函数频率响应的旁瓣引起的 旁瓣相对值越大 旁瓣越多 波纹越多 3 随窗函数宽度N 的增大 矩形窗函数频率响应的主瓣宽度减小 但不改变旁瓣的相对值 为了改善FIR滤波器性能 要求窗函数的主瓣宽度尽可能窄 以获得较窄的过渡带 旁瓣相对值 尽可能小 数量尽可能少 以获得通带波纹小 阻带衰减大 在通带和阻带内均平稳的特点 这 样可使滤波器实际频率响应更好地逼近理想频率响应 这里我们明确两个概念 截断和频谱泄漏 信号是无限长的 而在进行信号处理时只能采取有限 长信号 所以需要将信号 截断 在信号处

10、理中 截断 被看成是用一个有限长的 窗口 看无限长的信号 或者从分析的角度是无限长的信号x t 乘以有限长的窗函数w t 由傅立叶变 换性质可知 时间域内的乘积对应于频率域的卷积 即 fWfXtwtx 7 9 这里 x t 是频宽有限信号 而w t 是频宽无限信号 表示互为Fourier 变换对 截断后的信 号也必须是频宽无限信号 这样就是有限频带的信号分散到无限频带中去 这样就产生了所谓频 谱泄漏 从能量的角度来看 频谱泄漏也是能量的泄漏 因为加窗后使原来信号集中的窄频带内 的能量分散到无限的频带宽度范围内 频谱泄漏是不可避免的 但要尽量减小 上边只考虑了矩形窗 如果我们使窗的主瓣宽度尽可能

11、地窄 旁瓣尽可能地小 可以获得性能更 好的滤波器 能否改变窗的形状而达到这个目的呢回答是肯定的 其实数字信号处理的前驱者们 设计了不同于矩形窗的很多窗函数 这些窗函数在主瓣和旁瓣特性方面各有特点 可满足不同的 要求 为此 用窗函数法设计FIR数字滤波器时 要根据给定的滤波器性能指标选择窗口宽度N 和窗函数w n 下面我们介绍窗函数 MATLAB 信号处理中提供的窗函数 1 矩形窗 前面分析中所用的矩形窗可用下面函数来实现w boxcar N N 为窗的长度 以 下函数与此同 w 为返回的窗函数序列 2 汉宁窗 w hanning N 汉宁窗的表达式为 Nk N k kw 1 1 2cos15

12、0 7 10 3 哈明窗 w hamming N 哈明窗的表达式为 1 1 0 1 2cos46 054 0 1 Nk N k kw 7 11 4 Bartlett 窗 w bartlett N Bartlett 窗的表达式为 当 N 为奇数时 Nk N N k N k N k kw 2 1 1 1 2 2 2 1 1 1 1 2 7 12 当 N 为偶数时 Nk N N kN N k N k kw 1 2 1 2 2 2 1 1 1 2 7 13 5 Blackman 窗 w blackman N Blackman 窗的表达式为 Nk N k N k kw 1 1 1 408 0 1 1 2

13、cos5 042 0 7 14 Blackman 窗比其他相同尺寸窗 哈明窗 汉宁窗 具有主瓣较宽和旁瓣泄漏较小的特点 6 三角窗 w triang N 三角窗的表达式为 当 N 为奇数时 Nk N N kN N k N k kw 2 1 1 1 2 2 1 1 1 2 7 15 当 N 为偶数时 Nk N N kN N k N k kw 1 2 1 2 2 2 1 1 12 7 16 三角窗和Bartlett 窗十分类似 三角窗的两端值不为零 而Bartlett 窗则为零 这一点可从例7 1 中看出 7 Kaiser 窗 w kaiser n beta 其中 beta 是 Kaiser 窗参

14、数 影响窗旁瓣幅值的衰减率 Kaiser 窗表达式 0 2 0 1 2 11 I N k I kw 7 17 式中 I0 是修正过的零阶Bessel 函数 Kaiser 窗用于滤波器设计时 若旁瓣幅值为d 则 21 0 2150 2107886 0215842 0 50 7 81102 0 4 0 7 18 8 Chebyshev 窗 w chebwin n r 式中 r 是窗口的旁瓣幅值在主瓣以下的分贝数 Chebyshev 窗具有主瓣宽度最小 而旁瓣等高 高度可调整的特点 下面我们在MATLAB 观看各种窗函数的形状和频率域图象来验证上述所讲特点 例 7 1 用 MATLAB 编程绘制各种

15、窗函数的形状 窗函数的长度为21 Samp7 1 clf Nwin 21 n 0 Nwin 1 数据总数和序列序号 figure 1 for ii 1 4 switch ii case 1 w boxcar Nwin 矩形窗 stext 矩形窗 case 2 w hanning Nwin 汉宁窗 stext 汉宁窗 case 3 w hamming Nwin 哈明窗 stext 哈明窗 case 4 w bartlett Nwin Bartlett 窗 stext Bartelett窗 end posplot 2 2 int2str ii 指定绘制窗函数的图形位置 subplot posplo

16、t stem n w 绘出窗函数 hold on plot n w r 绘制包络线 xlabel n ylabel w n title stext hold off grid on end figure 2 for ii 1 4 switch ii case 1 w blackman Nwin Blackman 窗 stext Blackman 窗 case 2 w triang Nwin 三角窗 stext 三角窗 case 3 w kaiser Nwin 4 Kaiser 窗 stext Kaiser 窗 Beta 4 case 4 w chebwin Nwin 40 Chebyshev 窗 stext Chebyshev 窗 r 40 end posplot 2 2 int2str ii subplot posplot stem n w 绘出窗函数 hold on plot n w r 绘出包络线 xlabel n ylabel w n title stext hold off grid on end 程序运行结果见图7 2 可以看到各种窗函数的形状 05101520 0 0 2

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

当前位置:首页 > 大杂烩/其它

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