朱大昌,崔翱東,杜寶林,盤意華
(廣州大學機械與電氣工程學院,廣東廣州 510006)
目前,機械臂控制往往采用單通道獨立控制方 式, 由于各關節運動協同性的缺失, 導致機械臂末端受力不均衡, 關節磨損加劇, 從而降低了機械臂的整體性能。
為解決機械臂多關節的同步控制問題,KOREN提出了交叉耦合控制方法,通過共享各關節位置傳感信息,產生相應控制信號,構建同步誤差模型, 以實現多關節的同步控制。交叉耦合控制方法在多自由度機器人控制系統中得到較為廣泛的應用。 一般情況下,研究者將同步誤差定義為關節變量誤差之差, 在滿足同步誤差收斂的同時, 計算簡單、 易于實現,并應用于多關節機械臂同步控制器設計。
多自由度機械臂是一種典型的非線性、強耦合系統,以上同步誤差定義方式難以滿足其對于復雜軌跡跟蹤性能的要求。針對這一問題,文獻[6]中采用操作空間輪廓誤差在關節空間的映射值來表征機械臂各關節之間的同步性能, 提出輪廓誤差同步(Contour Error Synchronization,CES)控制器,提高了機械臂各關節同步性能,有效降低末端輪廓誤差, 取得了良好的效果。然而, 目前輪廓誤差同步控制大多采用傳統PID算法,難以滿足多自由度機械臂對快速性和精確性的要求,而機械臂控制中廣泛應用的計算力矩控制算法(CTC)則對機械臂模型精度有較高的要求。
模型預測控制(Model Predictive Control,MPC)是一種對模型精度要求不高、在線計算方便、可以直接處理系統輸入輸出或狀態約束、控制綜合質量好的新型控制算法。相對于CTC,MPC對模型精度要求低,有著更好的控制效果。近年來,模型預測控制在機器人控制領域得到了廣泛的發展。
本文作者提出了一種機械臂輪廓誤差同步預測控制策略。首先利用輪廓誤差轉換矩陣求解操作空間的輪廓誤差,并利用機械臂雅可比矩陣將操作空間輪廓誤差映射到關節空間;再根據各個關節的跟蹤誤差和操作空間輪廓誤差在關節空間的映射值重新定義了關節空間耦合誤差,各關節的耦合誤差包含了自身的信息和其他所有關節的信息,提高了各關節的協調性;最后利用耦合誤差的離散化模型設計了輪廓誤差同步預測控制器。為解決常規預測控制器不能保證系統穩定的問題,進一步提出了雙模同步預測控制。試驗結果表明:所設計的控制器能在保證跟蹤誤差收斂的同時有效減小輪廓誤差并提高各關節之間的協調性,使得控制力矩相比常規預測控制更為柔和。
采用拉格朗日能量法,自由度機械臂的動力學方程表示為

(1)

機械臂的動力學方程(1)難以直接用于MPC控制器的設計。采用泰勒展開法,機械臂動力學方程線性化、離散化處理過程如下:


(2)
式中:

()=()
記采樣周期為,當前時刻為,由泰勒展開式可以得到+1時刻的狀態為

(3)
進一步地,可以將式(3)寫成更簡潔的形式:
(+1)=()+()+
(4)



(+1)=(+1)-(+1)=()+()+-(+1)
(5)
為了計算各個軸的同步誤差,需首先計算機械臂操作空間的輪廓誤差,再將操作空間的輪廓誤差映射到關節空間,最后將操作空間輪廓誤差在關節空間的映射值作為各個軸的同步誤差。操作空間輪廓誤差定義為末端實際位置與期望軌跡輪廓最近點的差值。為了減小計算量,用輪廓最近點的估計值代替實際值,輪廓最近點估計值定義為實際位置到期望位置切線的垂足,具體如圖1所示。

圖1 操作空間輪廓誤差

=·
(6)
式中:為輪廓誤差轉換矩陣:




通過式(6)可以由操作空間的軌跡跟蹤誤差得到操作空間的輪廓誤差。實際應用中機械臂操作空間的軌跡跟蹤誤差難以直接測量得到,可以利用雅可比矩陣將關節空間的位置跟蹤誤差映射到操作空間:
=·
(7)
式中:∈×表示機械臂的雅可比矩陣,表示笛卡爾空間自由度數。
設操作空間輪廓誤差在關節空間的映射值為∈×1,此映射值可以通過雅可比矩陣的逆矩陣求解得到:
=·
(8)
式中:表示雅可比矩陣的逆矩陣。聯立式(6)(7)(8)可以得到:
=···
(9)
通過式(9)可以得到操作空間輪廓誤差在關節空間的映射值。文中將定義為關節空間同步誤差,進行了同步控制器的設計。
為了同時考慮關節空間的跟蹤誤差和同步誤差,需定義關節空間的耦合誤差。常見耦合誤差的定義方式為
=+λ
(10)
式中:∈×1為關節耦合誤差;∈×1為關節跟蹤誤差;∈×1為關節同步誤差;為耦合系數,耦合系數越大,關節同步性能越好。

=-
(11)
式中:表示關節空間的耦合誤差;為當前實際狀態。可通過下式求解:

