分别选中信号s、sin15hz、spect1、spect2,单击各自列表下方的View按钮,即可观察他们的波形,如图4所示。
图3 SPTool主界面 图4 滤波前后的时域波形和频域特性
由图4可以看出,带通滤波器filt1使输入信号s中频率为15hz的正弦波信号通过,而将频率为5hz和30hz的正弦波信号大大衰减。
6 结束语
本文通过一个设计实例,介绍了利用MATLAB实现 FIR滤波器设计与滤波的三种方法,从仿真结果可以看出它们均可以达到技术指标要求,而且方法简单、快捷,大大减轻了工作量。滤波器的设计工作完成后,可以借助于MATLAB的export操作导出所设计滤波器的系统函数H(z)。由于MATLAB具有强大的接口功能,仿真后的结果可以很方便的移植到 DSP、CPLD或FPGA等器件中。在实际应用中,只需按要求修改滤波器参数,并对程序作较少的改动,即可实现不同截止频率的FIR滤波器,实用性较强。
参考文献:
1 董长虹等. MATLAB信号处理与应用.北京:国防工业出版社,2005
2 [美] M.H.海因斯 著,张建华等 译.数字信号处理.北京:科学出版社,2002
3 张葛祥,李 娜. MATLAB仿真技术与应用.北京:清华大学出版社,2003
4 楼顺天,李博菡.基于MATLAB的系统分析与设计.西安:西安电子科技大学出版社,1998
200多MATLAB经典教程及论文:
,用MATLAB设计FIR滤波器的方法