搜档网
当前位置:搜档网 › 中南大学现代控制理论实验报告

中南大学现代控制理论实验报告

中南大学现代控制理论实验报告
中南大学现代控制理论实验报告

中南大学

现代控制理论实验报告

指导老师:年晓红、郭宇骞

姓名:

学号:

专业班级:

实验日期: 2015.6.11 学院:信息科学与工程学院

实验1 用MATLAB分析状态空间模型

1、实验设备

PC计算机1台,MATLAB软件1套。

2、实验目的

①学习系统状态空间表达式的建立方法、了解系统状态空间表达式与传递函数

相互转换的方法;

②通过编程、上机调试,掌握系统状态空间表达式与传递函数相互转换方法学

习系统齐次、非齐次状态方程求解的方法,计算矩阵指数,求状态响应;

③通过编程、上机调试,掌握求解系统状态方程的方法,学会绘制状态响应曲

线;

④掌握利用MATLAB导出连续状态空间模型的离散化模型的方法。

3、实验原理说明

参考教材P56~59“2.7 用MATLAB分析状态空间模型”

参考教材P99~101“3.8 利用MATLAB求解系统的状态方程”

4、实验步骤

①根据所给系统的传递函数或A、B、C矩阵,依据系统的传递函数阵和状

态空间表达式之间的关系式,采用MATLAB编程。

②在MATLAB界面下调试程序,并检查是否运行正确。

③根据所给系统的状态方程,依据系统状态方程的解的表达式,采用

MATLAB编程。

④ 在MATLAB 界面下调试程序,并检查是否运行正确。 5、实验习题

题1.1 已知SISO 系统的传递函数为

2432

58

()2639

s s g s s s s s ++=++++ (1)将其输入到MATLAB 工作空间; (2)获得系统的状态空间模型。 解: (1)

num=[1,5,8] ; den=[1,2,6,3,9] ; G=tf(num , den) Transfer function: s^2 + 5 s + 8 ----------------------------- s^4 + 2 s^3 + 6 s^2 + 3 s + 9 (2) G1=ss(G) a =

x1 x2 x3 x4 x1 -2 -1.5 -0.75 -2.25 x2 4 0 0 0 x3 0 1 0 0

x4 0 0 1 0 b = u1 x1 2 x2 0 x3 0 x4 0 c =

x1 x2 x3 x4 y1 0 0.125 0.625 1 d = u1 y1 0

Continuous-time model.

题1.2 已知SISO 系统的状态空间表达式为

112233010100134326x x x x u x x ????????????????=+????????????????----????????&&&,[]123100x y x x ????=??????

(1)将其输入到MATLAB工作空间;(2)求系统的传递函数。

解:

(1)

A=[0,1,0;0,0,1;-4,-3,-2];

B=[1;3;-6];

C=[1,0,0];

D=0;

G=ss(A,B,C,D)

a =

x1 x2 x3

x1 0 1 0

x2 0 0 1

x3 -4 -3 -2

b =

u1

x1 1

x2 3

x3 -6

c =

x1 x2 x3 y1 1 0 0 d = u1 y1 0

Continuous-time model. (2) G1=tf(G)

Transfer function: s^2 + 5 s + 3 --------------------- s^3 + 2 s^2 + 3 s + 4

题1.3 已知SISO 系统的状态方程为

[]01323011x x u y x

????=+????--????=& (1)0u =,()101x ??

=??-??

,求当t =0.5时系统的矩阵系数及状态响应;

(2)1()u t =,()000x ??

=????,绘制系统的状态响应及输出响应曲线;

(3)1cos3t u e t -=+,()000x ??

=????,绘制系统的状态响应及输出响应曲线;

(4)0u =,()102x ??

=????,绘制系统的状态响应及输出响应曲线;

(5)在余弦输入信号和初始状态()101x ??

=????下的状态响应曲线。

解: (1)

A=[0,1;-2,-3];B=[3;0]; expm(A*0.5)

A=[0,1;-2,-3];B=[3;0]; expm(A*0.5) ans*[1;-1] ans =

0.8452 0.2387 -0.4773 0.1292 ans =

0.8452 0.2387

-0.4773 0.1292

ans =

0.6065

-0.6065

(2)

A=[0,1;-2,-3]; B=[3;0];C=[1,1]; D=[0]; G=ss(A,B,C,D); [y,t,x]=step(G);plot(t,x)

(3)

A=[0,1;-2,-3]; B=[3;0];C=[1,1]; D=[0];

t=[0:.02:4];u=1+exp(-t).*cos(3*t);

G=ss(A,B,C,D);[y,t,x]=lsim(G,u,t);plot(t,x)

plot(t,y)

(4)

A=[0,1;-2,-3]; B=[3;0];C=[1,1]; D=[0];

t=[0:.02:4];u=0;

G=ss(A,B,C,D);x0=[1;2];[y,t,x]=initial (G,x0,t);plot(t,x)

plot(t,y)

(5)

A=[0,1;-2,-3]; B=[3;0];C=[1,1]; D=[0]; t=[0:.02:4];u=cos(t);

G=ss(A,B,C,D);x0=[1;1];[y,t,x]=lsim(G,u,t,x0);plot(t,x)

题1.4 已知一个连续系统的状态方程是

0102541x x u ????

=+????--????& 若取采样周期0.05T =秒

