matlab 双线性法预畸变,双线性变换法1 您所在的位置:网站首页 双线性变换法是什么 matlab 双线性法预畸变,双线性变换法1

matlab 双线性法预畸变,双线性变换法1

2023-09-22 21:51| 来源: 网络整理| 查看: 265

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

Ω=c*tan(Ω1*T/2)

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

s=c*tanh(s1*T/2)=c*[1-exp(-s1*T)] / [1+exp(-s1*T)]

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

s=(2/T) * [1-z^(-1)] / [1+z^(-1)]

同样对z求解,得到

z=[1+((2/T)*s] / [1-((2/T)*s]

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

s=(2/T) * [1-exp(-j*ω)] / [1+exp(-j*ω)]

=(2/T) * j*[sin(ω/2)]/ cos(ω/2)]

=(2/T) * j * tan(ω/2)=jΩ

除了使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平面的单位圆上。然而,付出的代价是在频率轴上引入了失真。因此,只有当能容忍或补偿这种失真时,使用双线性变换法设计数字滤波器的方法才是实用的。仅在零频率附近时Ω与ω之间的频率变换关系接近于线性关系,所产生的



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有