现代控制理论基础实验

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一

例1-15控制系统微分方程

............ (4)1035502472424 y y y y y u u u u ++++=+++

一、实验目的

掌握用MA TLAB求状态空间表达式。

二、实验步骤

(1)先将控制系统微分方程转换成传递函数:

32

432

()72424 ()

()10355024

y s s s s

G s

u s s s s s

+++

==

++++

(2)输入下列命令

num=[1 7 24 24]

den=[1 10 35 50 24]

G=tf(num,den)

sys=ss(G)

(3)按回车键则输出:

num =

1 7 24 24

den =

1 10 35 50 24

Transfer function:

s^3 + 7 s^2 + 24 s + 24

---------------------------------

s^4 + 10 s^3 + 35 s^2 + 50 s + 24

a =

x1 x2 x3 x4 x1 -10 -4.375 -3.125 -1.5

x2 8 0 0 0 x3 0 2 0 0 x4 0 0 1 0

b =

u1

x1 2

x2 0

x3 0

x4 0

c =

x1 x2 x3 x4

y1 0.5 0.4375 0.75 0.75

d =

u1

y1 0

三、实验体会

通过本次实验我掌握了用MATLAB求状态空间表达式

例1-16假设某离散系统的脉冲传递函数为

32

432

0.310.570.380.89

()

3.23 3.98 2.220.47

yu

z z z

G z

z z z z

+++

=

++++

采样周期为T=0.1s

一、实验目的

(1)掌握用MATLAB绘制零、极点分布图;

(2)掌握用MA TLAB将离散系统脉冲传递函数模转换成状态空间表达式。

二、实验步骤

(1)输入:

num=[0.31 0.57 0.38 0.89]

den=[1 3.23 3.98 2.22 0.47]

Gyu=tf(num,den,'Ts',0.1)

(2)回车后输出:

num =

0.3100 0.5700 0.3800 0.8900

den =

1.0000 3.2300 3.9800

2.2200 0.4700

Transfer function:

0.31 z^3 + 0.57 z^2 + 0.38 z + 0.89

-----------------------------------------

z^4 + 3.23 z^3 + 3.98 z^2 + 2.22 z + 0.47

Sampling time: 0.1

(3)再输入pzmap(Gyu)并回车得:

(4)再执行语句

>> sys=ss(Gyu)

(5)输出:

a =

x1 x2 x3 x4 x1 -3.23 -1.99 -1.11 -0.47

x2 2 0 0 0 x3 0 1 0 0 x4 0 0 0.5 0

b =

u1

x1 1

x2 0

x3 0

x4 0

c =

x1 x2 x3 x4 y1 0.31 0.285 0.19 0.89

d =

u1

y1 0

Sampling time: 0.1

Discrete-time model.

三、实验体会

通过本次实验我懂得了用MA TLAB 绘制零、极点分布图与用MATLAB 将离散系统脉冲传递函数模转换成状态空间表达式。

例:1-17 已知系统状态方程为

.111.22201102311x x u x u x ⎡⎤⎡⎤⎡⎤⎡⎤⎡⎤⎢⎥=+⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥--⎣⎦⎣⎦⎣⎦⎣⎦⎣⎦

1112223213011002101y x u y x u y ⎡⎤⎡⎤⎡⎤⎡⎤⎡⎤

⎢⎥⎢⎥⎢⎥=+⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎢⎥⎢⎥⎢⎥--⎣

⎦⎣⎦⎣⎦ 一、实验目的

(1)掌握用MATLAB 的inv ()函数来求矩阵的逆矩阵

(2)掌握用MATLAB 的simple ()函数来对符号运算结果进行简化

二、实验步骤

(1)输入:

>> syms s;A=[0 1;-2 -3];B=[1 0;1 1];C=[2 1;1 1;-2 -1];D=[3 0;0 0;0 1];I=[1 0;0 1];

>> F=inv(s*I-A)

G=simple(simple(C*F*B)+D)

(2)回车输出:

F =

[ (s + 3)/(s^2 + 3*s + 2), 1/(s^2 + 3*s + 2)]

[ -2/(s^2 + 3*s + 2), s/(s^2 + 3*s + 2)]

G =

[ 3/(s + 1) + 3, 1/(s + 1)]

[ 2/(s + 2), 1/(s + 2)]

[ -3/(s + 1), 1 - 1/(s + 1)]

(3)这表示:

[]123112

32s sI A s s s -+⎡⎤-=⎢⎥-++⎣⎦ (3/(1)3)1/(1)()2/(2)1/(2)3/(1)(1/(1))1s s G s s s s s +++⎡⎤⎢⎥=++⎢⎥⎢⎥-+-++⎣⎦

三、实验体会

通过本次实验我懂得了用MATLAB 的inv ()函数来求矩阵的逆矩阵与用MA TLAB 的simple ()函数来对符号运算结果进行简化。

相关文档
最新文档