(1)试求相应的离散化状态空间模型;

(2)分析不同采样周期下,离散化状态空间模型的结果。 解: A=[0,1;-25,-4]; B=[0;1];

[G,H]=c2d(A,B,0.05)

G =

0.9709 0.0448

-1.1212 0.7915

H =

0.0012

0.0448

6、实验总结

①学会了系统状态空间表达式的建立方法、了解了系统状态空间表达式与传递函数相互转换的方法;掌握了系统状态空间表达式与传递函数相互转换方法学习系统齐次、非齐次状态方程求解的方法;学会了计算矩阵指数,求状态响应和绘制状态响应曲线;掌握了利用MATLAB导出连续状态空间模型的离散化模型的方法。

②在MATLAB界面下调试程序,还是发现了一些问题,比如函数使用错误和参数未定义等。但后来经过反复的练习已经能很清楚的分清各个函数的用法。

实验2 系统的能控性、能观测性分析

PC计算机1台,MATLAB软件1套。

2、实验目的

①学习系统状态能控性、能观测性的定义及判别方法;

②通过用MATLAB编程、上机调试,掌握系统能控性、能观测性的判上使用别方法,掌握将一般形式的状态空间描述变换成能控标准形、能观标准形。

学习系统稳定性的定义及李雅普诺夫稳定性定理;

通过用MATLAB编程、上机调试,掌握系统稳定性的判别方法。

3、实验原理说明

参考教材P117~118“4.2.4 利用MATLAB判定系统能控性”

参考教材P P124~125“4.3.3 利用MATLAB判定系统能观测性”

4、实验步骤

①根据系统的系数阵A和输入阵B,依据能控性判别式,对所给系统采用

MATLAB编程;在MATLAB界面下调试程序,并检查是否运行正确。

②根据系统的系数阵A和输出阵C,依据能观性判别式,对所给系统采用

MATLAB编程;在MATLAB界面下调试程序,并检查是否运行正确。

③构造变换阵,将一般形式的状态空间描述变换成能控标准形、能观标准形。

④参考教材P178~181“5.3.4 利用MATLAB进行稳定性分析”

⑤掌握利用李雅普诺夫第一方法判断系统稳定性;

⑥掌握利用李雅普诺夫第二方法判断系统稳定性。

题2.1 已知系数阵A 和输入阵B 分别如下,判断系统的状态能控性

??????????--=2101013333.06667.10666.6A , ??

???

?????=110B 解:

A=[6.666,-10.6667,-0.3333;1,0,1;0,1,2];B=[0;1;1];

Uc=[B,A*B,A^2*B] n=length(A); flag=rank(Uc); if flag==n

disp('系统可控'); else disp('系统不可控');

end Uc =

0 -11.0000 -84.9926 1.0000 1.0000 -8.0000 1.0000 3.0000 7.0000 系统可控

题2.2 已知系数阵A 和输出阵C 分别如下,判断系统的状态能观性。

??

???

?????--=2101013333.06667.10666.6A , []201=C 解:

A=[6.666,-10.6667,-0.3333;1,0,1;0,1,2];C=[1,0,2];

Uo=[C;C*A;C*A^2]

n1=rank(Uo);

n2=length(A); if n2==n1 disp('系统可观') else

disp('系统不可观') end Uo =

1.0000 0

2.0000 6.6660 -8.6667

3.6667 35.7689 -67.4375 -3.5551 系统可观

题2.3 已知系统状态空间描述如下

[]02115120200111

0x x u y x

-????

????=+????????--????

=& (1)判断系统的状态能控性; (2)判断系统的状态能观测性;

(3)构造变换阵,将其变换成能控标准形; (4)构造变换阵,将其变换成能观测标准形;

解:

(1)(2)

A=[0,2,-1;5,1,2;-2,0,0]; B=[1;0;-1];

C=[1,1,0];

n=length(A);

Uc=[B,A*B,A^2*B] Uo=[C;C*A;C*A^2] flagC=rank(Uc); flagO=rank(Uo);

if n==flagC

disp('系统可控'); end

if n==flagO

disp('系统可观'); end

Uc =

1 1 8

0 3 4

-1 -2 -2

Uo =

1 1 0

5 3 1

13 13 1

系统可控

系统可观

(3)

p1=[0,0,1]*inv(Uc);

P=[p1;p1*A;p1*A^2]

Ac=P*A*inv(P)

Bc=P*B

P =

0.1364 0.0455 0.1364

-0.0455 0.3182 -0.0455

1.6818 0.2273 0.6818

Ac =

0 1.0000 0

0 0.0000 1.0000 -10.0000 12.0000 1.0000

Bc =

1.0000

(4)

T1=inv(Uo)*[0;0;1];

T=[T1,A*T1,A^2*T1]

Ao=inv(T)*A*T

Co=C*T

T =

-0.5000 0 -1.0000

0.5000 0 2.0000 1.0000 1.0000 0 Ao =

0 0 -10 1 0 12 0 1 1 Co =

0 0 1

题2.4 某系统状态空间描述如下

[]02115120200111

0x x u y x

-????

????=+????????--????

=& (1)利用李雅普诺夫第一方法判断其稳定性; (2)利用李雅普诺夫第二方法判断其稳定性。 解:

A=[0,2,-1;5,1,2;-2,0,0];

相关主题