窗函数法设计FIR数字低通滤波器 课程设计初稿

发布时间 : 星期六 文章窗函数法设计FIR数字低通滤波器 课程设计初稿更新完毕开始阅读

开始 读入窗口长度N 计算hd(n) 调用窗函数子程序求w(n) 计算h(n)= hd(n) w(n) 调用子程序(函数)计算H(k)=DFT[h(n)] 调用绘图子程序(函数)绘制H(k)幅度相位曲线 结束 主程序框图

四、FIR 滤波器的窗函数设计基本方法

1. FIR滤波器简介

FIR数字滤波器设计最简单的方法是窗函数法,通常也称为傅立叶级数法。它是在时域进行的,因而必须由理想滤波器的频率响应Hd(ejw)推导出其单位冲激响应hd(n),在设计一个FIR数字滤波器的单位冲激响应h(n)去逼近hd(n)。根据冲激响应的时域特性,数字滤波器可分为无限长冲激响应(IIR)和有限长冲激响应滤波器(FIR),FIR的突出优点是:系统总是稳定的、易于实现线性相位、允许设计多通带(或多阻带)滤波器,但与IIR相比,在满足同样阻带衰减的情况下需要的阶数较高,滤波器的阶数越高,占用的运算时间越多,因此在满足指标要求的情况下应尽量减少滤波器的阶数。

2.函数设计法

窗函数设计法是一种通过截短和计权的方法使无限长非因果序列成为有限长脉冲应响应序列的设计方法,通常在设计滤波器之前,应该先根据具体的工程应用确定滤波器的技术指标,在大多数实际应用中,数字滤波器常常被用来实现选频操作,所以指标的形式一般为在频域中以分贝值给出的相对幅度响应和相位响应。 用窗函数法设计FIR滤波器的步骤如下:

(1)根据过渡带宽及阻带衰减要求,选择窗函数的类型并估计窗口长度N(或阶数M=N-1),窗函数类型可根据最小阻带衰减As独立选择,因为窗口长度N对最小阻带衰减As没有影响,在确定窗函数类型以后,可根据过渡带宽小于给定指标确定所拟用的窗函数的窗口长度N,设待求滤波器的过渡带宽为Δω,它与窗口长度N近似成反比,窗函数类型确定后,其计算公式也确定了,不过这些公式是近似的,得出的窗口长度还要在计算中逐步修正,原则是在保证阻带衰减满足要求的情况下,尽量选择较小的N,在N和窗函数类型确定后,即可调用MATLAB中的窗函数求出窗函数W(n)。

(2)根据待求滤波器的理想频率响应求出理想单位脉冲响应hd(n),如果给出待求滤波器频率应为Hd(ejw),则理想的单位脉冲响应可以用下面的傅里叶反变换式求出:

hd(n)?12?????Hd(ejw)ejwdw (13)

在一般情况下,hd(n)是不能用封闭公式表示的,需要采用数值方法表示;从w=0到w=2π采样N点,采用离散傅里叶反变换(IDFT)即可求出。 (3)计算滤波器的单位脉冲响应h(n),它是理想单位脉冲响应和窗函数的乘积。 (4)算技术指标是否满足要求,为了计算数字滤波器在频域中的特性,可调用freqz子程序,如果不满足要求,可根据具体情况,调整窗函数类型或长度,直到满足要求为止。 使用窗函数法设计时要满足以下两个条件:

1窗谱主瓣尽可能地窄,以获得较陡的过渡带; ○

2尽量减少窗谱的最大旁瓣的相对幅度,也就是使能量尽量集中于主瓣,减小峰肩和纹波,○

进行增加阻带的衰减。

3、几种数字滤波器的窗函数设计 3.1数字低通滤波器的窗函数设计

假设理想低通数字滤波器的频率响应Hd(ejw),其幅频特性为Hd(ejw)?1。那么该滤波

?jw??w?wc?1?e,器的: Hd(e)??

??0,??w?wcjw式中wc表示截止频率(rad),?表示采样延迟。

由此可得理想数字低通滤波器的单位冲激响应hd(n)为:

hd(n)?12?????Hd(ejw)ejwndw?12??wc?wc1?e?jw?ejwndw?sin?wc(n??)? (14) ?(n??)根据式(1),可知hd(n)是一个以 α为中心的偶对称的无限长非因果序列,如果截取一段n=0~N-1的hd(n)作为h(n),则为要保证所得到是线性相位FIR滤波器,延时α应为h(n)长度N的一半,

α=(N-1)/2

(15)

其中WR(n)=RN(n)(为了表示一致) 设W(ejω)为该窗口函数的频谱:

用幅度函数和相函数来表示,则有 。其线性相位部分

e-jωα则是表示延时一半长度α=(N-1)/2,对频响起作用的是它的幅度函数

图1 矩形窗函数及其幅度函数

理想频响也可以写成幅度函数和相位函数的表示形式Hd(ejω)=Hd(ω)e-jωα 其中幅度函数为

二个信号时域乘积对应于频域卷积,所以有

如果也以幅度函数H(ω)和相位函数来表示H(ejω), H(ejω)= H(ω) e-jw 则实际FIR滤波器的幅度函数H(ω)为

正好是理想滤波器幅度函数与窗函数幅度函数的卷积。

为了满足工程上的需要,可以通过改变窗函数的形状来改善滤波器的幅度频率特性,而窗函数的选择原则是:

联系合同范文客服:xxxxx#qq.com(#替换为@)