现代控制理论实验报告 2.docx

上传人:b****1 文档编号:1428160 上传时间:2023-05-01 格式:DOCX 页数:23 大小:146.75KB
下载 相关 举报
现代控制理论实验报告 2.docx_第1页
第1页 / 共23页
现代控制理论实验报告 2.docx_第2页
第2页 / 共23页
现代控制理论实验报告 2.docx_第3页
第3页 / 共23页
现代控制理论实验报告 2.docx_第4页
第4页 / 共23页
现代控制理论实验报告 2.docx_第5页
第5页 / 共23页
现代控制理论实验报告 2.docx_第6页
第6页 / 共23页
现代控制理论实验报告 2.docx_第7页
第7页 / 共23页
现代控制理论实验报告 2.docx_第8页
第8页 / 共23页
现代控制理论实验报告 2.docx_第9页
第9页 / 共23页
现代控制理论实验报告 2.docx_第10页
第10页 / 共23页
现代控制理论实验报告 2.docx_第11页
第11页 / 共23页
现代控制理论实验报告 2.docx_第12页
第12页 / 共23页
现代控制理论实验报告 2.docx_第13页
第13页 / 共23页
现代控制理论实验报告 2.docx_第14页
第14页 / 共23页
现代控制理论实验报告 2.docx_第15页
第15页 / 共23页
现代控制理论实验报告 2.docx_第16页
第16页 / 共23页
现代控制理论实验报告 2.docx_第17页
第17页 / 共23页
现代控制理论实验报告 2.docx_第18页
第18页 / 共23页
现代控制理论实验报告 2.docx_第19页
第19页 / 共23页
现代控制理论实验报告 2.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

现代控制理论实验报告 2.docx

《现代控制理论实验报告 2.docx》由会员分享,可在线阅读,更多相关《现代控制理论实验报告 2.docx(23页珍藏版)》请在冰点文库上搜索。

现代控制理论实验报告 2.docx

现代控制理论实验报告2

 

现代控制理论实验报告

 

学院:

信息科学与工程学院

专业:

电气工程及其自动化

班级:

0802

学号:

0909081024

姓名:

曾高峰

指导教师:

袁艳

2010-12-31

 

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

1、实验设备

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

2、实验目的

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

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

3、实验原理说明

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

4、实验步骤

1根据所给系统的传递函数或A、B、C矩阵,依据系统的传递函数阵和状态空间表达式之间的关系式,采用MATLAB编程。

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

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

(1)将其输入到MATLAB工作空间;

(2)获得系统的状态空间模型。

1.

num=[1,5,8];den=[1,2,6,3,9];G=tf(num,den)

Transferfunction:

s^2+5s+8

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

s^4+2s^3+6s^2+3s+9

2.G1=ss(G)

a=

x1x2x3x4

x1-2-1.5-0.75-2.25

x24000

x30100

x40010

b=

u1

x12

x20

x30

x40

c=

x1x2x3x4

y100.1250.6251

d=

u1

y10

Continuous-timemodel.

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

(1)将其输入到MATLAB工作空间;

(2)求系统的传递函数。

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

B=[1;3;-6];

C=[1,0,0];

D=zeros(1,1);G=ss(A,B,C,D)

a=

x1x2x3

x1010

x2001

x3-4-3-2

b=

u1

x11

x23

x3-6

c=

x1x2x3

y1100

d=

u1

y10

Continuous-timemodel.

>>G1=tf(G)

Transferfunction:

s^2+5s+3

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

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

 

实验2利用MATLAB求解系统的状态方程

1、实验设备

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

2、实验目的

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

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

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

3、实验原理说明

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

4、实验步骤

(1)根据所给系统的状态方程,依据系统状态方程的解的表达式,采用MATLAB编程。

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

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

(1)

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

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

expm(A*0.5)

ans=

0.84520.2387

-0.47730.1292

(2)

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

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

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

(3)

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

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

