第三章 結合 T-S 模糊模型及變結構控制之追蹤問題研究
3.4 在兩軸機器手臂上的應用
考慮一個兩軸機器手臂的系統,如圖 3.1,其動態方程式[10][17]如下:
圖 3.1 兩軸機器手臂示意圖
M(q)q¨+ C(q, qç)qç + g(q) = ü + d (3.14) 其中 q = (q1, q2)T ∈ R2, ü = (ü1, ü2)T ∈ R2, d∈ R2分別代表廣義座標( rad),控制力道 (Newton-meter)以及可能的外來干擾。M(q)代表慣量,C(q, qç)代表科氏力與向心力,
g(q)代表重力。
M(q) = (m1+ m2)l21 m2l1l2(c1c2+ s1s2) m2l1l2(c1c2+ s1s2) m2l22
ò ó
(3.15)
C(q, qç) = m2l1l2(c1s2à s1c2) 0 à qç2 à qç1 0
ò ó
(3.16)
g(q) = à (m1+ m2)l1gs1
à m2l2gs2
ò ó
(3.17) 其 中 m1, m2(kg) 為 兩 軸 機 器 手 臂 的 質 量 , l1, l2(m) 為 兩 軸 機 器 手 臂 的 長 度 ,
g = 9.8(m/sec2)為重力加速度,c1= cos(q1), c2= cos(q2),
s1= sin(q1), s2= sin(q2) 。令 x1= (x1, x2)T= (q1, q2)T, x2= (x3, x4)T = (qç1, qç2)T以 及u = ü 。我們可將(3.14)寫成狀態空間方程式:
xç1= x2
圖 3.2 每一個時間間隔中所觸發的四個相鄰操作點
因此,如果適當地選取x1, x2的區間,這種方式並不會造成即時運算的負擔。然而,
針對一個函數在較小的子區間內取最大值會比在整個操作區間內所取的最大值來得 小,所以只要適當地選取x1, x2的區間就會使得û(x, t)與ú(x, t)的值變小。因此控制的 力道就會比較小以致於在實際操作應用上會比較容易實現。為了探討區間大小所造成 的影響,以下考慮兩個情況:
Case A :n1= n2= 5(以下稱 TS55) 在這個情況下,我們選取 25 個操作點為:
xij = (x1,i, x2,j, 0, 0)T⏐
⏐x1,i, x2,j= à ù/2, à ù/4, 0, ù/4, ù/2
è é
(3.21) 歸屬函數如圖 3.3:
圖 3.3 Case A所選取的操作點及其歸屬函數
根據所選取的操作點並且取 A,B 矩陣為
Ai(x) = a11i a12i a13i a14i
A22= 17.6462 à 8.8231 0 0
A21= 13.4071 à 5.0277 0 0
需要較多的控制能量,可是在整個過程當中 T-S 變結構控制律所消耗的總能量有可能 會比典型非線性變結構控制律來得少且過程中的總誤差值也比較小。這可能是因為 T-S 變結構控制律一開始所需的能量較大,一開始能量較大會使得系統狀態能快速地 接近目標;而典型非線性變結構控制律一開始所需的能量較小,在過程中隨著狀態越 來越靠近目標且越來越靠近順滑平面其所需的能量也一直在變小,所以到達目標的時 間會比較長。就總能量來說,T-S 變結構控制律一開始所需的能量較大,但是隨著狀 態快速地到達目標而變小;反觀典型非線性變結構控制律一開始所需的能量雖然比較 小,但是接近目標的速度較慢,所以過程中典型非線性變結構控制律所消耗的總能量 有可能會比較多。
從控制律輸入能量圖(圖 3.7)中可以觀察到會有兩個切跳現象(Jump),這是因為系 統狀態到達順滑平面的緣故。同時這種情形也可以分別從圖 3.6 觀察到。
在計算時間方面,我們將 T-S 變結構控制律與典型非線性變結構控制律各計算了 106次之後發現(CPU)TSù 4.766 sec < (CPU)Classicù 7.625 sec。由此可以知道 T-S 變結構控制律可以節省計算時間。這是因為 T-S 模糊模型有很多的參數都可以事先被 計算出來,在過程中利用查表(look-up table)的方式將這些參數帶入即可。
例二:模擬結果如圖 3.9、圖 3.10、圖 3.11 以及圖 3.12,系統狀態的初始值選定為 x0= (à 0.5, à 0.1, 1, 1)T,希望到達的角度及角速度為xd = (0.1,à 0.7, 0, 0)T。如模擬 圖所示,三種控制律都能達到追蹤的目的,也就是追蹤誤差都會收斂為零。為了觀察 性能,透過表 3.4 對三種控制律進行分析。
可以觀察出與例一相似的結果,TS55 使用的能量還是最大,TS99 次之,CLASSIC VSC 最小。所以同樣的在到達時間以及誤差收斂的速度方面,TS55 最快,TS99 次之,
CLASSIC VSC 最慢。唯一不一樣的結果是在過程中使用的總能量⎧
⎭uTu,TS55 最大,
TS99 次之,CLASSIC VSC 最小。在此情況下,CLASSIC VSC 所使用的能量比 TS 小,而 響應速度比 TS 慢。
例三:模擬結果如圖 3.13、圖 3.14、圖 3.15 以及圖 3.16,系統狀態的初始值選定為
x0= (à 1.3, 0.1, 0.5, à 0.5)T,希望到達的角度及角速度為xd= (à 1, à 0.6, 0, 0)T。如 模擬圖所示,三種控制律都能達到追蹤的目的,也就是追蹤誤差都會收斂為零。為了 觀察性能,透過表 3.4 對三種控制律進行分析。
可以觀察出與例二相同的結果,TS55 使用的能量還是最大,TS99 次之,CLASSIC VSC 最小。所以同樣的在到達時間以及誤差收斂的速度方面,TS55 最快,TS99 次之,
CLASSIC VSC 最慢。因此,在此情況下,CLASSIC VSC 所使用的能量比 TS 小,而響應 速度比 TS 慢;TS99 所使用的能量比 TS55 小,響應速度也比 TS55 慢。這是因為 TS 控制律比 CLASSIC VSC 控制律多考慮了4f & 4G,因此使得控制能量較大。而 TS99 所劃分的操作區間數比 TS55 多,因此4f & 4G比較小,TS99 控制輸入會比 TS55 小。
圖 3.5 例一 狀態變數之比較圖
圖 3.6 例一 順滑函數之比較圖
圖 3.7 例一 控制輸入之比較圖
圖 3.8 例一 誤差之比較圖
圖 3.9 例二 狀態變數之比較圖
圖 3.10 例二 順滑函數之比較圖
圖 3.11 例二 控制輸入之比較圖
圖 3.12 例二 誤差之比較圖
圖 3.13 例三 狀態變數之比較圖
圖 3.14 例三 順滑函數之比較圖
圖 3.15 例三 控制輸入之比較圖
圖 3.16 例三 誤差之比較圖
表 3.1 TS55 之k4 fk∞與û
Ts55 k4 fk∞ û
D11 2.5629 0.4055
D12 2.3826 0.1302
D13 2.3818 0.1595
D14 1.8818 0.1244
D21 2.3899 0.1302
D22 4.4399 0.4055
D23 4.4399 0.125
D24 2.4891 0.1595
D31 2.4891 0.1595
D32 4.4399 0.125
D33 4.4399 0.4055
D34 2.3899 0.1302
D41 1.8818 0.1244
D42 2.3818 0.1595
D43 2.3826 0.1302
D44 2.5629 0.4055
表 3.2 TS99 之k4 fk∞與û
D62 1.3674 0.0538
D63 1.6146 0.0645
D64 1.5997 0.0499
D65 1.3336 0.07
D66 0.976 0.1294
D67 1.391 0.07
D68 1.6729 0.0499
D71 1.2057 0.0499
D72 1.202 0.0645
D73 1.357 0.0538
D74 1.6285 0.0645
D75 1.6568 0.0499
D76 1.3987 0.07
D77 1.0171 0.1294
D78 1.5702 0.07
D81 1.2706 0.07
D82 1.2387 0.0499
D83 1.2165 0.0645
D84 1.3724 0.0538
D85 1.6475 0.0645
D86 1.7451 0.0499
D87 1.5069 0.07
D88 1.166 0.1294
表 3.3 例一 各項性能指標
表 3.5 例三 各項性能指標
classic TS55 TS99
treach(xdæ 0.005) 2.41s 1.45s 1.63s
2 , 1 ,
maxui i= 18.0073, 6.7158
28.6859, 9.9209
23.0265, 8.6423
u ∞ 19.2189 29.3154 23.2261
2 , 1
2,
∫
ui i= 2725.5, 270.9631 2733.9 311.8068 2733.7 297.1432∫
uTu 2996.5 3045.7 3030.9∫
eTe 0.2903 0.1139 0.1616Cputime(計算 106次) 7.625s 4.766s 4.766s
第四章
結合 T-S 模糊模型及變結構控制之可靠度問題研究
4.1 問題描述
考慮一個二階非線性微分方程如下:
xç1= x2
xç2= f(x) + G(x)u (4.1)
其 中 x1∈ Rn, x2∈ Rn代 表 系 統 狀 態 , u∈ Rn+m為 控 制 輸 入 , f(x)∈ Rn以 及
G(x)∈ Rnâ(n+m)為平滑函數,( )á T代表矩陣或向量的轉置。為了方便討論,假設
f(0) = 0並且系統(4.1)的控制輸入具有冗餘(inherent redundancy)。
本章的目的是要設計一個控制律使得當某些驅動器遭遇故障時依然能利用其他 正常的驅動器來完成穩定的任務,而正常的驅動器數量不可少於 n 個。在此提出兩種 設計方法:被動式與主動式可靠度設計方法。在被動式可靠度設計方法中,系統利用 冗餘來設計一個固定的控制器使得閉路系統無論在正常運作或是各種故障的情況下 均可以達到可接受的性能表現。然而,主動式的設計方法則是根據錯誤偵測與診斷機 制(FDD)的結果來重組控制器。也是因為這個原因,在主動式方法中,錯誤偵測與 診斷機制的可靠度也就顯得十分重要。
4.2 建立 T-S 模糊模型
我們知道一個非線性系統可以藉由p個線性模型做權重的相加而以 T-S model 做 近似,p 個線性模型如下:
xç1= x2
xç2= P
sTsç = sT P
[36]。在偵測與診斷過錯誤之後,控制律將會被切換成主動式可靠度控制律並且如我
擾滿足假設 4.2,則系統的原點在控制律(4.10)給定的情況下會是局部漸進穩定 (LAS)。
4.4 衛星姿態之可靠度控制
4.4.1 衛星動態
首先考慮在原型軌道上有三個致動器的衛星系統動態方程式。根據尤拉方程式的 定義[8],衛星系統動態方程式以角動量守衡法則來表現有以下形式
T + G =dhdt = [dhdt]b+ wâ h (4.11)
其中 T 代表外界的干擾(包括太陽壓力力矩(solar pressure torque),磁場干擾(magnetic field disturbance)以及外部輸入力矩( external input torque)),G 是地球的重力梯度力矩 (gravity gradient torque),h 是總角動量,w是主軸的角度率。這個符號[ ]á b是表示衛星 相對於本體座標軸。定義iê, jê, kê為本體座標軸中的標準基底向量,因此總角動量可以 表示成:
h = (Ixwx+ hwx)iê + (Iywy+ hwy)jê + (Izwz+ hwz)kê (4.12)
其中Ix, Iy, Iz為相對於x, y, z軸的慣量,wx, wy, wz定義為相對應於x, y, z軸的角度率,
hwx, hwy, hwz為輸入力矩。將(4.12)式代入(4.11)式可得
T + G =
Ixwçx+ hwx+ (Izà Iy)wywz+ wyhwzà wzhwy Iywçy+ hçwy+ (Ixà Iz)wxwz+ wzhwxà wxhwz
Izwçz+ hçwz+ (Iyà Ix)wxwy+ wxhwyà wyhwx
⎛
⎝
⎞
⎠ (4.13)
根據[8],角度率與尤拉角度率有以下的關係
wë = òçë+ w0E2á eë, ë = x, y, z (4.14)
定義òx= þ, òy= ò, òz= ψ為相對於x, y, z軸的旋轉角度,E2為軌道座標的單位向 量,eë為本軸的單位向量,w0為軌道率。將(4.14)式寫成向量形式:
w =
à w0x6sx3cx2à 0.5w20s(2x2)s2x3cx1à 0.5w20cx2sx1s(2x3) + 1.5w20s(2x2)cx1ã
gö(x) =
a21i= I
圖 4.1 錯誤偵測診斷程序圖
zç4= fnew1 + u1+ l1u4 (4.37) zç5= fnew2 + u2+ l2u4 (4.38) zç6= fnew3 + u3+ l3u4 (4.39) 可以看出z4只受u1與u4影響,z5只受u2與u4影響,z6只受u3與u4影響。只要任何兩 個致動器同時發生故障就無法達到所要的控制目的,因此我們只考慮單一驅動器故障 之情形。
透過(4.31)-(4.39)的轉換,我們設計觀察器(øi)以及殘留信號(ri)如下:
øç1= fnew1 + u1+ l1u4+ k1(z4à ø1) (4.40) øç2= fnew2 + u2+ l2u4+ k2(z5à ø2) (4.41) øç3= fnew3 + u3+ l3u4+ k1(z6à ø3) (4.42)
r1= z4à ø1 (4.43) r2= z5à ø2 (4.44) r3= z6à ø3 (4.45)
其中在(4.40)-(4.42)觀察器方程式中的u1, u2, u3以及 u4是在正常運作下所設計的控制 律並且ki> 0, i = 1, 2, 3。經過我們的設計之後,任何單一致動器的故障都可以被偵 察及診斷。實際上,我們之後會展示當u1故障時會導致 r| | 6=0, r1 | | = r2 | | = 0,當u3 2
故障時會導致 r| | 6=0, r2 | | = r1 | | = 0,當u3 3故障時會導致 r| | 6=0, r3 | | = r1 | | = 0,2
最後當u4故障時會導致 r| | 6=0 , r1 | | 6=0, r2 | | 6=0。為了能觀察到這種結果,我們假設3
第一個致動器發生故障且實際值為uã1,定義
m1= uã1à u1 (4.46) 其中u1是設計值,m1是實際值與設計值之間的錯誤信號,因此可將(4.37)改寫成:
zç4= fnew1 + uã1+ l1u4
= fnew1 + u1+ l1u4+ m1 (4.47)
經過(4.37),(4.40),(4.43)的運算之後,可得
rç1= zç1à øç1
= à k1r1+ m1 (4.48)
因為k1是正的,所以r1在經過短暫的暫態之後會逼近於m1/k1。因此,r1會受到錯誤 信號m1的影響,也就是
m16=0 ⇒ r16=0 (4.49) 利用類似的方法,我們可以定義u2,u3以及u4的錯誤信號分別為m2,m3以及m4, 因此我們可以得到以下的關係:
m26=0 ⇒ r26=0 m36=0 ⇒ r36=0 m46=0 ⇒ r1, r2, r36=0
4.4.3 模擬結果
當某個特定的致動器出現故障時,我們使用變結構控制的方法來設計可靠度控制 器以求能達到姿態穩定的目的。從(4.29)(4.30)中,我們可知此系統有六個狀態變數 以及四個輸入。x1, x2, x3為x, y, z三方向的旋轉角度,x4, x5, x6為相對應的角速度。
在模擬中,我們分別對系統六個參數各取五個規則如下:
z 針對þ取五個規則,為þ = à ù, à ù/2, 0, ù/2, ù。
z 針對ò取五個規則,為ò = à ù/2, à ù/4, 0, ù/4, ù/2。
z 針對ϕ取五個規則,為ϕ =à ù, à ù/2, 0, ù/2, ù。
z 針對þç取五個規則,為þç = à 1, à 0.5, 0, 0.5, 1。
z 針對òç取五個規則,為òç = à 1, à 0.5, 0, 0.5, 1。
z 針對ϕç取五個規則,為ϕç = à 1, à 0.5, 0, 0.5, 1。
其模糊歸屬函數如下:
圖 4.2 x1à x6之歸屬函數
相互搭配之後共有 56條規則,即規則數 p = 56。不過當我們在計算 T-S model 的 P
i=1 p
ëi(x)Ai(x)x時,並不需要根據每一個時候的狀態分別去算出56個矩陣然後再去相 加。事實上,我們根據每個時候的狀態只需要分別去算26個矩陣再去相加。以兩個狀 態的系統為例,圖 4.4 顯示當 x1= 0.1, x2= à 0.1 時我們只需要將鄰近的四個矩陣 (A⏐⏐
x1=0,x2=à0.5, A⏐⏐
x1=0.5,x2=à0.5, A⏐⏐
x1=0,x2=0, A⏐⏐
x1=0.5,x2=0)依照權重關係相加即為此狀
圖 4.3 在每一個時間間隔中所觸發四個相鄰的操作點
下
(chattering),將符號函數(sign function)改為飽和函數(sat(si/ïi),saturation function) 且其邊界層寬度 ïi= 0.05, i = 1, 2, 3 。主動式控制器的錯誤診斷機制參數設定如
系 統 初 始 值 為 x(0) = [à 0.7 à 0.07 1.5 0.3 1.3 à 0.2] , 最 後 所 要 的 姿 態 為 xd(t) = [0 0 0 0 0 0]。
對於被動式可靠度控制器來說,我們事先設定u2是可能故障的推進器並且模擬五 種情況:
(1) 正常運作
(2) u1在t = 2秒時發生故障 (3) u2在t = 2秒時發生故障 (4) u3在t = 2秒時發生故障 (5) u4在t = 2秒時發生故障
對於主動式可靠度控制器來說,控制律會根據錯誤診斷機制來進行切換並且同樣地模 擬五種情況。圖 4.5-圖 4.19 展示被動式可靠度控制器的模擬情況,包括系統狀態,順 滑函數以及控制輸入。圖 4.20-圖 4.44 展示主動式可靠度控制器的模擬情況,包括系 統狀態,順滑函數,殘留訊號,警報訊號以及控制輸入,其中a1, a2, a3代表警報訊號,
condition代表控制律切換情形,r1, r2, r3代表殘留訊號。圖 4.45-圖 4.53 為被動式與 主動式的比較圖。各項性能指標如表 4.1-表 4.5 所示。
以u2故障的情況下做說明,圖 4.11 說明在此情況下被動式可靠度控制器可以藉 由錯誤容忍的方式達到追蹤目的。由圖 4.13 可以觀察到u1, u3, u4分別在t = 1秒附近 各有兩個切跳現象是因為順滑函數 s1, s2到達順滑平面的原因。 u1, u2, u3, u4分別在 t = 2秒附近各有一個切跳現象是因為此時u2發生故障的原因。u1, u4分別在t = 3秒 附近各有一個切跳現象是因為順滑函數s3到達順滑平面的關係,可視為在最後階段為
以u2故障的情況下做說明,圖 4.11 說明在此情況下被動式可靠度控制器可以藉 由錯誤容忍的方式達到追蹤目的。由圖 4.13 可以觀察到u1, u3, u4分別在t = 1秒附近 各有兩個切跳現象是因為順滑函數 s1, s2到達順滑平面的原因。 u1, u2, u3, u4分別在 t = 2秒附近各有一個切跳現象是因為此時u2發生故障的原因。u1, u4分別在t = 3秒 附近各有一個切跳現象是因為順滑函數s3到達順滑平面的關係,可視為在最後階段為