IIR滤波器的设计方法

2019-04-15 12:06

实验六 IIR滤波器的设计方法

? 实验学时:2学时 ? 实验类型:设计、验证

一、实验目的

IR数字滤波器的常用指标和设计过程的理解;

响应不变法和双线性变换法设计IIR滤波器的原理,设计方法,步骤; 现象,比较脉冲响应不变法和双线性变换法设计IIR滤波器的特点

熟悉Matlab信号处理工具箱中的常用函数

二、实验原理与方法

IIR数字滤波器设计步骤:

(一)先设计模拟低通原型滤波器

(二)AF数字化为DF

1. 脉冲响应不变法

用数字滤波器的单位脉冲响应序列h(n)模仿模拟滤波器的冲激响应ha(t),让h(n)正好等于ha(t)的采样值,即h(n)?ha(nT),其中T为采样间隔,如果以Ha(s)及H(z)分别表示ha(t)的拉式变换及h(n)的Z变换,则

1?2?H(z)z?esT??Ha(s?jm)

Tm???T

2.双线性变换法

S平面与z平面之间满足以下映射关系:

21?z?1 (***) s???1T1?zs平面的虚轴单值地映射于z平面的单位圆上,s平面的左半平面完全映射到z平面的单位圆内。双线性变换不存在混叠问题。

1

双线性变换是一种非线性变换 ,这种非线性引起的幅频特性畸

变可通过预畸而得到校正。双线性变换法特别适合用于设计常见的选频性滤波器,下面以双线性变换法设计低通数字滤波器为例,将设计步骤归纳如下:

(1)根据需要确定数字滤波器的性能指标:通带截止频率fp、阻带截止频率fp、

通带最大衰减αp、阻带内的最小衰减αs,采样频率fs ; (2) 确定相应的数字角频率,?p?2?fpT;?s?2?fsT; (3) 计算经过预畸的相应模拟低通原型的截止频率,

2?2?p?p?tg(),?s?tg(s);

T2T2(4)根据Ωp,αp和Ωs,αs计算模拟低通原型滤波器的传递函数Ha(s); (5)用上述(***)表示的双线性变换公式代入Ha(s),求出H(z);

分析滤波器特性,检查其指标是否满足要求。

3、IIR低通、高通、带通数字滤波器设计采用双线性原型变换公式:

变换类型 变换关系式 备 注 低通 高通 带通 为带通的上下边带临界频率 相关matlab函数介绍

1、Matlab信号处理工具箱中提供了设计巴特沃思模拟滤波器的函数,格式如下:

用于设计巴特沃思模拟滤波器Ha(s)设计的函数 B(s)b1sM?1??bM?1s?bM? 模拟滤波器传输函数表示为:Ha(s)?A(s)a1sN?1??aN?1s?aN其中M是向量B的长度,N是向量A的长度,bk和ak分别是B和A的第k个元素。

