实验5脉冲响应不变法设计IIR数字滤波器.docx

上传人:b****0 文档编号:17730442 上传时间:2023-08-03 格式:DOCX 页数:14 大小:92.25KB
下载 相关 举报
实验5脉冲响应不变法设计IIR数字滤波器.docx_第1页
第1页 / 共14页
实验5脉冲响应不变法设计IIR数字滤波器.docx_第2页
第2页 / 共14页
实验5脉冲响应不变法设计IIR数字滤波器.docx_第3页
第3页 / 共14页
实验5脉冲响应不变法设计IIR数字滤波器.docx_第4页
第4页 / 共14页
实验5脉冲响应不变法设计IIR数字滤波器.docx_第5页
第5页 / 共14页
实验5脉冲响应不变法设计IIR数字滤波器.docx_第6页
第6页 / 共14页
实验5脉冲响应不变法设计IIR数字滤波器.docx_第7页
第7页 / 共14页
实验5脉冲响应不变法设计IIR数字滤波器.docx_第8页
第8页 / 共14页
实验5脉冲响应不变法设计IIR数字滤波器.docx_第9页
第9页 / 共14页
实验5脉冲响应不变法设计IIR数字滤波器.docx_第10页
第10页 / 共14页
实验5脉冲响应不变法设计IIR数字滤波器.docx_第11页
第11页 / 共14页
实验5脉冲响应不变法设计IIR数字滤波器.docx_第12页
第12页 / 共14页
实验5脉冲响应不变法设计IIR数字滤波器.docx_第13页
第13页 / 共14页
实验5脉冲响应不变法设计IIR数字滤波器.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

实验5脉冲响应不变法设计IIR数字滤波器.docx

《实验5脉冲响应不变法设计IIR数字滤波器.docx》由会员分享,可在线阅读,更多相关《实验5脉冲响应不变法设计IIR数字滤波器.docx(14页珍藏版)》请在冰点文库上搜索。

实验5脉冲响应不变法设计IIR数字滤波器.docx

实验5脉冲响应不变法设计IIR数字滤波器

实验5脉冲响应不变法设计IIR数字滤波器

一、实验目的

1.掌握利用脉冲响应不变法设计IIR数字滤波器的原理及具体方法。

2.加深理解数字滤波器和模拟滤波器之间的技术指标转化。

3.掌握脉冲响应不变法设计IIR数字滤波器的优缺点及适用范围。

二、实验设备及环境

计算机、matlab软件环境。

三、实验基础理论

1.基本原理

从时域响应出发,是数字录波器的单位脉冲响应h(n)模仿模拟滤波器的单位冲击响应

,h(n)等于

的取样值。

2变换方法

进行部分分式展开

(2)对

进行拉式变换

(3)对

时域采样得到h(n)

(4)对h(n)进行z变换

3.设计步骤

(1)确定数字滤波器性能指标

(2)将数字滤波器频率指标转换成相应的模拟滤波器频率指标

(3)根据指标

设计模拟滤波器

(4)将

展成部分分式形式

(5)将模拟极点

转换成数字极点

,得到数字滤波器

可见

至H(z)间的变换关系为

在MATLAB中有两种方法可以实现上述变换。

方法1:

利用residue函数和residuez函数实现脉冲响应不变法,这两个函数的使用方法如下

[r,p,k]=residue(b,a)

[b,a]=reisdue(r,p,k)

实现多项式形式

和部分分式形式

之间的转换。

[r,p,k]=residuez(b,a)

[b,a]=reisduez(r,p,k)

实现多项式形式

和部分分式形式

之间的转换。

方法2:

MATLAB提供了impinvar函数采用脉冲响应不变法实现模拟滤波器到数字滤波器的变换,其使用方法如下

[bz,az]=impinvar(b,a,fs)采用脉冲响应不变法将模拟滤波器系统函数的系数向量b和a变换成为数字滤波器系统函数的系统向量bz和az,fs为采样频率。

[bz,az]=impinvar(b,a)采样频率默认为1的情况下,采用脉冲响应不变法将模拟滤波器变换为数字滤波器。

四、实验内容

1.设采用率为

采用脉冲响应不变法设计一个三阶巴特沃斯数字低通滤波器,其3dB截止频率为

实验代码及结果:

>>[b,a]=butter(3,0.5*pi,'s')

b=

0003.8758

 

a=

1.00003.14164.93483.8758

>>[bz,az]=impinvar(b,a)

bz=

00.58130.21140

 

az=

1.0000-0.39840.2475-0.0432

>>w=[0:

500]*pi/500;

>>[H,w]=freqz(bz,az);

>>subplot(211);

>>plot(w/pi,abs(H));

>>xlabel('\omega(\pi)');

>>ylabel('|H(e^j^\omega)|');

>>subplot(212);

>>plot(w/pi,angle(H)/pi);

>>xlabel('\omega(\pi)');

>>ylabel('PhaseofH(e^j^\omega)(\pi)');

