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

上传人:b****4 文档编号:11974942 上传时间:2023-04-16 格式:DOCX 页数:10 大小:72.33KB
下载 相关 举报
实验用双线性变换法设计IIR数字滤波器.docx_第1页
第1页 / 共10页
实验用双线性变换法设计IIR数字滤波器.docx_第2页
第2页 / 共10页
实验用双线性变换法设计IIR数字滤波器.docx_第3页
第3页 / 共10页
实验用双线性变换法设计IIR数字滤波器.docx_第4页
第4页 / 共10页
实验用双线性变换法设计IIR数字滤波器.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

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

《实验用双线性变换法设计IIR数字滤波器.docx》由会员分享,可在线阅读,更多相关《实验用双线性变换法设计IIR数字滤波器.docx(10页珍藏版)》请在冰豆网上搜索。

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

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

实验三:

用双线性变换法设计IIR数字滤波器

(设计性4学时)

一.实验目的:

(1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法。

(2)掌握数字滤波器的计算机仿真方法。

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

二.实验内容及步骤:

(1)用双线性变换法设计一个巴特沃斯低通IIR数字滤波器,设计指标参数为:

在通带内频率低于0.2pi时,最大衰减小于1dB;在阻带内[0.3pi,pi]频率区间上,,最小衰减大于15dB;

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

(3)用所设计的滤波器对实际心电图信号采样序列(在本实验后面给出)进行仿真滤波处理,并分别打印出滤波前后的心电图波形图,观察总结滤波作用与效果。

(4)采用不同阶数的Butterworth低通滤波器,比较滤波效果。

三.实验步骤:

(1)复习有关巴特沃斯模拟滤波器设计和用双线性变换法设计IIR数字滤波器的内容,按照教材例6.4.2,用双线性变换法设计数字滤波器系统函数H(z)。

方法一:

教材例6.4.2种已求出满足本实验要求的数字滤波器系统函数:

方法二:

根据设计指标,调用MATLAB信号处理工具箱函数buttord和butter,也可得到H(z)。

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

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

(2)和(3)。

本实验要用的MATLAB绘图函数参阅教材。

四.,思考题:

用双线性变换法设计数字滤波器过程中,变换公式:

s=

中T的取值,对设计结果有无影响?

为什么?

五.实验报告要求

(1)简述实验目的及原理;

(2)由所打印的特性曲线及设计过程简述双线性变换法的特点;

(3)对比滤波前后的心电图信号波形,说明数字滤波器的滤波过程与滤波作用;

(4)简要回答思考题.

六:

心电图信号采样序列x(n):

人体心电图信号在测量过程中往往受到工业高频干扰,所以必须经过低通滤波处理后,才能作为判断心脏功能的有用信息。

下面给出一实际心电图信号采样序列样式本x(n),其中存在高频干扰,在实验中,以x(n)作为输入序列,滤除其中的干扰成分。

{x(n)}={-4,-2,0,-4,-6,-4,-2,-4,-6,-6,-4,-4,-6,-6,-2,6,12,8,0,-16

-38,-60,-84,-90,-66,-32,-4,-2,-4,8,12,12,10,6,6,6,4,0,0,0

0,0,-2,-4,0,0,0,-2,-2,0,0,-2,,-2,-2,-2,0}

 

参考程序:

一;

T=1;Fs=1/T;

wpz=0.2;wsz=0.3;

wp=2*tan(wpz*pi/2);ws=2*tan(wsz*pi/2);rp=1;rs=15;

[N,wc]=buttord(wp,ws,rp,rs,'s');

[B,A]=butter(N,wc,'s');

fk=0:

1/512:

1;wk=2*pi*fk;

Hk=freqs(B,A,wk);

subplot(2,2,1);

plot(fk,20*log10(abs(Hk)));gridon;

xlabel('\omega/\pi');ylabel('幅度(dB)');

axis([0,1,-100,5]);title('(b)');

[N,wc]=buttord(wpz,wsz,rp,rs);

[Bz,Az]=butter(N,wc);

wk=0:

pi/512:

pi;

Hz=freqz(Bz,Az,wk);

subplot(2,2,4);

plot(wk/pi,20*log10(abs(Hz)));gridon;

xlabel('\omega/\pi');ylabel('幅度(dB)');

axis([0,1,-100,5]);title('(b)');

二;

x=[-4,-2,0,-4,-6,-4,-2,-4,-6,-6,-4,-4,-6,-6,-2,6,12,8,0,-16,-38,-60,-84,-90,-66,-32,-4,-2,-4,8,12,12,10,6,6,6,4,0,0,0,0,0,-2,-4,0,0,0,-2,-2,0,0,-2,-2,-2,-2,0];

subplot(2,2,1);

n=0:

55;

stem(n,x,'.');

xlabel('n');

ylabel('x(n)');

title('x(n)的脉冲响应');

A=0.09036;

b1=[A,2*A,A];

a1=[1,-1.2686,0.7051];

h1=filter(b1,a1,x);

[H1,w]=freqz(b1,a1,100);

b2=[A,2*A,A];

a2=[1,-1.0106,0.3583];

h2=filter(b2,a2,h1);

[H2,w]=freqz(b2,a2,100);

b3=[A,2*A,A];

a3=[1,-0.9044,0.2155];

h3=filter(b3,a3,h2);

[H3,w]=freqz(b3,a3,100);

subplot(2,2,2);

stem(n,h3,'.');

xlabel('n');

ylabel('y(n)');

title('通过滤波器H1(z),H2(z),H3(z)后的y3(n)函数');

subplot(2,2,3);

H4=H1.*(H2);

H=H4.*(H3);

mag=abs(H);

db=20*log10((mag+eps)/max(mag));

plot(w/pi,db);

xlabel('ω/π');

ylabel('20log[Ha3(ejw)]');

title('通过滤波器H1(z),H2(z),H3(z)后的对数频率响应20log[Ha3(ejw)]函数');

grid;

figure

(2);

N=1024;n=0:

N/2-1;

Xk=fft(x,N);AXk=abs(Xk(1:

N/2));

f=(0:

N/2-1)*Fs/N;

f=f/Fs;

subplot(211);plot(f,AXk);title('x(n)的频谱');

xlabel('f');ylabel('|X(k)|');axis([0,0.5,0,400]);

Yk=fft(y,N);AYk=abs(Yk(1:

N/2));

subplot(212);plot(f,AYk);title('y(n)的频谱');

xlabel('f');ylabel('|Y(k)|');axis([0,0.5,0,400])

x=[-4,-2,0,-4,-6,-4,-2,-4,-6,-6,-4,-4,-6,-6,-2,6,12,8,0,-16,-38,-60,-84,-90,-66,-32,-4,-2,-4,8,12,12,10,6,6,6,4,0,0,0,0,0,-2,-4,0,0,0,-2,-2,0,0,-2,-2,-2,-2,0];

subplot(2,2,1);

n=0:

55;

stem(n,x,'.');

xlabel('n');

ylabel('x(n)');

title('x(n)的脉冲响应');

A=0.09036;

b1=[A,2*A,A];

a1=[1,-1.2686,0.7051];

h1=filter(b1,a1,x);

[H1,w]=freqz(b1,a1,100);

b2=[A,2*A,A];

a2=[1,-1.0106,0.3583];

h2=filter(b2,a2,h1);

[H2,w]=freqz(b2,a2,100);

b3=[A,2*A,A];

a3=[1,-0.9044,0.2155];

h3=filter(b3,a3,h2);

[H3,w]=freqz(b3,a3,100);

subplot(2,2,2);

stem(n,h3,'.');

xlabel('n');

ylabel('y(n)');

title('通过滤波器H1(z),H2(z),H3(z)后的y3(n)函数');

subplot(2,2,3);

H4=H1.*(H2);

H=H4.*(H3);

mag=abs(H);

db=20*log10((mag+eps)/max(mag));

plot(w/pi,db);

xlabel('ω/π');

ylabel('20log[Ha3(ejw)]');

title('通过滤波器H1(z),H2(z),H3(z)后的对数频率响应20log[Ha3(ejw)]函数');

grid;

%x(n)的心电脉冲函数

x=[-4,-2,0,-4,-6,-4,-2,-4,-6,-6,-4,-4,-6,-6,-2,6,12,8,0,-16,-38,-60,-84,

-90,-66,-32,-4,-2,-4,8,12,12,10,6,6,6,4,0,0,0,0,0,-2,-4,0,0,0,-2,-2,0,0,-2,-2,-2,-2,0]

subplot(2,2,1);

n=0:

55;

stem(n,x,'.');

xlabel('n');

ylabel('x(n)');

title('x(n)的心电脉冲函数');

%通过滤波器H1(z)后的y1(n)函数

A=0.09036;

b1=[A,2*A,A];

a1=[1,-1.2686,0.7051];

h1=filter(b1,a1,x);

[H1,w]=freqz(b1,a1,100);

%通过滤波器H1(z),H2(Z)后的y2(n)函数

b2=[A,2*A,A];

a2=[1,-1.0106,0.3583];

h2=filter(b2,a2,h1);

[H2,w]=freqz(b2,a2,100);

%通过滤波器H1(z),H2(Z),H3(Z)后的y3(n)函数

b3=[A,2*A,A];

a3=[1,-0.9044,0.2155];

h3=filter(b3,a3,h2);

[H3,w]=freqz(b3,a3,100);

subplot(2,2,2);

stem(n,h3,'.');

xlabel('n');

ylabel('y(n)');

title('通过滤波器H1(Z),H2(Z),H3(Z)后的y3(n)函数');

subplot(2,2,3);

H4=H1.*(H2);

H=H4.*(H3);

mag=abs(H);

db=20*log10((mag+eps)/max(mag));

plot(w/pi,db);

xlabel('w/pi');

ylabel('20log[Ha3(ejw)]');

title('通过滤波器H1(z)、H2(z)、H3(z)后的对数频率响应20log[Ha3(ejw)]函数');

grid;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1