双线性变换法设计数字滤波器_第1页
双线性变换法设计数字滤波器_第2页
双线性变换法设计数字滤波器_第3页
双线性变换法设计数字滤波器_第4页
双线性变换法设计数字滤波器_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、双线性变换法在数字滤波器上应用冲击响应不变法是使数字滤波器在时域上模仿模拟滤波器的冲击响应,但是它的缺点是产生频响的混叠失真,这是因为从s平面到z平面不是一一映射关系。为了克服这个缺点,可以采用双线性变换法。既然冲击响应不变法是将一条横带变换到整个z平面上去,可以将s平面压缩变换到某一中介s1平面的一条横带里,再通过标准变换关系z=exp(s1*T)将此带变换到整个z平面上去,这样就使s平面与z平面之间建立一一对应的单值关系,消除了多值变换性。为了将s平面的j轴压缩到s1平面的j1轴上的-pi/T到pi/T一段上,可以通过以下的正切变换来实现:    &

2、#160;                                         =c*tan(1*T/2)这里c是任意常数。这样当1由-pi/T经0变化到pi/T时,由-经过0变化到+,也

3、映射到了整个j轴。将这个关系延拓到整个s平面和s1平面,则可以得到                                       s=c*tanh(s1*T/2)=c*1-exp(-s1*T) / 1+ex

4、p(-s1*T)再将s1平面通过标准变换关系映射到z平面,即令z=exp(s1*T),并且,通常取c=2/T,得到                                    s=(2/T) * 1-z(-1) / 1+z(-1)

5、同样对z求解,得到                                  z=1+(2/T)*s / 1-(2/T)*s这样的变换叫做双线性变换。为了验证这种映射具有s平面的虚轴映射到z平面单位圆上的特性,考虑z=exp(j*),得  &

6、#160;                       s=(2/T) * 1-exp(-j*) / 1+exp(-j*)                     

7、60;     =(2/T) * j*sin(/2)/ cos(/2)                           =(2/T) * j * tan(/2)=j           

8、     除了使s平面的虚轴映射到单位圆上之外,s平面的左半部分映射到单位圆的内部,s平面的右半部分映射到单位圆的外部。观察式子  z=1+(2/T)*s / 1-(2/T)*s,发现s的实部为负时,因子1+(2/T)*s / 1-(2/T)*s的幅度小于1,相当于单位圆的内部。反之,当s的实部为负时,该比值的幅度大于1,相当于单位圆的外部。这样就可以看出使用双线性变换可从稳定的模拟滤波器得到稳定的数字滤波器。双线性变换法还避免了使用脉冲响应不变法所遇到的混叠问题,因为它把s平面的这个虚轴映射到z平面的单位圆上。然而,付出的代价是在频率轴上引入

9、了失真。因此,只有当能容忍或补偿这种失真时,使用双线性变换法设计数字滤波器的方法才是实用的。仅在零频率附近时与之间的频率变换关系接近于线性关系,所产生的数字滤波器的幅频响应相对于原模拟滤波器的幅频响应有畸变。例如:一个模拟微分器,它的幅度与频率是直线关系,但是通过双线性变换后,就不可能得到数字微分器。       对于分段常数的滤波器,双线性变换后,仍得到幅频特性为分段常数的滤波器,但是各分段边缘的临界频率点产生了畸变,这种频率的畸变,可以通过频率的预畸变来加以校正,也就是将临界频率事先加以畸变,然后经变换后正好映射到所需要的频率上。

10、通过=(2/T) * tan(/2)的关系变换成一组模拟频率。         为了克服冲击响应不变法产生的频率混叠现象,我们需要使s平面与z平面建立一一对应的单值关系,即求出s=f(z),然后将其代入G(s)就可以求得H(z),即                        

11、                             H(z)=G(s) | s=f(z)            冲击响应不变法是使数字滤波器在时域上模仿模拟滤波器的冲击响应,但是它的缺点是产生频

12、响的混叠失真,这是因为从s平面到z平面不是一一映射关系。为了克服这个缺点,可以采用双线性变换法。既然冲击响应不变法是将一条横带变换到整个z平面上去,可以将s平面压缩变换到某一中介s1平面的一条横带里,再通过标准变换关系z=exp(s1*T)将此带变换到整个z平面上去,这样就使s平面与z平面之间建立一一对应的单值关系,消除了多值变换性。为了将s平面的j轴压缩到s1平面的j1轴上的-pi/T到pi/T一段上,可以通过以下的正切变换来实现:             

13、60;                                =c*tan(1*T/2)这里c是任意常数。这样当1由-pi/T经0变化到pi/T时,由-经过0变化到+,也映射到了整个j轴。将这个关系延拓到整个s平面和s1平面,则可以得到    

14、;                                   s=c*tanh(s1*T/2)=c*1-exp(-s1*T) / 1+exp(-s1*T)再将s1平面通过标准变换关系映射到z平面,即令z=exp(s1*T),并且,通常取c=2/T,得

15、到                                    s=(2/T) * 1-z(-1) / 1+z(-1)同样对z求解,得到        

16、;                          z=1+(2/T)*s / 1-(2/T)*s这样的变换叫做双线性变换。为了验证这种映射具有s平面的虚轴映射到z平面单位圆上的特性,考虑z=exp(j*),得           