2.设采用频率为

=10kHz,设计数字低通滤波器,满足如下指标:

通带截止频率:

,通带波动:

阻带截止频率:

阻带衰减:

要求分别采用巴特沃斯、切比雪夫1型、切比雪夫2型和椭圆模拟原型滤波器及脉冲响应不变法进行设计。

结合实验结果,分别讨论采用上述方法设计的数字滤波器是否都能满足给定指标要求,分析脉冲响应不变法设计IIR数字滤波器的优缺点及适用范围。

实验代码及结果:

Butterworth滤波器:

>>[N,Wn]=buttord(0.2*pi,0.3*pi,1,15,'s')

N=

6

 

Wn=

0.7087

>>[b,a]=butter(N,Wn,'s')

b=

0000000.1266

 

a=

1.00002.73803.74843.25331.88240.69050.1266

>>[bz,az]=impinvar(b,a)

bz=

-0.00000.00070.01050.01670.00420.00010

 

az=

1.0000-3.34435.0183-4.21902.0725-0.56000.0647

>>w=[0:

500]*pi/500;

[H,w]=freqz(bz,az);

subplot(211);

plot(w/pi,abs(H));

xlabel('\omega(\pi)');

ylabel('|H(e^j^\omega)|');

subplot(212);

plot(w/pi,angle(H)/pi);

xlabel('\omega(\pi)');

ylabel('PhaseofH(e^j^\omega)(\pi)');

(2)ChebyshevI型

>>[N,Wn]=cheb1ord(0.2*pi,0.3*pi,1,15,'s')

N=

4

 

Wn=

0.6283

>>[b,a]=cheby1(N,1,Wn,'s')

b=

00000.0383

 

a=

1.00000.59870.57400.18420.0430

>>[bz,az]=impinvar(b,a)

bz=

-0.00000.00540.01810.00400

 

az=

1.0000-3.05913.8323-2.29190.5495

>>w=[0:

500]*pi/500;

>>[H,w]=freqz(bz,az);

>>subplot(211);

>>plot(w/pi,abs(H));

>>gridon;

>>xlabel('\omega(\pi)');

>>ylabel('|H(e^j^\omega)|');

>>subplot(212);

>>plot(w/pi,angle(H)/pi);

>>gridon;

>>xlabel('\omega(\pi)');

>>ylabel('PhaseofH(e^j^\omega)(\pi)');

(3)、ChebyshevII型:

>>[N,Wn]=cheb2ord(0.2*pi,0.3*pi,1,15,'s')

N=

4

 

Wn=

0.8236

>>[b,a]=cheby2(N,15,Wn,'s')

b=

0.17780.00000.96510.00000.6547

 

a=

1.00002.07082.31571.32980.6547

>>[bz,az]=impinvar(b,a)

bz=

-0.19040.5912-0.53800.27750.0224

 

az=

1.0000-1.93881.7388-0.69680.1261

>>w=[0:

500]*pi/500;

>>[H,w]=freqz(bz,az);

>>subplot(211);

>>plot(w/pi,abs(H));

>>axistight;

>>gridon;

>>xlabel('\omega(\pi)');

>>ylabel('|H(e^j^\omega)|');

>>subplot(212);

>>plot(w/pi,angle(H)/pi);

>>axistight;

>>gridon;

>>xlabel('\omega(\pi)');

>>ylabel('PhaseofH(e^j^\omega)(\pi)');

 

(4)椭圆滤波器

>>[N,Wn]=ellipord(0.2*pi,0.3*pi,1,15,'s')

N=

3

Wn=

0.6283

>>[b,a]=ellip(N,1,15,Wn,'s')

b=

00.2960-0.00000.1873

a=

1.00000.61610.48370.1873

>>[bz,az]=impinvar(b,a)

bz=

0.2960-0.44610.30630

az=

1.0000-2.11921.7935-0.5401

>>w=[0:

500]*pi/500;

>>[H,w]=freqz(bz,az);

>>subplot(211);

>>plot(w/pi,abs(H));

>>axistight;

>>gridon;

>>xlabel('\omega(\pi)');

>>ylabel('|H(e^j^\omega)|');

>>subplot(212);

>>plot(w/pi,angle(H)/pi);

>>axistight;

>>gridon;

>>xlabel('\omega(\pi)');

>>ylabel('PhaseofH(e^j^\omega)(\pi)');

 

由实验结果易知,在给定了技术指标后,应用不同的模拟原型设计出来的滤波器具有不同的特性,并不是所有的设计结果都能满足要求。

这就要求我们在完成设计后必须要进行校验。

五、收获与体会

数字滤波器具有广泛的应用,本次实验通过设计滤波器,进一步体会到不同模拟原型滤波器的特点。

同时掌握了相关函数的调用方法。

在设计过程中,要格外注意频率映射以及归一化等问题,并且在完成设计之后必须要进行验证,以确保设计是符合要求的。

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

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2