1线性系统结构分析与分解及标准型Word格式文档下载.docx
- 文档编号:17370359
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:25
- 大小:38.64KB
1线性系统结构分析与分解及标准型Word格式文档下载.docx
《1线性系统结构分析与分解及标准型Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《1线性系统结构分析与分解及标准型Word格式文档下载.docx(25页珍藏版)》请在冰豆网上搜索。
[A,B,C,D]=zp2ss(z,p,k)
[z,p,k]=ss2zp(A,B,C,D,iu)
zp2ss:
zpk模型状态空间模型;
ss2zp状态空间模型zpk模型
3、线性定常系统的可控制与可观性及结构分解
关于可控制与可观性及结构分解的理论内容,请看教材学习。
(1)可控性和可观性----一般采用能控性/能观性矩阵类别(适用于离散或连续的情况)
状态可控性和输出可控性子函数如下:
functionstr=pdctrb(A,B)
Qc=ctrb(A,B);
r=rank(Qc);
l=length(A);
ifr==l
str=’系统是状态完全可控的!
’
elsestr=’系统不是状态完全可控的!
end
实际上,rank(Qc)为系统的状态可控性指数,即系统中可控的状态的数目。
functionstr=pdctrbo(A,B)%输出可控性
Co=ctrb(A,B);
m=size(C,1);
%返回行数
Qyc=[C*Co,D];
Tm=rank(Qyc);
ifm==Tm
str=’系统输出是完全可控的!
elsestr=’系统输出不是完全可控的!
实际上,rank(Qyc)为系统的输出可控性指数,即系统中可控的输出的数目。
状态可观性判别子函数代码如下:
functionstr=pdobsv(A,C)
Qo=obsv(A,C);
r=rank(Qo);
l=size(A,1);
str=’系统是状态完全可观的!
elsestr=’系统不是状态完全可观的!
实际上,rank(Qo)为系统的状态可观性指数,即系统中可观测的状态的数目。
有了上述子函数,在Matlab中可以直接调用这些子函数来判断可控性和可观性。
(2)可控性和可观性Gram矩阵可由下面的函数求得
W=gram(sys,type)----sys是系统的状态空间模型,type可以是’c’或’o’。
通过判断W的正定性判定其可控性或可观性。
由于从W的数学表达式上看,Wc和Wo是对称的半正定矩阵,它们分别满足下面的Lyapunov方程(这种方程在稳定性分析中还将提到)
、
所以系统必须稳定才能得到Gram矩阵。
Wc矩阵中的值对应于输入信号对相应状态的贡献:
第i个元素越大,则说明输入信号对第i个输入状态的贡献越大。
Wo矩阵中的值对应于每个状态对系统输出的贡献:
第i个元素越大,则说明第i状态对系统输出的贡献越大。
(3)结构分解
a.在matlab中调用ctrbf()函数对系统按能控性分解
[Abar,Bbar,Cbar,T,K]=ctrbf(A,B,C)
[Abar,Bbar,Cbar,T,K]=ctrbf(A,B,C,TOL)
K是可控的状态个数,TOL为误差,这里的变换是这样令的:
x=T-1xbar,所以有Abar=TAT-1,Bbar=TB,Cbar=CT-1。
显然这与教材中的令法是不同的,且T的选取方式也不同,得到的分解形式也不同,要加以区别。
这里的能观性分解形式为
:
,
b.在matlab中调用ctrbf()函数对系统按能观性分解
[Abar,Bbar,Cbar,T,K]=obsvf(A,B,C)
[Abar,Bbar,Cbar,T,K]=obsvf(A,B,C,TOL)
K是可观的状态个数,TOL为误差,这里的变换是这样令的:
c.按能控、能观性分解----Kalman分解
Kalman分解是先按能控性进行分解,然后对两部分状态再按能观性进行分解,最后得到能控能观部分、能控不能观部分、不能控能观部分、不能控不能观部分。
在Matlab中没有提供对应的函数对系统进行直接的Kalman分解,这里我们给出一个函数实现分解:
function[Gk,T,K]=kalmdec(G)
G=ss(G);
A=G.a;
B=G.b;
C=G.c;
[Ac,Bc,Cc,Tc,Kc]=ctrbf(A,B,C);
nc=rank(ctrb(A,B));
n=length(A);
ic=n-nc+1:
n;
[Ao1,Bo1,Co1,To1,Ko1]=obsv(Ac(ic,ic),Bc(ic),Cc(ic));
ifnc<
n
inc=1:
n-nc;
[Ao2,Bo2,Co2,To2,Ko2]=obsvf(Ac(inc,inc),Bc(inc),Cc(inc));
[m1,n1]=size(To1);
[m2,n2]=size(To2);
To=[To2,zeros(m2,n1);
zeros(m1,n2),To1];
T=To*Tc;
n1=rank(obsv(Ac(ic,ic),Cc(ic)));
n2=rank(obsv(Ac(inc,inc),Cc(inc)));
K=[zeros(1,n-nc-n2),ones(1,n2),…,2*ones(1,nc-n1),3*ones(1,n1)];
Ak=T*A*inv(T);
Bk=T*B;
Ck=C*inv(T);
Gk=ss(Ak,Bk,Ck,G.d);
此函数分解的形式与教材中的是顺序不一样(变换的令法也不一样):
这里是不能控不能观、不能控能观、能控不能观、能控能观。
这一点要注意。
4、定常线性系统的标准型(转换限于SISO系统)
(1)Jordan标准型
化成Jordan标准形是一种并联分解的策略,即将传递函数展开成部分分式和的形式。
这种分解的原理在课堂上已讲的很清楚,请复习相关内容。
这里就如何用Matlab求取此标准型做说明。
a.互异根的情况下,代码可以采用如下的形式,出可以有采用Jordan指令:
num=[…];
den=[…];
G=tf[num,den];
[r,p,k]=residue(num,den);
A=diag(p);
B=ones(length(r),1);
C=r’;
%为了得到更准确的结果,可以采用C=(rat(r))’得到有理分式的形式
D=k;
Gss=SS(A,B,C,D)
b.有重根的情况
我们直接可以采用Jordan指令。
Gtf=tf(num,den)
Gs=ss(G)
[VJ]=jordan(Gs.a)%V是特征向量,由特征向量组成非奇异变换矩阵,x=Tz,T=V
Gss=ss2ss(Gs,inv(V))%Jordan型系统
(2)能控标准型-限于SISO系统
若系统能控,则可转换成能控标准I型和II型。
转换成能控标准II型代码:
A=[…];
B=[…];
C=[…];
D=[…];
Gs=ss(A,B,C,D);
T=ctrb(Gs.a,Gs.b)%x=Tz,T=[B,AB,A2B,…,An-1B],能控标准II型
Abar=inv(T)*A*T;
Bar=inv(T)*B;
Cbar=C*T,Dar=D;
Gss=ss(Abar,Bbar,Cbar,Dbar)
转换成能控标准I型代码:
Tt=ctrb(Gs.a,Gs.b);
Ttt=fliplr(Tt);
cp=poly(Gs.a);
n=length(Gs.a);
Tea=eye(n)
fori=2:
forj=1:
(n-1)
ifi>
j
Tea(i,j)=cp(i-(j-1));
T=Ttt*Tea;
(3)能观标准型-限于SISO系统
若系统能观,则可转换成能观标准I型和II型。
转换成能观标准I型代码:
Tinv=obsv(Gs.a,Gs.b);
T=inv(Tinv);
转换成能观标准II型代码
Tt=obsv(Gs.a,Gs.c);
Ttt==flipud(Tt);
Tea=Tea’;
T=Tea*Ttt;
实验内容:
1、已知线性系统
(1)判断其状态可控性、可观性和传递函数的关系,并加以说明分析。
(2)对系统分别按能控性分解、能观性分解以及能控能观性分解。
2、在Matlab中建立并运行如下的.m代码,回答下面的问题。
num=[123];
den=conv([1625],[11235]);
G=tf(num,den)
[VJ]=jordan(Gs.a)%求特征向量和Gs.a的Jordan标准型
Gss=ss2ss(Gs,inv(V))%Jordan型系统
Gsm=canon(Gs,'
model'
)%模态型系统
Gsf=canon(Gs,'
companion'
)%能控标准II型系统
(1)给出无分号行的运行结果,并比较几个状态方程。
(2)在什么情况下,cannon得到的是对角型系统?
请举例说明。
(3)将原理中给出的能控标准与能观标准型转换代码写成子函数的形式,并通过调用你所编写的子函数将.m文件中给出的模型变换成能控标准I、II型和能观标准I、II型,并从结果说明能控与能观标准型间关系。
要求上述工作的在一个MATLAB程序.m文件中完成。
并给出实验结果和相关说明。
实验报告要求简要的说明实验原理(少于100字);
简明扼要的总结实验内容(少于100字);
编制.mdl和.m文件,并给出运行结果。
报告格式请按实验报告模板编写。
1、
(1)
functionstr=pdctrb(A,B)
A=[-6-0.6250.75;
800;
020];
B=[1;
0;
0];
str='
系统状态是完全可控的!
'
;
elsestr='
系统不是状态完全可控的!
>
pdctrb
ans=
functionstr=pdctrbo(A,B)
C=[1-0.250.0625];
Qyc=[C*Co,1];
系统输出是完全可控的!
系统不是输出完全可控的!
pdctrbo
functionstr=pdobsv(A,C)
Qo=obsv(A,C);
l=size(A,1);
系统状态是完全可观的!
系统不是状态完全可观的!
pdobsv
与传递函数的关系:
D=[0];
G=ss(A,B,C,D);
Gs=tf(G)
Gs=
s^2-2s+1
----------------------
s^3+6s^2+5s-12
num=[1-21];
den=[165-12];
[z,p,k]=tf2zp(num,den);
Gss=zpk(z,p,k)
Gss=
(s-1)^2
-----------------
(s+4)(s+3)(s-1)
系统能控能观的充要条件是传递函数中没有零极点对消现象。
(2)
按能控性分解:
A=[-6-0.6250.75;
[Abar,BbarCbar,T,K]=ctrbf(A,B,C)
Abar=
0-2.00000
008.0000
-0.7500-0.6250-6.0000
Bbar=
0
1
Cbar=
-0.0625-0.25001.0000
T=
00-1
010
100
K=
111
按能观性分解:
[Abar,BbarCbar,T,K]=obsvf(A,B,C)
1.0000-2.27722.7134
-0.00000.3407-5.5238
0.00002.6251-7.3407
0.0558
-0.2432
0.9684
0.0000-0.00001.0327
0.05580.44650.8930
-0.2432-0.86140.4459
0.9684-0.24210.0605
110
按能控能观性分解:
程序:
function[Gk,T,K]=kalmdec(G)
G=ss(A,B,C,D)
D=G.d;
[Ao1,Bo1,Co1,To1,Ko1]=obsvf(Ac(ic,ic),Bc(ic),Cc(ic));
%ifnc<
inc=1:
[Ao2,Bo2,Co2,To2,Ko2]=obsvf(Ac(inc,inc),Bc(inc),Cc(inc));
%end
n2=rank(obsv(Ac(inc,inc),Cc(inc)));
K=[zeros(1,n-nc-n2),ones(1,n2),2*ones(1,nc-n1),3*ones(1,n1)];
结果:
kalmdec
Gk=
a=
x1x2x3
x11-2.2772.713
x2-5.551e-160.3407-5.524
x3-1.11e-162.625-7.341
b=
u1
x10.05581
x2-0.2432
x30.9684
c=
y18.327e-172.776e-171.033
d=
y10
Continuous-timestate-spacemodel.
2、
(1)
[VJ]=jordan(Gs.a)
Gss=ss2ss(Gs,inv(V))
)
运行Untitled6.m
Untitled6
G=
s^2+2s+3
------------------------------------
s^4+18s^3+132s^2+510s+875
Continuous-timetransferfunction.
x1x2x3x4
x1-18-8.25-3.984-3.418
x216000
x30800
x40020
x10.25
x20
x30
x40
y100.250.06250.04688
V=
-0.4883-1.33980.4570-0.1719i0.4570+0.1719i
1.56253.0625-0.4375+1.5000i-0.4375-1.5000i
-2.5000-3.5000-1.5000-2.0000i-1.5000+2.0000i
1.00001.00001.00001.0000
J=
-5.0000000
0-7.000000
00-3.0000-4.0000i0
000-3.0000+4.0000i
x1-5+1.04e-15i-2.13e-14+2.19e-15i2.43e-14+2.27e-15i
x2-1.78e-15-4.62e-16i-7-1.06e-15i-5.7e-15+2.51e-15i
x3-1.38e-15+1.78e-15i4.01e-15+2.22e-15i-3-4i
x4-1.73e-15+4.44e-16i7.54e-15+4.44e-16i-4.88e-15+1.11e-15i
x4
x12.01e-14-4.83e-15i
x2-4.96e-15-2.82e-15i
x30+1.78e-15i
x4-3+4i
x11.6-2.22e-16i
x2-1+1.67e-16i
x3-0.3-0.1i
x4-0.3+0.1i
y10.281-1.77e-16i0.594-2.78e-16i-0.156+0.25i-0.156-0.25i
Gsm=
x1-3400
x2-4-300
x300-70
x4000-5
x10.9492
x2-0.1931
x34.942
x45.042
y10.16990.09054-0.12010.08925
Gsf=
x1000-875
x2100-510
x3010-132
x4001-18
x11
y101-16159
(2)当系统的|sI-A|=0得到的特征多项式的解无重根时,则cannon得到的是对角型系统。
例如:
A=[010;
001;
-6-11-6];
B=[0;
1];
C=[1,0,0];
E=eig(A)
sys=ss(A,B,C,D);
[Gt,P]=canon(sys,'
E=
-1.0000
-2.0000
-3.0000
Gt=
x1-30
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 线性 系统 结构 分析 分解 标准型