t=[0:

0.04:

4];u=1+exp(-t).*cos(3*t);G=ss(A,B,C,D);[y,t,x]=lsim(G,u,t);

plot(t,x)

(4)

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

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

>>t=[0:

0.01:

2];u=0;x0=[1;2];

>>[y,t,x]=initial(G,x0,t);

>>plot(t,x)

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

下的状态响应曲线。

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

t=[0:

0.04:

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

plot(t,x)

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

t=[0:

0.04:

4];

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

u=cos(t);

x0=[1;1];

[y,t,x]=lsim(G,u,t,x0);

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

若取采样周期

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

A=[0,1;-25,-4];

>>B=[0;1];

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

G=0.97090.0448

-1.12120.7915

H=0.0012

0.0448

(2)分析不同采样周期下,离散化状态空间模型的结果。

答:

T=0.1G=0.89230.0790

-1.97590.5762

H=0.0043

0.0790

T=0.2G=0.64010.1161

-2.90170.1758

H=0.0144

0.1161

说明采样周期越大,G的第一列越小,第二列越大;H越大!

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

1、实验设备

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

2、实验目的

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

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

3、实验原理说明

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

    P124~125“4.3.3 利用MATLAB判定系统能观测性”

4、实验步骤

1根据系统的系数阵A和输入阵B,依据能控性判别式,对所给系统采用MATLAB编程;在MATLAB界面下调试程序,并检查是否运行正确。

2根据系统的系数阵A和输出阵C,依据能观性判别式,对所给系统采用MATLAB编程;在MATLAB界面下调试程序,并检查是否运行正确。

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

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

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

Uc=[B,A*B,A^2*B,A^3*B];

rank(Uc)

ans=

3

说明系统能控!

题3.2 已知系数阵A和输出阵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;C*A^3];

rank(Uo)

ans=

3

说明系统可观测!

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

(1)判断系统的状态能控性;

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

B=[1;0;-1];

C=[1,1,0];

Uc=[B,A*B,A^2*B,A^3*B];

rank(Uo)

ans=

3

故系统是能控的!

(2)判断系统的状态能观测性;

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

B=[1;0;-1];

C=[1,1,0];

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

rank(Uc)

ans=

3

故系统是可观测的!

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

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

B=[1;0;-1];

C=[1,1,0];

Uc=[B,A*B,A^2*B,A^3*B];

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

>>rank(Uo)

ans=

3

>>rank(Uc)

ans=

3

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

B=[1;0;-1];

C=[1,1,0];

Qc=ctrb(A,B)

Qc=

118

034

-1-2-2

>>symss;det(s*eye(3)-A)

ans=

s^3-s^2-12*s+10

>>Q=Qc*[-12,-1,1;-1,1,0;1,0,0],P=inv(Q)

Q=

-501

130

12-1-1

P=

0.13640.04550.1364

-0.04550.3182-0.0455

1.68180.22730.6818

>>Ab=P*A*Q,Bb=P*B,Cb=C*Q

Ab=

0.00001.0000-0.0000

001.0000

-10.000012.00001.0000

Bb=

-0.0000

0

1.0000

Cb=

-431

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

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

B=[1;0;-1];

C=[1,1,0];

Qo=obsv(A,C)

Qo=

110

531

13131

>>symss;det(s*eye(3)-A)

ans=

s^3-s^2-12*s+10

>>P=[-12,-1,1;-1,1,0;1,0,0]*Qo,Q=inv(P)

P=

-4-20

421

110

Q=

-0.50000-1.0000

0.500002.0000

1.00001.00000

>>Ao=P*A*Q,Bo=P*B,Co=C*Q

Ao=

00-10

1012

011

Bo=

-4

3

1

Co=

001

 

实验4系统稳定性分析

1、实验设备

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

2、实验目的

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

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

3、实验原理说明

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

4、实验步骤

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

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

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

(1)利用李雅普诺夫第一方法判断其稳定性;

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

B=[1;0;-1];

C=[1,1,0];

D=[0];

