文档库 最新最全的文档下载
当前位置:文档库 › 现代控制理论实验

现代控制理论实验

现代控制理论实验
现代控制理论实验

现代控制理论实验 实验一 线性定常系统模型

一 实验目的

1. 掌握线性定常系统的状态空间表达式。学会在MATLAB 中建立状态空间模型的方法。

2. 掌握传递函数与状态空间表达式之间相互转换的方法。学会用MATLAB 实现不同模型之间的相互转换。

3. 熟悉系统的连接。学会用MA TLAB 确定整个系统的状态空间表达式和传递函数。

4. 掌握状态空间表达式的相似变换。掌握将状态空间表达式转换为对角标准型、约当标准型、能控标准型和能观测标准型的方法。学会用MATLAB 进行线性变换。 二 实验内容

1. 已知系统的传递函数

(a) )

3()1(4

)(2

++=

s s s s G

(b) 3

48

6)(22++++=s s s s s G

(1)建立系统的TF 或ZPK 模型。

(2)将给定传递函数用函数ss( )转换为状态空间表达式。再将得到的状态空间表达式用函数tf( )转换为传递函数,并与原传递函数进行比较。

(3)将给定传递函数用函数jordants( )转换为对角标准型或约当标准型。再将得到的对角标准型或约当标准型用函数tf( )转换为传递函数,并与原传递函数进行比较。

(4)将给定传递函数用函数ctrlts( )转换为能控标准型和能观测标准型。再将得到的能控标准型和能观测标准型用函数tf( )转换为传递函数,并与原传递函数进行比较。 2. 已知系统的状态空间表达式

(a) u x x

?

?

????+??????--=106510 []x y 11=

(b) u x x ??

??

?

?????+??????????---=7126712203010 []111=y

(c) u x x ??

???

?????+??????????--=357213********* []x y 101= (d) u x x ????

?

?????+??????????---=011310301100 []x y 210-= (1)建立给定系统的状态空间模型。用函数eig( ) 求出系统特征值。用函数tf( ) 和zpk( )

将这些状态空间表达式转换为传递函数,记录得到的传递函数和它的零极点。比较系统的特征值和极点是否一致,为什么?

(2)用函数canon( )将给定状态空间表达式转换为对角标准型。用函数eig( )求出系统特征值。比较这些特征值和(1)中的特征值是否一致,为什么? 再用函数tf( )和zpk( )将对角标准型或约当标准型转换为传递函数。比较这些传递函数和(1)中的传递函数是否一致,为什么?

(3)用函数ctrlss( )将给定的状态空间表达式转换为能控标准型和能观测标准型。用函数eig( )求系统的特征值。比较这些特征值和(1)中的特征值是否一致,为什么?再用函数tf( )将它们转换为传递函数。比较这些传递函数和(1)中的传递函数是否一致,为什么? 3. 已知两个子系统

4

41

)(21+++=

s s s s G

6

1165

3)(2

32++++=s s s s s G (1)建立两个子系统的传递函数模型。求它们串联、并联、反馈连接时, 整个系统的传递函数模型。然后将所得传递函数模型转换为状态空间模型。

(2)将两个子系统的传递函数模型转换为状态空间模型。求它们串联、并联、反馈连接时, 整个系统的状态空间模型。然后将所得状态空间模型转换为传递函数模型。比较(1)和(2)所得的相应的结果。

(3)将(2)中所得的整个系统的状态空间模型的系数矩阵与教材中推导出的整个系统的状态空间表达式的系数矩阵比较,是否符合? 三 附录

1. 线性定常系统的数学模型

在MA TLAB 中,线性定常(linear time invariant, 简称为 LTI )系统可以用4种数学模型描述,即传递函数(TF)模型、零极点增益(ZPK)模型和状态空间(SS)模型以及SIMULINK 结构图。前三种数学模型是用数学表达式表示的,且均有连续和离散两种类型,通常把它们统称为LTI 模型。 1) 传递函数模型(TF 模型)

令单输入单输出线性定常连续和离散系统的传递函数分别为

11

10

1)()()(a s a s a s b s b s b s b s U s Y s G n n n

m m m m ++++++++==---- (1-1) 和

11

10

1)()()(a z a z a z b z b z b z b z U z Y z G n n n

m m m m ++++++++==---- 。 (1-2) 在MA TLAB 中,连续系统和离散系统的传递函数都用分子/分母多项式系数构成的两

个行向量num 和den 表示,即

[]01b b b num m =,[]011a a den n -=

系统的传递函数模型用MATLAB 提供的函数tf( )建立。函数tf ( )不仅能用于建立系统传递函数模型,也能用于将系统的零极点增益模型和状态空间模型转换为传递函数模型。该函数的调用格式如下:

),(d e n n u m

tf G = 返回连续系统的传递函数模型G 。 ),,(Ts den num tf G = 返回离散系统的传递函数模型G 。Ts 为采样周期,当Ts =-1或者Ts =[]时,系统的采样周期未定义。

)(G tf Gtf = 可将任意的LTI 模型G 转换为传递函数模型Gtf 。 例1-1 已知一个系统的传递函数为

6

1166

)(2

3+++=

s s s s G 建立传递函数模型。

在命令窗中运行下列命令

>>num=6;den=[1 6 11 6];G=tf (num, den) 返回

Transfer function: 6 ---------------------- s^3 + 6 s^2 + 11 s + 6

2) 零极点增益模型(ZPK 模型)

系统的零极点增益模型是传递函数模型的一种特殊形式。令线性定常连续和离散系统的零极点形式的传递函数分别为

)

