资源预览内容
第1页 / 共5页
第2页 / 共5页
第3页 / 共5页
第4页 / 共5页
第5页 / 共5页
亲,该文档总共5页全部预览完了,如果喜欢就下载吧!
资源描述
实验4IIR滤波器的设计与信号滤波、实验目的()熟悉用双线性变换法设计IIR数字滤波器的原理与方法。()掌握数字滤波器的计算机仿真方法。()通过观察对实际心电图信号的滤波作用,获得数字滤波的感性知识。、实验原理利用双线性变换设计IIR滤波器(只介绍巴特沃斯数字低通滤波器的设计),首先要设计出满足指标要求的模拟滤波器的传递函数,然后由通过双线性变换可得所要设计的IIR滤波器的系统函数。如果给定的指标为数字滤波器的指标,则首先要转换成模拟滤波器的技术指标,这里主要是边界频率的转换,对指标不作变化。边界频率的转换关系为。接着,按照模拟低通滤波器的技术指标根据相应设计公式求出滤波器的阶数和截止频率;根据阶数查巴特沃斯归一化低通滤波器参数表,得到归一化传输函数;最后,将代入去归一,得到实际的模拟滤波器传输函数。之后,通过双线性变换法转换公式,得到所要设计的IIR滤波器的系统函数。利用所设计的数字滤波器对实际的心电图采样信号进行数字滤波器。、实验步骤及内容()复习有关巴特沃斯模拟滤波器的设计和用双线性变换法设计IIR数字滤波器的内容,用双线性变换法设计一个巴特沃斯IIR低通数字滤波器。设计指标参数为:在通带内频率低于时,最大衰减小于;在阻带内频率区间上,最小衰减大于。()以为采样间隔,绘制出数字滤波器在频率区间上的幅频响应特性曲线。()用所设计的滤波器对实际心电图信号采样序列(实验数据在后面给出)进行仿真滤波处理,并分别绘制出滤波前后的心电图信号波形图,观察总结滤波作用与效果。()编写程序完成各部分实验内容。4、实验用MATLAB函数介绍buttord(); butter(); bilinear(); freqz(); freqs(); filter(); figure(); plot(); stem(); abs();title(); xlabel(); ylabel(); text(); hold on; axis(); grid on; subplot();、思考题()用双线性变换法设计数字滤波器过程中,变换公式 中T的取值, 对设计结果有无影响? 为什么?()如果用脉冲响应不变法设计该IIR数字低通滤波器,程序如何改动? 、实验报告要求()简述实验目的及实验原理。()编程实现各实验内容,列出实验清单及说明。()由绘制的特性曲线及设计过程简述双线性变换法的特点。()对比滤波前后的心电图信号波形,说明数字滤波器的滤波过程与滤波作用。()简要回答思考题。、心电图信号采样序列人体心电图信号在测量过程中往往受到工业高频干扰,所以必须经过低通滤波处理后,才能作为判断心脏功能的有用信息。下面给出的数据是一实际心电图信号采样序列样本,其中存在高频干扰。本实验中,以作为输入序列,滤除其中的干扰成分。参考程序:% 实验四IIR滤波器的设计与信号滤波% (1) 用双线性变换法设计一个巴特沃斯IIR低通数字滤波器。设计指标参数为:在通带内频率低于0.2*pi 时,最大衰减小于1dB ;在阻带内0.3*pi, pi 频率区间上,最小衰减大于15dB 。% 方法一:用buttord,buttap,zp2tf,lp2lp,bilinear等指令实现%求模拟滤波器参数,clc;clear all; close allRp=1; Rs=15; wp=0.2*pi; ws=0.3*pi; Fs=1;wap=2*Fs*tan(wp/2);was=2*Fs*tan(ws/2);%选择滤波器的最小阶数 N,Wn=buttord(wap,was,Rp,Rs,s); %创建butterworth模拟滤波器Z,P,K=buttap(N); %把滤波器零极点模型转化为传递函数模型Bap,Aap=zp2tf(Z,P,K); %把模拟滤波器原型转换成截至频率为Wn的低通滤波器b,a=lp2lp(Bap,Aap,Wn); %用双线性变换法实现模拟滤波器到数字滤波器的转换bz,az=bilinear(b,a,Fs); %绘制频率响应曲线H,W=freqz(bz,az); % plot(W,abs(H); % grid % xlabel(频率/弧度) % ylabel(频率响应幅度) % axis(0 pi 0 1.1)plot(W,20*log(abs(H); grid xlabel(频率/弧度) ylabel(对数幅频响应/dB) % axis(0 pi -700 10)axis(0 0.4*pi -40 1)% 方法二:用buttord,butter指令实现%设置滤波器参数clc;clear all; close allRp=1; Rs=15; wp=0.2*pi/pi; ws=0.3*pi/pi; Fs=1;%选择滤波器的最小阶数 N,Wn=buttord(wp,ws,Rp,Rs); %用双线性变换法的butter指令直接实现IIR数字滤波器的设计bz,az= butter(N,Wn)%绘制频率响应曲线H,W=freqz(bz,az); % plot(W,abs(H); % grid % xlabel(频率/弧度) % ylabel(频率响应幅度) % axis(0 pi 0 1.1)plot(W,20*log(abs(H); grid xlabel(频率/弧度) ylabel(对数幅频响应/dB) % axis(0 pi -700 10)axis(0 0.4*pi -40 1)% ()以0.02*pi为采样间隔,绘制出数字滤波器在频率区间0, pi/2上的幅频响应特性曲线w=0:0.02*pi:pi/2% length(w),length(H),% length(H(1:10:256)% plot(w,abs(H(1:10:256); plot(w,20*log(abs(H(1:10:256); grid xlabel(频率/弧度) ylabel(对数幅频响应/dB) axis(0 0.4*pi -40 1)% ()用所设计的滤波器对实际心电图信号采样序列(实验数据如下)进行仿真滤波处理,并分别绘制出滤波前后的心电图信号波形图,观察总结滤波作用与效果。% 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% 定义原始心电信号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% 绘制原始心电信号plot(x); % 对原始心电信号用上面设计的IIR低通数字滤波器进行滤波处理y=filter(bz,az,x);% 绘制滤波后的心电信号plot(y); 5
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号