1 FIR滤波器的频域设计
1.1 H(k)计算公式
根据FIR滤波器频域采样法设计,如果滤波器的类型和阶数N确定,可以在频域上确定h(n)的N点FFT,用H1(k)表示。因此,有:
可见,当L为N的整数倍时只要通过对H1(k)内插O,再进行比例放大,就可得到H(k)。
(2)假设滤波器具有线性相位特性,则H1(k)可用幅度函数和相位函数的采样表示,记为:
从上面分析可见,只要确定滤波器的阶数N和H1(k)(H1k)就可计算出H(k)。下面讨论其确定方法。
1.2 滤波器的阶数和H1(k)确定方法
在设计一个滤波器之前,必须首先根据工程实际的需要确定滤波器的技术指标。数字滤波器常常被用来实现选频操作,因此,指标的形式一般在频域中给出幅度和相位响应,并且对于FIR滤波器的设计,相位响应指标通常希望系统在通频带中具有线性相位。确定了技术指标后,就可以建立一个目标的数字滤波器模型。确定滤波器的阶数和H1(k)。
下面以一个实际例子来说明计算过程。假设要设计一个多带FIR线性相位数据滤波器的技术指标为:对模拟信号进行采样的周期T=O.000 1 s,在fp=[1 000,2 000,3 000]Hz处的衰减小于2 dB,在fr=[1 250,1 750,3 250]Hz处的衰减大于40 dB。则:
(1)滤波器的技术指标
滤波器的技术指标如下:
通带截止频率:
(2)目标滤波器的模型
采用理想滤波器模型作为所要设计的目标滤波器模型。根据指标要求,选用如图1所示的幅度模型。
(3)确定滤波器的阶数和H1(k)
根据过渡带的指标要求,由理想滤波器模型的过渡带为2π/N可以确定滤波器阶数N=40。根据线性相位的约束条件,N为偶数,滤波器的幅度函数要求奇对称,即H1k满足:H1k=-Hl(N-k)。
由边界频率:可求出边界频率采样点kp=[4,8,12]。
以理想滤波器为目标滤波器进行设计,则幅度函数采样点为:
(4)设计结果性能分析
根据内插公式可求出所设计的滤波器的频率响应。这里,直接利用Matlab编程分析得到的结果如图2所示。
由图2可见,滤波器的边界频率符合要求,但是,阻带衰减仅达到16 dB,因此,必须进行优化。
1.3 优化设计
1.3.1 简易优化设计法
由内插公式可知,频率采样滤波器的频响在采样点上等于采样点的值,因此,在不增加阶数的情况下,可通过修改边界频率点的采样值进行优化。根据指标要求:通带衰减小于Ap=2 dB,阻带衰减大于Ar=40 dB。将通带和阻带的边界采样点的值按式(10),式(11)计算:
根据式(10),式(11),将Ap,Ar代入,利用Matlab编程,相应的语句如下:
计算结果:Hp=0.794 3,Hr=0.010 O,优化式(7)得到新的设计结果。进行频率特性分析得到如图3所示的结果。由图3可见,滤波器的边界频率符合要求,但是,阻带最小衰减已经超过了20 dB,得到了明显改善。