IIR数字滤波器设计matlab代码.doc
- 文档编号:2579162
- 上传时间:2022-11-02
- 格式:DOC
- 页数:6
- 大小:116.50KB
IIR数字滤波器设计matlab代码.doc
《IIR数字滤波器设计matlab代码.doc》由会员分享,可在线阅读,更多相关《IIR数字滤波器设计matlab代码.doc(6页珍藏版)》请在冰豆网上搜索。
大连理工大学实验报告
学院(系):
电子信息与电气工程学部专业:
电子信息工程班级:
姓名:
学号:
组:
实验时间:
实验室:
大黑楼C221实验台:
指导教师签字:
成绩:
实验名称
实验三IIR数字滤波器设计
一、实验目的和要求
(1)掌握双线性变换法设计IIR数字滤波器。
(2)掌握脉冲响应不变法设计IIR数字滤波器。
二、实验原理和内容
1.巴特沃思低通滤波器
巴特沃思低通滤波器幅度平方函数定义为
|H(jΩ)|=
式中N为正整数,代表滤波器的阶次,称为截止频率。
当时,有
即
所以又称为巴特沃思低通滤波器的3分贝带宽。
巴特沃思低通滤波器的幅度特性如图所示。
图1巴特沃思低通滤波器的幅度特性
2.切贝雪夫低通滤波器
切贝雪夫I型滤波器的幅度平方函数为
其中,ε是表示通带波纹大小的一个参数,ε越大,波纹也越大。
为对的归一化频率,为截止频率,是N阶切贝雪夫多项式。
切贝雪夫I型低通滤波器的幅度特性如图所示
图2切贝雪夫I型低通滤波器的幅度特性
三、主要仪器设备
Matlab
四、实验内容及结果
1.用双线性变换法设计一个巴特沃斯IIR低通数字滤波器。
设计指标参数为:
在通带内频率低于0.4*pi时,最大衰减小于2dB;在阻带内[0.6*pi,pi]频率区间上,最小衰减大于15dB。
要求:
•
(1)用buttord,buttap,zp2tf,lp2lp,bilinear等指令实现
•
(2)用buttord,butter指令实现
•并分别绘制两种设计方法的频响曲线
(1)双线形变换法设计巴特沃斯IIR低通数字滤波器,代码如下:
clc
clear
wp=0.4*pi;
ws=0.6*pi;
rp=2;
rs=15;
Ts=0.0001;
Fs=1/Ts;%采样频率
wp=2/Ts*tan(wp/2);
ws=2/Ts*tan(ws/2);
[N,wc]=buttord(wp,ws,rp,rs,'s');
[z,p,k]=buttap(N);
[b,a]=zp2tf(z,p,k);
[B,A]=lp2lp(b,a,wc);
[Bz,Az]=bilinear(B,A,Fs);
w=0:
0.001:
pi;
[H,w1]=freqz(Bz,Az,w);
H=20*log10(abs(H));
plot(w/pi,H);
gridon;
title('双线形变换法设计巴特沃斯IIR低通数字滤波器');
xlabel('频率/pi');
ylabel('幅度/dB');
(2)直接法设计巴特沃斯IIR低通数字滤波器,代码如下:
:
clc
clear
wp=0.4;ws=0.6;rp=2;rs=15;
[N,wc]=buttord(wp,ws,rp,rs);
[Bz,Az]=butter(N,wc);
w=0:
0.001:
pi;
[H,w1]=freqz(Bz,Az,w);
H=20*log10(abs(H));
plot(w/pi,H);
gridon;
title('直接法设计巴特沃斯IIR低通数字滤波器');
xlabel('频率/pi');
ylabel('幅度/dB');
(3)设计一个巴特沃兹低通滤波器,给定技术指标是,抽样频率为
。
代码如下:
clc
clear
fp=100;
fs=300;
Fs=1000;
af=3;
as=20;
wp=2*fp/Fs;
ws=2*fs/Fs;
[n,Wn]=buttord(wp,ws,af,as);
[b,a]=butter(n,Wn);
figure
(1)
freqz(b,a,512,1);
title('巴特沃斯IIR低通数字滤波器');
五、实验体会
本次实验中用了双线性变换法、冲击响应不变法及直接设计法设计了IIR滤波器。
通过本次实验,我更直观的看到了滤波器的特性,对理论有了更深刻的认识。
Matlab是一个十分强大的工具,有很多很好用的函数,比起人工计算设计滤波器来简单了很多很多,很直观也很实用。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IIR 数字滤波器 设计 matlab 代码