现代控制实验--状态反馈器和状态观测器的设计

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

状态反馈器和状态观测器的设计

一、实验设备

PC 计算机,MATLAB 软件,控制理论实验台,示波器

二、实验目的

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

法;

(2)掌握用极点配置的方法

(3)掌握状态观测器设计方法

(4)学会使用MATLAB工具进行初步的控制系统设计

三、实验原理及相关知识

(1)设系统的模型如式所示

若系统可控,则必可用状态反馈的方法进行极点配置来改变系统性能。

引入状态反馈后系统模型如下式所示:

(2)所给系统可观,则系统存在状态观测器

四、实验内容

(1)某系统状态方程如下

1010

0134326x x u •⎡⎤⎡⎤⎢⎥⎢⎥=+⎢⎥⎢⎥⎢⎥⎢⎥----⎣⎦⎣⎦

[]100y x =

理想闭环系统的极点为[]123---.

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

代码:

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

B=[1; 3; -6];

P=[-1 -2 -3];

K=acker(A,B,P)

Ac=A-B*K

eig(Ac)

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

代码:

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

B=[1;3;-6];

eig(A)'

P=[-1 -2 -3];

K=place(A,B,P)

eig(A-B*K)'

(3)设计全维状态观测器,要求状态观测器的极点为[]

123---

代码:

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

b=[1;3;-6];

c=[1 0 0];

p=[-1 -2 -3];

a1=a';

b1=c';

c1=b';

K=acker(a1,b1,p);

h=(K)'

ahc=a-h*c

(2)已知系统状态方程为:

1010

0134326x x u •⎡⎤⎡⎤⎢⎥⎢⎥=+⎢⎥⎢⎥⎢⎥⎢⎥----⎣⎦⎣⎦

[]100y x =

(1)求状态反馈增益阵K ,使反馈后闭环特征值为[-1 -2 -3]

; 代码:

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

b=[1;3;-6];

p=[-1 -2 -3];

k=acker(A,b,p)

A-b*k

eig(A-b*k)

(2)检验引入状态反馈后的特征值与希望极点是否一致。

(3)比较状态反馈前后的系统阶跃响应。

代码:

A1=[0 1 0;0 0 1;-4 -3 -2];

B1=[1;3;-6];

C1=[1 0 0];

D1=[0];

G1=ss(A1,B1,C1,D1);

[y1,t1,x1]=step(G1);

P=[-1 -2 -3];

K=acker(A1,B1,P);

abk=A1-B1*K;

A2=abk;

B2=B1;

C2=C1;

D2=D1;

G2=ss(A2,B2,C2,D2);

[y2,t2,x2]=step(G2);

hold on

plot(t1,x1)

plot(t2,x2)

(4)设计全阶状态观测器,要求状态观测器的极点为[-5 -6 -7]。(5)检验全维状态观测器的特征值与希望特征值是否一致.

代码:

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

b=[1;3;-6];

c=[1 0 0];

p=[-5 -6 -7];

a1=a';

b1=c';

c1=b';

K=acker(a1,b1,p);

h=(K)'

ahc=a-h*c

eig(a1-b1*K)'

五、实验心得

通过本次实验我学习了解了闭环系统极点配置定理及算法以及全维状态观测器设计方法同时又了解到如何用极点配置和状态观测器设计方法,并且学会了使用MATLAB工具进行初步的控制系统设计。

相关文档
最新文档