数字信号处理--实验三-用双线性变换法设计IIR数字滤波器 下载本文

内容发布更新时间 : 2024/5/4 7:47:51星期一 下面是文章的全部内容请认真阅读。

-------------精选文档-----------------

《数字信号处理》

实践报告

题 目: 实验三 用双线性变换法设计IIR数字滤波器

可编辑

-------------精选文档-----------------

实验三:用双线性变换法设计IIR数字滤波器

1. 实验目的

(1) 熟悉用双线性变换法设计IIR数字滤波器的原理与方法。 (2) 掌握数字滤波器的计算机仿真方法。

(3) 通过观察对实际心电图信号的滤波作用,获得数字滤波的感性知识。 2. 实验步骤

(1) 复习有关巴特沃斯模拟滤波器设计和用双线性变换法设计IIR数字滤波器的

内容,按照“2. 实验内容(1)”的要求设计满足指标的数字滤波器函数H(z)。 现给出满足本实验要求的数字滤波器系统函数: H(z)

0.0007378(1?z?1)6= (1?1.2686z?1?0.7051z?2)(1?1.0106z?1?0.3583z?2)(1?0.9044z?1?0.2155z?2) =

?Hk?13k(z) —— (3.1)

A(1?2z?1?z?2)式中 Hk(z) = , k = 1 , 2 , 3 —— (3.2) ?1?21?Bkz?CkzA = 0.09036

B1 = 1.2686 , C1 =-0.7051

可编辑

-------------精选文档-----------------

B2 = 1.0106 , C2 =-0.3583 B3 = 0.9044 , C3 =-0.2155

由 (3.1) 式和(3.2)式可见,滤波器H(z)由三个二阶滤波器H1(z)、H2(z)和H3(z)级联组成,如图3.1 所示。

图 3.1 滤波器H(z)的组成

(2) 编写滤波器仿真程序,计算H(z)对心电图信号抽样序列x(n)的响应序列y(n)。

设yk(n)为第k级二阶滤波器Hk(z)的输出序列,yk-1(n)为输入序列,如图3.1所示。由(3.2)式可得到差分方程:

yk(n) = A yk-1(n) + 2A yk-1(n-1) + A yk-1(n-2) + Bk yk(n-1) + Ck yk(n-2) —— (3.3)

当k = 1时,yk-1(n) = x(n)。所以H(z)对x(n)的总响应序列y(n)可以用顺序迭代算法得到。即依次对k = 1,2,3,求解差分方程 (3.3),最后得到y3(n) = y(n)。仿真程序就是实现上述求解差分方程和顺序迭代算法的通用程序。也可以直接调用MATLAB filter 函数实现仿真。

(3) 在通用计算机上运行仿真滤波程序,并调用通用绘图子程序,完成“2.实验

可编辑

x(n) H1(z) y1(n) H2(z) H(z) y2(n) H3(z) y3(n) = y(n) -------------精选文档-----------------

内容(2)和(3) ”。

本实验要用的MATLAB绘图函数见附录。 3. 实验内容

(1) 用双线性变换法设计一个巴特沃斯低通IIR数字滤波器。设计指标参数为:在通带内频率低于0.2π时,最大衰减小于1dB;在阻带内[0.3π, π] 频率区间上,最小衰减大于15dB。

以x=[ones(1,10),zeros(1,40)]信号验证。

(2) 以0.02π为抽样间隔,打印出数字滤波器在频率区间[0, π/2]上的幅频响应特性曲线。

可编辑

-------------精选文档-----------------

程序代码: ws=0.3*pi; Ap=1; As=15; T=1;

WP=(2/T)*tan(wp/2); WS=(2/T)*tan(ws/2);

[N,Wc]= buttord(WP,WS,Ap,As,'s');

可编辑