实验报告
( 2016-2017年度第二学期)
名称:《现代控制理论基础》
题目:状态空间模型分析
院系:控制科学与工程学院
班级: ___
学号: __
学生姓名: ______
指导教师: _______
成绩:
日期: 2017年 4月 15日
线控实验报告
一、实验目的:
l.加强对现代控制理论相关知识的理解;
2.掌握用 matlab 进行系统李雅普诺夫稳定性分析、能控能观性分析;
二、实验内容
1
第一题:已知某系统的传递函数为G (s)
S23S2
求解下列问题:
(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
10
B =
1
C =
0 1
第二题:已知某系统的状态空间表达式为:
321
A
,B,C 01:10
求解下列问题:
(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 01
den =
1 32
(2)能控判别矩阵为:
co =
1-3
0 1
能控判别矩阵的秩为:
t1 =
2
故系统能控。
(3)能观判别矩阵为:
ob =
0 1
10
能观判别矩阵的秩为:
t2 =
2
故该系统能观。
( 4)该系统对角标准型为:At =
-20
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 =
10
(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)
第三题:已知某系统的状态空间模型各矩阵为:00- 11
A 10- 3, B1,C 0 1 - 2 ,求下列问题:
01- 30
(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.50000.8660
1.2247 -
2.59810.5000
B1 =
0.0000
0.0000
1.4142
C1 =
1.7321 -1.22470.7071
t1 =
-0.57740.5774-0.5774
-0.40820.40820.8165
0.70710.70710
k1 =
110
能观性判别矩阵秩为:
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.81650.4082
0.9129 -0.3651-0.1826
0 0.4472-0.8944
k2 =
1 10
第四题:已知系统的状态方程为:
1230
A 45 6 , B0,C 010,D0
7891
希望极点为 -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.666724.0000
反馈前后系统输出对比:
第五题 . 已知某线性定常系统的系统矩阵为:
11
A,判断该系统稳定性。
23
clear
clc
A=[-1 1;2 -3];
A=A';
Q=eye(2);
P=lyap(A,Q);
det(P);
结果:
求得的 P 矩阵为:
P =
1.75000.6250
0.62500.3750
且 P 阵的行列式为:
>>det(P)
ans =
0.2656
可见, P 矩阵各阶主子行列式均大于0,故 P 阵正定,故该系统稳定。