2.4 数字滤波器的设计
2.4.1 窗函数设计FIR滤波器及滤波
FIR滤波器的设计方法有许多种,如窗函数设计法、频率采样设计法和最优化设计法等。窗函数设计法的基本原理是用一定宽度窗函数截取无限脉冲响应序列获得有限长的脉冲响应序列,主要设计步骤为:
(1)通过傅里叶逆变换获得理想滤波器的单位脉冲响应h(n)。
(2)由性能指标确定窗函数W(n)和窗口长度N。
(3)求得实际滤波器的单位脉冲响应h(n),h(n)即为所设计FIR滤波器系数向量b(n)。
常用的窗函数有:矩形窗,汉宁窗,海明窗,凯瑟窗等,在窗函数中,凯瑟窗是比较灵活的一种窗函数,调整凯瑟窗中参数β的大小,可以得到不同性能的滤波器。在本设计中,运用凯瑟窗设计FIR低通滤波器作为示例。其程序代码及滤波频谱图如下所示。
wp=0.4*pi;
ws=0.7*pi;
DB=ws-wp; %计算过渡带宽度
Rs=45;
beta=0.5842*(Rs-21)^0.4+0.07886*(Rs-21); %计算凯塞窗的控制参数M=ceil((Rs-8)/2.285/DB); %计算凯塞窗所需阶数M
wc=(wp+ws)/2/pi; %计算理想低通滤波器通带截止频率
hn=fir1(M,wc,kaiser(M+1,beta)); %调用firl函数计算低通FIRDF的h(n)
figure(1);
plot(hn);
xlabel('频率/Hz');ylabel('幅值');