实验一 离散系统稳定性分析实验学时:2 实验类型:常规 实验要求:必作一、实验目的:(1)掌握利用MATLAB 绘制系统零极点图的方法; (2)掌握离散时间系统的零极点分析方法;(3)掌握用MATALB 实现离散系统频率特性分析的方法; (4)掌握逆Z 变换概念及MATLAB 实现方法; (5)掌握用MATLAB 分析离散系统稳定性。
二、实验原理:1、离散系统零极点图及零极点分析;线性时不变离散系统可用线性常系数差分方程描述,即()()NMiji j ay n i bx n j ==-=-∑∑ (8-1)其中()y k 为系统的输出序列,()x k 为输入序列。
将式(8-1)两边进行Z 变换的00()()()()()Mjjj N i ii bzY z B z H z X z A z a z-=-====∑∑ (8-2)将式(8-2)因式分解后有:11()()()Mjj Ni i z qH z Cz p ==-=-∏∏ (8-3) 其中C 为常数,(1,2,,)j q j M = 为()H z 的M 个零点,(1,2,,)i p i N = 为()H z 的N 个极点。
系统函数()H z 的零极点分布完全决定了系统的特性,若某系统函数的零极点已知,则系统函数便可确定下来。
因此,系统函数的零极点分布对离散系统特性的分析具有非常重要意义。
通过对系统函数零极点的分析,可以分析离散系统以下几个方面的特性:● 系统单位样值响应()h n 的时域特性; ●离散系统的稳定性;离散系统的频率特性;1.1、零极点图的绘制设离散系统的系统函数为()()()B z H z A z =则系统的零极点可用MA TLAB 的多项式求根函数roots()来实现,调用格式为:p=roots(A)其中A 为待根求多项式的系数构成的行矩阵,返回向量p 则是包含多项式所有根的列向量。
如多项式为231()48B z z z =++,则求该多项式根的MA TLAB 命令为为:A=[1 3/4 1/8]; P=roots(A)运行结果为: P =-0.5000-0.2500需注意的是,在求系统函数零极点时,系统函数可能有两种形式:一种是分子、分母多项式均按z 的降幂次序排列;另一种是分子、分母多项式均按1z -的升幂次序排列。
这两种方式在构造多项式系数向量时稍有不同。
(1)()H z 按z 的降幂次序排列:系数向量一定要由多项式最高次幂开始,一直到常数项,缺项要用0补齐;如34322()3221z zH z z z z z +=++++其分子、分母多项式系数向量分别为A=[1 0 2 0]、B=[1 3 2 2 1]。
(2)()H z 按1z -的升幂次序排列:分子和分母多项式系数向量的维数一定要相同,不足的要用0补齐,否则0z =的零点或极点就可能被漏掉。
如11212()11124z H z zz---+=++其分子、分母多项式系数向量分别为A=[1 2 0]、B=[1 1/2 1/4]。
用roots()求得()H z 的零极点后,就可以用plot()函数绘制出系统的零极点图。
下面是求系统零极点,并绘制其零极点图的MA TLAB 实用函数ljdt(),同时还绘制出了单位圆。
function ljdt(A,B)% The function to draw the pole-zero diagram for discrete systemp=roots(A); %求系统极点 q=roots(B); %求系统零点 p=p'; %将极点列向量转置为行向量q=q'; %将零点列向量转置为行向量 x=max(abs([p q 1])); %确定纵坐标范围 x=x+0.1; y=x;%确定横坐标范围clfhold onaxis([-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') %标注标题 hold off1.2、离散系统零极点分析(1)离散系统零极点分布与系统稳定性 离散系统稳定的条件为:时域条件:离散系统稳定的充要条件为()n h n ∞=-∞<∞∑,即系统单位样值响应绝对可和;Z 域条件:离散系统稳定的充要条件为系统函数()H z 的所有极点均位于Z 平面的单位圆内。
对于三阶以下的低阶系统,可以利用求根公式求出系统函数的极点,从而判断系统的稳定性,但对于高阶系统,手工求解则显得十分困难,这时可以利用MA TLAB 来实现。
实现方法是调用前述的函数ljdt()绘出系统的零极点图,然后根据极点的位置判断系统的稳定性。
2、离散系统频率特性分析;2.1、离散系统的频率响应()j H eω对于某因果稳定离散系统,如果激励序列为正弦序列:0()sin()()x n A n u n ω=则系统的稳态响应为:()()sin[()]()j ss y n A H en u n ωωϕω=+定义离散系统的频率响应为()()()()j j j j z eH eH z H eeωωωϕω===其中,()j H e ω——称为离散系统的幅频特性; ()ϕω——称为离散系统的相频特性;()j H eω是以2π为周期的周期函数,只要分析()j H e ω在ωπ≤范围内的情况,便可分析出系统的整个频率特性。
2.2、用MA TLAB 实现离散系统的频率特性分析方法 (1)直接法设某因果稳定系统的系统函数()H z ,则系统的频响特性为:()()()()j j j j z eH eH z H eeωωωϕω===MA TLAB 提供了专门用于求离散系统频响特性的函数freqz(),调用freqz()的格式有以下两种: ●[H,w]=freqz(B,A,N)B 和A 分别为离散系统的系统函数分子、分母多项式的系数向量,N 为正整数,返回量H 则包含了离散系统频响()j H eω在0~π范围内N 个频率等分点的值,向量w 则包含0~π范围内N 个频率等分点。
调用中若N 默认,默认值为512。
● [H,w]=freqz(B,A,N,’whole ’) 该调用格式将计算离散系统在0~2π范围内N 个频率等分点的频率响应()j H eω的值。
因此,可以先调用freqz()函数计算系统的频率响应,然后利用abs()和angle()函数及plot()函数,即可绘制出系统在0~π或0~2π范围内的频响曲线。
(2)几何矢量法利用几何矢量求解示意图如图8-4所示。
jj j j j eq B eψω-= ij j i i ep A eθω-=有:1212()1()()1()()M N Mj jj j j j Nj i i BeH eH eeA eψψψωωϕωθθθ+++=+++===∏∏则系统的幅频特性和相频特性分别为:11()Mjj j Nii BH eA ω===∏∏(8-7) 11()MNjij i ϕωψθ===-∑∑ (8-8)根据式(8-7)和(8-8),利用MA TLAB 来求解频率响应的过程如下: ● 根据系统函数()H z 定义分子、分母多项式系数向量B 和A ; ● 调用前述的ljdt()函数求出()H z 的零极点,并绘出零极点图; ● 定义Z 平面单位圆上的k 个频率分点;● 求出()H z 所有的零点和极点到这些等分点的距离; ● 求出()H z 所有的零点和极点到这些等分点矢量的相角; ● 根据式(8-7)和(8-8)求出系统的()j H e ω和()ϕω; ●绘制指定范围内系统的幅频曲线和相频曲线;下面是实现上述过程的实用函数dplxy()。
有四个参数:k 为用户定义的频率等分点数目;B 和A 分别为系统函数分子、分母多项式系数向量;r 为程序绘制的频率特性曲线的频率范围(0~r π⨯)。
function dplxy(k,r,A,B)%The function to draw the frequency response of discrete systemp=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); %求出极点到单位圆上各点的向量的模 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('相位')三、实验方法和手段:集中授课,实验现场进行指导 四、实验组织运行要求:集中组织,单人单机 五、实验条件: 计算机、MATLAB 软件 六、实验步骤:1、打开计算机,双击桌面MATLAB 软件图标,进入MATLAB 工作环境;2、在命令窗口(Command Window )输入程序,按回车键执行。
3、按实验内容逐一编成,将运行结果存入 WORD 文档。
七、实验内容:1、离散系统零极点图及零极点分析;例1:绘制如下系统函数的零极点 (1)32323510()375z z z H z z z z -+=-+-(2)11210.5()31148z H z zz----=++解:MA TLAB 命令如下 (1) A=[1 -3 7 -5];B=[3 -5 10 0];ljdt(A,B) 运行结果:(2) A=[1 3/4 1/8];B=[1 -0.5 0]; ljdt(A,B)2、离散系统频率特性分析;例2:绘制如下系统的频响曲线0.5()z H z z-=解:MA TLAB 命令如下: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('离散系统相频特性曲线') 运行结果:例3:已知某离散系统的系统函数为:115/4(1)()11/4z H z z---=-绘出该系统的零极点图及频响特性。