MATLAB离散系统z域分析
实验八 离散系统的Z域分析
一、目的
(1)掌握利用MATLAB绘制系统零极点图的
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
(2)掌握离散时间系统的零极点分析方法
(3)掌握用MATALB实现离散系统频率特性分析的方法
(4)掌握逆Z变换概念及MATLAB实现方法 二、离散系统零极点
线性时不变离散系统可用线性常系数差分方程描述,即
NM
(8-1) aynibxnj()(),,,,,ij,,00ij
其中为系统的输出序列,为输入序列。 yk()xk()
将式(8-1)两边进行Z变换的
M,jbz,j()()YzBz0,j (8-2) ,,,()HzN()()XzAz,iaz,i0,i
将式(8-2)因式分解后有:
M
()zq,,jj,1HzC(), (8-3) N
()zp,i,i,1
CNM其中qjM(1,2,,),?为常数,为的个零点,为的个piN(1,2,,),?Hz()Hz()ji极点。
系统函数的零极点分布完全决定了系统的特性,若某系统函数的零极点已知,Hz()
则系统函数便可确定下来。
因此,系统函数的零极点分布对离散系统特性的分析具有非常重要意义。通过对系
统函数零极点的分析,可以分析离散系统以下几个方面的特性:
, 系统单位样值响应的时域特性; hn()
, 离散系统的稳定性;
, 离散系统的频率特性;
三、离散系统零极点图及零极点分析
1(零极点图的绘制
设离散系统的系统函数为
Bz() Hz(),Az()则系统的零极点可用MATLAB的多项式求根函数roots()来实现,调用格式为:
p=roots(A)
p其中A为待根求多项式的系数构成的行矩阵,返回向量则是包含多项式所有根的列向
312Bzzz(),,,量。如多项式为,则求该多项式根的MATLAB命令为为: 48
A=[1 3/4 1/8];
63
P=roots(A)
运行结果为:
P =
-0.5000
-0.2500
需注意的是,在求系统函数零极点时,系统函数可能有两种形式:一种是分子、分
,1母多项式均按z的降幂次序排列;另一种是分子、分母多项式均按的升幂次序排列。z这两种方式在构造多项式系数向量时稍有不同。
(1)按z的降幂次序排列:系数向量一定要由多项式最高次幂开始,一直到常数Hz()
项,缺项要用0补齐;如
3zz,2 Hz(),432zzzz,,,,3221
其分子、分母多项式系数向量分别为A=[1 0 2 0]、B=[1 3 2 2 1]。
,1(2)按的升幂次序排列:分子和分母多项式系数向量的维数一定要相同,不zHz()
z,0足的要用0补齐,否则的零点或极点就可能被漏掉。如
,112,zHz(), 11,,121,,zz24
其分子、分母多项式系数向量分别为A=[1 2 0]、B=[1 1/2 1/4]。
用roots()求得的零极点后,就可以用plot()函数绘制出系统的零极点图。下面Hz()
是求系统零极点,并绘制其零极点图的MATLAB实用函数ljdt(),同时还绘制出了单位
圆。
function ljdt(A,B)
% The function to draw the pole-zero diagram for discrete system
p=roots(A); %求系统极点
q=roots(B); %求系统零点
p=p'; %将极点列向量转置为行向量
q=q'; %将零点列向量转置为行向量
x=max(abs([p q 1])); %确定纵坐标范围
x=x+0.1;
y=x; %确定横坐标范围
clf
hold on
axis([-x x -y y]) %确定坐标轴显示范围
w=0:pi/300:2*pi;
t=exp(i*w);
plot(t) %画单位园
axis('square')
plot([-x x],[0 0]) %画横坐标轴
plot([0 0],[-y y]) %画纵坐标轴
text(0.1,x,'jIm[z]')
text(y,1/10,'Re[z]')
plot(real(p),imag(p),'x') %画极点
plot(real(q),imag(q),'o') %画零点
title('pole-zero diagram for discrete system') %标注标
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
64
hold off
例1:绘制如下系统函数的零极点
323510zzz,,(1) Hz(),32zzz,,,375
,110.5,z(2) Hz(),31,,121,,zz48
解:MATLAB命令如下
(1) A=[1 -3 7 -5];
B=[3 -5 10 0];
ljdt(A,B)
绘制的零极点图如图8-1(a)所示。
(2) A=[1 3/4 1/8];
B=[1 -0.5 0];
ljdt(A,B)
绘制的零极点图如图8-1(b)所示。
(a) (b)
图8-1 离散系统的零极点图
2(离散系统零极点分析
(1)离散系统零极点分布与系统稳定性
《信号与系统》课程已讲到离散系统稳定的条件为:
,
, 时域条件:离散系统稳定的充要条件为,即系统单位样值响应绝hn(),,,n,,,
对可和;
, Z域条件:离散系统稳定的充要条件为系统函数的所有极点均位于Z平面Hz()
的单位圆内。
对于三阶以下的低阶系统,可以利用求根公式求出系统函数的极点,从而判断系统
的稳定性,但对于高阶系统,手工求解则显得十分困难,这时可以利用MATLAB来实
现。实现方法是调用前述的函数ljdt()绘出系统的零极点图,然后根据极点的位置判断系
统的稳定性。
例2:系统函数如例1所示,判断两个系统的稳定性。
65
解:由例1绘出的零极点图可以看出两个系统的稳定性分别为:第(1)个系统不稳定;第(2)个系统稳定。
(2)零极点分布与系统单位样值时域特性的关系
从《信号与系统》课程中已经得知,离散系统的系统函数与单位样值响应Hz()hn()是一对Z变换对;因而,必然包含了的固有特性。 Hz()hn()
离散系统的系统函数可以写成
M
()zq,,jj,1 (8-4) HzC(),N
()zp,i,i,1
N若系统的个极点均为单极点,可将进行部分分式展开为: Hz()
Nkzi (8-5) (),Hz,,zp,1ii
由Z逆变换得:
Nn (8-6) hnkpun()()(),,ii,1i
从式(8-5)和(8-6)可以看出离散系统单位样值响应的时域特性完全由系统hn()
函数的极点位置决定。从《信号与系统》的学习中已经得出如下规律: Hz()
, 位于Z平面单位圆内的极点决定了随时间衰减的信号分量; Hz()hn()
, 位于Z平面单位圆上的一阶极点决定了的稳定信号分量; Hz()hn()
, 位于Z平面单位圆外的极点或单位圆上高于一阶的极点决定了的随时Hz()hn()
间增长的信号分量;
下面以例子证明上述规律的正确性:
例3:已知如下系统的系统函数,试用MATLAB分析系统单位样值响应的时Hz()hn()域特性。
1Hz(),(1),单位圆上的一阶实极点; z,1
1(2),单位圆上的一阶共轭极点; ,Hz(),2,,zz2cos()18
z(3),单位圆上的二阶实极点; Hz(),2(1)z,
1Hz(),4)(,单位圆内的一阶实极点; z,0.8
1(5),单位圆内的二阶实极点; Hz(),2(0.5)z,
1Hz(),(6),单位圆外的一阶实极点; z,1.2
解:利用MATLAB提供的函数impz()绘制离散系统单位样值响应波形,impz()基本调用方式为(其他方式,请读者参看MATLAB帮助):impz(b,a,N),其中,b为系统函数分子多项式的系数向量,a为系统函数分母多项式的系数向量,N为产生序列的长度;需
66
11要注意的是,b和a的维数应相同,不足用0补齐,例如的Hz(),,22(1)21zzz,,,
b=[0 0 1],a=[1 –2 1]。下面是求解个系统单位样值响应的MATLAB命令:
(1)a=[1 -1];
b=[0 1];
impz(b,a,10)
运行结果如图8-2(a)所示。 (2)a=[1 –2*cos(pi/8) 1];
b=[0 0 1];
impz(b,a,50)
运行结果如图8-2(b)所示。 (3)a=[1 -2 1];
b=[0 1 0];
impz(b,a,10)
运行结果如图8-2(c)所示。 (4)a=[1 -0.8];
b=[0 1];
impz(b,a,10)
运行结果如图8-2(d)所示。 (5)a=[1 -1 0.25];
b=[0 0 1];
impz(b,a,10)
运行结果如图8-2(e)所示。 (6)a=[1 -1.2];
b=[0 1];
impz(b,a,10)
运行结果如图8-2(f)所示。
(a) (b)
图8-2 系统的单位样值响应
67
(d) (c)
(f) (e)
图8-2 系统的单位样值响应(续)
四、离散系统频率特性分析
j,1(离散系统的频率响应 He()
对于某因果稳定离散系统,如果激励序列为正弦序列:
xnAnun()sin()(),, 0则,根据《信号与系统》课程给出的结果有,系统的稳态响应为:
j,ynAHenun()()sin[()](),,,,, ss
定义离散系统的频率响应为
jjj,,,,()HeHzHee()()(),, j,,ze
j,He()其中,——称为离散系统的幅频特性;
,,()——称为离散系统的相频特性;
j,j,2,,,,是以为周期的周期函数,只要分析在范围内的情况,便可He()He()分析出系统的整个频率特性。
2(用MATLAB实现离散系统的频率特性分析方法 (1)直接法
68
设某因果稳定系统的系统函数,则系统的频响特性为: Hz()
jjj,,,,() HeHzHee()()(),,j,,ze
MATLAB提供了专门用于求离散系统频响特性的函数freqz(),调用freqz()的格式有以下两种:
, [H,w]=freqz(B,A,N)
B和A分别为离散系统的系统函数分子、分母多项式的系数向量,N为正整数,
j,0~,He()返回量H则包含了离散系统频响在范围内N个频率等分点的值,向量w则
0~,包含范围内N个频率等分点。调用中若N默认,默认值为512。 , [H,w]=freqz(B,A,N,’whole’)
j,0~2,He()该调用格式将计算离散系统在范围内N个频率等分点的频率响应的值。
因此,可以先调用freqz()函数计算系统的频率响应,然后利用abs()和angle()函数
0~,0~2,及plot()函数,即可绘制出系统在或范围内的频响曲线。 例4:绘制如下系统的频响曲线
z,0.5Hz(), z
解:MATLAB命令如下:
B=[1 -0.5];
A =[1 0];
[H,w]=freqz(B,A,400,'whole');
Hf=abs(H);
Hx=angle(H);
clf
figure(1)
plot(w,Hf)
title('离散系统幅频特性曲线')
figure(2)
plot(w,Hx)
title('离散系统相频特性曲线')
运行结果如图8-3所示。
图8-3 系统的幅频特性曲线和相频特性曲线
69
(2)几何矢量法
利用几何矢量求解示意图如图8-4所示。
j,j,j eqBe,,jj
j,j,i epAe,,ii
有:
M(),,,,,,?j12MBe,j,1j()jjj,,,, ()(),,HeHeeN j(),,,?,,,12NAe,i,1i
则系统的幅频特性和相频特性分别为:
M
B,jj,1j,He(), (8-7) N
A,ii,1MN
(8-8) ,,,,(),,,,ji,,11ji
根据式(8-7)和(8-8),利用MATLAB来求解频率响应的过程如下:
BA, 根据系统函数定义分子、分母多项式系数向量和; Hz()
的零极点,并绘出零极点图; , 调用前述的ljdt()函数求出Hz()
k, 定义Z平面单位圆上的个频率分点;
, 求出所有的零点和极点到这些等分点的距离; Hz()
, 求出所有的零点和极点到这些等分点矢量的相角; Hz()
j,, 根据式(8-7)和(8-8)求出系统的He()和; ,,()
, 绘制指定范围内系统的幅频曲线和相频曲线;
下面是实现上述过程的实用函数dplxy()。有四个参数:k为用户定义的频率等分点
数目;B和A分别为系统函数分子、分母多项式系数向量;r为程序绘制的频率特性曲
0~r,,线的频率范围()。
function dplxy(k,r,A,B)
%The function to draw the frequency response of discrete system
p=roots(A); %求极点
q=roots(B); %求零点
figure(1)
ljdt(A,B) %画零极点图
w=0:r*pi/k:r*pi;
y=exp(i*w); %定义单位圆上的k个频率等分点 N=length(p); %求极点个数
M=length(q); %求零点个数
yp=ones(N,1)*y; %定义行数为极点个数的单位圆向量 yq=ones(M,1)*y; %定义行数为零点个数的单位圆向量 vp=yp-p*ones(1,k+1); %定义极点到单位圆上各点的向量 vq=yq-q*ones(1,k+1); %定义零点到单位圆上各点的向量 Ai=abs(vp); %求出极点到单位圆上各点的向量的模
70
Bj=abs(vq); %求出零点到单位圆上各点的向量的模
Ci=angle(vp); %求出极点到单位圆上各点的向量的相角
Dj=angle(vq); %求出零点到单位圆上各点的向量的相角
fai=sum(Dj,1)-sum(Ci,1); %求系统相频响应
H=prod(Bj,1)./prod(Ai,1); %求系统幅频响应
figure(2)
plot(w,H); %绘制幅频特性曲线
title('离散系统幅频特性曲线')
xlabel('角频率')
ylabel('幅度')
figure(3)
plot(w,fai)
title('离散系统的相频特性曲线')
xlabel('角频率')
ylabel('相位')
例5:已知某离散系统的系统函数为:
,15/4(1),z Hz(),,111/4,z绘出该系统的零极点图及频响特性。
解:MATLAB命令如下:
A=[1 -1/4];
B=[5/4 -5/4];
dplxy(500,2,A,B)
运行结果如图8-4所示。
图8-4 离散系统的零极点图、幅频和相频曲线
五、实验内容
已知离散系统的系统函数分别为:
2zz,,21Hz(),(1) 321z,
2z,2Hz(),(2) 32zzz,,,241
试用MATLAB分析:
(1) 绘出系统的零极点图,根据零极点图判断系统的稳定性; (2) 如果系统稳定,绘出幅频特性和相频特性曲线。
71
72