线性控制系统的计算机辅助分析.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《线性控制系统的计算机辅助分析.ppt》由会员分享,可在线阅读,更多相关《线性控制系统的计算机辅助分析.ppt(110页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第4 4章章 线性控制系统的线性控制系统的计算机辅助设计计算机辅助设计1早期的控制系统分析过程复杂而耗时,如想得到一个系统的冲激响应曲线,首先需要编写一个求解微分方程的子程序,然后将已经获得的系统模型输入计算机,通过计算机的运算获得冲激响应的响应数据,然后再编写一个绘图程序,将数据绘制成可供工程分析的响应曲线。MATLAB控制系统工具箱和SIMULINK辅助环境的出现,给控制系统分析带来了福音。控制系统的分析包括系统的稳定性分析、时域分析、频域分析及根轨迹分析。24.1 线性系统的定性分析对于连续时间系统,4.1.1 线性系统稳定性分析要使x(t)有界,则要eAt有界,即A矩阵的所有特征根均
2、有负实部。故如果闭环极点全部在S平面左半平面,则系统是稳定。在有界信号u(t)的激励下,其状态变量的解析解为3对于离散时间系统,其状态变量的解析解为要使x(kT)有界,则要Fk有界,即F矩阵的所有特征根的模均小于1。故如果系统全部极点都位于Z平面的单位圆内,则系统是稳定的。若连续时间系统的全部零极点都位于S左半平面;或若离散时间系统的全部零极点都位于Z平面单位圆内,则系统是最小相位系统。MATLAB中,可用eig()函数直接求取系统的特征根,也可用pzmap()函数直接绘制系统的零极点。4例1:系统传函为试判断其稳定性。num=18 514 5982 36380 122664 222088 1
3、85760 40320;den=1 36 546 4536 22449 67284 118124 109584 40320;G=tf(num,den);eig(G)ans=-8.0000 -7.0000 -6.0000 -5.0000 -4.0000 -3.0000 -2.0000 -1.0000可见,系统是稳定的。5例2:离散系统受控对象的传函为控制器模型为 试分析单位负反馈下的闭环系统稳定性。z=tf(z,0.1);G=0.00147635*(z2+3.4040929*z+0.71390672)/(z-1)*(z-0.535261429)*(z-0.951229425);Gc=1.5*(z
4、-0.5)/(z+0.8);GG=feedback(G*Gc,1);eig(GG)abs(eig(GG)ans=-0.7991 0.7991 0.9745+0.0782i 0.9776 0.9745-0.0782i 0.9776 0.5344 0.5344 6pzmap(GG)74.1.2 线性系统的线性相似变换 相似变换是对方阵进行的一种运算,它把A变成P-1AP,而可逆矩阵P称为进行这一变换的相似变换矩阵。这种变换的重要意义在于简化对矩阵的各种运算,其方法是先通过相似变换,将矩阵变成与之等价的对角矩阵,再对对角矩阵进行运算,从而将比较复杂的矩阵的运算转化为比较简单的对角矩阵的运算。MATL
5、AB控制系统工具箱提供了ss2ss()函数完成状态方程模型的相似变换:G1=ss2ss(G,T)其中,G为原始的状态方程模型,T为变换矩阵。8例3:9例4:设系统的状态方程为实际应用中,若不要求将A变换为对角阵,则P也可用任意非奇异矩阵。变换矩阵P为反对角矩阵,反对角线上的元素为1,其余元素为0。另:首先介绍fliplr()函数,其变换矩阵行元素的左右顺序。如A=1 2 3 4 5 6 7 8 9 10 11 12fliplr(A)=4 3 2 1 8 7 6 5 12 11 10 910A=0 1 0 0;0 0 1 0;0 0 0 1;-24-50-35-10;G1=ss(A,0;0;0;
6、1,24 7 1 0,0);P=fliplr(eye(4);G2=ss2ss(G1,P)a=x1 x2 x3 x4 x1 -10 -35 -50 -24 x2 1 0 0 0 x3 0 1 0 0 x4 0 0 1 0b=u1 x1 1 x2 0 x3 0 x4 0c=x1 x2 x3 x4 y1 0 1 7 24d=u1 y1 0114.1.3 线性系统的可控性分析 现代控制理论用状态方程和输出方程描述系统,输出和输入构成系统的外部变量,而状态为系统的内部变量,系统就好比是一块集成电路芯片,内部结构可能十分复杂,物理量很多,而外部只有少数几个引脚,对电路内部物理量的控制和观测都只能通过这为数
7、不多的几个引脚进行。这就存在着系统内的所有状态是否都受输入控制和所有状态是否都可以从输出反映出来的问题。如果系统所有状态变量的运动都可以通过有限的控制点的输入来使其由任意的初态达到任意设定的终态,则称系统是可控的,更确切的说是状态可控的;如果系统中所有的状态都是可控的,则称该系统为完全可控的系统。否则,就称系统不可控。121.线性系统的可控性判定可通过构造可控性判定矩阵若Tc为满秩矩阵,则系统为完全可控的。如果该矩阵不是满秩矩阵,则它的秩为系统的可控状态的个数。可控性判定矩阵由Tc=ctrb(A,B)函数构造。rank()函数可求出矩阵的秩。例5:试判断系统的可控性。13若系统的Gram矩阵是
8、非奇异矩阵,则该系统是完全可控的。Gram矩阵为Gram矩阵是以下Lyapunov方程的解求解该Lyapunov方程可用,lyap(A,B*B)若调用函数不能求出方程的解,则该系统不完全可控。控制系统的可控Gram矩阵还可以由 Gc=gram(G,c)直接求出。14例6:已知采样周期为0.1s,求系统可控Gram矩阵。num=0.1324-0.5743 0.3879-0.0889;den=1-3.233 3.9869-2.2209 0.4723;G=tf(num,den,Ts,0.1);Lc=gram(ss(G),c);152.可控性阶梯分解对于不完全可控的系统,可对其进行可控性阶梯分解,即构
9、造变换矩阵T,将状态方程变换为这样即将系统的可控子空间,与不可控子空间分离出来。Ac,Bc,Cc,Tc=ctrbf(A,B,C)函数,可将系统变换为可控性阶梯模型,其中,Tc为相似变换矩阵。例7:请将例4中的系统进行可控性阶梯分解。A=;B=;C=;Ac,Bc,Cc,Tc=ctrbf(A,B,C)163.可控标准型及其MATLAB实现 若系统完全可控,则可利用矩阵Tc将其变换为第一可控规范型 ,其系数阵之间满足关系其中,17例8:已知系统 的系数阵为试判断其可控性。若完全可控,则求其第一可控规范型。A=2 0 0;0 4 1;0 0 4;B=1;0;1;C=1 1 0;Tc=ctrb(A,B)
10、;rank(Tc)Ac=inv(Tc)*A*Tc;Bc=inv(Tc)*B;Cc=C*Tc;Ac=0 0 32 1 0 -32 0 1 10Bc=1 0 0Cc=1 3 12结果184.1.4 线性系统的可观性分析 如果系统所有的状态变量任意形式的运动均可由有限测量点的输出完全确定出来,则称系统可观测;如果系统中所有的状态都是可观测的,则称该系统为完全可观测的系统。反之,则称系统不可观测。1.线性系统的可观测性判定可通过构造可观测性判定矩阵若To为满秩矩阵,则系统为完全可观测的。可观测性判定矩阵由To=obsv(A,C)函数构造。rank()函数可求出矩阵的秩。19A=4 4 4;-11-12
11、-12;13 14 13;B=1;-1;0;C=1 1 1;To=obsv(A,C)rank(To)例9:已知系统的系数阵为试判断它的可观性。To=1 1 1 6 6 5 23 22 17rank(To)=3故系统可观。结果202.可观标准型及其MATLAB实现 若系统完全可观,则可利用矩阵P将其变换为第一可观规范型,其系数阵之间满足关系其中,21例:上例中,求其第一可控规范型。P=inv(To);Ao=inv(P)*A*P;Bo=inv(P)*B;Co=C*P;Ao=-0.0000 1.0000 0.0000 0.0000 -0.0000 1.0000 4.0000 -8.0000 5.00
12、00Bo=0.0000 0.0000 1.0000Co=1.0000 0.0000 -0.0000结果223.系统的可观性分解 对于状态不完全可观的系统,同样可对其进行可观性分解。在MATLAB中可调用obsvf()函数。AO,BO,CO,T,K=obsvf(A,B,C)其中,T为相似变换阵,K为可观子阵的阶次向量。对系统进行可观性分解后得到相应可观子系统其中,(Ao,Co)为可观子对。23例10:试确定系统的可观性并进行可观性分解。A=-2 1;1-2;B=1;0;C=1-1;n=length(A);Q=C;C*A;r=rank(Q);if r=n disp(system is observ
13、able.)Qelse disp(system is unobservable.)disp(rank)rend system is unobservable.rankr=1结果24AO,BO,CO,T,K=obsvf(A,B,C)disp(observable submatrix)AO=AO(2,2)CO=CO(1,2)AO=-1.0000 0 -0.0000 -3.0000BO=0.7071 -0.7071CO=0 -1.4142T=0.7071 0.7071 -0.7071 0.7071K=1 0observable submatrixAO=CO=-3.0000 -1.4142结果:254
14、.2 控制系统的时域分析 系统的过渡过程性能(如上升时间、调节时间、超调量及稳态误差)常用典型输入作用下的时间响应来描述。响应是指零初始值条件下某种典型的输入函数作用下对象的响应,其响应是时间t的函数,故称为时域响应。控制系统常用的输入函数为单位阶跃函数和脉冲激励函数(即冲激函数)。1.单位阶跃函数1(t)X(t)1t262.单位冲激函数 t0X(t)t 斜坡函数B=1时称为单位斜坡函数。其拉氏变换后的像函数为:274.2.1 线性定常系统状态方程的解x(0)=x0是系统的初始状态。问题:对给定的控制输入和初始状态,如何确定任意时刻的系统状态和输出;状态的变化行为。首先考虑两边同时左乘e-At
15、,得根据矩阵微积分知识,上式进一步有:(4.1)(4.2)(4.3)(4.4)28两边同时在t0,t区间积分,得两边同时左乘eAt,并整理得即:当初始时刻t0=0时,上式可变为由此可知,非齐次状态方程的解由两部分组成,第一部分是在初始状态X(t0)作用下的自由运动,第二部分为在系统输入U(t)的作用下的强制运动。(4.5)(4.6)(4.8)(4.9)(4.10)29当U(t)为几种典型的控制输入时,则有如下形式。1.冲激函数输入,即即:(4.11)302.阶跃信号输入,即3.斜坡信号输入,即U(t)=kt,可以求得:(4.12)(4.13)31例11:求以下系统在单位阶跃函数作用下的状态响应
16、由或得则(4.14)(4.15)32grid;t=0:0.1:10;x1=0.5-exp(-t)+0.5*exp(-2*t);x2=exp(-t)-exp(-2*t);plot(t,x1,x,t,x2,*);xlabel(时间轴)ylabel(x代表x1,-*代表x2)系统状态轨迹图33另:当输入信号为可将系统原始的状态方程转化为其中,(4.16)(4.17)(4.18)34则,系统状态方程的解析解为以下为MATLAB编写的ss_augment(),用来求取系统的增广状态方程模型。其中,cc=c0,c1,ck,dd=d1,d2,d3,d4(4.19)(4.20)(4.21)35function
17、 Ga,Xa=ss_augment(G,cc,dd,X)G=ss(G);Aa=G.a;Ca=G.c;Xa=X;Ba=G.b;D=G.d;if(length(dd)0&sum(abs(dd)1e-5),if(abs(dd(4)1e-5),Aa=Aa dd(2)*Ba,dd(3)*Ba;.zeros(2,length(Aa),dd(1),-dd(4);dd(4),dd(1);Ca=Ca dd(2)*D dd(3)*D;Xa=Xa;1;0;Ba=Ba;0;0;else Aa=Aa dd(2)*B;zeros(1,length(Aa)dd(1);Ca=Ca dd(2)*D;Xa=Xa;1;Ba=B;0
18、;endend36if(length(cc)0&sum(abs(cc)1e-5),M=length(cc);Aa=Aa Ba zeros(length(Aa),M-1);zeros(M-1,length(Aa)+1)eye(M-1);zeros(1,length(Aa)+M);Ca=Ca D zeros(1,M-1);Xa=Xa;cc(1);ii=1;for i=2:M ii=ii*i;%阶乘运算 Xa(length(Aa)+i)=cc(i)*ii;end;endGa=ss(Aa,zeros(size(Ca),Ca,D);37例12:系统的状态方程模型为cc=2;dd=-4 0 2 3;A=-
19、5 2 0 0;0-4 0 0;-3 2-4-1;-3 2 0-4;x0=1;2;0;1;B=1;2;3;4;C=1 1 1 1;D=0;G=ss(A,B,C,D);Ga,xx0=ss_augment(G,cc,dd,x0)其中状态变量初值xT(0)=1,2,0,1。假设系统的输入信号u(t)=2+2e-4tsin(3t),则由ss_augment()得系统的增广状态方程则由下面语句可直接获得生成信号的解析解syms t;y=Ga.c*expm(Ga.a*t)*xx0;latex(y)384.2.2 基于部分分式展开方法求解 控制系统常用到并联系统,这时就要对系统函数进行分解,使其表现为一些基
20、本控制单元的和的形式。如若系统输出的Laplace式子的分母多项式的根pi都是不重复的,则若其中的j个根为m重根pj,则该部分的Laplace反变换为(4.22)(4.23)39部分分式展开:num=2,0,9,1;den=1,1,4,4;r,p,k=residue(num,den)p=0.0000+2.0000i -1.0000k=2r=0.0000+0.2500i -2.0000结果表达式:40 MATLAB环境中,函数r,p,k=residue(num,den)对两个多项式进行部分展开,以及把传函分解为微分单元的形式。向量num和den是按s的降幂排列的多项式系数。部分分式展开后,k为展
21、开余项。例13:考虑系统的传函为系统的输入信号为单位阶跃信号,则系统的输出信号为将输出信号用部分分式展开,则有41 num=1 7 24 24;den=1 10 35 50 24 0;r,p,k=residue(num,den);r,pans=-1.0000 -4.0000 2.0000 -3.0000 -1.0000 -2.0000 -1.0000 -1.0000 1.0000 0故,由上面结果写出系统输入表达式为此例为系统传函只含有实数极点的情况,下面的例子中系统输出还含有复数极点。42例14:考虑系统的传函为 num=1 3;den=1 2 11 18 18 0;r,p,k=residu
22、e(num,den);r,pans=0.0020+0.0255i 0.0000+3.0000i 0.0020-0.0255i 0.0000-3.0000i -0.0853+0.0088i -1.0000+1.0000i -0.0853-0.0088i -1.0000-1.0000i 0.1667 0 故43若想获得输出的物理表达形式,则可借助函数pfrac()function R,P,K=pfrac(num,den)R,P,K=residue(num,den);for i=1:length(R),if abs(imag(P(i)eps a=real(R(i);b=imag(R(i);R(i)=
23、-2*sqrt(a2+b2);R(i+1)=-atan2(a,b);elseif abs(imag(P(i)eps R(i)=real(R(i);endend其中,44 离散系统的解析解离散系统的输出信号为则若考虑采样周期T的因素,则系统输入信号的解析解为(4.24)(4.25)(4.26)45D=conv(1-1/3,conv(1-1/4,conv(1 1/5,1-1);%分母N=0 0 conv(1-1/2,1 0);%分子前面要补足零N=N(end:-1:1);D=D(end:-1:1);%将z变换式逆序排列R,P,K=residue(N,D);R,P,-R./P例15:离散系统的传函为
24、假设系统的输入为阶跃信号,其z变换为z/(z-1),则其输出可有下列语句计算ans=12.1528 -5.0000 2.4306 35.5556 4.0000 -8.8889 -16.8750 3.0000 5.6250 -0.8333 1.0000 0.8333可写出46下例为系统的输出含有重根的情况。例16:离散系统的传函为则其阶跃响应的解析解为D=conv(1-1/2,conv(1-1/2,conv(1-1/2,.conv(1,-1/3,1-1);N=0 0 0 5-2 0;R,P,K=residue(N(end:-1:1),D(end:-1:1);R,Pans=324.0000 3.0
25、000-240.0000 2.0000 -96.0000 2.0000 192.0000 2.0000 -36.0000 1.0000于是有47 时间延迟系统的解析解 对于带有时间延迟的系统G(s)e-Ls和H(z)z-k,若将其直接进行部分分式展开比较困难。可先不考虑时间延迟,得出系统的解析解y(t)和y(n),然后分别用t-L或n-k代替得出的解析解中的t或n,即可得到时间延迟系统的解析解。例17:带有时间延迟的系统将上例的解的n替换为n-5,即可484.2.3 二阶系统的阶跃响应及阶跃响应指标 假设系统的开环模型为 ,由单位负反馈构造出的闭环系统模型为于是,二阶系统的阶跃响应y(t)为其
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 线性 控制系统 计算机辅助 分析
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内