现代控制理论实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
( 2016—2017年度第二学期)
名称:《现代控制理论基础》题目:状态空间模型分析
院系:控制科学与工程学院班级:___
学号:__
学生姓名:______
指导教师:_______
成绩:
日期: 2017年 4月 15日
线控实验报告
一、实验目的:
l.加强对现代控制理论相关知识的理解;
2。
掌握用 matlab 进行系统李雅普诺夫稳定性分析、能控能观性分析;
二、实验内容 第一题:已知某系统的传递函数为231)(2++=
S S s G
求解下列问题:
(1)用matlab 表示系统传递函数
num=[1];
den=[1 3 2];
sys=tf (num,den );
sys1=zpk([],[-1 —2],1);
结果:
sys =
1
—-—-——————--—
s^2 + 3 s + 2
sys1 =
1
—-—————-———
(s+1) (s+2)
(2)求该系统状态空间表达式:
[A1,B1,C1,D1]=tf2ss (num,den);
A =
-3 -2
1 0
B =
1
C =
0 1
第二题:已知某系统的状态空间表达式为:()10,01,0123=⎪⎪⎭
⎫ ⎝⎛=⎪⎪⎭⎫ ⎝⎛--=C B A :求解下列问题:
(1)求该系统的传递函数矩阵:
(2)该系统的能观性和能空性:
(3)求该系统的对角标准型:
(4)求该系统能控标准型:
(5)求该系统能观标准型:
(6)求该系统的单位阶跃状态响应以及零输入响应:
解题过程:
程序:A=[-3 —2;1 0];B=[1 0]’;C=[0 1];D=0;
[num,den]=ss2tf (A ,B ,C,D);
co=ctrb (A ,B );
t1=rank(co );
ob=obsv(A,C);
t2=rank(ob );
[At ,Bt ,Ct ,Dt ,T]=canon(A,B,C ,D ,’modal');
[Ac,Bc,Cc,Dc,Tc]=canon (A,B ,C ,D ,'companion');
Ao=Ac ’;
Bo=Cc';
Co=Bc ’;
结果:
(1)num =
0 0 1
den =
1 3 2
(2)能控判别矩阵为:
co =
1 -3
0 1
能控判别矩阵的秩为:
t1 =
2
故系统能控。
(3)能观判别矩阵为:
ob =
0 1
1 0
能观判别矩阵的秩为:
t2 =
2
故该系统能观.
(4)该系统对角标准型为:At =
-2 0
0 —1
Bt =
—1.4142
-1。
1180
Ct =
0。
7071 -0.8944
(5)该系统能观标准型为: Ao =
0 —2
1 —3
Bo =
1
Co =
0 1
(6)该系统能控标准型为: Ac =
0 1
-2 —3
Bc =
1
Cc =
1 0
(7)系统单位阶跃状态响应; G=ss(A1,B1,C1,D1);[y,t,x]=step(G);
figure(1)
plot(t,x);
(8)零输入响应:
x0=[0 1];
[y,t,x]=initial(G,x0);figure(2)
plot(t,x)
第三题:已知某系统的状态空间模型各矩阵为:
()2-10,011,3-103-011-00=⎪⎪⎪⎭
⎫ ⎝⎛=⎪⎪⎪⎭⎫ ⎝⎛=C B A ,求下列问题:
(1)按能空性进行结构分解:
(2)按能观性进行结构分解:
clear
A=[0 0 —1;1 0 -3;0 1 -3];
B=[1 1 0]';
C=[0 1 —2];
tc=rank (ctrb (A,B ));
to=rank(obsv(A ,C));
[A1,B1,C1,t1,k1]=ctrbf(A ,B,C );
[A2,B2,C2,t2,k2]=ctrbf (A ,B ,C );
结果:
能控判别矩阵秩为:
tc =
2
可见,能空性矩阵不满秩,系统不完全能控。
A1 =
—1。
0000 -0。
0000 -0.0000
2.1213 -2.5000 0.8660
1。
2247 —2。
5981 0.5000
B1 =
0。
0000
0.0000
1.4142
C1 =
1。
7321 —1。
2247 0.7071
t1 =
—0.5774 0.5774 -0.5774
-0.4082 0.4082 0。
8165
0.7071 0.7071 0
k1 =
1 1 0
能观性判别矩阵秩为:
to =
2
可见,能观性判别矩阵不满秩,故系统不完全能观。
A2 =
-1。
0000 1。
3416 3。
8341
0.0000 —0.4000 —0。
7348
0.0000 0。
4899 —1。
6000
B2 =
1。
2247
0.5477
0。
4472
C2 =
0 -0。
0000 2.2361
t2 =
0。
4082 0。
8165 0.4082
0。
9129 -0.3651 -0.1826
0 0。
4472 -0。
8944
k2 =
1 1 0
第四题:已知系统的状态方程为:
()0,010100,987654321==⎪⎪⎪⎭
⎫ ⎝⎛=⎪⎪⎪⎭⎫ ⎝⎛=D C B A ,
希望极点为-2,-3,-4.试设计状态反馈矩阵K ,并比较状态反馈前后输出响应。
A=[1 2 3;4 5 6;7 8 9];
B=[0 0 1]';
C=[0 1 0];
D=0;
tc=rank(ctrb(A ,B ));
p=[-2 —3 -4];
K=place(A ,B,p);
t=0:0.01:5;
U=0。
025*ones (size(t ));
[Y1,X1]=lsim(A ,B,C ,D,U ,t );
[Y2,X2]=lsim (A —B*K,B ,C,D,U,t);
figure(1)
plot(t,Y1);
grid on
title('反馈前’);
figure (2)
plot(t,Y2)
title('反馈后')
结果:
tc =
3
可见,能观判别矩阵满秩,故系统能进行任意极点配置.
反馈矩阵为:
K =
15。
3333 23.6667 24.0000
反馈前后系统输出对比:
第五题。
已知某线性定常系统的系统矩阵为:⎪⎪⎭
⎫ ⎝⎛--=3211A ,判断该系统稳定性。
clear
clc
A=[-1 1;2 -3];
A=A’;
Q=eye(2);
P=lyap(A,Q);
det(P);
结果:
求得的P矩阵为:
P =
1。
7500 0.6250
0。
6250 0.3750
且P阵的行列式为:
>> det(P)
ans =
0.2656
可见,P矩阵各阶主子行列式均大于0,故P阵正定,故该系统稳定。