第3章信号的变换
信号与系统的分析方法中,除了时域分析方法外,还有变换域分析的方法。连续时间信号与系统的变换域分析方法主要是傅里叶变换和拉普拉斯变换。离散时间信号的Z变换是分析线性时不变离散时间系统问题的重要工具,在数字信号处理、计算机控制系统等领域有着广泛的应用。
学习目标:
(1)了解、熟悉Z变换的概念与性质;
(2)理解Z反变换的相关内容;
(3)掌握离散系统中的Z域描述方法;
(4)了解、熟悉傅里叶级数与变换;
(5)理解离散傅里叶变换及其性质;
(6)实现频率域采样和快速傅里叶变换;
(7)熟悉实现离散余弦变换、ChirpZ变换和Gabor函数。
3.1Z变换概述
连续系统一般使用微分方程、拉普拉斯变换的传递函数和频率特性等概念进行研究。一个连续信号f(t)的拉普拉斯变换F(s)是复变量s的有理分式函数,而微分方程通过拉普拉斯变换后也可以转换为s的代数方程,从而可以大大简化微分方程的求解,从传递函数可以很容易地得到系统的频率特征。
因此,拉普拉斯变换作为基本工具将连续系统研究中的各种方法联系在一起。计算机控制系统中的采样信号也可以进行拉普拉斯变换,从中找到简化运算的方法,引入了Z变换。
3.1.1Z变换的定义
序列x(n)的Z变换(简称ZT)定义为
X(z)=∑+∞n=-∞x(n)z-n
上式称为双边Z变换。
如果x(n)的非零值区间为(-∞,0]或者[0,+∞),则上式可变为
X(z)=∑0n=-∞x(n)z-n
X(z)=∑+∞n=0x(n)z-n
此时,称为序列x(n)的单边Z变换。
序列的ZT存在的条件为
|X(z)|=∑+∞n=-∞x(n)z-n≤∑+∞n=-∞x(n)z-n=∑+∞n=-∞|x(n)||z-n|<+∞
满足上式的z的取值范围称为Z变换的收敛域(RegionofConvergence,ROC),它通常为z平面上的一个环状域,即
Rx-<|z|
3.1.2Z变换的收敛域
序列Z变换的收敛域与序列的形态有关。反之,同一个Z变换的表达式,不同的收敛域,确定了不同序列形态。下面根据序列形态不同,分别讨论其收敛域。
对于任意给定的序列x(n),能使X(z)=∑∞n=-∞x(n)z-n收敛的所有z值集合为收敛域。即满足
∑∞n=-∞|x(n)z-n|<∞
不同的x(n)的Z变换,由于收敛域不同,可能对应于相同的Z变换,故在确定Z变换时,必须指明收敛域。
1.有限长序列
有限序列的描述函数是
x(n)=x(n)n1≤n≤n2
0其他
其Z变换为
X(z)=∑n2n=n1x(n)z-n
因此Z变换式是有限项之和,故只要级数的每一项有界,则级数就收敛。收敛域为
0<|z|<∞
2.右边序列
右边序列的描述函数是
x(n)=x(n)n≥n1
0其他
其Z变换为
X(z)=∑∞n=n1x(n)z-n
因此Z变换样式是无限项之和,当n1≥0时,由根值判别法有
limn→∞n|x(n)z-n|<1
所以此时收敛域为
|z|>limn→∞n|x(n)|=R1
当n1<0时,此时级数全收敛,所以右边序列的收敛域为R1<|z|<∞。
3.左边序列
左边序列的描述函数为
x(n)=x(n)n≤n2
0其他
其Z变换为
X(z)=∑n2n=-∞x(n)z-n=∑∞n=-n2x(-n)zn
当n2<0时,由根值判别法有
limn→∞n|x(-n)zn|<1
由此求得的收敛域为
|z|
当n2>0时,此时相当于增加了一个n2>0的有限长序列,还应除去原点,左边序列的收敛域为
0<|z|
4.双边序列
双边序列的描述函数为
x(n)=x(n)[u(-n-1)+u(n)]
其Z变换为
X(z)=∑∞n=-∞x(n)z-n=∑-1n=-∞x(n)z-n+∑∞n=0x(n)z-n
因为∑∞n=0x(n)z-n的收敛域为|z|>R1,∑-1n=-∞x(n)z-n的收敛域为|z|
R1<|z|
3.2Z变换的性质
3.2.1线性性质
假设
Z[x1(k)]=X1(z)(|z|>Rx1)
Z[x2(k)]=X2(z)(|z|>Rx2)
则有
Z[ax1(k)+bx2(k)]=aX1(z)+bX2(z)
其中,a、b为任意常数。
3.2.2时域的移位
假设Z[f(t)]=F(z),那么有
Z[f(t+nT)]=znF(z)-∑n-1k=0f(kT)z-k
假设Z[f(t)]=F(z),那么有
Z[f(t-nT)]=z-nF(z)
3.2.3时域扩展性
若函数f(t)有Z变换F(z),则
Z[eatf(t)]=F(ze±aT)
根据Z变换定义有
Z[eatf(t)]=∑∞k=0f(kT)eakTz-k
令z1=ze±aT,则上式可写成
Z[eatf(t)]=∑∞k=0f(kT)z-k1=F(z1)
代入z1=ze±aT,得
Z[eatf(t)]=F(ze±aT)
3.2.4时域卷积性质
已知
x(k)X(z)(α1<|z|<β1)
h(k)H(z)(α2<|z|<β2)
则有
x(k)*h(k)X(z)H(z)
3.2.5微分性
如果有
x(k)X(z)α<|z|<β
那么有
kx(k)-zdX(z)dzα<|z|<β
3.2.6积分性
已知
x(k)X(z)α<|z|<β
则有
x(k)k+mzm∫∞zX(η)ηm+1dηα<|z|<β
3.2.7时域求和
如果有
x(k)X(z)α<|z|<β
那么有
f(k)=∑ki=-∞x(i)zz-1X(z)max(α,1)<|z|<β
3.2.8初值定理
如果函数f(t)的Z变换为F(z),并存在极限limz→∞F(z),则
limk→0f(kT)=limz→∞F(z)
3.2.9终值定理
假定f(t)的Z变换为F(z),并假定函数(1-z-1)F(z)在z平面的单位圆上或圆外没有极点,则
limk→∞f(kT)=limz→1(1-z-1)F(z)
3.3Z反变换
定义X(z)的Z反变换(IZT)为
x(n)=12πj∮CX(z)zn-1dz
式中,C为收敛域内一条环绕原点逆时针闭合围线。
求Z反变换的方法主要有两种,分别是留数法和部分分式展开法。
由留数定理可知:若函数在围线C上连续,在C以内有K个极点,而在C以外有M个极点,则有
12πj∫X(z)zn-1dz=∑kRes[X(z)zn-1]z=zk
当极点为一阶时的留数为
Res[X(z)zn-1]Z=Zr=[(z-zr)X(z)zn-1]z=zr
当极点为多重极点时的留数为
Res[X(z)zn-1]z=zr=1(l-1)!dl-1dzl-1[(z-zr)lX(z)zn-1]z=zr
部分分式法把x的一个实系数的真分式分解成几个分式的和,使各分式具有a(x+A)k或者ax+b(x2+Ax+B)k的形式。
通常情况下传递函数可分解为
X(z)=B(z)A(z)=∑Mi=0biz-i1+∑Ni=1aiz-i
MATLAB的符号数学工具箱提供了计算Z变换的函数ztrans()和Z反变换的函数iztrans(),其调用形式为
F=ztrans(f),
f=iztrans(F)
其中,右端的f和F分别为时域表示式和Z域表示式的符号表示,可应用函数sym来实现,其调用格式为
S=sym(A)
在MATLAB中,留数法求Z反变换可以使用函数residuez实现,调用格式为
[RPK]=residuez(B,A);
其中,B和A分别为X(z)的多项式中分子多项式和分母多项式的系数向量;返回值R为留数向量,P为极点向量,二者均为列向量;返回值K为直接项系数,仅在分子多项式最高次幂大于等于分母多项式最高次幂时存在,否则,返回值为空。