滑動模式觀測器 (Sliding mode observer)是應用滑動模式控制 的狀態觀測器 ,應用滑動模式控制的技術,使觀測器的狀態可以接近受控體的狀態。
滑動模式控制屬於非線性控制 ,滑動模式觀測器會有非線性高增益觀測器的特性,可以在有限時間內將觀測器的誤差收斂到零。此外,切換模式的觀測器類似卡尔曼滤波 ,可以允許一些程度的量測雜訊[ 1] [ 2] 。
以下將线性时不变系统 的倫伯傑觀測器( Luenberger observer),修改為滑動模式觀測器。在滑動模式觀測器中,若進入滑動模式,觀測器動態的階數會減一。在以下例子中,單一估測狀態的狀態誤差可以在有限時間內收斂到零。Drakunov最早提出[ 3] ,非線性系統可以建立滑動模式觀測器,讓所有估測狀態的估測誤差都在有限時間(而且是任意短的時間內)收斂到零。
考慮以下的LTI系統
{
x
˙
=
A
x
+
B
u
y
=
[
1
0
0
⋯
]
x
=
x
1
{\displaystyle {\begin{cases}{\dot {\mathbf {x} }}=A\mathbf {x} +B\mathbf {u} \\y={\begin{bmatrix}1&0&0&\cdots &\end{bmatrix}}\mathbf {x} =x_{1}\end{cases}}}
其中狀態向量
x
≜
(
x
1
,
x
2
,
…
,
x
n
)
∈
R
n
{\displaystyle \mathbf {x} \triangleq (x_{1},x_{2},\dots ,x_{n})\in \mathbb {R} ^{n}}
,
u
≜
(
u
1
,
u
2
,
…
,
u
r
)
∈
R
r
{\displaystyle \mathbf {u} \triangleq (u_{1},u_{2},\dots ,u_{r})\in \mathbb {R} ^{r}}
是輸入向量,輸出utput y 是純量,等於
x
{\displaystyle \mathbf {x} }
狀態向量的第一個狀態。令
A
≜
[
a
11
A
12
A
21
A
22
]
{\displaystyle A\triangleq {\begin{bmatrix}a_{11}&A_{12}\\A_{21}&A_{22}\end{bmatrix}}}
其中
a
11
{\displaystyle a_{11}}
是純量,對應第一個狀態
x
1
{\displaystyle x_{1}}
對自己的影響
A
21
∈
R
(
n
−
1
)
{\displaystyle A_{21}\in \mathbb {R} ^{(n-1)}}
是行向量,對應第一個狀態對其他狀態的影響
A
22
∈
R
(
n
−
1
)
×
(
n
−
1
)
{\displaystyle A_{22}\in \mathbb {R} ^{(n-1)\times (n-1)}}
是矩陣,對應其他各狀態彼此之間的影響
A
12
∈
R
1
×
(
n
−
1
)
{\displaystyle A_{12}\in \mathbb {R} ^{1\times (n-1)}}
是列向量,對應其他狀態對第一個狀態的影響
目的是要設計高增益的狀態觀測器,可以在只有量測資訊
y
=
x
1
{\displaystyle y=x_{1}}
的情形下,估測狀態向量。因此,令向量
x
^
=
(
x
^
1
,
x
^
2
,
…
,
x
^
n
)
∈
R
n
{\displaystyle {\hat {\mathbf {x} }}=({\hat {x}}_{1},{\hat {x}}_{2},\dots ,{\hat {x}}_{n})\in \mathbb {R} ^{n}}
是n 狀態的觀測值,觀測器的形式為
x
^
˙
=
A
x
^
+
B
u
+
L
v
(
x
^
1
−
x
1
)
{\displaystyle {\dot {\hat {\mathbf {x} }}}=A{\hat {\mathbf {x} }}+B\mathbf {u} +Lv({\hat {x}}_{1}-x_{1})}
其中
v
:
R
→
R
{\displaystyle v:\mathbb {R} \to \mathbb {R} }
是估測狀態
x
^
1
{\displaystyle {\hat {x}}_{1}}
和輸出
y
=
x
1
{\displaystyle y=x_{1}}
之間誤差的非線性函數,
L
∈
R
n
{\displaystyle L\in \mathbb {R} ^{n}}
是估測器增益向量,其作用類似典型的線性狀態觀測器。同樣的,也令
L
=
[
−
1
L
2
]
{\displaystyle L={\begin{bmatrix}-1\\L_{2}\end{bmatrix}}}
其中
L
2
∈
R
(
n
−
1
)
{\displaystyle L_{2}\in \mathbb {R} ^{(n-1)}}
是列向量。另外,令
e
=
(
e
1
,
e
2
,
…
,
e
n
)
∈
R
n
{\displaystyle \mathbf {e} =(e_{1},e_{2},\dots ,e_{n})\in \mathbb {R} ^{n}}
是狀態估測誤差,也就是說
e
=
x
^
−
x
{\displaystyle \mathbf {e} ={\hat {\mathbf {x} }}-\mathbf {x} }
。誤差的動態方程為
e
˙
=
x
^
˙
−
x
˙
=
A
x
^
+
B
u
+
L
v
(
x
^
1
−
x
1
)
−
A
x
−
B
u
=
A
(
x
^
−
x
)
+
L
v
(
x
^
1
−
x
1
)
=
A
e
+
L
v
(
e
1
)
{\displaystyle {\begin{aligned}{\dot {\mathbf {e} }}&={\dot {\hat {\mathbf {x} }}}-{\dot {\mathbf {x} }}\\&=A{\hat {\mathbf {x} }}+B\mathbf {u} +Lv({\hat {x}}_{1}-x_{1})-A\mathbf {x} -B\mathbf {u} \\&=A({\hat {\mathbf {x} }}-\mathbf {x} )+Lv({\hat {x}}_{1}-x_{1})\\&=A\mathbf {e} +Lv(e_{1})\end{aligned}}}
其中
e
1
=
x
^
1
−
x
1
{\displaystyle e_{1}={\hat {x}}_{1}-x_{1}}
是第一個狀態估測值的估測誤差。可以設計非線性控制律v 控制滑動流形
0
=
x
^
1
−
x
1
{\displaystyle 0={\hat {x}}_{1}-x_{1}}
使估測量
x
^
1
{\displaystyle {\hat {x}}_{1}}
在有限時間內(也就是
x
^
1
=
x
1
{\displaystyle {\hat {x}}_{1}=x_{1}}
)追到實際狀態
x
1
{\displaystyle x_{1}}
。因此,滑動控制切換函數為
σ
(
x
^
1
,
x
^
)
≜
e
1
=
x
^
1
−
x
1
.
{\displaystyle \sigma ({\hat {x}}_{1},{\hat {x}})\triangleq e_{1}={\hat {x}}_{1}-x_{1}.}
為了要保持在滑動流形上,
σ
˙
{\displaystyle {\dot {\sigma }}}
和
σ
{\displaystyle \sigma }
需永遠維持異號(
σ
σ
˙
<
0
{\displaystyle \sigma {\dot {\sigma }}<0}
在幾乎處處
x
{\displaystyle \mathbf {x} }
都要成立)。 不過
σ
˙
=
e
˙
1
=
a
11
e
1
+
A
12
e
2
−
v
(
e
1
)
=
a
11
e
1
+
A
12
e
2
−
v
(
σ
)
{\displaystyle {\dot {\sigma }}={\dot {e}}_{1}=a_{11}e_{1}+A_{12}\mathbf {e} _{2}-v(e_{1})=a_{11}e_{1}+A_{12}\mathbf {e} _{2}-v(\sigma )}
其中
e
2
≜
(
e
2
,
e
3
,
…
,
e
n
)
∈
R
(
n
−
1
)
{\displaystyle \mathbf {e} _{2}\triangleq (e_{2},e_{3},\ldots ,e_{n})\in \mathbb {R} ^{(n-1)}}
是所有無法量測狀態估測誤差的集合。為了要確保
σ
σ
˙
<
0
{\displaystyle \sigma {\dot {\sigma }}<0}
,令
v
(
σ
)
=
M
sgn
(
σ
)
{\displaystyle v(\sigma )=M\operatorname {sgn} (\sigma )}
其中
M
>
max
{
|
a
11
e
1
+
A
12
e
2
|
}
.
{\displaystyle M>\max\{|a_{11}e_{1}+A_{12}\mathbf {e} _{2}|\}.}
也就是說,正的常數M 需大於系統最可能估計誤差的純量。若M 夠大,可以假設系統會達到
e
1
=
0
{\displaystyle e_{1}=0}
(也就是
x
^
1
=
x
1
{\displaystyle {\hat {x}}_{1}=x_{1}}
)。因為在流形上
e
1
{\displaystyle e_{1}}
是常數(零),也可以推得
e
˙
1
=
0
{\displaystyle {\dot {e}}_{1}=0}
。因此不連續的控制律
v
(
σ
)
{\displaystyle v(\sigma )}
可以用等效的連續控制律
v
eq
{\displaystyle v_{\text{eq}}}
取代,其中
0
=
σ
˙
=
a
11
e
1
⏞
=
0
+
A
12
e
2
−
v
eq
⏞
v
(
σ
)
=
A
12
e
2
−
v
eq
.
{\displaystyle 0={\dot {\sigma }}=a_{11}{\mathord {\overbrace {e_{1}} ^{{}=0}}}+A_{12}\mathbf {e} _{2}-{\mathord {\overbrace {v_{\text{eq}}} ^{v(\sigma )}}}=A_{12}\mathbf {e} _{2}-v_{\text{eq}}.}
因此
v
eq
⏟
scalar
=
A
12
⏟
1
×
(
n
−
1
)
vector
e
2
⏟
(
n
−
1
)
×
1
vector
.
{\displaystyle {\mathord {\underbrace {v_{\text{eq}}} _{\text{scalar}}}}={\mathord {\underbrace {A_{12}} _{1\times (n-1) \atop {\text{ vector}}}}}{\mathord {\underbrace {\mathbf {e} _{2}} _{(n-1)\times 1 \atop {\text{ vector}}}}}.}
等效的控制律
v
eq
{\displaystyle v_{\text{eq}}}
代表剩下的
(
n
−
1
)
{\displaystyle (n-1)}
個狀態對輸出狀態
x
1
{\displaystyle x_{1}}
軌跡的貢獻。行向量
A
12
{\displaystyle A_{12}}
類似以下誤差子系統的輸出向量
[
e
˙
2
e
˙
3
⋮
e
˙
n
]
⏞
e
˙
2
=
A
2
[
e
2
e
3
⋮
e
n
]
⏞
e
2
+
L
2
v
(
e
1
)
=
A
2
e
2
+
L
2
v
eq
=
A
2
e
2
+
L
2
A
12
e
2
=
(
A
2
+
L
2
A
12
)
e
2
.
{\displaystyle {\mathord {\overbrace {\begin{bmatrix}{\dot {e}}_{2}\\{\dot {e}}_{3}\\\vdots \\{\dot {e}}_{n}\end{bmatrix}} ^{{\dot {\mathbf {e} }}_{2}}}}=A_{2}{\mathord {\overbrace {\begin{bmatrix}e_{2}\\e_{3}\\\vdots \\e_{n}\end{bmatrix}} ^{\mathbf {e} _{2}}}}+L_{2}v(e_{1})=A_{2}\mathbf {e} _{2}+L_{2}v_{\text{eq}}=A_{2}\mathbf {e} _{2}+L_{2}A_{12}\mathbf {e} _{2}=(A_{2}+L_{2}A_{12})\mathbf {e} _{2}.}
為了確保未量測狀態的估測誤差
e
2
{\displaystyle \mathbf {e} _{2}}
可以收斂到零,需選擇
(
n
−
1
)
×
1
{\displaystyle (n-1)\times 1}
向量
L
2
{\displaystyle L_{2}}
使得
(
n
−
1
)
×
(
n
−
1
)
{\displaystyle (n-1)\times (n-1)}
矩陣
(
A
2
+
L
2
A
12
)
{\displaystyle (A_{2}+L_{2}A_{12})}
是赫維茲矩陣 (其特征值實部均為負數)。假設系統有可觀察性 ,可將
A
12
{\displaystyle A_{12}}
視為輸出矩陣(C ),則
e
2
{\displaystyle \mathbf {e} _{2}}
系統可以用和一般線性觀測器相同的方式來穩定。也就是說,
v
eq
{\displaystyle v_{\text{eq}}}
的等效控制可以提供未觀測狀態的量測資訊,可以連續地將其估測值漸近的趨近實際值。平均來說,不連續的控制律
v
=
M
sgn
(
x
^
1
−
x
)
{\displaystyle v=M\operatorname {sgn} ({\hat {x}}_{1}-x)}
強制量測信號的估測量在有限時間內達到零。而且,平均值為零的對稱量測雜訊(正态分布 )只會影響控制律v 的切換頻率,對等效滑動模式控制律
v
eq
{\displaystyle v_{\text{eq}}}
的影響不大。因此,滑動模式觀測器有類似卡尔曼滤波 的特性[ 2] 。
最終版本的觀測器為
x
^
˙
=
A
x
^
+
B
u
+
L
M
sgn
(
x
^
1
−
x
1
)
=
A
x
^
+
B
u
+
[
−
1
L
2
]
M
sgn
(
x
^
1
−
x
1
)
=
A
x
^
+
B
u
+
[
−
M
L
2
M
]
sgn
(
x
^
1
−
x
1
)
=
A
x
^
+
[
B
[
−
M
L
2
M
]
]
[
u
sgn
(
x
^
1
−
x
1
)
]
=
A
obs
x
^
+
B
obs
u
obs
{\displaystyle {\begin{aligned}{\dot {\hat {\mathbf {x} }}}&=A{\hat {\mathbf {x} }}+B\mathbf {u} +LM\operatorname {sgn} ({\hat {x}}_{1}-x_{1})\\&=A{\hat {\mathbf {x} }}+B\mathbf {u} +{\begin{bmatrix}-1\\L_{2}\end{bmatrix}}M\operatorname {sgn} ({\hat {x}}_{1}-x_{1})\\&=A{\hat {\mathbf {x} }}+B\mathbf {u} +{\begin{bmatrix}-M\\L_{2}M\end{bmatrix}}\operatorname {sgn} ({\hat {x}}_{1}-x_{1})\\&=A{\hat {\mathbf {x} }}+{\begin{bmatrix}B&{\begin{bmatrix}-M\\L_{2}M\end{bmatrix}}\end{bmatrix}}{\begin{bmatrix}\mathbf {u} \\\operatorname {sgn} ({\hat {x}}_{1}-x_{1})\end{bmatrix}}\\&=A_{\text{obs}}{\hat {\mathbf {x} }}+B_{\text{obs}}\mathbf {u} _{\text{obs}}\end{aligned}}}
其中
A
obs
≜
A
,
{\displaystyle A_{\text{obs}}\triangleq A,}
B
obs
≜
[
B
[
−
M
L
2
M
]
]
,
{\displaystyle B_{\text{obs}}\triangleq {\begin{bmatrix}B&{\begin{bmatrix}-M\\L_{2}M\end{bmatrix}}\end{bmatrix}},}
u
obs
≜
[
u
sgn
(
x
^
1
−
x
1
)
]
.
{\displaystyle u_{\text{obs}}\triangleq {\begin{bmatrix}\mathbf {u} \\\operatorname {sgn} ({\hat {x}}_{1}-x_{1})\end{bmatrix}}.}
用切換函數
sgn
(
x
^
1
−
x
1
)
{\displaystyle \operatorname {sgn} ({\hat {x}}_{1}-x_{1})}
來輔助控制向量
u
{\displaystyle \mathbf {u} }
,滑動模式觀測器可以用LTI系統來表示。不連續信號
sgn
(
x
^
1
−
x
1
)
{\displaystyle \operatorname {sgn} ({\hat {x}}_{1}-x_{1})}
視為是雙輸入LTI的一個控制「輸入」。
為了簡化說明,這個例子假設滑動模式估測器可以量測單一狀態(例如,輸出
y
=
x
1
{\displaystyle y=x_{1}}
)。用類似的方式也可以用各狀態的加權平均(例如,輸出
y
=
C
x
{\displaystyle \mathbf {y} =C\mathbf {x} }
使用一般的矩陣C )來設計滑動模式估測器。此例子中,滑動模式就會是使估測輸出
y
^
{\displaystyle {\hat {\mathbf {y} }}}
追隨量測輸出
y
{\displaystyle \mathbf {y} }
,沒有誤差的流形(使
σ
(
x
)
≜
y
^
−
y
=
0
{\displaystyle \sigma (\mathbf {x} )\triangleq {\hat {\mathbf {y} }}-\mathbf {y} =\mathbf {0} }
的流形)。
Drakunov曾經提過[ 3] ,可以針對非線性系統設計滑動模式觀測器。此觀測器可以用原始變數的估測值
x
^
{\displaystyle {\hat {x}}}
表示,型式如下
x
^
˙
=
[
∂
H
(
x
^
)
∂
x
]
−
1
M
(
x
^
)
sgn
(
V
(
t
)
−
H
(
x
^
)
)
{\displaystyle {\dot {\hat {x}}}=\left[{\frac {\partial H({\hat {x}})}{\partial x}}\right]^{-1}M({\hat {x}})\operatorname {sgn}(V(t)-H({\hat {x}}))}
其中:
sgn
(
⋅
)
{\displaystyle \operatorname {sgn}({\mathord {\cdot }})}
向量將符號函數 延伸到
n
{\displaystyle n}
維。也就是說
sgn
(
z
)
=
[
sgn
(
z
1
)
sgn
(
z
2
)
⋮
sgn
(
z
i
)
⋮
sgn
(
z
n
)
]
{\displaystyle \operatorname {sgn}(z)={\begin{bmatrix}\operatorname {sgn}(z_{1})\\\operatorname {sgn}(z_{2})\\\vdots \\\operatorname {sgn}(z_{i})\\\vdots \\\operatorname {sgn}(z_{n})\end{bmatrix}}}
針對向量
z
∈
R
n
{\displaystyle z\in \mathbb {R} ^{n}}
.
向量
H
(
x
)
{\displaystyle H(x)}
的分量是輸出函數
h
(
x
)
{\displaystyle h(x)}
以及其各階李導數。其中
H
(
x
)
≜
[
h
1
(
x
)
h
2
(
x
)
h
3
(
x
)
⋮
h
n
(
x
)
]
≜
[
h
(
x
)
L
f
h
(
x
)
L
f
2
h
(
x
)
⋮
L
f
n
−
1
h
(
x
)
]
{\displaystyle H(x)\triangleq {\begin{bmatrix}h_{1}(x)\\h_{2}(x)\\h_{3}(x)\\\vdots \\h_{n}(x)\end{bmatrix}}\triangleq {\begin{bmatrix}h(x)\\L_{f}h(x)\\L_{f}^{2}h(x)\\\vdots \\L_{f}^{n-1}h(x)\end{bmatrix}}}
其中
L
f
i
h
{\displaystyle L_{f}^{i}h}
是
h
{\displaystyle h}
沿著向量場
f
{\displaystyle f}
(也就是沿著非線性系統的
x
{\displaystyle x}
軌跡)的i 階李导数 。在此特例中,系統沒有輸入,也沒有相對次數(relative degree)n ,
H
(
x
(
t
)
)
{\displaystyle H(x(t))}
是輸出
y
(
t
)
=
h
(
x
(
t
)
)
{\displaystyle y(t)=h(x(t))}
以及其
n
−
1
{\displaystyle n-1}
次導數的集合。因為
H
(
x
)
{\displaystyle H(x)}
Jacobian線性化 的倒數存在(讓觀測器可以有良好定義),
H
(
x
)
{\displaystyle H(x)}
的轉換保證是局部的微分同胚 。
增益對角矩陣
M
(
x
^
)
{\displaystyle M({\hat {x}})}
會使下式成立
M
(
x
^
)
≜
diag
(
m
1
(
x
^
)
,
m
2
(
x
^
)
,
…
,
m
n
(
x
^
)
)
=
[
m
1
(
x
^
)
m
2
(
x
^
)
⋱
m
i
(
x
^
)
⋱
m
n
(
x
^
)
]
{\displaystyle M({\hat {x}})\triangleq \operatorname {diag} (m_{1}({\hat {x}}),m_{2}({\hat {x}}),\ldots ,m_{n}({\hat {x}}))={\begin{bmatrix}m_{1}({\hat {x}})&&&&&\\&m_{2}({\hat {x}})&&&&\\&&\ddots &&&\\&&&m_{i}({\hat {x}})&&\\&&&&\ddots &\\&&&&&m_{n}({\hat {x}})\end{bmatrix}}}
其中,針對每一個
i
∈
{
1
,
2
,
…
,
n
}
{\displaystyle i\in \{1,2,\dots ,n\}}
,元素
m
i
(
x
^
)
>
0
{\displaystyle m_{i}({\hat {x}})>0}
而且夠大,以保證會碰到滑動模式。
觀測器向量
V
(
t
)
{\displaystyle V(t)}
會滿足下式
V
(
t
)
≜
[
v
1
(
t
)
v
2
(
t
)
v
3
(
t
)
⋮
v
i
(
t
)
⋮
v
n
(
t
)
]
≜
[
y
(
t
)
{
m
1
(
x
^
)
sgn
(
v
1
(
t
)
−
h
1
(
x
^
(
t
)
)
)
}
eq
{
m
2
(
x
^
)
sgn
(
v
2
(
t
)
−
h
2
(
x
^
(
t
)
)
)
}
eq
⋮
{
m
i
−
1
(
x
^
)
sgn
(
v
i
−
1
(
t
)
−
h
i
−
1
(
x
^
(
t
)
)
)
}
eq
⋮
{
m
n
−
1
(
x
^
)
sgn
(
v
n
−
1
(
t
)
−
h
n
−
1
(
x
^
(
t
)
)
)
}
eq
]
{\displaystyle V(t)\triangleq {\begin{bmatrix}v_{1}(t)\\v_{2}(t)\\v_{3}(t)\\\vdots \\v_{i}(t)\\\vdots \\v_{n}(t)\end{bmatrix}}\triangleq {\begin{bmatrix}y(t)\\\{m_{1}({\hat {x}})\operatorname {sgn}(v_{1}(t)-h_{1}({\hat {x}}(t)))\}_{\text{eq}}\\\{m_{2}({\hat {x}})\operatorname {sgn}(v_{2}(t)-h_{2}({\hat {x}}(t)))\}_{\text{eq}}\\\vdots \\\{m_{i-1}({\hat {x}})\operatorname {sgn}(v_{i-1}(t)-h_{i-1}({\hat {x}}(t)))\}_{\text{eq}}\\\vdots \\\{m_{n-1}({\hat {x}})\operatorname {sgn}(v_{n-1}(t)-h_{n-1}({\hat {x}}(t)))\}_{\text{eq}}\end{bmatrix}}}
其中的
sgn
(
⋅
)
{\displaystyle \operatorname {sgn}({\mathord {\cdot }})}
是正常對純量定義的符号函数 ,而
{
…
}
eq
{\displaystyle \{\ldots \}_{\text{eq}}}
是不連續函數在滑動模式下的「等效值運算子」。
概念可以說明如下:依照滑動模式的理論,為了要描述系統特性,只要開始進入滑動模式,函數
sgn
(
v
i
(
t
)
−
h
i
(
x
^
(
t
)
)
)
{\displaystyle \operatorname {sgn}(v_{i}(t)\!-\!h_{i}({\hat {x}}(t)))}
就需要改為定效的值實務上,函數會高頻的切換,其慢速的成份會和等效值相等。應用適當的低通濾波器可以濾掉高頻成份,得到等效值,其中也會有較多有關估測系統狀態的資訊。以下的觀測器用了幾次上述的作法,在有限時間內會得到非線性系統的狀態。
修改後的估測器誤差以用轉換後的狀態
e
=
H
(
x
)
−
H
(
x
^
)
{\displaystyle e=H(x)-H({\hat {x}})}
表示。
e
˙
=
d
d
t
H
(
x
)
−
d
d
t
H
(
x
^
)
=
d
d
t
H
(
x
)
−
M
(
x
^
)
sgn
(
V
(
t
)
−
H
(
x
^
(
t
)
)
)
,
{\displaystyle {\begin{aligned}{\dot {e}}&={\frac {\mathrm {d} }{\mathrm {d} t}}H(x)-{\frac {\mathrm {d} }{\mathrm {d} t}}H({\hat {x}})\\&={\frac {\mathrm {d} }{\mathrm {d} t}}H(x)-M({\hat {x}})\,\operatorname {sgn}(V(t)-H({\hat {x}}(t))),\end{aligned}}}
而且
[
e
˙
1
e
˙
2
⋮
e
˙
i
⋮
e
˙
n
−
1
e
˙
n
]
=
[
h
˙
1
(
x
)
h
˙
2
(
x
)
⋮
h
˙
i
(
x
)
⋮
h
˙
n
−
1
(
x
)
h
˙
n
(
x
)
]
⏞
d
d
t
H
(
x
)
−
M
(
x
^
)
sgn
(
V
(
t
)
−
H
(
x
^
(
t
)
)
)
⏞
d
d
t
H
(
x
^
)
=
[
h
2
(
x
)
h
3
(
x
)
⋮
h
i
+
1
(
x
)
⋮
h
n
(
x
)
L
f
n
h
(
x
)
]
−
[
m
1
sgn
(
v
1
(
t
)
−
h
1
(
x
^
(
t
)
)
)
m
2
sgn
(
v
2
(
t
)
−
h
2
(
x
^
(
t
)
)
)
⋮
m
i
sgn
(
v
i
(
t
)
−
h
i
(
x
^
(
t
)
)
)
⋮
m
n
−
1
sgn
(
v
n
−
1
(
t
)
−
h
n
−
1
(
x
^
(
t
)
)
)
m
n
sgn
(
v
n
(
t
)
−
h
n
(
x
^
(
t
)
)
)
]
=
[
h
2
(
x
)
−
m
1
(
x
^
)
sgn
(
v
1
(
t
)
⏞
v
1
(
t
)
=
y
(
t
)
=
h
1
(
x
)
−
h
1
(
x
^
(
t
)
)
⏞
e
1
)
h
3
(
x
)
−
m
2
(
x
^
)
sgn
(
v
2
(
t
)
−
h
2
(
x
^
(
t
)
)
)
⋮
h
i
+
1
(
x
)
−
m
i
(
x
^
)
sgn
(
v
i
(
t
)
−
h
i
(
x
^
(
t
)
)
)
⋮
h
n
(
x
)
−
m
n
−
1
(
x
^
)
sgn
(
v
n
−
1
(
t
)
−
h
n
−
1
(
x
^
(
t
)
)
)
L
f
n
h
(
x
)
−
m
n
(
x
^
)
sgn
(
v
n
(
t
)
−
h
n
(
x
^
(
t
)
)
)
]
.
{\displaystyle {\begin{aligned}{\begin{bmatrix}{\dot {e}}_{1}\\{\dot {e}}_{2}\\\vdots \\{\dot {e}}_{i}\\\vdots \\{\dot {e}}_{n-1}\\{\dot {e}}_{n}\end{bmatrix}}&={\mathord {\overbrace {\begin{bmatrix}{\dot {h}}_{1}(x)\\{\dot {h}}_{2}(x)\\\vdots \\{\dot {h}}_{i}(x)\\\vdots \\{\dot {h}}_{n-1}(x)\\{\dot {h}}_{n}(x)\end{bmatrix}} ^{{\tfrac {\mathrm {d} }{\mathrm {d} t}}H(x)}}}-{\mathord {\overbrace {M({\hat {x}})\,\operatorname {sgn}(V(t)-H({\hat {x}}(t)))} ^{{\tfrac {\mathrm {d} }{\mathrm {d} t}}H({\hat {x}})}}}={\begin{bmatrix}h_{2}(x)\\h_{3}(x)\\\vdots \\h_{i+1}(x)\\\vdots \\h_{n}(x)\\L_{f}^{n}h(x)\end{bmatrix}}-{\begin{bmatrix}m_{1}\operatorname {sgn}(v_{1}(t)-h_{1}({\hat {x}}(t)))\\m_{2}\operatorname {sgn}(v_{2}(t)-h_{2}({\hat {x}}(t)))\\\vdots \\m_{i}\operatorname {sgn}(v_{i}(t)-h_{i}({\hat {x}}(t)))\\\vdots \\m_{n-1}\operatorname {sgn}(v_{n-1}(t)-h_{n-1}({\hat {x}}(t)))\\m_{n}\operatorname {sgn}(v_{n}(t)-h_{n}({\hat {x}}(t)))\end{bmatrix}}\\&={\begin{bmatrix}h_{2}(x)-m_{1}({\hat {x}})\operatorname {sgn}({\mathord {\overbrace {{\mathord {\overbrace {v_{1}(t)} ^{v_{1}(t)=y(t)=h_{1}(x)}}}-h_{1}({\hat {x}}(t))} ^{e_{1}}}})\\h_{3}(x)-m_{2}({\hat {x}})\operatorname {sgn}(v_{2}(t)-h_{2}({\hat {x}}(t)))\\\vdots \\h_{i+1}(x)-m_{i}({\hat {x}})\operatorname {sgn}(v_{i}(t)-h_{i}({\hat {x}}(t)))\\\vdots \\h_{n}(x)-m_{n-1}({\hat {x}})\operatorname {sgn}(v_{n-1}(t)-h_{n-1}({\hat {x}}(t)))\\L_{f}^{n}h(x)-m_{n}({\hat {x}})\operatorname {sgn}(v_{n}(t)-h_{n}({\hat {x}}(t)))\end{bmatrix}}.\end{aligned}}}
因此
只要
m
1
(
x
^
)
≥
|
h
2
(
x
(
t
)
)
|
{\displaystyle m_{1}({\hat {x}})\geq |h_{2}(x(t))|}
, 誤差動態的第一個行
e
˙
1
=
h
2
(
x
^
)
−
m
1
(
x
^
)
sgn
(
e
1
)
{\displaystyle {\dot {e}}_{1}=h_{2}({\hat {x}})-m_{1}({\hat {x}})\operatorname {sgn}(e_{1})}
,會符合在有限時間進入
e
1
=
0
{\displaystyle e_{1}=0}
滑動模式的充份條件。
在
e
1
=
0
{\displaystyle e_{1}=0}
表面上,對應的
v
2
(
t
)
=
{
m
1
(
x
^
)
sgn
(
e
1
)
}
eq
{\displaystyle v_{2}(t)=\{m_{1}({\hat {x}})\operatorname {sgn}(e_{1})\}_{\text{eq}}}
等效控制會等於
h
2
(
x
)
{\displaystyle h_{2}(x)}
,因此
v
2
(
t
)
−
h
2
(
x
^
)
=
h
2
(
x
)
−
h
2
(
x
^
)
=
e
2
{\displaystyle v_{2}(t)-h_{2}({\hat {x}})=h_{2}(x)-h_{2}({\hat {x}})=e_{2}}
。只要
m
2
(
x
^
)
≥
|
h
3
(
x
(
t
)
)
|
{\displaystyle m_{2}({\hat {x}})\geq |h_{3}(x(t))|}
,誤差動態的第二個行
e
˙
2
=
h
3
(
x
^
)
−
m
2
(
x
^
)
sgn
(
e
2
)
{\displaystyle {\dot {e}}_{2}=h_{3}({\hat {x}})-m_{2}({\hat {x}})\operatorname {sgn}(e_{2})}
,會在有限時間內進入
e
2
=
0
{\displaystyle e_{2}=0}
滑動模式。
在
e
i
=
0
{\displaystyle e_{i}=0}
表面上,對應的
v
i
+
1
(
t
)
=
{
…
}
eq
{\displaystyle v_{i+1}(t)=\{\ldots \}_{\text{eq}}}
等效控會等於
h
i
+
1
(
x
)
{\displaystyle h_{i+1}(x)}
。只要
m
i
+
1
(
x
^
)
≥
|
h
i
+
2
(
x
(
t
)
)
|
{\displaystyle m_{i+1}({\hat {x}})\geq |h_{i+2}(x(t))|}
,誤差動態的第
(
i
+
1
)
{\displaystyle (i+1)}
個行
e
˙
i
+
1
=
h
i
+
2
(
x
^
)
−
m
i
+
1
(
x
^
)
sgn
(
e
i
+
1
)
{\displaystyle {\dot {e}}_{i+1}=h_{i+2}({\hat {x}})-m_{i+1}({\hat {x}})\operatorname {sgn}(e_{i+1})}
,會在有限時間內進入
e
i
+
1
=
0
{\displaystyle e_{i+1}=0}
滑動模式。
對於足夠大的
m
i
{\displaystyle m_{i}}
增益,所有的觀測器估測狀態都會在有限時間內到實際的狀態。只要
|
h
i
(
x
(
0
)
)
|
{\displaystyle |h_{i}(x(0))|}
有確定的上下界,增加
m
i
{\displaystyle m_{i}}
,可以在任意時間內讓估測狀態收斂。因此映射
H
:
R
n
→
R
n
{\displaystyle H:\mathbb {R} ^{n}\to \mathbb {R} ^{n}}
是微分同胚 (也就是其Jacobian 線性化 可逆)可以保證,若估測輸出的收斂,就意味著估測狀態的收斂。因此此要求是可觀察性的條件。
若針對有輸入系統的滑動模型觀測器,會需要額外的條件,其估測誤差和輸入無關。例如
∂
H
(
x
)
∂
x
B
(
x
)
{\displaystyle {\frac {\partial H(x)}{\partial x}}B(x)}
和時間無關。則觀測器為
x
^
˙
=
[
∂
H
(
x
^
)
∂
x
]
−
1
M
(
x
^
)
sgn
(
V
(
t
)
−
H
(
x
^
)
)
+
B
(
x
^
)
u
.
{\displaystyle {\dot {\hat {x}}}=\left[{\frac {\partial H({\hat {x}})}{\partial x}}\right]^{-1}M({\hat {x}})\operatorname {sgn}(V(t)-H({\hat {x}}))+B({\hat {x}})u.}