(12)
式中:、分別為關節目標修正位置和速度;為只考慮同步誤差時的關節目標修正位置;為耦合系數。可以看出始終位于和之間,耦合系數越大,越接近,同步性能越好。通過式(11)定義的耦合誤差包含了關節的位置、速度跟蹤誤差信息和位置同步誤差信息,所起到的效果與式(10)近似,且推導出的離散化表達式更為簡單,便于預測控制器的設計。
根據式(4)(11),可以得到耦合誤差的離散化表達式為
(+1)=()+()+-
(13)
再將式(11)代入式(13),可以將式(13)改寫成如下形式:
(+1)=()+()+-(+)
(14)
定義系統時刻綜合性能指標為


(15)

參照文獻[10],記

根據式(4)可以得到:
=++
式中:


所以,式(15)等價于:

(16)
式中:


=-(+)(+-)
(17)
由于預測控制采用了滾動優化的控制策略,在時刻,只取中的第一項()作用到機械臂上,在+1時刻,則重新求解并取第一項(+1)作用到機械臂上。
上一小節設計的預測控制器容易求解得到控制力矩的解析表達式,但難以保證系統的穩定性。文獻[11]總結了預測控制穩定性設計的三大要素即終端集、終端代價函數和局部控制率,并概括了保證預測控制穩定性的基本途徑。作者提出了一種雙模預測控制器,重新定義了系統的性能指標函數,并給出了三大要素的表達式,通過在有限時域內將系統狀態驅動到終端集內,之后再切換到局部控制率,將系統狀態穩定在終端集內,保證了系統的穩定性。
帶有終端集約束和終端代價函數的雙模預測控制,時刻的優化問題表示為


(18)


在控制時域內,通過求解優化問題式(18)將(+|)控制到終端集內,然后通過局部控制率鎮定系統。下面設計局部控制率:
首先,利用輸入變換,設

(19)
式中:表示機械臂實際輸入力矩。



(+1)=()+()
然后設計局部控制率:
()=(|)
式中:∈×2。
在局部控制率的作用下,將式(21)代入式(20)得到:
(+1)=(+)()
(22)
機械臂的實際輸入力矩可以通過求解式(19)(21)得到。
對于終端集和局部控制率,要求所構造的和要使(++1|)落在終端集內,即要求:

由于



所以,所設計的控制器必須滿足需滿足條件1:
(+)(+)-≤0
(23)
首先假設條件1滿足。設時刻最優性能指標為(),()和()分別是最優解和最優狀態軌跡。設+1時刻的一個可行解為
(+1)=(+1|+1),…,(+|+1),

(++1|+1)
注意到(+1)僅為可行解而并非最優解,所以由此可行解得到的(+1)滿足:(+1)≥(+1),式中(+1)表示+1時刻的最優性能指標。
+1時刻的性能指標函數表示為



(++1|+1)=(+)(+|)
所以:


又由于:



所以:





故而,若滿足條件2:
+(+)(+)-≤0
則可證得:
()≥(+1)≥(+1)
(25)
式(25)表示綜合性能指標是不斷收斂的,穩定性得以證明。由于條件2覆蓋條件1,所以只需滿足條件2即可證明控制器穩定。
另外,為了求解和,可以將式(24)改寫成LMI形式:記=,=,式(24)可改寫為
--(+)(+)>0
再將上式進一步改寫成LMI形式:

(26)
通過求解此LMI可以得到和。
所以,機械臂的雙模預測控制算法的步驟為
步驟1,獲取當前機械臂的狀態。
步驟2,根據LMI表達式(26)求解得到和,從而得到具體的優化問題表達式。
步驟3,求解優化問題(18)并得到最優控制序列。
步驟4,將最優控制序列的第一個控制率施加給機械臂。
步驟5,返回步驟1進行下一時刻的流程。
以二自由度機械臂為對象,將本文作者設計的輪廓誤差同步預測控制器(CES-MPC),與傳統的預測控制器(MPC)以及計算力矩控制器(CTC)進行了對比。
CTC控制算法的表達式為

預測控制算法的表達式為



二自由度機械臂實驗平臺如圖2所示,實際實驗中的關節輸出力矩約束為=-=5 N·m,=-=0.5 N·m。實驗結果如圖3—圖5所示。

圖2 二自由度機械臂實驗平臺

圖3 末端直線軌跡 圖4 關節1輸出力矩

圖5 關節2輸出力矩
為了更好地分析實驗結果,將實驗中3種算法下末端軌跡的跟蹤誤差和輪廓誤差值進行了對比,末端軌跡誤差比較見表1。

表1 末端軌跡輪廓誤差比較
通過對比3種算法的實驗結果可以看出:在末端存在初始誤差的情況下,所設計的CES-MPC算法相比CTC算法和MPC算法,能更加有效地減小末端輪廓誤差,且相比常規MPC算法,關節輸出力矩波動較小,有著良好的控制效果。
為了提高機械臂末端軌跡精度和輪廓精度,并增強各軸之間的協調性,在基于操作空間輪廓誤差模型的機械臂輪廓誤差同步控制的基礎上,引入了預測控制策略,提出了一種基于預測控制的機械臂輪廓誤差同步控制。為了保證控制系統的穩定性,進一步引入了雙模預測控制的概念。二自由度機械臂實驗的實驗結果表明:本文作者設計的控制器在保證機械臂末端跟蹤精度的同時,能顯著提高末端輪廓精度,并且增強了各軸之間的協調性,使各關節的輸出力矩更為柔和,在末端軌跡存在初始誤差的情況下仍然有良好的控制效果。