用matlab设计fir高阶滤波器,用matlab设计fir滤波器的三种方法.doc

41528d3028836879cd698677c3999917.gif用matlab设计fir滤波器的三种方法.doc

用MATLAB信号处理工具箱进行FIR滤波器设计的三种方法摘要介绍了利用MATLAB信号处理工具箱进行FIR滤波器设计的三种方法程序设计法、FDATOOL设计法和SPTOOL设计法,给出了详细的设计步骤,并将设计的滤波器应用到一个混和正弦波信号,以验证滤波器的性能。关键词MATLAB,数字滤波器,有限冲激响应,窗函数,仿真1前言数字滤波器是一种用来过滤时间离散信号的数字系统,通过对抽样数据进行数学处理来达到频域滤波的目的。根据其单位冲激响应函数的时域特性可分为两类无限冲激响应(IIR)滤波器和有限冲激响应(FIR)滤波器。与IIR滤波器相比,FIR的实现是非递归的,总是稳定的;更重要的是,FIR滤波器在满足幅频响应要求的同时,可以获得严格的线性相位特性。因此,它在高保真的信号处理,如数字音频、图像处理、数据传输、生物医学等领域得到广泛应用。2FIR滤波器的窗函数设计法FIR滤波器的设计方法有许多种,如窗函数设计法、频率采样设计法和最优化设计法等。窗函数设计法的基本原理是用一定宽度窗函数截取无限脉冲响应序列获得有限长的脉冲响应序列,主要设计步骤为1通过傅里叶逆变换获得理想滤波器的单位脉冲响应HDN。2由性能指标确定窗函数WN和窗口长度N。3求得实际滤波器的单位脉冲响应HN,HN即为所设计FIR滤波器系数向量BN。4检验滤波器性能。本文将针对一个含有5HZ、15HZ和30HZ的混和正弦波信号,设计一个FIR带通滤波器,给出利用MATLAB实现的三种方法程序设计法、FDATOOL设计法和SPTOOL设计法。参数要求采样频率FS100HZ,通带下限截止频率FC110HZ,通带上限截止频率FC220HZ,过渡带宽6HZ,通阻带波动001,采用凯塞窗设计。2程序设计法MATLAB信号处理工具箱提供了各种窗函数、滤波器设计函数和滤波器实现函数。本文的带通滤波器设计及滤波程序如下N,WN,BETA,FTYPEKAISERORD7131723,010,001001001,100得出滤波器的阶数N38,BETA34W12FC1/FSW22FC2/FS将模拟滤波器的技术指标转换为数字滤波器的技术指标WINDOWKAISERN1,BETA使用KAISER窗函数BFIR1N,W1W2,WINDOW使用标准频率响应的加窗设计函数FIR1FREQZB,1,512数字滤波器频率响应T0100/FSSSIN2PIT5SIN2PIT15SIN2PIT30混和正弦波信号SFFILTERB,1,S%对信号S进行滤波程序执行的结果如图1所示(1)滤波器幅频特性和相频特性(2)滤波前后的波形图1滤波器特性和滤波效果图4FDATOOL设计法FDATOOLFILTERDESIGNSSIN2PIT5SIN2PIT15SIN2PIT30此时,变量FS、T、S将显示在WORKSPACE列表中。在命令窗口键入SPTOOL,将弹出SPTOOL主界面,如图3所示;点击菜单FILE/IMPORT将信号S导入并取名为S。(2)单击FILTERS列表下的NEW,按照参数要求设计出滤波器FILT1,具体步骤类似于321。(3)将滤波器FILT1应用到S信号序列。分别在SIGNALS、FILTERS、SPECTRA列表中选择S、FILT1、MTLBSE,单击FILTERS列表下的APPLY按钮,在弹出的APPLYFILTER对话框中将输出信号命名为SIN15HZ。(4)进行频谱分析。在SIGNALS中选择S,单击SPECTRA下的CREATE按钮,在弹出的SPECTRAVIEWER界面中选择为FFT,NFFT512,单击APPLY按钮生成S的频谱SPECT1。同样的步骤可以生成信号SIN15HZ的频谱SPECT2。分别选中信号S、SIN15HZ、SPECT1、SPECT2,单击各自列表下方的VIEW按钮,即可观察他们的波形,如图4所示。图3SPTOOL主界面图4滤波前后的时域波形和频域特性由图4可以看出,带通滤波器FILT1使输入信号S中频率为15HZ的正弦波信号通过,而将频率为5HZ和30HZ的正弦波信号大大衰减。6结束语本文通过一个设计实例,介绍了利用MATLAB实现FIR滤波器设计与滤波的三种方法,从仿真结果可以看出它们均可以达到技术指标要求,而且方法简单、快捷,大大减轻了工作量。滤波器的设计工作完成后,可以借助于MATLAB的EXPORT操作导出所设计滤波器的系统函数HZ。由于MATLAB具有强大的接口功能,仿真后的结果可以很方便的移植到DSP、CPLD或FPGA等器件中。在实际应用中,只需按要求修改滤波器参数,并对程序作较少的改动,即可实现不同截止频率的FIR滤波器,实用性较强。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值