实验 5 利用 MATLAB 设计状态观测器
5.1 实验设备
同实验 1。
5.2 实验目的
1、学习观测器设计算法;
2、通过编程、上机调试,掌握基于观测器的输出反馈控制系统设计方法。
5.3 实验原理说明
5.3.1 全阶观测器设计
考虑如下的线性时不变系统
⎩⎨
⎧
=
+=
Cxy
BuAxx&
(5.1)
其中: 和 分别是系统的 维状态向量、m维控制输入向量和 维测量输出向量,
和 是已知的适当维数常数矩阵。根据系统模型(5.1)和输入输出信息来人为地构
造一个系统,使得其输出 随着时间的推移逼近系统的真实状态 ,即
ux, y pn
CBA,
)(~ tx )(tx
0)]()(~[lim =−∞→ ttt xx
通常称 为 的重构状态或状态估计值,而这个用以实现系统状态重构的系统为状态
观测器。
)(~ tx )(tx
龙伯格观测器具有以下结构:
u
C
y
L
x~ y~
-
Cxy
BuAxx
=
+=&
BuxAx += ~~&
图 5.1 状态估计的闭环处理方法
其中的矩阵 是误差信号的加权矩阵。观测器模型是 L
LyBuxLCA
xCyLBuxAx
++−=
−++=
~)(
)~(~~&
(5.2)
其中: 是观测器的 维状态,L 是一个x~ pn× 维的待定矩阵。 n
xxe ~−= 的动态方程: 状态估计误差
eLCA
LCxxLCAAx
LyBuxLCABuAx
xxe
)(
~)(
~)(
~
−=
−−−=
−−−−+=
−= &&&
(5.3)
16
LCA −根据线性时不变系统的稳定性结论,若矩阵 的所有特征值均在左半开复平面中,即
矩阵 的所有特征值都具有负实部,则误差动态系统(5.3)是渐近稳定的,从而对
任意的初始误差 ,随着时间
LCA −
)0(e ∞→t ,误差向量 都将趋向于零。即无论系统的初始状
态 是什么,状态估计模型(5.2)的初始状态 可以任意选取,随着时间的推移,状
态估计模型(5.2)的状态
)(te
)0(~x)0(x
x~ 将趋于系统的实际状态,从而实现系统状态的重构。由此可见,
只要通过适当选取矩阵 ,使得矩阵 LCA −L 的所有特征值都具有负实部,则状态估计模
型(5.2)就是系统(5.1)的一个状态观测器。
由极点配置和观测器设计问题的对偶关系,也可以应用 MATLAB 中极点配置的函数来
确定所需要的观测器增益矩阵。例如,对于单输入单输出系统,观测器的增益矩阵可以由函
数
L=(acker(A’,C’,V))’
得到。其中的 V 是由期望的观测器极点所构成的向量。类似的,也可以用
L=(place(A’,C’,V))’
来确定一般系统的观测器矩阵,但这里要求 V 不包含相同的极点。
5.3.2 降阶观测器设计
假定系统(5.1)的矩阵C具有形式 ](对一般结构的矩阵 ,需要作适当的变换)。
根据矩阵C的结构,将系统状态 分划成两部分:
C1[ 0
x
⎥⎦
⎤⎢⎣
⎡=
b
ax
x
x
其中的 是一个标量。由 ax
a
b
a x
x
y =⎥⎦
⎤⎢⎣
⎡==
x
Cx ]01[
可知: 恰好是系统的输出,它能被直接测量得到。 是bxax 1−n 维向量,是状态向量中不能
直接测量的部分。将状态空间模型(5.1)中的矩阵 和 作相应的分块,则该状态空间模
型可以写成
A B
u
B
B
xAA
A
x ⎥⎦
⎤⎢⎣
⎡+⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡=⎥⎦
⎤⎢⎣
⎡
b
a
b
a
bbba
abaa
b
a xAx
&
&
(5.4)
其中的 是要估计的状态,将已知信号和未知信号分离,可以得到 bx
babaaaaa
bababbbb
xAx
x
xAuB
uBΑxAx
=−−
++=
&
& )(
进而,将其和全阶观测器设计时的标准模型(5.2)相比较,可得以下对应项之间的关系:
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
5.1 状态空间模型的对应关系
全阶观测器 降阶观测器
bx
~x~
bbA A
uBA baba x + Bu
y uBaaaaa xAx −−&
17
abA C
L 1)1( ×−n 维矩阵) (L( 维矩阵) 1×n
根据上表给出的对应关系及全阶观测器的模型
yLBuxLCAx ++−= ~)(~&
可以得到估计不可直接测量状态 的观测器 bx
)(~)(~ uBLuBAxLAAx aaaaababababbbb xAxx −−+++−= && (5.5)
然而,方程(5.5)还不是所要的降阶观测器。因为在方程(5.5)中,用到了 的微分。
由于 就是测量输出信号,而测量信号往往含有噪声和误差,对这样的信号进行微分会放
大噪声和误差,这在实际应用中是应该避免的。因此有必要消除式(5.5)中的 。
ax
ax
ax&
通过将式(5.5)中的微分项放在一起可以克服上面讲到的困难,即得到:
x L (A LA )(x L ) [(A LA )L A L ]
(B LB )u
b bb ab b bb ab ba aa
b a
y y− = − − + − + −
+ −
&% & % A y
(5.6)
定义
FLBB
BLALA
ALAA
wLx
wLx
ˆ
ˆˆ
ˆ
~~
=−
=−+
=−
=−
=−
ab
aaba
abbb
b
b
A
y
y
则式(5.6)可以写成
uFBwAw ˆˆ~ˆ~ ++= y& (5.7)
式(5.7)就是要设计的降阶观测器,不可直接测量的状态分量 的估计量由下式给出: bx
yb Lwx += ~~
由于
y
y
yx
b
a ⎥⎦
⎤⎢⎣
⎡+⎥⎦
⎤⎢⎣
⎡=⎥⎦
⎤⎢⎣
⎡
+=⎥⎦
⎤⎢⎣
⎡=
L
w
ILwx
x
1~0
~~
~
记
⎥⎦
⎤⎢⎣
⎡=
I
C
0ˆ , ⎥⎦
⎤⎢⎣
⎡=
L
D
1ˆ
则
yDwCx ˆ~ˆ~ +=
w~ x~y 。 上式用降阶观测器的状态 和测量值 给出了系统状态 的估计值x
基于状态估计值的反馈控制器是
u Kx
K w (K K L)b a b y
= −
= − − +
%
%
因此,基于降阶观测器的输出反馈控制器是
⎪⎩
⎪⎨⎧ +−−=
+−+−=
y
y
bab
bab
)(~
)](ˆˆ[~)ˆˆ(~
LKKwKu
LKKFBwKFAw&
(5.8)
18
基于降阶观测器的输出反馈控制系统结构图如下:
ٛ∫
A
ٛ∫
B
-K
C
u x y
Fˆ
Aˆ
BˆCˆ
Dˆ
x~
w~
降阶观测器
图 5.2 基于降阶观测器的反馈控制系统
wwxxe ~~ −=−= bb 满足方程 容易证明,误差向量
eLAAe )( abbb −=& (5.9)
因此,若 完全能观,则一定可以通过选取一个适当的矩阵L ,使得误差动态系
统(5.9)具有任意给定的极点,这样的矩阵L 可以应用全阶观测器的设计方法来设计。矩
阵 也称为是系统的降阶观测器增益矩阵。
),( bbab AA
L
对于降阶观测器的设计,使用 MATLAB 软件中的函数
L=(acker(Abb’,Aab’,V))’
或
L=(place(Abb’,Aab’,V))’
可以得到观测器的增益矩阵 。其中的 V 是由降阶观测器的期望极点所组成的向量。 L
5.4 实验步骤
1、基于观测器的输出反馈控制系统的设计,采用 MATLAB 的 m-文件编程;
2、在 MATLAB 界面下调试程序,并检查是否运行正确。
例 5.1 给定线性定常系统
[ ]xy
uxx
001
244.1
0
0
145.33965.0244.1
100
010
=
⎥⎥
⎥
⎦
⎤
⎢⎢
⎢
⎣
⎡
+
⎥⎥
⎥
⎦
⎤
⎢⎢
⎢
⎣
⎡
−
=&
3551 j+−=μ试应用 MATLAB 软件,设计一个全维观测器,使得观测器极点是 ,
3551 j−−=μ 103 −=μ 。 ,
配置全阶观测器极点的M-文件为:
a=[0 1 0;0 0 1;1.244 0.3965 -3.145];
19
b=[0;0;1.244];
c=[1 0 0];
v=[-5+j*5*sqrt(3) -5-j*5*sqrt(3) -10];
l=(acker(a',c',v))'
执行以上程序可得:
16.855
147.3875
544.3932
L
⎡ ⎤⎢ ⎥= ⎢ ⎥⎢ ⎥⎣ ⎦
相应的全维观测器是:
( )x A LC x Bu Ly= − + +&% %
[ ]
0 1 0 16.855 0 16.855
0 0 1 147.3875 1 0 0 0 147.3875
1.244 0.3965 3.145 544.3932 1.244 544.3932
x u y
⎛ ⎞⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡⎜ ⎟⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢= − + +⎜ ⎟⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢⎜ ⎟⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢−⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣⎝ ⎠
%
⎤⎥⎥⎥⎦
16.855 1 0 0 16.855
147.3875 0 1 0 147.3875
543.1492 0.3965 3.145 1.244 544.3932
x u y
−⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥= − + +⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥− −⎣ ⎦ ⎣ ⎦
%
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
例 5.2 考虑例 5.1 给出的系统。假设输出 y 可准确量测。试应用 MATLAB 软件,设计一个
降阶观测器,使得其极点是 3551 j−−=μ3551 j+−=μ , 。
1y x=由于输出 可准确量测,同时y ,因此可得:
0
1.244ba
A ⎡ ⎤= ⎢ ⎥⎣ ⎦
0 1
0.3965 3.145bb
A ⎡ ⎤= ⎢ ⎥−⎣ ⎦[ ]0aaA = [ ]1 0abA = , , ,
0
1.244b
B ⎡ ⎤= ⎢ ⎥⎣ ⎦0aB = ,
执行以下的M-文件:
Aaa=[0];
Aab=[1 0];
Aba=[0;1.244];
Abb=[0 1;0.3965 -3.145];
Ba=[0];
Bb=[0;1.244];
v=[-5+j*5*sqrt(3) -5-j*5*sqrt(3)];
l=(acker(Abb',Aab',v))'
Ahat=Abb-l*Aab
Bhat=Ahat*l+Aba-l*Aaa
Fhat=Bb-l*Ba
可得:
20
6.855
78.8375
L ⎡ ⎤= ⎢ ⎥⎣ ⎦, ,
6.855 1ˆ
78.441 3.145
A
−⎡ ⎤= ⎢ ⎥− −⎣ ⎦
31.8465ˆ
784.4132
B ⎡ ⎤= ⎢ ⎥−⎣ ⎦,
0ˆ
1.244
F ⎡ ⎤= ⎢ ⎥⎣ ⎦
即所设计的降阶观测器为:
6.855 1 31.8465 0ˆ ˆ ˆ
78.441 3.145 784.4132 1.244
w Aw By Fu w y u
−⎡ ⎤ ⎡ ⎤ ⎡= + + = + +⎢ ⎥ ⎢ ⎥ ⎢− − −⎣ ⎦ ⎣ ⎦ ⎣
&% % % ⎤⎥⎦
5.5 实验要求
在运行以上例程序的基础上,考虑图 5.3 所示的调节器系统,试针对被控对象设计基于
全阶观测器和降阶观测器的输出反馈控制器。设极点配置部分希望的闭环极点是
3222,1 j±−=λ ,希望的观测器极点是
81 −=μ 82 −=μ(a) 对于全阶观测器, ; 和
8−=μ 。 (b) 对于降阶观测器,
比较系统对下列指定初始条件的响应:
(a) 对于全阶观测器:
0)0(,1)0(,0)0(,1)0( 2121 ==== eexx
(b) 对于降阶观测器:
,1)0(,0)0(,1)0( 121 === exx
进一步比较两个系统的带宽。
4
( 2)s s +
yy−0r =
−
控制器 u
图 5.3 调节器系统
21