(1)[N,WC]?buttord(WP,WS,RP,RS,?s??

用于根据设计指标计算巴特沃思ALPF幅度平方函数的参数N和3dB截止频率Wc (即本书中的符号?c)。其中,Wp 和Ws分别是滤波器的通带截止频率?p和阻止截止频率?s,单位为rad/s;Rp和Rs分别是通带最大衰减系数?p和阻带最小衰减系数

2

?s,单位为dB。

(2)[B,A]?butter(N,WC,?ftype?,?s?)

用于根计算巴特沃思ALPF系统函数Ha(s)中分子和分母多项式系数向量B和A,其中N和WC分别是滤波器的阶和3dB截止频率?c,返回向量B和A,其中ak和bk分别是上面的Ha(s)表示式中的分母和分子系数。ftype缺省时,设计低通滤波器;ftype=high时,设计高通滤波器;ftype=stop时,设计带阻滤波器,此时WC为两个元素的向量[Wc1,Wcu],且ftype缺省时,设计带通滤波器,带通的频率区间为Wc1???Wcu。S缺省时,设计数字滤波器。

例如:设计一个满足下列指标要求的巴特沃思模拟低通滤波器。指标 ?p?1dB,?p?2rad/s,?s?30dB,?s?4rad/s Matlab程序:

Wp?2;Ws?4;Rp?1;Rs?30; %滤波器参数[N,WC]?buttord(WP,WS,RP,RS,?s??; %计算滤波器的阶和3dB截止频率[B,A]?butter(N,WC,?s?); %计算滤波器系统函数分子、分母多项式系数W?0:0.001:6; %在0~6rad/s频率范围内取1001个频率点[H,W]?freqs(B,A,W); %计算频率向量W上的滤波器频率响应H?20*log10(abs(H)); %纵坐标的单位取dBplot(W,H),grid on %绘制幅频响应曲线xlabel(?频率(/rad/s)?;ylabel(?幅度/dB?)

运行结果如下: N=6

Wc=2.2496

B= 0 0 0 0 0 0 129.5917 A=1.0000 8.6916; 37.7720; 104.0667;191.1447 ;222.5973 ; 129.5917 即:

129.5917Ha(s)?6s?8.6916s5?37.7720s4?104.0667s3?191.1447s2?222.5793s?129.5917幅频响应曲线(略)。

2、Matlab中设计数字滤波器的函数都是采用双线性变换法,将模拟滤波器转换为数字滤波器。这些函数及其凋用格式如下(以巴特沃思数字滤波器为例)

b1?b2z?1??bNz?1?bN?1z?N数字滤波器的系统函数为:H(z)??1?1?N a1?a2z??aNz?aN?1z其中,bk和ak分别是向量B和A的第k个元素。

(1)[N,WC]?buttord(WP,WS,RP,RS)

该格式用于计算巴特沃思数字滤波器的阶N和3dB截止频率的归一化值WC(关于

3

?归一化)。调用参数Wp 和Ws分别是数字滤波器的通带截止频率和阻带截止频率的归一化值(关于?归一化),要求0?Wp?1和0?Ws?1,其中1表示数字频率?(对

应模拟频率fs/2,fs为采样频率)。Rp和Rs分别是通带最大衰减和阻带最小衰减,单位dB。当Ws?Wp时,设计高通滤波器;当Wp和Ws是二元向量时,设计带通(Ws?Wp)或带阻(Ws?Wp)滤波器,这时返回参数WC也是二元向量。

(2)[B,A]?butter(N,WC,?ftype?);

该格式用于计算巴特沃思模拟滤波器系统函数中分子和分母多项式系数向量B和A。调用参数N 和WC分别是巴特沃思数字滤波器的阶和3dB截止频率归一化值(关于?归一化)。当ftype缺省时,设计低通滤波器;当ftype=high时,设计高通滤波器;ftype=stop时,设计带阻滤波器,此时WC为二元向量[Wc1,Wcu],Wc1和Wcu分别是带阻滤波器的通带3dB下,上截止频率的归一化值(关于?归一化);WC为向量[Wc1,Wcu],且ftype缺省时,设计带通滤波器,带通的频率区间为Wc1???Wcu。注意设计出的带通和带阻数字滤波器是2N阶的,这是因为带通滤波器可表示为一个N阶低通滤波器与一个N阶高通滤波器的级联。 (3)设计实例

例如:用双线性变换法设计巴特沃思数字低通滤波器,指标要求 通带截止频率wp?0.2?rad,通带最大衰减?p?1dB; 阻带截止频率ws?0.35?rad,阻带最小衰减?s?10dB 解 设计步骤如下:

(1)给出数字滤波器的指标。

WP?0.2;WS?0.35;RS?10;

(2)计算巴特沃思数字滤波器的阶N和3dB截止频率。

[N,WC]?buttord(WP,WS,RP,RS);

(3)用双线性变换法设计巴特沃思数字低通滤波器。

[BZ,AZ]?butter(N,WC);

运行结果如下:

BZ=0.0335 0.1006 0.1006 0.0335 AZ=1.000 -1.4245 0.8827 -1.1900

所以,设计出的数字滤波器系统函数为

0.0335?0.1006z?1?0.1006z?2?0.0335z?3 H(z)??1?2?31.000?1.4245z?0.8827z?0.1900z

程序如下:

WP?0.2;WS?0.35;RP?10;RS?10; %滤波器参数[N,WC]?buttord(WP,WS,RP,RS); %计算数字滤波器的阶和3dB截止频率[BZ,AZ]?butter(N,WC); %计算数字滤波器系统函数分子和分母多项 式的系数向量B和A%省去绘图部分程序

4

三、实验内容

1、 设采样周期T=250μs(采样频率fs =4kHz),用脉冲响应不变法和双线性变换法设计一个三阶巴特沃兹滤波器,其3dB边界频率为fc =1kHz。 参考程序如下:

%脉冲响应不变法设计H(z)

[B,A]=butter(3,2*pi*1000,'s'); %N=3,截止频率wc=2*pi*1000 [num1,den1]=impinvar(B,A,4000); [h1,w]=freqz(num1,den1); %双线性变换法设计H(z)

[B,A]=butter(3,2/0.00025,'s');%N=3,预畸变后的截止频率wc=2/T=2/0.00025 [num2,den2]=bilinear(B,A,4000); [h2,w]=freqz(num2,den2); f=w/pi*2000;

plot(f,abs(h1),'-.',f,abs(h2),'-'); grid;

xlabel('频率/Hz ') ylabel('幅值/dB') 程序说明;

(1) [B,A]=butter(n,Wn,'s'),该函数设计一个n阶的低通模拟的Butterworth滤波器,其截止角频率为Wn rad/s。它转换得到滤波器的系数A、B是n+1行的向量,其中“s”按降幂的次序排列,且其传递函数来自下式:

(2)在MATLAB中,可分别用impinvar 和bilinear实现从模拟滤波器到数字滤波器的脉冲响应不变映射和双线性映射,调用格式为:

[b,a]=impinvar(c,d,fs);脉冲响应不变法将H(s)→H(z) [b,a]=bilinear(c,d, fs);双线性变换法将H(s)→H(z)

其中,c、d分别为模拟滤波器H(s)的分子和分母多项式系数向量;fs为采样频率。

缺省值fs=1Hz;b、a分别为数字滤波器H(z)分子和分母多项式系数向量。 (3)求解数字滤波器的频率响应[H,w]=freqz(B,A,N)

B和A分别为离散系统的系统函数H(z)分子、分母多项式的系数向量,N为正整数,返回量H则包含了离散系统频率响应在 0~pi范围内N个频率等分点的值,向量w则包含范围内N个频率等分点。调用中若N默认,默认值为512。 (4)程序说明

程序中第一个butter的边界频率2π×1000rad/s,为脉冲响应不变法原型低

通滤波器的边界频率;第二个butter的边界频率2/T=2/0.00025,为双线性变换法原型低通滤波器的边界频率,此值是通过预畸变得到的。

?fc?1000Hz,?c?2?fc,?c??cT,?经过预畸变得到的模拟角频率:?c?2??c?22tg???tg(0.25?)?T?2?TT 5


IIR滤波器的设计方法.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:ERP在中小企业成功实施的策略研究毕业论文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: