基于Kaiser窗的数字低通滤波器设计
2016-05-30王艳文于勉
王艳文 于勉
【摘要】本文利用Kaiser 窗实现了FIR低通数字滤波器的设计,设计结果符合FIR数字滤波器技术指标要求。
【关键词】matlab;滤波器;Kaiser 窗
数字滤波器是数字信号处理的重要器件,因其具有精度高和稳定性强、系统函数易改变、灵活性强、不存在阻抗匹配问题、便于大规模集成、可实现多维滤波等优点,故其设计已成为数字信号处理研究的热点。诞生于20世纪70年代的MATLAB语言是由美国MathWorks公司推出的一套集矩阵运算、数值分析、信号处理和图形显示于一体 的高性能数值计算和可视化软件。由于其中的数字信号处理工具箱功能强大,从而使其成为了数字信号处理领域中的主要编程语言。Matlab可以快速有效地实现滤波器的设计、分析仿真和最优化,已成为数字滤波器设计的基础软件。本文采用Kaiser窗实现FIR数字低通滤波器的设计。
一、程序设计及运行结果
根据研究任务,需设计低通数字滤波器的性能指标如下:
wp = 0.2π, Rp = 0.25dB,ws = 0.3π,As = 50dB。
设计程序如下:
wp = 0.2*pi; ws = 0.3*pi; As = 50;
tr_width = ws - wp;
N = ceil((As-7.95)/(14.36*tr_width/(2*pi))+1) + 1
n=[0:1:N];
beta = 0.1102*(As-8.7)
wc = (ws+wp)/2;
h = fir1(N,wc/pi,Kaiser(N+1,beta));
[db,mag,pha,grd,w] = freqz_m(h,[1]);
delta_w = 2*pi/1000;
As = -round(max(db(ws/delta_w+1:1:501))) % Min Stopband Attenuation
二、結果分析
程序运算结果:
N = 61 (滤波器阶数)
beta = 4.5513
As = 51 (实际的阻带衰减)
运行结果满足设计技术要求。图1是此滤波器时域中实际的脉冲响应曲线和频域中幅度响应曲线。
三、结语
利用MATLAB设计滤波器方法简单、快捷直观。本文利用Kaiser 窗设计了FIR低通数字滤波器,程序运行结果符合设计技术指标要求,取得了较理想的实验效果。
参考文献
[1]程佩青.数字信号处理教程[M].北京:清华大学出版社,2000:10-53.
[2]黎雄. FIR数字滤波器的最优化设计及MATLAB实现[J].信息技术,2004,28(10):38-41.