MATLAB实现汉宁窗I型高通与带通滤波器设计及分析

版权申诉
0 下载量 191 浏览量 更新于2024-08-11 收藏 52KB DOC 举报
该文档提供了一个MATLAB源程序,用于设计和实现数字FIR(有限 impulse response)滤波器,特别是针对高通和带通滤波器的设计。首先,程序使用汉宁窗设计一种Ⅰ型数字高通滤波器。以下是关键知识点的详细解析: 1. **滤波器设计**: - 滤波器类型:文档主要关注的是高通滤波器,但也可扩展到带通滤波器,通过调整参数可以改变其频率响应特性。 - **滤波器窗口函数**: - 使用了汉宁窗(Hanning window),这是一种常用的信号处理窗口函数,有助于减少滤波器的频率响应失真,提高滤波性能。 - **滤波器长度**: - 通过计算过渡带宽度(tr_width)和一个经验公式(6.2π/tr_width)确定滤波器的长度(N),确保足够的阶数以达到所需的滤波效果。 2. **理想与实际滤波器**: - 理想低通滤波器(ideal_hp1)的单位冲激响应(hd)作为基础,然后与汉宁窗(w_han)相乘得到实际的单位脉冲响应(h)。 - **频率响应计算**: - 通过freqz_m2函数计算实际滤波器的幅度响应(mag)、相位响应(pha)以及频率域变量w。 3. **滤波器性能指标**: - 通带纹波(Ap)和阻带纹波(As): - 通带纹波反映了滤波器在通带内的最大偏差,即实际幅度响应与理想情况的偏离程度。 - 阻带纹波则衡量了滤波器在阻带(低于截止频率Ws和高于截止频率Wp的频率范围)内抑制噪声的能力。 4. **可视化**: - 通过subplot函数展示了多个图形,包括: - 理想单位脉冲响应hd(n)的波形图, - 汉宁窗w(n)的波形图, - 实际单位脉冲响应hd(n)与汉宁窗结合后的波形图, - 实际滤波器幅度响应dB随频率的变化图,轴范围限定在0至1赫兹,幅值从-100分贝到100分贝。 通过这个MATLAB源程序,用户可以理解并应用汉宁窗技术来设计数字FIR高通滤波器,掌握如何调整滤波器参数以优化特定频段的信号传输和噪声抑制能力。此外,这段代码演示了如何评估滤波器性能和可视化其频率响应特性。