当前位置:首页 > 电子科技大学信号处理实验4 - 数字滤波器设计及实现
电 子 科 技 大 学
实 验 报 告
一、实验室名称:数字信号处理实验室 二、实验项目名称:数字滤波器设计及实现 三、实验原理:
1. 数字滤波器设计步骤:
(1) 根据给定的滤波器设计要求,得到参数化描述,即通带,阻带截止频
率?p和?s,通带阻带纹波?p和?s等数据。
(2) 找一个数字系统函数G(z),使其频率响应逼近设计要求。 (3) 择合适的滤波器结构对满足要求的传递函数G(z)进行实现。
2. 数字滤波器设计中的注意事项:
(1) 设计要求的参数化:图4-1给出了一个典型的数字低通滤波器的幅频
特性说明。理解每个参数的物理含义。
1 ? ? P G ( e j ? ) 1 ? ? P ? ? s 过渡带
? P 通带 ? P ? S 阻带 ? ? S ??
图4-1典型的数字LPF幅频特性
(2) 滤波器类型选择:在数字滤波器实现中可选择IIR滤波器和FIR滤波器
两种。在实现相同幅频特性时,IIR滤波器的阶数会相对FIR滤波器的更低;而在实现中,对相同阶数的两种滤波器来看,对每个采样值所做的乘法数量,IIR约为FIR的两倍;另外,FIR还可以方便地设计成
线性相位滤波器。总的来说,IIR滤波器除不能实现线性相位这一点外,由于阶数的原因,从计算复杂度上较FIR滤波器有很大的优势。根据以上这些区别,结合实际的设计要求,就可以选择一款合适的滤波器。
(3) 波器设计的方法:由于IIR滤波器和FIR滤波器各自的结构特点,所以
它们的设计方法也不一样。在IIR滤波器的设计中,常用的方法是:先根据设计要求寻找一个合适的模拟原型滤波器Ha(s),然后根据一定的准则将此模拟原型滤波器转换为数字滤波器G(z),即为我们需要设计的数字滤波器。在FIR滤波器设计中,一般使用比较直接的方法:根据设计的要求在时域对理想的冲击响应序列进行加窗逼近,或从频域对需要实现的频率响应特性进行采样逼近然后进行反FFT。
(4) 波器阶数估计:IIR滤波器的阶数就等于所选的模拟原型滤波器的阶
数,所以其阶数确定主要是在模拟原型滤波器设计中进行的。FIR滤波器阶数估计可以根据很多工程中的经验公式,这些公式可以直接从设计的参数要求中估计滤波器阶数。例如,对FIR低通滤波器,已知通带截止频率?p,阻带截止频率?s,最大通带纹波?p和最大最带纹波?s,则可以使用下面的公式估计其阶数:
N??20log10(?p?s)?1314.6(?s??p)/2?
3. 数字滤波器的设计方法: (1) IIR滤波器设计方法:
(a) 冲击响应不变法:
A.满足设计要求的模拟原型滤波器Ha(s)进行部分分式展开为:
B.由于 g ( n ) ? h a ( nT ) ,可以得到:
Ha(s)??Akk?1s?skN(Re(sk)max?0)G(z)??AkskT?11?ezk?1N
(b) 双线性变换法:
A. 设计要求中给出的边界频率进行预畸处理,然后用得到的频率进行模拟滤波器设计,得到模拟原型滤波器Ha(s)。 B. 用双线性变换法求出数字滤波器:G(z)?Ha(s)|(2) FIR滤波器设计方法:
窗函数法:
A. 根据指标的要求选择合适的窗函数w(n),然后根据此窗计算阶
数等参数N。
B. 写出冲击响应序列的表达式:h(n)?hd(n)wN(n),其中,hd(n)为理想的冲击响应序列,一般为无限长的,wN(n)为长度为N的窗函数。
C. 计算所得冲击响应序列h(n)的DTFT,然后验证其是否满足设
计要求。
4. 滤波器的实现结构 (1) FIR滤波器:
直接型实现结构 级联结构 并联结构 线性相位型结构
(2) IIR滤波器:
直接型实现结构:I型和II型 级联结构 并联结构
5. 用MATLAB进行滤波器设计: 1)IIR滤波器设计函数:
butter, buttord, chebwin, cheb1ord, cheb2ord, cheby1, cheby2, ellip, ellipord等
z?1?z?11?z?1。
2)FIR滤波器设计函数:
fir1, fir2, remez, remezord, kaiser, kaiserord, hanning, hamming, blackman等 3)滤波器设计辅助设计软件
在命令窗口中键入“fdatool”即可启动滤波器设计辅助设计软件,界面如图4-2所示。在此界面中填写需要设计的滤波器参数,即可设计出需要的滤波器。还可以通过此工具提供的幅度,相位观察窗口观察设计出来的滤波器的幅度,相位特性等,并可以将设计好的滤波器冲激响应系数导出用于实现。
图4-2 MATLAB中滤波器辅助设计软件界面
四、实验目的:
熟练掌握数字滤波器的双线性变换法(IIR)和窗函数法(FIR)两种设计方法;加深对数字滤波器的常用指标、设计过程及实现的理解。
五、实验内容:
本实验要求学生运用MATLAB编程完成IIR和FIR滤波器设计,并与用fdatool设计的滤波器进行对比;用设计出的滤波器系数对离散时间信号进行滤波,分析并观察输出结果。
六、实验器材(设备、元器件):
共分享92篇相关文档