())(()())(()()

()(2121n m p s p s p s z s z s z s K

s U s Y s G ++++++==

(1-3)

)

())(()())(()()

()(2121n m p z p z p z z z z z z z K

z U z Y z G ++++++==

(1-4) 在MA TLAB 中,连续和离散系统的零点和极点都用行向量z 和p 表示,即

[]m z z z z 21=,[]n p p p p 21=。

系统的零极点增益模型用MATLAB 提供的函数zpk ( )建立。函数zpk( )不仅能用来建

立系统零极点增益模型,也能用于将系统的传递函数模型和状态空间模型转换为零极点增益模型。该函数的调用格式如下:

),,(k p z z p k

G = 返回连续系统的零极点增益模型G 。 ),,,(Ts k p z zpk G = 返回离散系统的零极点增益模型G 。Ts 为采样周期,当Ts =-1或者Ts =[]时,系统的采样周期未定义。

)(G z p k G z p k

= 可将任意的LTI 模型G 转换为零极点增益模型Gzpk 。 例1-2 已知系统的传递函数为

)

3)(2)(1(6

)(+++=

s s s s G

建立系统的零极点增益模型。

在命令窗中运行下列命令

>> z=[ ];p=[-1 -2 -3];k=6;G=zpk(z,p,k) 返回

Zero/pole/gain:

6

----------------- (s+1) (s+2) (s+3)

注意:无零点时,设z 为空。 3) 状态空间模型(SS 模型)

令多输入多输出线性定常连续和离散系统的状态空间表达式分别为

)()()(t Bu t Ax t x

+= )()()(t Du t Cx t y += (1-5)

)()()1(k Bu k Ax k x +=+

)()()(k Du k Cx k y += (1-6)

在MATLAB 中,连续系统和离散系统的状态空间模型都用MATLAB 提供的函数ss ( )

建立。函数ss ( )不仅能用于建立系统的状态空间模型,也能用于将系统的传递函数模型和零极点增益模型转换为状态空间模型。该函数的调用格式如下: ),,,(D C B A ss G = 返回连续系统的状态空间模型G 。

),,,,(Ts D C B A ss G = 返回离散系统的状态空间模型G 。Ts 为采样周期,当Ts =1或者Ts =[]时,系统的采样周期未定义。

)(G ss Gss = 可将任意的LTI 模型G 转换为状态空间模型Gss 。 例1-3 已知系统的状态空间表达式为

u x x ??

??

?

?????+??????????---=1006116100010 []x y 006

=

建立系统的状态空间模型。

在命令窗中运行下列命令

>> A=[0 1 0;0 0 1;-6 -11 -6];B=[0;0;1];C=[6 0 0];D=0;G=ss(A,B,C,D) 返回 a =

x1 x2 x3 x1 0 1 0 x2 0 0 1 x3 -6 -11 -6 b =

u1 x1 0 x2 0 x3 1 c =

x1 x2 x3 y1 6 0 0 d =

u1 y1 0

注意:D=0不能缺省。 2.模型转换

上述三种LTI 模型之间可以通过函数tf( ),zpk( )和ss( )相互转换。线性定常系统的传递函数模型和零极点增益模型是唯一的,但系统的状态空间模型是不唯一的。函数ss( )只能将传递函数模型和零极点增益模型转换为一种指定形式的状态空间模型。

例1-4 已知系统的传递函数,建立TF 模型,将其转换为ZPK 模型和SS 模型。再将转换得到的SS 模型转换为TF 模型。 2

545

)(23+++=s s s s G

编制如下程序%ex14。 %ex14

num=5;den=[1 4 5 2];Gtf=tf(num,den); Gzpk=zpk(Gtf) Gss=ss(Gtf) Gtf1=tf(Gss)

在命令窗中运行该程序,即 >> ex14 返回

Zero/pole/gain: 5 ------------- (s+2) (s+1)^2 a =

x1 x2 x3 x1 -4 -2.5 -0.5 x2 2 0 0 x3 0 2 0 b =

u1 x1 1 x2 0 x3 0 c =

x1 x2 x3 y1 0 0 1.25 d =

u1 y1 0

Transfer function:

5

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

s^3 + 4 s^2 + 5 s + 2

传递函数可以转换为约旦标准型(包括对角标准型)、能控标准型和能观测标准型。

我们编制的函数jordants( ) 可用部分分式展开将传递函数转换为对角标准型或约当标准型。该函数的调用格式为:

num

GJ

jordants

(den

,

)

其中num和den分别为传递函数分子和分母多项式系数的行向量,GJ为转换得到对角标准型或约当标准型。

该函数的程序如下:

function Gj=jordants(num,den) %用部分分式展开将传递函数转换为约当标准型

[R,P,K]=residue(num,den);

j=1;q=P(1);m(1)=0;

for i=1:length(P)

if P(i)==q

m(j)=m(j)+1;

else q=P(i);

j=j+1;

m(j)=1;

end

end %计算各极点的重数

Aj=diag(P);

for i=1:length(P)-1

if Aj(i,i)==Aj(i+1,i+1)

Aj(i,i+1)=1;

else Aj(i,i+1)=0;

end

end %构造系统矩阵Aj

B1=0;

l=0;

for j=1:length(m)

l=l+m(j);

B1(l)=1;

end

Bj=B1'; %构造输入矩阵Bj

n=1;l=m(1);

Cj(:,1:m(1))=rot90(R(1:m(1),:),3); for k=2:length(m)

n=l+1;l=l+m(k);

Cj(:,n:l)=rot90(R(n:l,:),3);

end %构造输出矩阵Cj if K==[ ]

Dj=0; else

Dj=K;

end %构造直联矩阵Dj Gj=ss(Aj,Bj,Cj,Dj);

例1-5 已知系统的传递函数为

6

1166

)(2

3+++=

s s s s G 将其转换为对角标准型。

在命令窗中运行下列命令

>> num=6;den=[1 6 11 6];Gj=jordants(num,den) 返回 a =

x1 x2 x3 x1 -3 0 0 x2 0 -2 0 x3 0 0 -1 b =

u1 x1 1 x2 1 x3 1 c =

x1 x2 x3 y1 3 -6 3 d =

u1 y1 0

Continuous-time model.

例1-6 已知系统的传递函数为

4

8511

17102)(2323++++++=s s s s s s s G

将其转换为约当标准型。

在命令窗中运行下列命令

>> num=[2 10 17 11]; den=[1 5 8 4]; Gj=jordants(num,den)

返回

a =

x1 x2 x3

x1 -2 1 0

x2 0 -2 0

x3 0 0 -1

b =

u1

x1 0

x2 1

x3 1

c =

x1 x2 x3

y1 -1 -2 2

d =

u1

y1 2

Continuous-time model.

我们编制的函数ctrlts( )可将传递函数转换为能控标准型。该函数的调用格式为:

)

Gc

num

ctrlts

,

(d e n

其中num和den分别为传递函数的分子和分母多项式系数的行向量,Gc为转换得到的能控标准型。

该函数的程序如下:

function Gc=ctrlts(num,den) %将传递函数转换为能控标准型

m=length(num)-1;n=length(den)-1;

if m==n

[R,P,K]=residue(num,den);

num1=num-K*den;

A(n,:)=-1*rot90(den(:,2:n+1),2);

A(1:n-1,2:n)=eye(n-1);

A(1:n-1,1)=zeros(n-1,1);

B=[zeros(n-1,1);1];

C=rot90(num1(:,2:n+1),2);

D=K;

else A(n,:)=-1*rot90(den(:,2:n+1),2);

A(1:n-1,2:n)=eye(n-1);

A(1:n-1,1)=zeros(n-1,1);

B=[zeros(n-1,1);1];

C(:,1:m+1)=rot90(num,2);

C(:,m+2:n)=zeros(1,n-m-1);

D=0;

end

Gc=ss(A,B,C,D);

例1-7将例1-6中的传递函数转换为能控标准型。

在命令窗中运行下列命令

>> num=[2 10 17 11];den=[1 5 8 4];Gc=ctrlts(num,den)

返回

a =

x1 x2 x3

x1 0 1 0

x2 0 0 1

x3 -4 -8 -5

b =

u1

x1 0

x2 0

x3 1

c =

x1 x2 x3

y1 3 1 0

d =

u1

y1 2

Continuous-time model.

进一步,求能控标准型的对偶系统可得能观测标准型。在命令窗中运行下列命令>> Ao=(Gc.a)';Bo=(Gc.c)';Co=(Gc.b)';Do=Gc.d;Go=ss(Ao,Bo,Co,Do)

返回

a =

x1 x2 x3

x1 0 0 -4

x2 1 0 -8

x3 0 1 -5

b =

u1

x1 3 x2 1 x3 0 c =

x1 x2 x3 y1 0 0 1 d =

u1 y1 2

Continuous-time model.

下面是介绍MA TLAB 提供的三个函数tfdata( ), zpkdata( ), ssdata( )。

函数tfdata( ) 可得到传递函数模型的分子分母多项式系数。其调用格式为

)'',(],[v G t f d a t a d e n n u m =

其中G 为系统LTI 模型。num 和den 分别为分子和分母多项式的系数向量。

函数zpkdata( ) 可得到零极点增益模型的零点、极点和增益。其调用格式为

)'',(],,[v G zpkdata k p z =

其中G 为系统LTI 模型。z 和p 分别为零点和极点向量,k 为增益。

函数ssdata( ) 可得到状态空间模型的系数矩阵。其调用格式为

)'',(],,,[v G ssdata D C B A =

其中G 为系统LTI 模型。A,B,C,D 为系数矩阵。 3. 模型的连接 1) 串联连接

设线性定常系统∑1和∑2的LTI 模型分别为1G 和2G 。在MATLAB 中, 两者的串联连接(参教材)可由命令12*G G G =实现,其中G 为整个系统的LTI 模型。多个系统的串联连接可由命令11***G G G G n n -=实现。 2) 并联连接

设线性定常系统∑1和∑2的LTI 模型分别为1G 和2G 。在MATLAB 中, 两者的并联连接(参教材)可由命令21G G G +=实现,其中G 为整个系统的LTI 模型。多个系统的并联连接可由命令n G G G G +++= 21实现。 3) 反馈连接

设线性定常系统∑1和∑2的LTI 模型分别为1G 和2G 。在MATLAB 中, 两者的反馈

