状态观测器的设计

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

实验五、状态观测器的设计

一、实验目的

1、 掌握全维观测器的构成及设计方法。

2、 研究状态反馈极点配置在状态观测器中的应用。

3、 掌握利用MATLAB 程序代码实现给定系统状态观测器的设计。

二、实验设备

计算机一台

三、实验原理

利用状态反馈配置系统极点时,需要用传感器测量状态变量来实现反馈,但通常系统状态不可或不易测得,于是提出利用测量系统的输入量和输出量重构状态,建立状态观测器,使之在一定指标下和系统的真实状态()x t 等价,即lim[()()]0t x t x t ∧

→∝-=。 1、 全维状态观测器

利用输出测量值和输入控制值观测系统的全部状态。

实验范例:

给定线性定常系统为

x Ax Bu ∙

=+ y Cx =

[]010,,102001A B C ⎡⎤⎡⎤===⎢⎥⎢⎥⎣⎦⎣⎦

利用状态观测器构成全维状态反馈系统,期望系统的闭环极点为qj Φ1=-2.5+j*4 qj Φ2=0 -2.5-j*4,全维状态观测器的期望特征值Gcqj1=-10,Gcqj2=-10。采用MATLAB 确定相应的状态反馈增益矩阵K 和观测器增益矩阵Ke 。

MATLAB 的程序代码

A=[0 1;20 0];

B=[0;1];

C=[1 0];

D=[0];

Q=[B,A*B];

Rank(Q)

运行结果如下:

ans = %能控测矩阵的秩

2

结果说明,系统完全可控,因此可实现极点任意配置。

=[-2.5+j*4 0;0 -2.5-j*4];

qj

Poly(J) %计算期望闭环极点的多项式

ans =

1.0000 5.0000 2

2.2500

;

Qbd=polyvalm(poly(J),A);

K=[0 1]*inv(Q)*Qbd %计算状态反馈增益矩阵K

K =

42.2500 5.0000

Obv=[C',A'*C'];

Rank(Obv) %能观测矩阵的秩

ans =

2

Gcqj=[-10 0;0 -10];

Poly(-2.5+j*4 0;0 -2.5-j*4) %计算期望观测器极点的多项式ans =

1 20 100

Gqbd=polyvalm(poly(Gcqj),A);

Ke=Gqbd*(inv(Obv'))*[0;1] %计算观测器增益矩阵Ke Ke =

20

120

G=[eig(A-B*K);eig(A-Ke*C)]

G =

-2.5000 + 4.0000i

-2.5000 - 4.0000i

-10.0000

-10.0000

poly(G)

ans =

1.0e+003 *

0.0010 0.0250 0.2222 0.9450 2.2250

2、降维状态观测器

对于q 维输出系统,由传感器直接得到输出量,经线性变换可获得q 个状态变量,因此观测器只需估计n q -个状态变量,称其为n q -维状态观测器。

实验范例:已知被控系统动态方程为

112233120031000211x x x x u x x ∙∙∙⎡⎤⎢⎥⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥=-+⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣

⎦⎣⎦⎣⎦⎢⎥⎣⎦

[]123111x y x x ⎡⎤⎢⎥=-⎢⎥⎢⎥⎣⎦

设计(n-q)维状态观测器,期望特征值为-4。

MATLAB 的程序代码:

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

C=[-1 1 1]

RT=[C',A'*C',(A')^2*C']; %计算被控系统可观测的秩 Rank(RT)

ans =

3

由于3n =,q =1,故n q -=2为重构状态观测器的维数。 D=[1 0 0;0 1 0]

D =

1 0 0

0 1 0

Q=[D;C]

Q =

1 0 0

0 1 0

-1 1 1

T=inv(Q)

T =

1 0 0

0 1 0

1 -1 1

CC=C*T

CC =

0 0 1

AA=Q*A*T

AA =

1 2 0

4 -2 1

4 -3 2

AA11=[1 2;4 -2];

AA21=[4 -3];

P=poly(AA11)

P =

1 1 -10

a1=P(2);

a2=P(3);

RT=[AA21' AA11'*AA21']; W=[a1 1;1 0]

W =

1 1

1 0

W=[a1 1;1 0];

Qw=[-4 -4];

PP=poly(Qw)

PP =

1 8 16

aa1=PP(2);

aa2=PP(3);

H=inv(W*RT')*[aa2-a2;aa1-a1] %观测器增益矩阵为:

H =

4.8438

4.1250

四、实验内容:

利用MATLAB 设计状态观测器:已知线性时不变系统

122201101011x x u ∙---⎡⎤⎡⎤⎢⎥⎢⎥=-+⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦ []110y x =

1) 设计特征值为-3,-3和-4的一个三维状态观测器。

2) 设计特征值为-3和-4的二维状态观测器。

五、实验报告

1、 分别画出实验内容所要求的两种状态观测器的结构图。

2、 编写MATLAB 程序代码,计算出实验内容所要求的两种状态观测

器增益矩阵。

六、预习要求

1、 阅读实验内容。

2、 推导全维状态观测器与降维状态观测器的特征方程及动态方程。

3、 总结状态观测器的设计步骤。

相关文档
最新文档