flag=0;

[z,p,k]=ss2zp(A,B,C,D,1);

disp('Systemzero-points,pole-pointsandgainare:

');

Systemzero-points,pole-pointsandgainare:

>>z

z=

1.0000

-4.0000

>>p

p=

-3.3978

3.5745

0.8234

>>k

k=

1

n=length(A);

fori=1:

n

ifreal(p(i))>0

flag=1;

end

end

ifflag==1

disp('Systemisunstable');

else

disp('Systemisstable');

end

Systemisunstable

(2)利用李雅普诺夫第二方法判断其稳定性。

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

%Q=I

Q=eye(3,3);

P=lyap(A,Q);

Flag=0;

n=length(A);

fori=1:

n

det(P(1:

i,1:

i))

if(det(P(1:

i,1:

i))<=0)

flag=1;

end

end

ifflag==1

disp('Systemisunstable');

else

disp('Systemisstable');

end

ans=

-2.1250

 

ans=

-8.7812

 

ans=

6.1719

Systemisunstable

 

实验5利用MATLAB实现极点配置、设计状态观测器

1、实验设备

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

2、实验目的

①学习闭环系统极点配置定理及算法,学习全维状态观测器设计方法;

②通过用MATLAB编程、上机调试,掌握极点配置算法,设计全维状态观测器。

3、实验原理说明

参考教材P204~207“6.2.5 利用MATLAB实现极点配置”

P227~230“6.4.4 利用MATLAB设计状态观测器”

4、实验步骤

(1)掌握采用直接计算法、采用Ackermann公式计算法、调用place函数法分别进行闭环系统极点配置;

(2)掌握利用MATLAB设计全维状态观测器。

题5.1 某系统状态方程如下

理想闭环系统的极点为

,试

(1)采用直接计算法进行闭环系统极点配置;

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

B=[1;3;-6];

P=[-1,-2,-3];

symsk1k2k3s;

K=[k1k2k3];

eg=Simple(det(s*diag(diag(ones((size(A)))))-A+B*K))

f=1;

fori=1:

1:

3

f=Simple(f*(s-P(i)));

end

f=f-eg;

[k1k2k3]=solve(jacobian(f1,'s'),subs(f1,'s',0),subs(f,'s',0))

eg=

s^3+(2-6*k3+3*k2+k1)*s^2+(3-13*k3+5*k1)*s+4+3*k1-4*k2-12*k3

k1=

194/131

k2=

98/131

k3=

-6/131

(2)采用Ackermann公式计算法进行闭环系统极点配置;

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

B=[1;3;-6];

P=[-1,-2,-3];

K=acker(A,B,P)

K=

1.48090.7481-0.0458

>>Ac=A-B*K

Ac=

-1.48090.25190.0458

-4.4427-2.24431.1374

4.88551.4885-2.2748

>>eig(Ac)

ans=

-3.0000

-2.0000

-1.0000

(3)采用调用place函数法进行闭环系统极点配置

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

B=[1;3;-6];

P=[-1,-2,-3];

>>eig(A)'

ans=

-1.6506-0.1747-1.5469i-0.1747+1.5469i

>>K=place(A,B,P)

K=

1.48090.7481-0.0458

>>eig(A-B*K)

ans=

-3.0000

-2.0000

-1.0000

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

设计全维状态观测器,要求状态观测器的极点为

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

b=[1;3;6];

c=[1,0,0];

n=3;

ob=obsv(a,c);

roam=rank(ob);

ifroam==n

disp('Systemisobserbable')

elseifroam~=n

disp('Systemisnoobserbable')

end

Systemisobserbable

>>a=[0,1,0;0,0,1;-4,-3,-2];

b=[1;3;6];

c=[1,0,0];

p1=[-1-2-3];

a1=a';

b1=c';

c1=b';

K=acker(a1,b1,p1);

h=(K)'

h=

4

0

-10

>>ahc=a-h*c

ahc=

-410

001

6-3-2

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2