连接(参教材)可由MATLAB 提供的函数feedback( )实现。该函数的调用格式为:

),,(21Sign G G feedback G =

其中G 为整个系统LTI 模型。如果Sign=-1或省略Sign 变量,则表示负反馈。如果Sign=1, 则表示正反馈。

4. 状态空间表达式的相似变换

线性定常系统状态空间表达式为),,,(D C B A ∑,假设存在一个非奇异矩阵T 将原状态x 变换为z=Tx , 则状态z 对应的状态空间表达式为),,,(D C B A ∑,其中1

-=TAT

A ,

TB B =,1-=CT C 。

MATLAB 提供函数ss2ss( )可完成状态空间模型的相似变换。该函数调用格式为

),(2T G ss ss Gt =

其中G 为原状态空间模型。T 为变换矩阵。Gt 为经变换得到的状态空间模型。 例1-8 考虑一个系统,它的状态空间表达式为

u x x ???

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

[]x y 01=

由于该系统的系统矩阵A 为友矩阵,所以可由其特征值构造变换矩阵。令变换矩阵T

为1

2111

-?

?

????--=T 。 在命令窗中运行下列命令

>> A=[0 1;-2 -3];B=[1 1]';C=[1 0];G=ss(A,B,C,0); T=inv([1 1;-1 -2]); G1=ss2ss(G ,T) 返回 a =

x1 x2 x1 -1 0 x2 0 -2 b =

u1 x1 3 x2 -2

c =

x1 x2 y1 1 1 d =

u1 y1 0

Continuous-time model.

通过线性变换可将状态空间表达式变换为约当标准型(包括对角标准型),能控标准型和能观测标准型。

MATLAB 提供的函数canon( )可将状态空间表达式变换为对角标准型或约当标准型。该函数的调用格式为:

)'mod ',(el G canon GJ =

其中G 为原状态空间模型,而GJ 为转换得到的对角标准型或约当标准型。但该函数在系

统含有重特征值时,效果不甚理想。

例1-9 利用函数canon( )将例1-8中状态空间表达式变换为对角标准型。

在命令窗中运行下列命令

>> A=[0 1;-2 -3];B=[1 1]';C=[1 0];G=ss(A,B,C,0); G1=canon(G ,’modal ’) 返回 a =

x1 x2 x1 -1 0 x2 0 -2 b =

u1 x1 4.243 x2 4.472 c =

x1 x2 y1 0.7071 -0.4472 d =

u1 y1 0

Continuous-time model.

如果SISO 线性定常系统),,,(D C B A ∑完全能控,则可通过非奇异线性变换将状态空间表达式),,,(D C B A ∑变换为能控标准型。

我们编制的函数ctrlss( ) 可实现这一变换。该函数的调用格式为:

)(G ctrlss Gc =

其中G 为原来的状态空间模型。Gc 为转换得到的能控标准型。

该函数程序如下:

function Gc=ctrlss(A,B,C,D) %将状态空间表达式变换为能控标准型 n=length(A); Uc=ctrb(A,B); U=inv(Uc); p1=U(n,:); for i=1:n

T(i,:)=p1*A^(i-1); end

Ac=T*A*inv(T); Bc=T*B; Cc=C*inv(T);

Gc=ss(Ac,Bc,Cc,D);

例1-10 考虑一个系统,它的状态空间表达式为

u x x ????

?

?????+??????????---=112122211220 []x y 111=

将其转换为能控标准型。

在命令窗中运行下列命令

>> A=[0 2 -2;1 1 -2;2 -2 1];B=[2 1 1]';C=[1 1 1];D=0;Gc=ctrlss(A,B,C,D) 返回 a =

x1 x2 x3 x1 -4.441e-016 1 1.665e-016 x2 -8.882e-016 0 1 x3 -2 1 2 b =

u1 x1 1.388e-017 x2 0 x3 1 c =

x1 x2 x3

y1 -20 -4 4 d =

u1 y1 0

Continuous-time model.

试编将状态空间表达式变换为能观测标准型的函数。

实验二 线性定常系统状态方程的解

一、实验目的

1. 掌握状态转移矩阵的概念。学会用MA TLAB 求解状态转移矩阵。

2. 掌握线性系统状态方程解的结构。学会用MATLAB 求解线性定常系统的状态响应和输出响应,并绘制相应曲线。 二、实验内容

1. 求下列系统矩阵A 对应的状态转移矩阵

(a )??????-=0410A (b )????

?

?????-=452100010A (c )??????????=λλ

λ

00

00

A (d )?

?

???

?

???

???=λλλλ000100010000A 2. 已知系统

u x x ???

???+??????--=105610 []x y 01=

(1)令初始状态为??

?

???=01)0(x ,输入为零。

a) 用MA TLAB 求状态方程的解析解。选择时间向量t ,绘制系统的状态响应曲线。

观察并记录这些曲线。

b) 用函数initial( )计算系统在初始状态作用下状态响应和输出响应的数值解, 并用

函数plot( ) 绘制系统的状态响应曲线和输出响应曲线。观察并记录这些响应曲线,然后将这一状态响应曲线与a)中状态响应曲线进行比较。

c) 根据b)中所得的状态响应的数值解,用命令plot(x(:,1), x(:,2))绘制系统的状态轨

迹。记录系统状态转移的过程,结合a)和b)中的状态响应曲线分析这一过程。 (2) 令初始状态为零,输入为)(1)(t t u =。

a) 用MA TLAB 求状态方程的解析解。选择时间向量t ,绘制系统的状态响应曲线。

观察并记录这些曲线。

b) 用函数initial( )计算系统在初始状态作用下状态响应和输出响应的数值解, 并用函

数plot( ) 绘制系统的状态响应曲线和输出响应曲线。观察并记录这些响应曲线,然后将这一状态响应曲线与a).中状态响应曲线进行比较。 c) 根据b)中所得的状态响应的数值解,用命令plot(x(:,1), x(:,2))绘制系统的状态轨迹。

记录系统状态转移的过程,结合a)和b)中的状态响应曲线分析这一过程。

(3)令初始状态为??

?

