1.实验目的
(1) 熟悉FIR滤波器设计的方法和原理
(2) 掌握用窗函数法设计FIR滤波器的方法和原理,熟悉滤波器的特性
(3) 了解各种窗函数滤波器特性的影响
2.实验原理
FIR滤波器的设计方法主要有三种:窗函数法、频率取样法、切比雪夫等波纹逼近法。FIR滤波器的设计是要寻求一系统函数,使其频率响应逼近滤波器要求的理想频率响应,其对应的单位脉冲响应。 (1)用窗函数设计FIR滤波器的基本方法
在时域用一个窗函数截取理想的得到,以有限长序列近似逼近理想的;在频域用理想的在单位圆上等角度取样得到h(k),根据h(k)得到H(z)将逼近理想的Hd(z)。
设理想滤波器的单位脉冲响应为。以低通线性相位FIR数字滤波器为例。 一般是无限长的、非因果的,民国小学生作文不能直接作为FIR滤波器的单位脉冲响应。要想得到一个因果的有限长的滤波器h(n),最直接的方法是截断什么是美貌效应,即截取为有限长因果序列,并用合适的窗函数进行加权作为FIR滤波器的单位脉冲响应。按照线性相位滤波器的要求,h(n)必须是偶对称的。对称中心必须等于滤波器的延时常数,即
用矩形窗设计的FIR低通滤波器,所设计滤波器的幅度函数在通带和阻带都呈现出振荡现象,且最大波纹大约为幅度的9%,(现象称为吉布斯(Gibbs)效应)。
(2)典型的窗函数
(a)矩形窗(Rectangle Window)
其频率响应和幅度响应分别为:
,
在matlab中调用w=boxcar(N)函数,N为窗函数的长度
(b)三角形窗(Bartlett Window)博客圈
其频率响应为:
在matlab中调用w=triang(N)函数,N为窗函数的长度
(c)汉宁(Hanning)窗,又称升余弦窗
其频率响应和幅度响应分别为:
在matlab中调用w=hanning(N)函数,N为窗函数的长度
(d)汉明(Hamming)窗,又称改进的升余弦窗
其幅度响应为:
在matlab中调用w=hamming(N)函数,N为窗函数的长度
(e)布莱克曼(Blankman)窗,又称二阶升余弦窗
其幅度响应为:
在matlab中调用w=blackman(N)函数,N为窗函数的长度
(f)凯泽(Kaiser)窗
其中:β是一个可选参数,用来选择主瓣宽度和旁瓣衰减之间的交换关系,一般说来,β越
大,过渡带越宽,阻带越小衰减也越大。多米诺骨牌理论I0(·)是第一类修正零阶贝塞尔函数。
在matlab中调用w=kaiser(N,beta),函数N为窗函数的长度,beta为窗函数的参数。
(3)利用窗函数设计FIR滤波器的具体步骤如下:
(a)根据具体的性能要求通过对过渡带宽度△ω及阻带衰减AS郭松年,等参数的分析选择合适的窗函数,并估计滤波器的长度N。
(b)由给定的滤波器的幅频响应参数求出理想的单位脉冲响应。
(c)确定延时值, 计算滤波器的单位取样响应,.
(d)验证技术指标是否满足要求。分析所设计的滤波器的幅频特性。
3.实验内容及其步骤
(1)实验前认真复习有关FIR滤波器设计的有关知识,尤其是窗函数的有关内容,熟悉窗函数及FIR滤波器的特性,掌握窗函数设计滤波器的具体步骤。
高弹性联轴器(2)编制窗函数设计FIR滤波器的主程序及相应子程序。绘制幅频和相位曲线,观察幅频和相位特性曲线的变换情况,注意长度N对曲线的影响。