滑動模式觀測器 (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.} 參考資料 [ 编辑 ]