滑動模式控制（sliding mode）簡稱 SMC，是一種非線性控制的技術，利用不連續的控制訊號來調整非線性系統的特性，強迫系統在二個系統的正常狀態之間滑動，最後進入穩態。其狀態 反饋控制律不是時間的連續函式。相反的，控制律會依目前在狀態空間中的位置不同，可能從一個連續的控制系統切換到另一個連續的控制系統。因此滑動模型控制屬於變結構控制。已針對滑動模型控制設計了許多的控制結構，目的是讓相空間圖中的軌跡可以前往和另一個控制結構之間相鄰的區域，因此最終的軌跡不會完全脫離某個控制結構。相反的，軌跡會在控制結構的邊界上「滑動」。這種沿著控制結構之間邊界滑動的行為稱為「滑動模式」而包括邊界在內的幾何軌跡稱為滑動曲面（sliding surface）。在現代控制理論的範圍中，任何變結構系統（例如滑動模式控制）都可以視為是併合系統的特例，因為系統有些時候會在連續的狀態空間中移動，也時也會在幾個離散的控制模式中切換。 簡介 滑動模式控制中存在滑動曲面 s0，一開始時，系統會在有限時間內到達滑動曲面，之後就會沿著滑動曲面移動。在滑動模式的理論敘述中，系統會約束在滑動曲面上，因此只需將系統視為在滑動曲面上滑動。不過實際系統的實現是用高頻切換來讓系統近似在滑動曲面上滑動，高頻切換的控制訊號讓系統在很鄰近滑動曲面的範圍內切跳（chatter），而且其頻率是不固定的。雖然整體系統是非線性的，不過圖 1 中，當系統到達滑動曲面後，理想（沒有切跳）系統會限制在 s0 的滑動曲面上，滑動曲面是線性時不變系統，在原點處指數穩定。 直觀來說，滑動模式控制會配合很大的增益（理想上可視為是無限大），強迫動態系統的軌跡無法離開滑動模式子空間太遠，必須沿著此子空間滑動。在降階滑動模式上的軌跡會有理想的動態特性（例如，系統會自然沿著此軌跡滑行，最後會停在理想的駐點。滑動模式控制的主要優點是其強健性。因為控制很簡單，是在二個狀態之間（例如開 關或是正轉 反轉）切換，控制法則不需要精確，而且不會受到控制系統中引數的變異所影響。而且因為控制律不是連續函式，滑動模式控制可以在有限時間內到達滑動曲面（比漸進到達的特性要好）在一些常見的條件下，最優控制需要用到起停式控制，而滑動模式控制中也有用到起停式控制的特性，有些滑動模式控制也是某些控制系統下的最優控制。 有些交換式電源供應器驅動的電機就是利用滑動模式控制。這類轉換器本身就有不連續的特性，和不連續輸出的滑動模式控制器在本質上是一致的。使用連續性的控制器，還需要透過脈衝寬度調變或是其他類似的技術其他脈衝調變的技術像是 ΔΣ 調變來將連續性的輸出轉換為可用離散狀態表示的輸出。滑動模式控制在機器人學有許多的應用。此控制演演算法特別已用在無人水面載具模擬在有大風大浪海面下的運作，其成功率相當高。 相較於其他有較多適度控制行為的非線性控制，滑動模式控制因為其不連續的輸出，在應用上需要更謹慎的應用。特別是因為致動器本身的延遲以及其他實務上的限制，硬切換的滑動模式控制會產生顫動、能量損失、裝置損壞，或是激發一些系統中的未建模動態。連續性的控制器設計比較不會有上述的問題，而且也可以設計一些接近滑動模式控制器的特性。 控制架構 考慮以下的非線性系統 dot mathbf xtf mathbf xt B mathbf xtmathbf ut 1 其中 mathbf xt triangleq begin bmatrix x_1 tx_2 tvdotsx_n1tx_n tend bmatrix in mathbb Rn 是 n 維的狀態向量以及 mathbf ut triangleq begin bmatrix u_1 tu_2 tvdotsu_m1tu_m tend bmatrix in mathbb Rm 為表示狀態反饋的 m 維的輸入向量。函式 f mathbb Rn times mathbb R mapsto mathbb Rn 和 B mathbb Rn times mathbb R mapsto mathbb Rn times m 假設是連續函式，而且有相當程度的光滑性，因此可以用柯西 利普希茨定理確保方程 1 的解 mathbf xt 存在及唯一。 常見的作法是設計一個狀態回授的控制律 mathbf umathbf xt（也就是可以將時間 t 時的狀態 mathbf xt，對映到輸入 mathbf u 的對映），這個控制律要可以穩定方程式 1 的動力系統在原點 mathbf x 0 0 ldots 0text T 附近的行為。也就是說，在此控制律下，只要系統從原點開始往任意方向前進，最後都會回到原點。例如，狀態向量 mathbf x 中的分量 x_1 表示輸出和已知訊號（例如某個希望出現的弦波）之間的差，若控制 mathbf u 可以讓 x_1 快速的回到 x_1 0，也代表輸出會追隨理想的弦波訊號。在滑動模式控制中，只要系統是限制在其組態空間的子空間內，設計者可以確定系統有理想的行為（有穩定的平衡點）。滑動模式控制會強迫系統軌跡進入子空間，並且讓軌跡維持在子空間內，因此可以在子空間內滑動。這個降階的子空間稱為「滑動（超）曲面」，若透過閉迴路回授，使得軌跡在滑動曲面上滑動，則稱為閉迴路系統的「滑動模式」。沿著這個子空間的軌跡可以類比沿著 LTI 系統特徵向量的軌跡，不過滑動模式是透過此向量場上加上高增益回授來實現。就像彈珠會沿著裂縫滾動一樣，系統的軌跡也會限制在滑動模式上。 滑動模式的控制架構包括以下幾項： 選擇超曲面或是流形（滑動曲面）讓系統軌跡限制在此流形上時，可以有理想的特性。 選擇回授增益，讓系統軌跡可以和流形相交，而且之後可以維持在流形上。 因為滑動模式控制是不連續的，控制器可以在有限時間內將軌跡帶到滑動模式上（若偏離滑動平面時，回到滑動平面上的穩定性會比漸近穩定要好）。不過，只要軌跡接觸到滑動平面後，系統的特性會依照滑動模式的特性（也就是滑動平面上，在原點 mathbf xmathbf 0 附近只有漸近穩定性）。 在設計滑動模式時，會選擇一個切換函式 sigma mathbb Rn mapstomathbb Rm，表示狀態 matmathbf xmath 遠離滑動曲面的程度。 在滑動平面外的狀態 mathbf x 會有 sigma mathbf x neq 0。 在滑動平面上的狀態 mathbf x 會有 sigma mathbf x 0。 滑動模式控制律會依照上述距離的正負號在二種不同的狀態之間進行切換。因此滑動模式控制就類似一個硬的壓力，將系統軌跡移到 sigma mathbf x 0 的滑動模式上。理想的 mathbf xt 會接觸到滑動平面，而且因為控制律不連續（當軌跡越過滑動曲面時，控制律會由一個狀態切換到另一個狀態），軌跡會在有限時間內到達滑動平面。只要軌跡踫到平面之後，會沿著滑動平面滑動，而且會往原點 mathbf x mathbf 0 移動。因此切換函式類似地形圖，有恆定高度的輪廓，而軌跡會限制在恆定高度的輪廓上移動。 滑動（超）曲面的維度是 n times m，其中 n 是狀態 mathbf x 的個數，而 m 是輸入訊號（也就是控制訊號）mathbf u 的個數。針對每個 1 leq k leq m，有 n times 1 的滑動曲面，方程式為 leftmathbf x in mathbb Rn sigma_k mathbf x 0 right 2 滑動模式控制主要關鍵是選擇控制律，使得滑動模式（也就是 sigma mathbf xmathbf 0 曲面）存在，而且其他的系統軌跡可以進入滑動模式。滑動模式控制的原則是透過適當的控制策略，強迫性的限制系統在滑動曲面上，讓系統可以有理想的特性。當系統受滑動控制所限制，維持在滑動曲面上時，系統的動態特性可以用方程式 2 所得的降階系統所描述。 為了強迫系統狀態 mathbf x 滿足 sigma mathbf x mathbf 0，需要： 確認系統可以從任意的初始條件到達 sigma mathbf x mathbf 0。 在到達 sigma mathbf xmathbf 0 後，可以透過控制行為讓系統維持在 sigma mathbf xmathbf 0 上 閉迴路解的存在 此控制律不是連續函式，也不會是利普希茨連續，因此無法用柯西 利普希茨定理確保閉迴路解的存在及唯一性。這個解需要用的架構來理解。。 大致上，沿著 sigma mathbf x mathbf 0 的閉迴路系統可以用會平滑的動態 dot sigmamathbf x mathbf 0 來近似，不過實際上不一定有這樣平滑的特性。高速的脈波振幅調變或 ΔΣ 調變產生的輸出是兩個狀態組成而成，但其有效的輸出會在連續的運動範圍內擺動。若是使用其他具有連續特性的非線性控制設計可以避免這類的問題。有些情形下，滑動模式控制的設計可以用其他連續控制器來近似。 理論基礎 以下定理是滑動模式控制的基礎。 定理 1：滑動模式的存在 考慮以下的李亞普諾夫候選函式 V sigma mathbf xfrac 12sigmatext Tmathbf xsigma mathbf xfrac 12sigma mathbf x_22 3 其中 mathord cdot 為歐幾里德範數（也就是說，sigma mathbf x_2 是距離滑動流形 sigma mathbf xmathbf 0 的距離）。 針對由方程式 1 及方程式 1 的滑動曲面組成的系統，滑動模式存在的充份條件是 underbrace overbrace sigmatext Ttfrac partial Vpartial sigma overbrace dot sigmatfrac operatorname d sigmaoperatorname d t _tfrac operatorname d Voperatorname d t 0 qquad text ie tfrac operatorname d Voperatorname d t 0 text 在 sigma mathbf x0 曲面的鄰域都成立。 簡單來說（例如針對 m1 的純量控制應用），為了要使 sigmatext T dot sigma 0，需選擇回授控制律 u mathbf x 使 sigma 和 dot sigma 有相反的符號，因此 當 sigma mathbf x 為正時，u mathbf x 會使 dot sigmamathbf x 為負。 當 sigma mathbf x 為負時，u mathbf x 會使 dot sigmamathbf x 為正。 注意 dot sigma frac partial sigmapartial mathbf x overbrace dot mathbf xtfrac operatorname d mathbf xoperatorname d t frac partial sigmapartial mathbf x overbrace left f mathbf xt B mathbf xt mathbf u rightdot mathbf x 因此回授控制律 mathbf umathbf x 會直接影響 dot sigma。 可達性：可以在有限時間內到達滑動流形 為了要確保可以在有限時間內進入滑動模式 sigma mathbf xmathbf 0，operatorname d Voperatorname d t 需要比零小很多。若此數值很快的就歸零，就只能以漸近收斂的方式進入到滑動模式。若要在有限時間內進入滑動模式 frac operatorname d Voperatorname d t leq mu sqrt Valpha 其中 mu 0，0 alpha leq 1 均為常數。 比較引理的說明 引理的條件確認在滑動模式 V in 01 的鄰域，下式成立 frac operatorname d Voperatorname d t leq mu sqrt Valpha leq mu sqrt V 因此，針對 V in 01，下式成立 frac 1sqrt V frac operatorname d Voperatorname d t leq mu 根據鏈式法則（也就是 operatorname d Woperatorname d t，而 W triangleq 2 sqrt V），下式也會成立 mathord underbrace D Bigl mathord underbrace 2 mathord overbrace sqrt V propto sigma_2_W Bigr_D W triangleq mathord text Upper righthand dot W frac 1sqrt V frac operatorname d Voperatorname d t leq mu 其中 D 為 2 sqrt V 的 propto 代表比例。 因此將上式和曲線 z t z_0 mu t 比較（初始條件 z 0z_0 微分方程 dot z mu 的對應曲線）。可得 2 sqrt V t leq V_0 mu t 在所有 t 下成立。而且，因為 sqrt V geq 0，sqrt V 必需在有限時間達到 sqrt V0，表示 V 必需在有限時間達到 V0（也就是進入滑動模式）。因為 sqrt V 和切換函式 sigma 的歐幾里德範數 mathord cdot_2 成正比，因此接近滑動模式的速率比定大於零。 定理 2：吸引區域 針對方程式 1 的系統，以及方程式 2 的滑動曲面，mathbf x in mathbb Rn sigma mathbf xmathbf 0 表面的子空間有可達性的條件是 mathbf x in mathbb Rn sigmatext Tmathbf xdot sigmamathbf x 0 也就是說，當初始條件完全由這個空間出發時，李亞普諾夫候選函式 V sigma 為李亞普諾夫函式，而且 mathbf x 軌跡確定會往滑動模式表面 sigma mathbf x mathbf 0 前進。而且，若定理 1 的可達性條件滿足，滑動模式會完全進入 dot V 在有限時間遠離 0 的區域。因此會在有限時間內進入滑動模式 sigma 0。 定理 3：滑動運動 令 frac partial sigmapartial mathbf x B mathbf xt 為非奇異的，也就是說，系統有某種可控制性使得永遠存在一種控制方式可以讓軌跡更靠近滑動模式。只要達到了滑動模式 sigma mathbf x mathbf 0 ，系統會維持在滑動模式上。沿著滑動模式軌跡，sigma mathbf x 為定值，因此滑動模式軌跡可以用以下的微分方程來描述 dot sigma mathbf 0 若相對微分方程在 mathbf x 平衡是穩定的，則系統會沿著滑動模式表面往平衡點移動。 滑動模式下的「等效控制律」可以透過求解下式求得 dotsigma mathbf x0 等效控制律為 mathbf umathbf x，也就是說 frac partial sigmapartial mathbf x overbrace left f mathbf xt B mathbf xt mathbf u rightdot mathbf x mathbf 0 因此等效控制 mathbf u left frac partial sigmapartial mathbf x B mathbf xt right1 frac partial sigmapartial mathbf x f mathbf xt 也就是說，就算實際的控制 mathbf u 不連續，在滑動模式 sigma mathbf xmathbf 0 兩側的快速切換會強迫系統的行為類似在連續模式下驅動的行為。 類似的，在滑動模式上的系統軌跡類似 dot mathbf x overbrace f mathbf xt B mathbf xt left frac partial sigmapartial mathbf x B mathbf xt right1 frac partial sigmapartial mathbf x f mathbf xtf mathbf xt B mathbf xt u f mathbf xtleft mathbf I B mathbf xt left frac partial sigmapartial mathbf x B mathbf xt right1 frac partial sigmapartial mathbf x right 所得的系統符合滑動模式的微分方程 dot sigmamathbf x mathbf 0 只要滑動模式表面 sigma mathbf xmathbf 0 為李雅普諾夫穩定性，從到達相位的軌跡條件可以簡化為上述較簡單的條件。因此係統在找到滑動模式後，會經過一些初始的暫態，之後就可以假定為符合較簡單的 dot sigma 0 條件。若等式 sigma mathbf x mathbf 0 只是近似成立，系統的動態仍可以近似為上述的特性。 依照上述定理，滑動運動對於由進入系統時足夠小的擾動是不敏感的，只要控制項大到足以滿足 sigmatext T dot sigma 0 ，而且 dot sigma 均勻有界的遠離 0，滑動模式的運作就如同系統沒有擾動時一樣。滑動模式控制對特定擾動及模型不確定性的不敏感是很具吸引力的特點，滿足魯棒控制。 如同以上提到的，滑動模式控制律會維持以下的限制 dot x x 0 目的是為了讓以下型態的任意系統可以漸近的穩定 ddot xa txdot x u 其中 a cdot 為有限的上界，此例中，滑動模式為 dot x x （也就是說，dot xx0）。若系統限制在此條件下，會類似一個穩定的線性系統，因此在 xdot x00 位置是全域指數穩定的平衡點。 控制設計的例子 考慮一個由方程 1 描述的受控體，有單一輸入 u（也就是說，m 1）。其切換函式選擇為以下的線性組合 sigma mathbf x triangleq s_1 x_1 s_2 x_2 cdots s_n1 x_n1 s_n x_n 4 其中的加權 s_i 0，對所有的 1 leq i leq n 都成立。滑動曲面是單純形 sigma mathbf x0。若軌跡強迫在曲面上滑行， dot sigmamathbf x 0 因此 s_1 dot x_1 s_2 dot x_2 cdots s_n1 dot x_n1 s_n dot x_n 0 這是降階系統（新系統的階數為 n1，因為會限制在 n1 維的滑動模式單純形上）。這個表面有理想的性質（當受控體被強制在滑動曲面上滑動，會趨向原點 mathbf xmathbf 0）。取方程 3 中李亞普諾夫函式的導數，可得 dot Vsigma mathbf x overbrace sigma mathbf xtext Ttfrac partial sigmapartial mathbf x overbrace dot sigmamathbf xtfrac operatorname d sigmaoperatorname d t 為了要確保 dot V 是負定函式（也就是 dot V 0，在 mathbf sigma0 表面上有李雅普諾夫穩定性），需選擇回授控制律 u mathbf x 使下式成立 begin cases dot sigma 0 text if sigma 0 dot sigma 0 text if sigma 0 end cases 因此 sigma dot sigma 0 因為是一個正數及負數的累積。注意到 dot sigmamathbf x overbrace frac partial sigma mathbf xpartial mathbf x dot mathbf xdot sigmamathbf x frac partial sigma mathbf xpartial mathbf x overbrace left f mathbf xt B mathbf xt u rightdot mathbf x overbrace s_1 s_2 ldots s_nfrac partial sigma mathbf xpartial mathbf x underbrace overbrace left f mathbf xt B mathbf xt u rightdot mathbf x_text ie an n times 1 text vector 5 控制律 u mathbf x 可以選擇使下式成立 u mathbf x begin cases umathbf x text if sigma mathbf x 0 umathbf x text if sigma mathbf x 0 end cases 其中 umathbf x 是某種極端的控制（正轉或是開啟），使得方程 5dot sigma 在 mathbf x 為負值。 umathbf x 是另一種極端的控制（反轉或是關閉），使得方程 5dot sigma 在 mathbf x 為正值。 所得的軌跡會往滑動曲面 sigma mathbf x0 前進。因為實際系統會有時間延遲，滑動模式的軌跡不會是平滑的沿著滑動曲面滑動，而會在滑動曲面兩側反覆的切跳（chatter），不過若離開滑動曲面，會很快又回到滑動曲面。 考慮動態系統 ddot xa txdot xu 可以用二維的狀態空間（其中 with x_1 x，x_2 dot x）表示： begin cases dot x_1 x_2 dot x_2 a tx_1x_2 u end cases 也假設 supa cdot leq k（也就是說 a 有一個已知有限的上限 k），對於此係統，選擇切換函式 sigma x_1x_2 x_1 x_2 x dot x 在之前的例子中，必須選擇回授控制律 u xdot x 使得 sigma dot sigma 0，在此處 dot sigma dot x_1 dot x_2 dot x ddot x dot xoverbrace a txdot x uddot x 當 x dot x 0（也就是 sigma 0），要讓 dot sigma 0，需選擇控制律使 u dot x a txdot x 成立 當 x dot x 0（也就是 sigma 0，要讓 dot sigma 0，需選擇控制律使 u dot x a txdot x 成立 不過，因為三角不等式， dot x a txdot x geq dot x a txdot x 依照 a 的假設，dot x k 1 dot x a txdot x 因此係統可以利用以下的控制律進行回授穩定（回到滑動模式） u xdot x begin cases dot x k 1 text if underbrace x dot x 0 left dot x k 1right text if overbrace x dot xsigma 0 end cases 可以表示為以下的解析解 u xdot x dot xk1 underbrace operatorname sgnoverbrace dot xxsigma_text ie tests sigma 0 text 假設系統軌跡會受限制，因此 sigma mathbf x0，則 dot x x qquad text ie sigma xdot x x dot x 0 text 因此只要系統進入滑動模式，系統的二維動態特性會像一維的系統，而且在 xdot x00 會有一個全域指數穩定的駐點。 自動化設計的解 在設計滑動模式的控制系統時，雖然有許多不同的理論，不過沒有一個高效率的設計方法論，原因因為解析方法及數值方法實務上的困難。像是基因演演算法之類可復用的方式，可以用來將中不可解的問題，轉換成實務上可解的非確定性多項式問題。這有助於滑動模式控制的電腦自動化設計 。 相關條目 變結構控制 變結構系統 併合系統 非線性控制 魯棒控制 最優控制 起停式控制 滑動模式控制常會以起停式控制來實現。 H 橋 將四個開關組合成類似 H 的四支腳的架構，在只有單方向電源的情形下，可用來驅動電機（或是其他裝置）正轉或反轉。一般用在滑動模式控制的致動器中。 利用滑動模式控制來驅動連續的輸出 ΔΣ 調變 一種回授方式，將一個連續訊號編碼為在二個狀態之間快速切換的訊號（一種特殊的滑動模式控制）。 脈衝密度調變 一種特殊的滑動模式控制 脈衝寬度調變 一種特殊的滑動模式控制，將連續訊號轉換為不連續的切換 積分滑動模式控制 滑動模式觀測器 註解 參考資料 Category 控制理論 Category 非線性控制