【文章內(nèi)容簡介】
? ? ? ???????????? ????????? ( ) 定義虛擬控制量 自適應(yīng)反演滑??刂? 16 1 1 1 dc z z? ? ? ? ?????? ????????????????? ( ) 其中 1 0c? 。 定義 2 2 1zx??? ??? ????? ????????????????? ( ) 定義 lyapunov 函數(shù) 21112Vz? ????????? ??????? ????? ????? ( ) 則 1 1 1 1 2 1 2 1( ) ( )ddV z z z x z z z z?? ? ? ? ? ? ??? ????????? ( ) 將式( ) 代入式 ( ) 得 21 1 1 1 2V c z z z? ? ? ????? ????????????????? ( ) 如果 2 0z? ,則 1 0V? 。 為此, 需要進行下一步設(shè)計。 步驟二: 定義 Lyapunov 函數(shù) 22 1 212V V z?? ?????? ????????????????? ( ) 由于 2 2 1 1 1( , ) ( , ) dz x f x t b x t u c z z?? ? ? ? ? ? 則 22 1 2 2 1 1 1 2 2 1 1[ ( , ) ( , ) ]dV V z z c z z z z f x t b x t u c z z? ? ? ? ? ? ? ? ? 為使 2 0V? , 設(shè)計控制 器 為 2 2 1 1 11 [ ( , ) ]( , ) du f x t c z z c z zb x t? ? ? ? ? ? ???? ?????? ( ) 其中 2c 為大于零的正數(shù)。則 222 1 1 2 2 0V c z c z? ? ? ? ????? ??????????????? ( ) 通過控制律的設(shè)計,使得系統(tǒng)滿足了李雅普諾夫穩(wěn)定性理論條件, 1z自適應(yīng)反演滑模控制 17 和 2z 以指數(shù)形式漸進穩(wěn)定,從而保證系統(tǒng)具有全局意義下指數(shù)的漸進穩(wěn)定性。 對于多階線性系統(tǒng) 12dx dt x? 23dx dt x? ? 1nndx dt x? ? 0 1 1 2 1n n nd x d t a x a x a x w?? ? ? ? ? ? 1yx? ?????????? ( ) 其中, ()wt 的拉普拉斯變換為 : ( ) ( ) ( )W s B s U s? ???????? ????????????? ( ) 首先,應(yīng)用 Backstepping 設(shè)計方法計算控制量 w ,然后 在控制器設(shè)計的最后,通過式 ( ) 得到真實控制量 u 。 現(xiàn)在用 Backstepping 設(shè)計方法來計算控制量 w , 其思路是從系統(tǒng)的最低階次開始設(shè)計,直至最后得到控制量 w 的表達式,其基本步驟如下 : ( 1) 第一個誤差變量定義如下 : 11rry y x y? ? ? ? ? 第一個李亞普諾夫函數(shù)選為 : 21112v ?? 它的導數(shù)是 : 1 1 1 1 2()rd v d t d d t x d y d t? ? ?? ? ? ? ? ?? ????????? ( ) 若使 1dv dt 小于零,選 2x 為第一個虛擬控制,則要求它的值為: 2 1 1drx k dy dt?? ? ? 其中 1k 為正的 設(shè)計參數(shù),通過以上的選擇,式 ( ) 變?yōu)樨摱ǖ摹亩?t?? 時, 有 1 rxy? ,即實現(xiàn)了對 1x 的控制。 自適應(yīng)反演滑??刂? 18 ( 2) 第 二 個誤差變量定義如下 : 2 2 2 2 1 1drx x x k dy dt??? ? ? ? ? 擴充 后的 李亞普諾夫函數(shù)為 222 1 21122v ???? ????????? ????????????? ( ) 因為 1 2 2 1 1rd d t x d y d t k? ? ?? ? ? ? 所以式( )的導數(shù) 為 : 22 1 1 2 1 2 2() ddv dt k dx dt dx dt? ? ?? ? ? ? ? 221 1 2 1 1 1 2 3[ ( 1 ) ]rk k k x y? ? ? ?? ? ? ? ? ? ? ??? ????? ( ) 選 3x 作為第二個虛擬控制,若使 2dv dt 負定,選擇 3x 的值為 23 1 1 1 2 2( 1 ) ( )drx k k k y??? ? ? ? ? 2 0k? 通過以上的選擇,式 ( ) 變?yōu)樨摱ǖ?,因為?t?? 時,有 22dxy?即實現(xiàn)了對 2dx 的控制。 第 1 步 選: i i idxx? ?? 和 2112 iijiv ??? ? 則有: 1 1 1 2i i i i id dt k? ? ? ?? ? ? ?? ? ? 1 211 []ii j j i i i idjd v d t k d x d t d x d t? ? ????? ? ? ? ?? 設(shè)此時的虛擬控制量 是 : ( 1 ) 1()i d i d i i i idx dx dt k dx dt????? ? ? ? ? 1 ()i i i i ik dx dt d dt? ? ??? ? ? ? ? 寫成矩陣形式即為 : 自適應(yīng)反演滑??刂? 19 1( ) ( ) ( ) ( )ii i i r i iA s sI K Y s sI K s X s? ? ? ? ? ??? ?? ????? ( ) 其中 ()iAs , ()rYs , 1()Xs分別是 ( 1)idx? , ry , 1x 得拉普拉斯變換, iI 是單位陣。 并且 1211 0 01 1 000 1 10 0 1iiikkKkk????????????????? ??????? ???????? ( ) 式( )、( )的推導過程如下: 因為 1 1 1 2i i i i id dt k? ? ? ?? ? ? ?? ? ? 2i? ( 1 ) 1 1( / ) / ( / / )i d i d i i i id i i i i ix d x d t k d x d t k d x d t d d t? ? ? ? ?? ? ?? ? ? ? ? ? ? ? ? ? 1 ( 1 )//i i i i i i dd dt k dx dt x? ? ? ??? ? ? ? ? ? 所以 1 1 12 2 2( 1 )1 1 1/ 1 0 0 0/ 1 1 0 00// 0 1 1 0/ 0 0 1 1i i di i ii i id d t kd d t kd x d t xd d t kd d t k?????? ? ??? ? ? ? ? ? ??? ? ? ? ? ? ????? ? ? ? ? ? ??? ? ? ? ? ? ????? ? ???? ? ? ? ? ? ????? ? ? ? ? ? ??? ? ? ? ? ? ???? ??? ? ? ? ? ? 假設(shè): ? ?( 1 )112/10i i din dx dt xAKm??????????????????? 自適應(yīng)反演滑??刂? 20 ? ?? ?110 0 11 0 0rrTy y x yBC? ? ? ? ??? 把 m 看作是輸出 , n 看作是輸入,則它們之間的傳遞函數(shù)為 : 1() ()()Ms C sI A B DNs ?? ? ? 于是得到下面的結(jié)果: 1( ) ( ) ( )M s C sI A BN s?? ? ? ( ) ( ) ( )sI A M s C sI A B N s? ? ? ? 1( ) ( )r i isI A X Y sX A s? ? ? ? ? 1( ) ( ) ( ) ( )iirA s sI A Y s sI A s X s? ? ? ? ? ? 1( ) ( ) ( ) ( )ii i rA s sI K Y s sI A s X s? ? ? ? ? ?? 第 1n? 步 定義 n n ndxx? ?? 2112 nnjjv ??? ? 于是有 1 1 1 2n n n n nd dt k? ? ? ?? ? ? ?? ? ? 1 211 ( / / )nn j j n n n n djd v d t k d x d t d x d t? ? ????? ? ? ? ?? 將導出 : 1n n n nd dt k? ? ? ??? 1 ( 1 )()n d n n n n ddx dt k dx dt?? ??? ? ? ? 1 0nk? ? 進行拉普拉斯變換后矩陣表達式為 : 自適應(yīng)反演滑??刂? 21 1( ) ( ) ( ) ( )nn n n r n nA s sI K Y s sI K s X s? ? ? ? ? 對上式進行 拉普拉斯變換后 可得到 : 110( ) ( ) ( )n jnjjs X s a s X s W s??? ? ?? 如此 倒推(逐步后推)即得到控制量 w 為 1110( ) ( ) ( ) ( ) ( )n jnj n n r n njW s a s X s s I K Y s s I K s X s??? ? ? ? ? ?? 11100( ) ( ) ( ) ( ( ) ( ) )nnj n j nj r j n n rjja s s Y s a s s I K s Y s X s????? ? ? ? ? ? ? ??? ??????????? ?????? ???? ( ) 誤差系統(tǒng)由下式表示 : ndE dt K E? ??????????? ???????????? ( ) 其中: ? ?12 TnE ? ? ?? , nK 的形式與 iK 相同。 在具體設(shè)計時,可以靈活的選擇 Lyapunov函數(shù),還可以讓誤差變量滿足 其他 條件,例如 :若要 0i?? 是指數(shù)形式的,可以選擇如下的設(shè)計 : 11id dt? ? ??? , 這時選擇第一個虛擬控制量為 2dx ,則它滿足2 1 1drx dy dt??? ? ? , 其中 1? 是一個 正 的參數(shù),然 后運 Backstepping設(shè)計方法倒推計算出真實控制量 u 。 仿真實例 被控對象為 12xx? 2225 133x x u? ? ? 其中 2( , ) 25f x t x?? , ( , ) 133b x t ? 以正弦信號為指令信號,初始狀態(tài)為 (0) [ ? 0] ,指令 信號設(shè)為sin(6 )rt?? ??刂茀?shù)取 1 35c? , 2 15c ? ,仿真結(jié)果如圖 和圖 自適應(yīng)反演滑??刂? 22 所示。 0 0 . 5 1 1 . 5 2 2 . 5 3 1 . 51 0 . 500 . 511 . 5t i m e / sPosition tracking 圖 正弦位置跟蹤 0 0 . 5 1 1 . 5 2 2 . 5 36420246t i m e / sControl input 圖 控制輸入 自適應(yīng)反演滑??刂? 23 仿真程序: ( 1) Simulink 主程序(如圖 所示) 圖 主程序圖 ( 2)控制器 S 函數(shù)子程序: function [sys,x0,str,ts] = spacemodel(t,x,u,flag) switch flag, case 0, [sys,x0,str,ts]=mdlInitializeSizes。 case 3, sys=mdlOutputs(t,x,u)。 case {2,4,9} sys=[]。 u To Workspace3 y To Workspace2 t To Workspace Sine Wave Scope2 Scope1 Scope Chap3_1plant SFunction1 Chap3_1s SFunction Mux Mux4 Demux 3 Clock 自適應(yīng)反演滑模控制 24 otherwise error([39。Unhandled flag = 39。,n