17、60;              s=(2/T) * 1-exp(-j*) / 1+exp(-j*)                           =(2/T) * j*sin(/2)/ cos(/2)&

18、#160;                          =(2/T) * j * tan(/2)=j                除了使s平面的虚轴映射到单位圆上之外,s平面的左半部分映射到单

19、位圆的内部,s平面的右半部分映射到单位圆的外部。观察式子  z=1+(2/T)*s / 1-(2/T)*s,发现s的实部为负时,因子1+(2/T)*s / 1-(2/T)*s的幅度小于1,相当于单位圆的内部。反之,当s的实部为负时,该比值的幅度大于1,相当于单位圆的外部。这样就可以看出使用双线性变换可从稳定的模拟滤波器得到稳定的数字滤波器。双线性变换法还避免了使用脉冲响应不变法所遇到的混叠问题,因为它把s平面的这个虚轴映射到z平面的单位圆上。然而,付出的代价是在频率轴上引入了失真。因此,只有当能容忍或补偿这种失真时,使用双线性变换法设计数字滤波器的方法才是实用的。仅在零频率附近时与之

20、间的频率变换关系接近于线性关系,所产生的数字滤波器的幅频响应相对于原模拟滤波器的幅频响应有畸变。例如:一个模拟微分器,它的幅度与频率是直线关系,但是通过双线性变换后,就不可能得到数字微分器。       对于分段常数的滤波器,双线性变换后,仍得到幅频特性为分段常数的滤波器,但是各分段边缘的临界频率点产生了畸变,这种频率的畸变,可以通过频率的预畸变来加以校正,也就是将临界频率事先加以畸变,然后经变换后正好映射到所需要的频率上。通过=(2/T) * tan(/2)的关系变换成一组模拟频率。    &

21、#160;    为了克服冲击响应不变法产生的频率混叠现象,我们需要使s平面与z平面建立一一对应的单值关系,即求出s=f(z),然后将其代入G(s)就可以求得H(z),即                                 &#

22、160;                   H(z)=G(s) | s=f(z)       MATLAB信号处理工具箱中为实现双线性变换提供了函数bilinear()     Zd, Pd, Kd=bilinear(Z, P, K, Fs)      &#

23、160;  把模拟滤波器的零极点模型转换成数字滤波器的零极点模型,其中的Fs为采样频率。     NUMd, DENd=bilinear(NUM, DEN,  Fs)         把模拟滤波器的传递函数模型转换成数字滤波器的传递函数模型,其中的Fs为采样频率。     Ad, Bd, Cd, Dd=bilinear(A, B, C, D, Fs)   &

24、#160;     把模拟滤波器的状态方程模型转换成数字滤波器的状态方程模型,其中的Fs为采样频率。       以上三种滤波器可以另外限定预畸变频率Fp,在进行双线性变换之前,对采样频率进行畸变,以保证频率冲击响应在双线性变换前后具有良好的单值映射关系。具体的预畸变过程如下:                  

25、60;           Fp=2*pi*Fp;                             Fs=Fp/tan(Fp/Fs/2);例如: Zd, Pd, Kd=bilinear(Z, P, K, Fs,

26、Fp)在双线性变换之前应用了预畸变。 例1:设计一个数字信号处理系统,它的采样频率Fs=100Hz,希望在该系统中设计一个Butterworth型高通数字滤波器,使其通带中允许的最大衰减为0.5dB,阻带内的最小衰减为40dB,通带上限临界频率为30Hz,阻带下限临界频率为40Hz。 程序设计如下:      clc;clear all;%把数字滤波器的频率特征转换成模拟滤波器的频率特征wp=30*2*pi; ws=40*2*pi; rp=0.5; rs=40; Fs=100;%选择滤波器的最小阶数。N,Wn=bu

27、ttord(wp,ws,rp,rs,'s');%创建Butterworth低通滤波器的原型Z,P,K=buttap(N);A,B,C,D=zp2ss(Z,P,K);%实现低通向低通的转换AT,BT,CT,DT=lp2hp(A,B,C,D,Wn);num1,den1=ss2tf(AT,BT,CT,DT);%运用双线性变换法把模拟滤波器转换成数字滤波器num2,den2=bilinear(num1,den1,Fs);%绘出频率响应曲线H,W=freqz(num2,den2);plot(W*Fs/(2*pi),abs(H); gridxlabel('幅值');ylab

28、el('频率'); 例2:试用双线性变换法设计一个Chebyshev2型高通滤波器,使其幅频特性逼近一个具有如下技术指标的模拟高通Chebyshev2滤波器:ws=2*pi*1000,wp=2*pi*1400,在ws处的最小衰减为15dB,在wp处的最大衰减不超过0.3dB,采样频率为20kHz。程序设计如下:   clc;clear all;%把数字滤波器的频率特征转换成模拟滤波器的频率特征wp=2*pi*1400; wp1=wp*2*pi; ws=2*pi*1000; ws1=ws*2*pi; rp=0.3; rs=15; Fs=20000;%选择滤波器的最小阶数。N,Wn=cheb2ord(wp1,ws1,rp,rs,'s');%创建Chebyshev2低通滤波器的原型Z,P,K=cheb2ap(N, rs);A,B,C,D=zp2ss(Z,P,K);%实现低通向低通的转

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论