实验名:离散系统的Z域分析
一、实验目的
1、掌握离散序列z变换的计算方法。
2、掌握离散系统系统函数零极点的计算方法和零极点图的绘制方法,并能根据零极点图分析系统的因果性和稳定性。
3、掌握利用MATLAB进行z反变换的计算方法。
二、实验原理与计算方法
1、z变换
离散序列x(n)的z变换定义为:X(Z)nx(n)zn。
在MATLAB中可以利用符号表达式计算一个因果序列的z变换。其命令格式为: syms n;
f=(1/2)^n+(1/3)^n; ztrans(f)
2、离散系统的系统函数及因果稳定的系统应满足的条件
一个线性移不变离散系统可以用它的单位抽样响应h(n)来表示其输入与输出关系,即
y(n)= x(n)* h(n)
对该式两边取z变换,得: Y(z)= X(z)· H(z)
Y(z)则: H(z)
X(z)将H(z)定义为系统函数,它是单位抽样响应h(n)的z变换,即
H(z)Z[h(n)]
nh(n)zn
对于线性移不变系统,若n<0时,h(n)=0,则系统为因果系统;若
n|h(n)|,则
系统稳定。由于h(n)为因果序列,所以H(z)的收敛域为收敛圆外部区域,因此H(z)的收敛域为收敛圆外部区域时,系统为因果系统。因为H(z)nh(n)zn,若z=1时H(z)收敛,即
H(z)|z1n|h(n)|,则系统稳定,即H(z)的收敛域包括单位圆时,系统稳定。
因此因果稳定系统应满足的条件为:|z|,1,即系统函数H(z)的所有极点全部落在z平面的单位圆之内。
3、MATLAB中系统函数零极点的求法及零极点图的绘制方法
MATLAB中系统函数的零点和极点可以用多项式求根函数roots ()来实现,调用该函数的命令格式为:p=roots(A)。其中A为待求根多项式的系数构成的行向量,返回向量p是包含该多项式所有根位置的列向量。
31如:求多项式A(z)z2z的根的MATLAB命令为:
48A=[1 3/4 1/8]; p=roots(A) 运行结果为: p=
-0.5000 -0.2500 也可以用[z,p,k]=tf2zp(B,A)函数求得。其中z为由系统的零点构成的向量,p为由系统的极点构成的向量,k表示系统的增益;B、A分别为系统函数中分子分母多项式的系数向
量。
离散系统的系统函数可能有两种形式,一种是分子和分母多项式均按z的正次幂降幂排
3z2z列,如H1(z)4,另一种是分子分母多项式均按z的负次幂升幂排32z3z2z2z11z1列,如H2(z),在构造多项式系数向量时,分子和分母多项式系数向量
111z1z224的维数一定要相同,缺项用0补齐。对于H1(z)其分子多项式的系数向量应为:B=[0 1 0 2 0];分母多项式的系数向量应为:A=[1 3 2 2 1]。对于H2(z)其分子多项式的系数向量应为:B=[1 1 0];分母多项式的系数向量应为:A=[1 1/2 1/4]。
绘制系统函数的零极点图可由MATLAB中的zplane函数实现。该函数的调用方法为:zplane(B,A)或者zplane(z,p,k),其中B,A,z,p,k的含义与tf2zp函数相同。若调用zplane(B,A)绘图,则首先将系统函数中分子分母多项式变换成按z的正次幂降幂排列的系数向量,再求零极点。
4、z反变换的计算方法
zz反变换可由部分分式展开法求得。由于指数序列anu(n)的z变换为,因此求反变
zaX(z)换时,通常对进行展开:
zAkA1A2X(z) zzz1zz2zzkX(z)X(z)其中Ai(zzi)称为有理函数的留数。 zzi(i1,2,k)zz 分两种情况进行讨论:
(1)X(z)的所有极点均为单实极点
AzA1zAz此时X(z)2k,则X(z)的z反变换为:
zz1zz2zzkx(n)A0Ai(zi)n
i1k(2)X(z)有共轭极点
Azr1zr2zAz1k,
zp1zp2zz1zzkX(z)j其中留数的计算方法与单极点相同,即r1(zp1),r2=r1 *
zp1|r1|ezX(z)因此,只要求出部分分式展开的系数(留数),就可以直接求出X(z)的z反变换
zX(z)x(n)。在MATLAB中可利用函数residue()求解。令B和A分别是的分子和分母多项
zX(z)式构成的系数向量,则函数[r,p,k]=residue (B,A)将产生三个向量r、p、k,其中r为包含
zX(z)部分分式展开系数ri(i=1,2,…,N)的列向量,p为包含所有极点的行向量,k为包含
zX(z)部分分式展开的多项式项的系数cj(j=1,2,…,M-N)的列向量,若M≤N,则k为空阵。 zX(z)用residue()函数求出部分分式展开的系数后,便可根据其极点位置分布情况直接
z求出X(z)的反变换x(n)。
设X(z)有一对共轭极点p1,2ej,则X(z)
z2如:已知X(z)2,求其z反变换x(n)。
z3z2X(z)z首先利用residue()函数求出的部分分式展开的系数和极点,相应的2zz3z2MATLAB命令为: B=[0 1 0]; A=[1 3 2];
[r,p,k]=residue (B,A) 运行结果为: r = 2 -1 p = -2 -1 k =
[ ]
21由以上结果可得:X(z);即X(z)只有两个单极点,其z反变换为:z2z1x(n)2(2)n(1)nu(n)。
z2z 已知X(z)3,求其z反变换x(n)。 2z2z2z1X(z)z1 利用residue()函数求出的部分分式展开的系数和极点,可3zz2z22z1得:
B=[0 0 1 1]; A=[1 -2 2 -1];
[r,p,k]=residue (B,A) r =
2.0000 -1.0000 + 0.0000i -1.0000 - 0.0000i p =
1.0000 0.5000 + 0.8660i 0.5000 - 0.8660i k =
[ ]
X(z)可见,包含一对共轭极点,用abs()和angle()函数即可求出共轭极点的模和相位,相
z应命令为: p1=abs(p') p1 =
1.0000 1.0000 1.0000 a1=angle(p')/pi a1 =
0 -0.3333 0.3333
即共轭极点为:p1,2ej3,则X(z)zzej3zzej32z,其z反变换为:z1x(n)2cosn2u(n)
3
三、实验内容
(1)求下列序列的z变换:
2-nu(n);-(1/2)n u(n);(1/2)n+(1/3)n u(n)
①2-nu(n)的Z变换程序如下:
syms n; f=(1./2)^(n) ztrans(f)
结果为:
f = (1/2)^n ans =
2*z/(2*z-1) n
②-(1/2) u(n)的Z变换程序为:
syms n; f=-(1./2)^(n) ztrans(f)
结果为:
f = -(1/2)^n ans =
-2*z/(2*z-1) n
③(1/2)+(1/3)n u(n)因为是非因果系统,所以
3z 3z1n(2)已知两个离散因果系统的系统函数分别为:
123z2z2zzz;H2(z) H1(z)3121z2z24z11zz2分别求出各系统的零极点,绘制零极点图,分析系统的稳定性;求出各系统单位抽样响应。 ① 程序为:
Z[(1/2)n+(1/3)n u(n)]=
2n3nunzn=
A=[1 2 -4 1] B=[0 1 1 0]
[z,p,k]=tf2zp(B,A)%求零极点
[r,p,k]=residue (B,A)%部分分式展开的系数和极点 zplane(B,A)
零极点为 :
z = 0 -1 p =
-3.3028 1.0000 0.3028
零极图为:
稳定性:由上图看出收敛域不包括单位圆,即不是稳定系统 系统抽样响应: 由下得
r =
0.4902 0.6667 -0.1569 p =
-3.3028 1.0000 0.3028 k = []
0.49020.66670.1569 H1(z)z3.3028z1z0.3028系统抽样响应为:
h(n)=h(n)0.4902(3.3028)n0.66670.15690.3028u(n)
② 程序为:
nA=[1 1 1/2 0] B=[0 2 -1 1]
[z,p,k]=tf2zp(B,A)%求零极点
[r,p,k]=residue (B,A)%部分分式展开的系数和极点 p1=abs(p') a1=angle(p')/pi zplane(B,A)
零极点为 :
z =
0.2500 + 0.6614i 0.2500 - 0.6614i p =
0 -0.5000 + 0.5000i -0.5000 - 0.5000i k = 2 零极图为:
稳定性:由上图看出收敛域包括单位圆,所以系统稳定 系统抽样响应: 由r =
-0.0000 + 3.0000i -0.0000 - 3.0000i 2.0000 p =
-0.5000 + 0.5000i -0.5000 - 0.5000i 0
含一对共轭极点,用abs()和angle()函数即可求出共轭极点的模和相位 p1 =
0.7071 0.7071 0 a1 =
-0.7500 0.7500 0 即共轭极点为:p1,2ej34
,则X(z)zzej34zzej342z,其z反变换为:z13x(n)2cosn2u(n)及为系统的抽样响应
4
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务