???-=11)0(x ,输入为)(1)(t t u =。求系统状态响应和输出响应的数值

解,绘制系统的状态响应曲线、输出响应曲线和状态轨迹。观察和分析这些响应曲线和状态轨迹是否是(1)和(2)中的响应曲线和状态轨迹的叠加。

(4) 令初始状态为零,输入为)5sin(3)(t t u =。用函数lsim( )计算状态响应和输出响应的数值解,并绘制系统的状态响应曲线、输出响应曲线和状态轨迹。 3. 已知系统

u x x ??

??

?

?????+??????????---=1006116100010 []x y 006=

且初始状态为????

?

?????-=101)0(x 。 (1)当输入为)()(t t u δ=时,用函数initial( )和impulse( )求解系统的状态响应和输出响应的数值解,并绘制系统的状态响应曲线、输出响应曲线和状态轨迹。

(2)当输入为)(1)(t t u =时,用函数initial( )和step( )求解系统的状态响应和输出响应的数值解,并绘制系统的状态响应曲线、输出响应曲线和状态轨迹。

(3)当输入为t t u =)(时,用函数initial( )和lsim( )求解系统的状态响应和输出响应的数值解,并绘制系统的状态响应曲线、输出响应曲线和状态轨迹。

(4)当输入为)sin()(t t u =时,用函数initial( ) 和lsim( )求解系统的状态响应和输出响应的数值解,并绘制系统的状态响应曲线、输出响应曲线和状态轨迹。 三、附录

1、线性定常连续系统状态转移矩阵的计算

线性定常连续系统的状态转移矩阵为])[()(11---==ΦA sI L e t At 。 (3-2-1) 在MA TLAB 中, 状态转移矩阵可直接用指数矩阵法和拉氏反变换法计算。 例2-1 求系统矩阵A 对应的状态转移矩阵。 ??

??

??--=3210

A

指数矩阵法:

在命令窗中运行下列命令

>> A=[0 1;-2 -3];syms t; phet=expm(A*t) 返回 phet =

[ -exp(-2*t)+2*exp(-t), exp(-t)-exp(-2*t)] [ -2*exp(-t)+2*exp(-2*t), 2*exp(-2*t)-exp(-t)] 拉氏反变换法:

在命令窗中运行下列命令

>> A=[0 1;-2 -3]; syms s;G=inv(s*eye(size(A))-A) 返回 G =

[ (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)]

即1

)(--A sI 。再对其进行拉氏逆变换,即在命令窗中输入语句 >>phet= ilaplace(G) 返回 phet =

[ -exp(-2*t)+2*exp(-t), exp(-t)-exp(-2*t)] [ -2*exp(-t)+2*exp(-2*t), 2*exp(-2*t)-exp(-t)] 2. 线性定常连续系统的状态方程求解

如果线性定常连续系统的状态空间表达式为

Bu Ax x

+=

Du Cx y +=

且初始状态为)0(x ,那么状态方程解的拉氏变换式为

)()()0()()(11s Bu A sI x A sI s x ---+-= (3-2-2)

其解为

?-+=t

t A At d Bu e x e t x 0

)()()0()(τττ (3-2-3)

其中零输入响应为 )0(x e At 或)0(}){(11x A sI L --- (3-2-4) 零状态响应为

τττd Bu e t

t A )(0

)(?

-或)}(){(11s Bu A sI L --- (3-2-5)

系统的输出响应为 )()}()()0()({111t Du s Bu A sI C x A sI C L +-+---- (3-2-6) 例2-2 已知系统的状态方程为

u x x

?

?

?

???+??????--=103210 试求初始状态为??

?

?

??-=11)0(x ,输入分别为)(1)(t t u =和 t t u =)(时状态方程的解。 编制程序%ex22求输入为)(1)(t t u =时状态方程的解。该程序如下:

A=[0 1;-2 -3];syms s;G=inv(s*eye(size(A))-A);phet=ilaplace(G);X0=[1 -1]';Xt1=phet*X0;

>> B=[0 1]';Xt2=ilaplace(G*B*(1/s)) 在命令窗中运行该程序,即 >> ex22 返回 xt1 =

[ exp(-t)] [ -exp(-t)] xt2 =

[ 1/2-exp(-t)+1/2*exp(-2*t)] [ exp(-t)-exp(-2*t)]

其中xt1为零输入响应,xt2为零状态响应。

将该程序中s s u 1)(=用21

)(s

s u =代替可求出输入为单位斜坡函数时状态方程的解 xt1 =

[ exp(-t)] [ -exp(-t)] xt2 =

[ 1/2*t-3/4-1/4*exp(-2*t)+exp(-t)] [ 1/2-exp(-t)+1/2*exp(-2*t)]

上述得到的是状态方程的解析解,MA TLAB 提供的函数step( ) 、impulse( )、lsim( ) 和initial( )可以求得系统响应的数值解。

函数step( ) 可直接求取线性连续系统的单位阶跃响应。该函数的调用格式为:

),(t G step y = 其中G 为给定系统LTI 模型,t 为时间向量。通常取t=0:dt:t-end ,

其中t-end 为终值时间,而dt 为时间步长。y 为系统输出。

)(G step y = 这时时间向量t 自动生成。

),(],,[t G step x t y = 或 )(],,[G s t e p x t y = 如果G 为状态空间模型,则x 为系统

状态向量,否则x 将返回空矩阵。

),(t G step 或 )(G s t e p 此时不返回任何变量,而自动地绘制单位阶跃响应输出曲

线。

函数impulse( ) 可直接求取线性系统的单位脉冲响应。该函数的调用格式与函数step( )的调用格式相似。

函数lsim( ) 可直接求取线性系统在任意输入信号作用下的响应。该函数的调用格式为:

),,(t u G lsim y =

其中u 为与时间向量t 对应的输入向量。当然还可以和step( )函数一样有其它的调用格式。 函数initial( ) 可求解系统的零输入响应。该函数的调用格式为

)0,(x G initial y = 或 )0,(],,[x G i n i t i a l x t y =

其中G 为状态空间模型,x0为初始状态。 例2-3 已知系统为

u x x ???

???+??????--=103210 []x y 11=

初始状态为??

?

?

??-=11)0(x ,试求u(t)为单位阶跃函数时系统状态响应和输出响应,并绘制

状态响应曲线和输出响应曲线。

在命令窗中运行下列命令,建立状态空间模型,计算系统在初始状态作用下的状态响应和输出响应,并绘制相应的响应曲线。

>> A=[0 1;-2 -3]; B=[0;1]; C=[1 1]; D=0; G=ss(A,B,C,D);

t=0:0.5:10; x0=[1;-1];

[yo,t,xo]=initial(G,x0,t); plot(t,xo,':',t,yo,'-')

返回图1。

图1状态响应图2 输出响应

在命令窗中继续运行下列命令,计算系统在输入作用下的状态响应和输出响应,并绘制相应的响应曲线。

>>figure('pos',[50 50 200 150],'color','w');

u=ones(size(t));

[yu,t,xu]=lsim(G,u,t);

plot(t,xu,':',t,yu,'-')

返回图2。

再继续运行下列命令求系统总的状态响应和输出响应,并绘制相应的响应曲线。>>y=yo+yu; x=xo+xu; plot(t,x,':',t,y,'-')

返回图3。

图3 图4

例2-4 已知系统

现代控制理论实验报告

实验报告 ( 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

现代控制理论基础考试题A卷及答案

即 112442k g k f M L M ML θθθ??=-+++ ??? && 212 44k k g M M L θθθ??=-+ ??? && (2)定义状态变量 11x θ=,21x θ=&,32 x θ=,42x θ=& 则 一.(本题满分10分) 如图所示为一个摆杆系统,两摆杆长度均为L ,摆杆的质量忽略不计,摆杆末端两个质量块(质量均为M )视为质点,两摆杆中点处连接一条弹簧,1θ与2θ分别为两摆杆与竖直方向的夹角。当12θθ=时,弹簧没有伸长和压缩。水平向右的外力()f t 作用在左杆中点处,假设摆杆与支点之间没有摩擦与阻尼,而且位移足够小,满足近似式sin θθ=,cos 1θ=。 (1)写出系统的运动微分方程; (2)写出系统的状态方程。 【解】 (1)对左边的质量块,有 ()2111211 cos sin sin cos sin 222 L L L ML f k MgL θθθθθθ=?-?-?-&& 对右边的质量块,有 ()221222 sin sin cos sin 22 L L ML k MgL θθθθθ=?-?-&& 在位移足够小的条件下,近似写成: ()1121 24f kL ML Mg θθθθ=---&& ()2122 4kL ML Mg θθθθ=--&&

2 / 7 1221 334413 44244x x k g k f x x x M L M ML x x k k g x x x M M L =?? ???=-+++ ???? ? =????=-+? ????? &&&& 或写成 11 223 34401 000014420001000044x x k g k x x M L M f ML x x x x k k g M M L ? ? ?? ?????????? ??-+???? ???????????=+???? ????? ??????????????????? ????-+?? ? ? ?????? ? &&&& 二.(本题满分10分) 设一个线性定常系统的状态方程为=x Ax &,其中22R ?∈A 。 若1(0)1?? =??-??x 时,状态响应为22()t t e t e --??=??-?? x ;2(0)1??=??-??x 时,状态响应为 2()t t e t e --?? =??-?? x 。试求当1(0)3??=????x 时的状态响应()t x 。 【解答】系统的状态转移矩阵为()t t e =A Φ,根据题意有 221()1t t t e t e e --????==????--???? A x 22()1t t t e t e e --????==????--???? A x 合并得 2212211t t t t t e e e e e ----????=????----?? ??A 求得状态转移矩阵为 1 22221212221111t t t t t t t t t e e e e e e e e e -----------?????? ?? ==????????------???? ????A 22222222t t t t t t t t e e e e e e e e --------?? -+-+=??--??

现代控制理论实验指导书3-第3章[1]

实验三利用MATLAB求取状态空间模型的相似变换及其标准型、控制系统的不同状态模型实现 实验目的: 1、通过实验掌握线性系统的对角线标准型、约当标准型、模态标准型以及伴随矩阵标准型的表示及相应变换阵的求解; 2、通过编程、上机调试,掌握系统可控性和可观测性的判别方法、系统的可控性和可观测性分解等; 3、加深理解由控制系统传递函数建立能控、能观、约当标准型等不同状态模型的方法。实验原理: 一、线性系统状态空间模型的相似变换及其标准型 (1)将状态空间模型G经变换矩阵T变换为状态空间模型G1; G1=ss2ss(G,T) (2)将状态空间模型G经变换矩阵T变换为其他形式的状态空间模型G1 [G1,T]=canon(G,type) 其中,当type为'companion'、'modal'、'jordan' 时,分别将状态空间模型G变换 为伴随矩阵标准型、模态标准型、约当标准型状态空间模型G1,并得到相应的变 换矩阵T; (3)计算矩阵A的特征值及与特征值对应的对角型变换矩阵D; [V,D]=eig(A) (4)计算矩阵A变换为约当标准型J,并得到变换矩阵V; [V,J]=jordan(A) 二、线性系统可控、可观判别方法与分解 (1)构造系统的可控性判别矩阵Tc; Tc=ctrb(A,B) (2)构造系统的可观测性判别矩阵To; To=obsv(A,C) (3)求取可控Gram矩阵和可观测Gram矩阵; W=gram(G,type) 其中type为'c'时,为求取可控Gram矩阵,type为'o'时,为求取可观测Gram 矩阵。 (4)能控性分解 [Ac,Bc,Cc,Tc,Kc]=ctrbf(A,B,C) 将系统分解为可控子系统和不可控子系统,Tc是变换阵,sum(Kc)是可控状 态的数目; (5)能观测性分解

现代控制理论实验

华北电力大学 实验报告| | 实验名称状态空间模型分析 课程名称现代控制理论 | | 专业班级:自动化1201 学生姓名:马铭远 学号:2 成绩: 指导教师:刘鑫屏实验日期:4月25日

状态空间模型分析 一、实验目的 1.加强对现代控制理论相关知识的理解; 2.掌握用 matlab 进行系统李雅普诺夫稳定性分析、能控能观性分析; 二、实验仪器与软件 1. MATLAB7.6 环境 三、实验内容 1 、模型转换 图 1、模型转换示意图及所用命令 传递函数一般形式: MATLAB 表示为: G=tf(num,den),,其中 num,den 分别是上式中分子,分母系数矩阵。 零极点形式: MATLAB 表示为:G=zpk(Z,P,K) ,其中 Z,P ,K 分别表示上式中的零点矩阵,极点矩阵和增益。 传递函数向状态空间转换:[A,B,C,D] = TF2SS(NUM,DEN); 状态空间转换向传递函数:[NUM,DEN] = SS2TF(A,B,C,D,iu)---iu 表示对系统的第 iu 个输入量求传递函数;对单输入 iu 为 1。

例1:已知系统的传递函数为G(S)= 2 2 3 24 11611 s s s s s ++ +++ ,利用matlab将传递函数 和状态空间相互转换。 解:1.传递函数转换为状态空间模型: NUM=[1 2 4];DEN=[1 11 6 11]; [A,B,C,D] = tf2ss(NUM,DEN) 2.状态空间模型转换为传递函数: A=[-11 -6 -11;1 0 0;0 1 0];B=[1;0;0];C=[1 2 4];D=[0];iu=1; [NUM,DEN] = ss2tf(A,B,C,D,iu); G=tf(NUM,DEN) 2 、状态方程状态解和输出解 单位阶跃输入作用下的状态响应: G=ss(A,B,C,D);[y,t,x]=step(G);plot(t,x). 零输入响应 [y,t,x]=initial(G,x0)其中,x0 为状态初值。

现代控制理论1-8三习题库

信息工程学院现代控制理论课程习题清单

正确理解线性系统的数学描述,状态空间的基本概念,熟练掌握状态空间的表达式,线性变换,线性定常系统状态方程的求解方法。 重点容:状态空间表达式的建立,状态转移矩阵和状态方程的求解,线性变换的基本性质,传递函数矩阵的定义。要求熟练掌握通过传递函数、微分方程和结构图建立电路、机电系统的状态空间表达式,并画出状态变量图,以及能控、能观、对角和约当标准型。难点:状态变量选取的非唯一性,多输入多输出状态空间表达式的建立。 预习题 1.现代控制理论中的状态空间模型与经典控制理论中的传递函数有何区别? 2.状态、状态空间的概念? 3.状态方程规形式有何特点? 4.状态变量和状态矢量的定义? 5.怎样建立状态空间模型? 6.怎样从状态空间表达式求传递函数? 复习题 1.怎样写出SISO系统状态空间表达式对应的传递函数阵表达式 2.若已知系统的模拟结构图,如何建立其状态空间表达式? 3.求下列矩阵的特征矢量 ? ? ? ? ? ? ? ? ? ? - - = 2 5 10 2 2 1- 1 A 4.(判断)状态变量的选取具有非惟一性。 5.(判断)系统状态变量的个数不是惟一的,可任意选取。 6.(判断)通过适当选择状态变量,可将线性定常微分方程描述其输入输 出关系的系统,表达为状态空间描述。 7.(判断)传递函数仅适用于线性定常系统;而状态空间表达式可以在定 常系统中应用,也可以在时变系统中应用. 8.如果矩阵A 有重特征值,并且独立特征向量的个数小于n ,则只能化为 模态阵。 9.动态系统的状态是一个可以确定该系统______(结构,行为)的信息集 合。这些信息对于确定系统______(过去,未来)的行为是充分且必要 的。 10.如果系统状态空间表达式中矩阵A, B, C, D中所有元素均为实常数时, 则称这样的系统为______(线性定常,线性时变)系统。如果这些元素 中有些是时间t 的函数,则称系统为______(线性定常,线性时变)系 统。 11.线性变换不改变系统的______特征值,状态变量)。 12.线性变换不改变系统的______(状态空间,传递函数矩阵)。 13.若矩阵A 的n 个特征值互异,则可通过线性变换将其化为______(对 角阵,雅可比阵)。 14.状态变量是确定系统状态的______(最小,最大)一组变量。 15.以所选择的一组状态变量为坐标轴而构成的正交______(线性,非线性) 空间,称之为______(传递函数,状态空间)。

现代控制理论实验报告

现代控制理论实验报告

实验一系统能控性与能观性分析 一、实验目的 1.理解系统的能控和可观性。 二、实验设备 1.THBCC-1型信号与系统·控制理论及计算机控制技术实验平台; 三、实验容 二阶系统能控性和能观性的分析 四、实验原理 系统的能控性是指输入信号u对各状态变量x的控制能力,如果对于系统任意的初始状态,可以找到一个容许的输入量,在有限的时间把系统所有的状态引向状态空间的坐标原点,则称系统是能控的。 对于图21-1所示的电路系统,设iL和uc分别为系统的两个状态变量,如果电桥中 则输入电压ur能控制iL和uc状态变量的变化,此时,状态是能控的。反之,当 时,电桥中的A点和B点的电位始终相等,因而uc不受输入ur的控制,ur只能改变iL的大小,故系统不能控。 系统的能观性是指由系统的输出量确定所有初始状态的能力,如果在有限的时间根据系统的输出能唯一地确定系统的初始状态,则称系统能观。为了说明图21-1所示电路的能观性,分别列出电桥不平衡和平衡时的状态空间表达式: 平衡时:

由式(2)可知,状态变量iL和uc没有耦合关系,外施信号u只能控制iL的变化,不会改变uc的大小,所以uc不能控。基于输出是uc,而uc与iL无关连,即输出uc中不含有iL的信息,因此对uc的检测不能确定iL。反之式(1)中iL与uc有耦合关系,即ur的改变将同时控制iL和uc的大小。由于iL与uc的耦合关系,因而输出uc的检测,能得到iL 的信息,即根据uc的观测能确定iL(ω) 五、实验步骤 1.用2号导线将该单元中的一端接到阶跃信号发生器中输出2上,另一端接到地上。将阶跃信号发生器选择负输出。 2.将短路帽接到2K处,调节RP2,将Uab和Ucd的数据填在下面的表格中。然后将阶跃信号发生器选择正输出使调节RP1,记录Uab和Ucd。此时为非能控系统,Uab和Ucd没有关系(Ucd始终为0)。 3.将短路帽分别接到1K、3K处,重复上面的实验。 六、实验结果 表20-1Uab与Ucd的关系 Uab Ucd

现代控制理论基础试卷及答案.doc

现代控制理论基础考试题 西北工业大学考试题(A卷) (考试时间120分钟) 学院:专业:姓名:学号: 一.填空题(共27分,每空1.5分) 1.现代控制理论基础的系统分析包括___________和___________。 2._______是系统松弛时,输出量、输入量的拉普拉斯变换之比。 3.线性定常系统齐次状态方程是指系统___________时的状态方程。 4.推导离散化系统方程时在被控对象上串接一个开关,该开关以T 为周期进行开和关。这个开关称为_______。 5.离散系统的能______和能______是有条件的等价。 6.在所有可能的实现中,维数最小的实现称为最小实现,也称为 __________。 7.构造一个与系统状态x有关的标量函数V(x, t)来表征系统的广义 能量, V(x, t)称为___________。 8.单输入-单输出线性定常系统,其BIBO稳定的充要条件是传递函

数的所有极点具有______。 9. 控制系统的综合目的在于通过系统的综合保证系统稳定,有满意的_________、_________和较强的_________。 10. 所谓系统镇定问题就是一个李亚普诺夫意义下非渐近稳定的 系统通过引入_______,以实现系统在李亚普诺夫意义下渐近稳定的问题。 11. 实际的物理系统中,控制向量总是受到限制的,只能在r 维控 制空间中某一个控制域内取值,这个控制域称为_______。 12. _________和_________是两个相并行的求解最优控制问题的 重要方法。 二. 判断题(共20分,每空2分) 1. 一个系统,状态变量的数目和选取都是惟一的。 (×) 2. 传递函数矩阵的描述与状态变量选择无关。 (√) 3. 状态方程是矩阵代数方程,输出方程是矩阵微分方程。 (×) 4. 对于任意的初始状态)(0t x 和输入向量)(t u ,系统状态方程的解存在并且 惟 一 。 (√) 5. 传递函数矩阵也能描述系统方程中能控不能观测部分的特性。 (×)

现代控制理论实验指导书1-第1章zyx

实验 一 利用MATLAB 进行线性系统的 模型转换及联结 实验目的: 1、学习系统状态空间模型的建立方法、了解状态空间模型与传递函数、零极点模型之间相互转换的方法; 2、通过编程、上机调试,掌握系统状态空间模型与传递函数相互转换的方法。 3、通过编程、上机调试,掌握系统模型的联结方法。 实验原理: 一、连续系统 (1)状态空间模型 x Ax Bu y C x D u =+=+ (1.1) 其中:n x R ∈是系统的状态向量,m u R ∈是控制输入,p y R ∈是测量输出,A 是n n ?维状态矩阵、B 是n m ?维输入矩阵、C 是p n ?维输出矩阵、D 是直接转移矩阵。在MA TLAB 中,用(A,B,C,D )矩阵组表示。 系统传递函数和状态空间模型之间的关系如式(1.2)所示。 1 ()()G s C sI A B D -=-+ (1.2) (2)传递函数模型 11101 110 ()(),() m m m m n n n n b s b s b s b num s H s m n den s a s a s a s a ----++++= = ≤++++ 在MA TLAB 中,直接用分子/分母的系数表示 1010[,,,][,,,] m m n n num b b b den a a a --== (3)零极点增益模型 1212()()()()()()() m n s z s z s z H s k s p s p s p ---=--- 在MA TLAB 中,用[z, p, k]矢量组表示,即

1212[,,,];[,,,];[]; m n z z z z p p p p k k === 例1.1 求由以下状态空间模型所表示系统的传递函数, []11223312 301000012552551201 0x x x x u x x x y x x ???????? ????????=+????????????????----???????? ?? ??=?????? 编写并执行以下的m-文件: A=[0 1 0;0 0 1;-5 –25 –5]; B=[0;25;-120]; C=[1 0 0]; D=[0]; [num,den]=ss2tf(A,B,C,D) 得到: num= 0 -0.0000 25.0000 5.0000 den= 1.0000 5.0000 25.0000 5.0000 因此,所求系统的传递函数是 3 2 255()5255 s G s s s s += +++ 例1.2 考虑由以下状态空间模型描述的系统: 1112221122011125401100 1x x u x x u y u y u ??????????=+??????????--?????????? ??????=???????????? 求其传递函数矩阵。 解 这是一个2输入2输出系统。描述该系统的传递函数是一个22?维矩阵,它包括4个传递函数: 11122122()()()()()()()()Y s U s Y s U s Y s U s Y s U s ?? ? ???

现代控制理论实验指导书1

实验一、线性系统的数学模型转换 一、 实验目的 1、学习系统状态空间模型的建立方法; 2、通过编程、上机调试,掌握系统状态空间模型之间转换的方法。 二、 实验主要仪器与设备 1、PC 计算机1台; 2、MATLAB6.X 或MATLAB7.X 软件1套。 三、 实验原理 1、假设系统是单输入单输出系统(简称SISO ),其输入、输出分别用u(t)、y(t)来表示,则线性系统的传递函数模型: 1110 111a s a s a s b s b s b s b )s (U )s (Y )s (G n n n m m m m ++++++++== ---- 在MATLAB 语言中,可以利用传递函数分子、分母多项式的系数向量进行描述,分子num 、分母den 多项式的系数向量分别为: num=[b m ,b m-1,…,b 0],den=[1,a n-1,…,a 0] 这里分子、分母多项式系数按s 的降幂排列。 2、假设系统是单输入单输出系统(简称SISO ),其零极点模型为: ) p s ()p s )(p s () z s ()z s )(z s (K )s (G n m ------= 2121 其中z i (i=1,2,…,m)和p i (i=1,2,…,n)分别为系统的零点和极点,K 为系统 增益。[z]、[p]、[k]分别为系统的零极点和增益向量。 3、设系统的状态空间模型为: Du Cx y Bu Ax x +=+= 在MATLAB 中,系统状态空间用(A ,B ,C ,D )矩阵组表示,MATLAB 提供了建立状态空间模型的函数ss(),其常见的调用格式为:sys=ss(A ,B ,C ,D )。

现代控制理论实验报告河南工业大学

河南工业大学 现代控制理论实验报告姓名:朱建勇 班级:自动1306 学号:201323020601

现代控制理论 实验报告 专业: 自动化 班级: 自动1306 姓名: 朱建勇 学号: 201323020601 成绩评定: 一、实验题目: 线性系统状态空间表达式的建立以及线性变换 二、实验目的 1. 掌握线性定常系统的状态空间表达式。学会在MATLAB 中建立状态空间模型的方法。 2. 掌握传递函数与状态空间表达式之间相互转换的方法。学会用MATLAB 实现不同模型之 间的相互转换。 3. 熟悉系统的连接。学会用MATLAB 确定整个系统的状态空间表达式和传递函数。 4. 掌握状态空间表达式的相似变换。掌握将状态空间表达式转换为对角标准型、约当标准 型、能控标准型和能观测标准型的方法。学会用MATLAB 进行线性变换。 三、实验仪器 个人笔记本电脑 Matlab R2014a 软件 四、实验内容 1. 已知系统的传递函数 (a) ) 3()1(4)(2++=s s s s G

(b) 3486)(22++++=s s s s s G

(c) 6 1161)(232+++++=z z z z z z G (1)建立系统的TF 或ZPK 模型。 (2)将给定传递函数用函数ss( )转换为状态空间表达式。再将得到的状态空间表达式用函 数tf( )转换为传递函数,并与原传递函数进行比较。 (3)将给定传递函数用函数jordants( )转换为对角标准型或约当标准型。再将得到的对角 标准型或约当标准型用函数tf( )转换为传递函数,并与原传递函数进行比较。 (4)将给定传递函数用函数ctrlts( )转换为能控标准型和能观测标准型。再将得到的能控标 准型和能观测标准型用函数tf( )转换为传递函数,并与原传递函数进行比较。

现代控制理论课程报告

现代控制理论课程总结 学习心得 从经典控制论发展到现代控制论,是人类对控制技术认识上的一次飞跃。现代控制论是用状态空间方法表示,概念抽象,不易掌握。对于《现代控制理论》这门课程,在刚拿到课本的时候,没上张老师的课之前,咋一看,会认为开课的内容会是上学期学的控制理论基础的累赘或者简单的重复,更甚至我还以为是线性代数的复现呢!根本没有和现代控制论联系到一起。但后面随着老师讲课的风格的深入浅出,循循善诱,发现和自己想象的恰恰相反,张老师以她特有的讲课风格,精心准备的ppt 课件,向我们展示了现代控制理论发展过程,以及该掌握内容的方方面面,个人觉得,我们不仅掌握了现代控制理论的理论知识,更重要的是学会了掌握这门知识的严谨的逻辑思维和科学的学习方法,对以后学习其他知识及在工作上的需要大有裨益,总之学习了这门课让我受益匪浅。 由于我们学习这门课的课时不是很多,并结合我们学生学习的需求及所要掌握的课程深入程度,张老师根据我们教学安排需要,我们这学期学习的内容主要有:1.绪论;2.控制系统的状态表达式;3.控制系统状态表达式的解;4.线性系统的能空性和能观性;5.线性定常系统的综合。而状态变量和状态空间表达式、状态转移矩阵、系统的能控性与能观性以及线性定常系统的综合是本门课程的主要学习内容。当然学习的内容还包括老师根据多年教学经验及对该学科的研究的一些深入见解。 在现代科学技术飞速发展中,伴随着学科的高度分化和高度综合,各学科之间相互交叉、相互渗透,出现了横向科学。作为跨接于自然科学和社会科学的具有横向科学特点的现代控制理论已成为我国理工科大学高年级的必修课。 经典控制理论的特点 经典控制理论以拉氏变换为数学工具,以单输入-单输出的线性定常系统为主要的研究对象。将描述系统的微分方程或差分方程变换到复数域中,得到系统的传递函数,并以此作为基础在频率域中对系统进行分析和设计,确定控制器的结构和参数。通常是采用反馈控制,构成所谓闭环控制系统。经典控制理论具有明显的局限性,突出的是难以有效地应用于时变系统、多变量系统,也难以揭示系统更为深刻的特性。当把这种理论推广到更为复杂的系统时,经典控制理论就显得无能为力了,这是因为它的以下几个特点所决定。 1.经典控制理论只限于研究线性定常系统,即使对最简单的非线性系统也是无法处理的;这就从本质上忽略了系统结构的内在特性,也不能处理输入和输出皆大于1的系统。实际上,大多数工程对象都是多输入-多输出系统,尽管人们做了很多尝试,但是,用经典控制理论设计这类系统都没有得到满意的结果;2.经典控制理论采用试探法设计系统。即根据经验选用合适的、简单的、工程上易于实现的控制器,然后对系统进行分析,直至找到满意的结果为止。虽然这种设计方法具有实用等很多完整,从而促使现代控制理论的发展:对经典理论的精确化、数学化及理论化。优点,但是,在推理上却是不能令人满意的,效果也

《现代控制理论基础》考试题B卷及答案

一.(本题满分10分) 请写出如图所示电路当开关闭合后系统的状态方程和输出方程。其中状态变量的设置如图所示,系统的输出变量为流经电感2L 的电流强度。 【解答】根据基尔霍夫定律得: 1113222332 1L x Rx x u L x Rx x Cx x x ++=?? +=??+=? 改写为1 13111 22 322 312 11111R x x x u L L L R x x x L L x x x C C ? =--+?? ?=-+???=-?? ,输出方程为2y x = 写成矩阵形式为

[]11 111222 2 331231011000110010R L L x x L R x x u L L x x C C x y x x ??? --???????????????? ???????=-+???? ??????? ??????????????? ? ???-?????? ? ? ??? ?? ?=??? ?????? 二.(本题满分10分) 单输入单输出离散时间系统的差分方程为 (2)5(1)3()(1)2()y k y k y k r k r k ++++=++ 回答下列问题: (1)求系统的脉冲传递函数; (2)分析系统的稳定性; (3)取状态变量为1()()x k y k =,21()(1)()x k x k r k =+-,求系统的状态空间表达式; (4)分析系统的状态能观性。 【解答】 (1)在零初始条件下进行z 变换有: ()()253()2()z z Y z z R z ++=+ 系统的脉冲传递函数: 2()2 ()53 Y z z R z z z +=++ (2)系统的特征方程为 2()530D z z z =++= 特征根为1 4.3z =-,20.7z =-,11z >,所以离散系统不稳定。 (3)由1()()x k y k =,21()(1)()x k x k r k =+-,可以得到 21(1)(2)(1)(2)(1)x k x k r k y k r k +=+-+=+-+ 由已知得 (2)(1)2()5(1)3()y k r k r k y k y k +-+=-+-112()5(1)3()r k x k x k =-+- []212()5()()3()r k x k r k x k =-+-123()5()3()x k x k r k =--- 于是有: 212(1)3()5()3()x k x k x k r k +=--- 又因为 12(1)()()x k x k r k +=+ 所以状态空间表达式为

现代控制理论实验报告3

实验三 利用MATLAB 导出连续状态空间模型的离散化模型 实验目的: 1、基于对象的一个连续时间状态空间模型,导出其相应的离散化状态空间模型; 2、通过编程、上机调试,掌握离散系统运动分析方法。 实验原理: 给定一个连续时间系统的状态空间模型: ()()()()()() x t Ax t Bu t y t Cx t Du t =+=+ (3.1) 状态空间模型(3.1)的输入信号()u t 具有以下特性: ()(),u t u kT kT t kT T =≤≤+ (3.2) 已知第k 个采样时刻的状态()x kT 和第k 个采样时刻到第1k +个采样时刻间的输入()()u t u kT =,可得第1k +个采样时刻(1)k T +处的状态 (1)((1))((1))()((1))()k T kT x k T k T kT x kT k T Bu d τττ++=Φ+-+Φ+-? (3.3) 其中: ((1))((1))A k T kT AT k T kT e e +-Φ+-== ((1))((1))A k T k T e ττ+-Φ+-= 由于输入信号在两个采样时刻之间都取常值,故对式(3.3)中的积分式进行一个时间变量替换(1)k T στ=+-后,可得 0((1))()()()AT A x k T e x kT e d Bu kT τ σσ+=+? (3.4) 另一方面,以周期T 对输出方程进行采样,得到 ()()()y kT Cx kT Du kT =+ 在周期采样的情况下,用k 来表示第k 个采样时刻kT 。因此,连续时间状态空间模型

(3.1)的离散化方程可以写成 (1)()()()()()()() x k G T x k H T u k y k Cx k Du k +=+=+ (3.5) 其中: 0()()()AT A G T e H T e d B τσσ==? (3.6) 已知系统的连续时间状态空间模型,MATLAB 提供了计算离散化状态空间模型中状态矩阵和输入矩阵的函数: [G ,H]=c2d(A,B,T) 其中的T 是离散化模型的采样周期。 实验步骤 1、导出连续状态空间模型的离散化模型,采用MA TLAB 的m-文件编程; 2、在MA TLAB 界面下调试程序,并检查是否运行正确。 例3.1 已知一个连续系统的状态方程是 010()()()2541x t x t u t ????=+????--???? 若取采样周期0.05T =秒,试求相应的离散化状态空间模型。 编写和执行以下的m-文件: 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 因此,所求的离散化状态空间模型是 0.97090.04480.0012(1)()()1.12120.79150.0448x k x k u k ????+=+????-????

现代控制理论实验报告

现代控制理论实验报告 组员: 院系:信息工程学院 专业: 指导老师: 年月日

实验1 系统的传递函数阵和状态空间表达式的转换 [实验要求] 应用MATLAB 对系统仿照[例]编程,求系统的A 、B 、C 、阵;然后再仿照[例]进行验证。并写出实验报告。 [实验目的] 1、学习多变量系统状态空间表达式的建立方法、了解系统状态空间表达式与传递函数相互转换的方法; 2、通过编程、上机调试,掌握多变量系统状态空间表达式与传递函数相互转换方法。 [实验内容] 1 设系统的模型如式示。 p m n R y R u R x D Cx y Bu Ax x ∈∈∈?? ?+=+=& 其中A 为n ×n 维系数矩阵、B 为n ×m 维输入矩阵 C 为p ×n 维输出矩阵,D 为传递阵,一般情况下为0,只有n 和m 维数相同时,D=1。系统的传递函数阵和状态空间表达式之间的关系如式示。 D B A SI C s den s num s G +-== -1)() () (()( 式中,)(s num 表示传递函数阵的分子阵,其维数是p ×m ;)(s den 表示传递函数阵的按s 降幂排列的分母。 2 实验步骤 ① 根据所给系统的传递函数或(A 、B 、C 阵),依据系统的传递函数阵和状态空间表达式之间的关系如式,采用MATLA 的编程。注意:ss2tf 和tf2ss 是互为逆转换的指令; ② 在MATLA 界面下调试程序,并检查是否运行正确。 ③ [] 已知SISO 系统的状态空间表达式为,求系统的传递函数。

, 2010050010000100001 0432143 21u x x x x x x x x ? ? ??? ? ??????-+????????????????????????-=????????????&&&&[]??? ? ? ???????=43210001x x x x y 程序: A=[0 1 0 0;0 0 -1 0;0 0 0 1;0 0 5 0]; B=[0;1;0;-2]; C=[1 0 0 0]; D=0; [num,den]=ss2tf(A,B,C,D,1) 程序运行结果: num = 0 den = 0 0 0 从程序运行结果得到:系统的传递函数为: 2 4253 )(s s s S G --= ④ [] 从系统的传递函数式求状态空间表达式。 程序: num =[0 0 1 0 -3]; den =[1 0 -5 0 0]; [A,B,C,D]=tf2ss(num,den) 程序运行结果: A = 0 5 0 0 1 0 0 0 0 1 0 0

利用MATLAB设计状态观测器—现代控制理论实验报告

实验六利用MATLAB设计状态观测器 ******* 学号 1121*****

实验目的: 1、学习观测器设计算法; 2、通过编程、上机调试,掌握基于观测器的输出反馈控制系统设计方法。 实验原理: 1、全阶观测器模型: () ()x Ax Bu L y Cx A LC x Bu Ly =++-=-++ 由极点配置和观测器设计问题的对偶关系,也可以应用MATLAB 中极点配置的函数来确定所需要的观测器增益矩阵。例如,对于单输入单输出系统,观测器的增益矩阵可以由函数 L=(acker(A ’,C ’,V))’ 得到。其中的V 是由期望的观测器极点所构成的向量。类似的,也可以用 L=(place(A ’,C ’,V))’ 来确定一般系统的观测器矩阵,但这里要求V 不包含相同的极点。 2、降阶观测器模型: ???w Aw By Fu =++ b x w Ly =+ 基于降阶观测器的输出反馈控制器是: ????()[()]()b a b b a b w A FK w B F K K L y u K w K K L y =-+-+=--+ 对于降阶观测器的设计,使用MATLAB 软件中的函数 L=(acker(Abb’,Aab’,V))’ 或 L=(place(Abb’,Aab’,V))’ 可以得到观测器的增益矩阵L 。其中的V 是由降阶观测器的期望极点所组成的向量。 实验要求 1.在运行以上例程序的基础上,考虑图6.3所示的调节器系统,试针对被控对象设计基于全阶观测器和降 阶观测器的输出反馈控制器。设极点配置部分希望的闭环极点是1,22j λ=-± (a ) 对于全阶观测器,1 8μ=-和 28μ=-; (b ) 对于降阶观测器,8μ=-。 比较系统对下列指定初始条件的响应: (a ) 对于全阶观测器: 1212(0)1,(0)0,(0)1,(0)0x x e e ==== (b ) 对于降阶观测器: 121(0)1,(0)0,(0)1x x e === 进一步比较两个系统的带宽。

《现代控制理论》.

《现代控制理论》实验指导书 俞立徐建明编 浙江工业大学信息工程学院 2007年4月

实验1 利用MATLAB 进行传递函数和状态空间模型间的转换 1.1 实验设备 PC 计算机1台(要求P4-1.8G 以上),MATLAB6.X 或MATLAB7.X 软件1套。 1.2 实验目的 1、学习系统状态空间模型的建立方法、了解状态空间模型与传递函数相互转换的方法; 2、通过编程、上机调试,掌握系统状态空间模型与传递函数相互转换的方法。 1.3 实验原理说明 设系统的状态空间模型是 x Ax Bu y Cx Du =+?? =+?& (1.1) p y R ∈其中:n x R ∈是系统的状态向量,是控制输入,m u R ∈是测量输出,A 是维状态矩阵、是维输入矩阵、是n n ×m n ×n p ×B D C 维输出矩阵、是直接转移矩阵。系统传递函数和状态空间模型之间的关系如式(1.2)所示。 1()()G s C sI A B D ?=?+ (1.2) 表示状态空间模型和传递函数的MATLAB 函数。 函数ss (state space 的首字母)给出了状态空间模型,其一般形式是 SYS = ss(A,B,C,D) 函数tf (transfer function 的首字母)给出了传递函数,其一般形式是 G=tf(num,den) 其中的num 表示传递函数中分子多项式的系数向量(单输入单输出系统),den 表示传递函数中分母多项式的系数向量。 函数tf2ss 给出了传递函数的一个状态空间实现,其一般形式是 [A,B,C,D]=tf2ss(num,den) 函数ss2tf 给出了状态空间模型所描述系统的传递函数,其一般形式是 [num,den]=ss2tf(A,B,C,D,iu) 其中对多输入系统,必须确定iu 的值。例如,若系统有三个输入和,则iu 必须是1、2或3,其中1表示,2表示,3表示。该函数的结果是第iu 个输入到所有输出的传递函数。 21,u u 3u 1u 2u 3u 1.4 实验步骤 1、根据所给系统的传递函数或(A 、B 、C 、D ),依据系统的传递函数阵和状态空间模型之间的关系(1.2),采用MATLAB 的相关函数编写m-文件。 2、在MATLAB 界面下调试程序。 例1.1 求由以下状态空间模型所表示系统的传递函数, ?? ? ? ? ?????=?????? ?????+???????????????????????=??????????321321321]001[1202505255100010x x x y u x x x x x x &&&

《现代控制理论》实验报告

. 现代控制理论实验报告 组员: 院系:信息工程学院 专业: 指导老师: 年月日

实验1 系统的传递函数阵和状态空间表达式的转换 [实验要求] 应用MATLAB 对系统仿照[例1.2]编程,求系统的A 、B 、C 、阵;然后再仿照[例1.3]进行验证。并写出实验报告。 [实验目的] 1、学习多变量系统状态空间表达式的建立方法、了解系统状态空间表达式与传递函数相互转换的方法; 2、通过编程、上机调试,掌握多变量系统状态空间表达式与传递函数相互转换方法。 [实验内容] 1 设系统的模型如式(1.1)示。 p m n R y R u R x D Cx y Bu Ax x ∈∈∈?? ?+=+= (1.1) 其中A 为n ×n 维系数矩阵、B 为n ×m 维输入矩阵 C 为p ×n 维输出矩阵,D 为传递阵,一般情况下为0,只有n 和m 维数相同时,D=1。系统的传递函数阵和状态空间表达式之间的关系如式(1.2)示。 D B A SI C s den s num s G +-== -1)() () (()( (1.2) 式(1.2)中,)(s num 表示传递函数阵的分子阵,其维数是p ×m ;)(s den 表示传递函数阵的按s 降幂排列的分母。 2 实验步骤 ① 根据所给系统的传递函数或(A 、B 、C 阵),依据系统的传递函数阵和状态空间表达式之间的关系如式(1.2),采用MATLA 的file.m 编程。注意:ss2tf 和tf2ss 是互为逆转换的指令; ② 在MATLA 界面下调试程序,并检查是否运行正确。 ③ [1.1] 已知SISO 系统的状态空间表达式为(1.3),求系统的传递函数。

现代控制理论课程学习心得.

现代控制理论基础课程总结 学院:__机械与车辆学院_ 学号:____2120120536___ 姓名:_____王文硕______ 专业:___交通运输工程__ 《现代控制理论》学习心得 摘要:从经典控制论发展到现代控制论,是人类对控制技术认识上的一次飞跃。现代控制论是用状态空间方法表示,概念抽象,不易掌握。对于《现代控制理论》这门课程,本人选择了最为感兴趣的几个知识点进行分析,并谈一下对于学习这么课程的一点心得体会。 关键词:现代控制理论;学习策略;学习方法;学习心得 在现代科学技术飞速发展中,伴随着学科的高度分化和高度综合,各学科之间相互交叉、相互渗透,出现了横向科学。作为跨接于自然科学和社会科学的具有横向科学特点的现代控制理论已成为我国理工科大学高年级的选修课和研究生的学位课。 从经典控制论发展到现代控制论,是人类对控制技术认识上的一次飞跃。经典控制论限于处理单变量的线性定常问题,在数学上可归结为单变量的常系数微分方程问题。现代控制论面向多变量控制系统的问题,它是以矩阵论和线性空间理论作为主要数学工具,并用计算机来实现。现代控制论来源于工程实际,具有明显的工程技术特点,但它又属于系统论范畴。系统论的特点是在数学描述的基础上,充分利用现有的强有力的数学工具,对系统进行分析和综合。系统特性的度量,即表现为状态;系统状态的变化,即为动态过程。状态和过程在自然界、社会和思维中普遍存在。现代控制论是在引入状态和状态空间的概念基础上发展起来的。状态和状态空间早在古典动力学中得到了广泛的应用。在5O年代Mesarovic教授曾提出“结构不确定

性原理”,指出经典理论对于多变量系统不能确切描述系统的内在结构。后来采用状态变量的描述方法,才完全表达出系统的动力学性质。6O年代初,卡尔曼(Kalman从外界输入对状态的控制能力以及输出对状态的反映能力这两方面提出能控制性和能观性的概念。这些概念深入揭示了系统的内在特性。实际上,现代控制论中所研究的许多基本问题,诸如最优控制和最佳估计等,都是以能能控性和能观性作为“解”的存在条件的。 现代控制理论是一门工程理论性强的课程,在自学这门课程时,深感概念抽象,不易掌握;学完之后,从工程实际抽象出一个控制论方面的课题很难,如何用现代控制论的基本原理去解决生产实际问题则更困难,这是一个比较突出的矛盾。 对现代控制理论来说,首先遇到的问题是将实际系统抽象为数学模型,有了数学模型,才能有效地去研究系统的各个方面。许多机电系统、经济系统、管理系统常可近似概括为线 性系统。线性系统和力学中质点系统一样,是一个理想模型,理想模型是研究复杂事物的主要方法,是对客观事物及其变化过程的一种近似反映。现代控制论从自然和社会现象中抽象出的理想模型,用状态空间方法表示,再作理论上的探讨。 线性系统理论是一门严谨的科学。抽象严谨是其本质的属性,一旦体会到数学抽象的丰富含义,再不会感到枯燥乏味。线性系统理论是建立在线性空间的基础上的,它大量使用矩阵论中深奥的内容,比如线性变换、子空间等,是分析中最常用的核心的内容,要深入理解,才能体会其物理意义。比如,状态空间分解就是一种数学分析方法。在控制论中把实际系统按能控性和能观性化分成四个子空间,它们有着确切的物理概念。线性变换的核心思想在于:线性系统的基本性质(如能控性、能观性、极点、传递函数等在线性变换下都不改变,从而可将系统化为特定形式,使问题的研究变得简单而透彻。 在学习现代控制理论教材时,发现不少“引而未发”的问题。由于作者有丰富的教学经验与学术造诣,能深入浅出阐述问题,发人深省。因此,通过自己反复阅读教材,就能理解这些内容。比如,在探讨线性系统的传递函数的零极点相消时,如果潜伏着

相关文档
相关文档 最新文档