李 巖, 柴媛媛, 劉克平
(長(zhǎng)春工業(yè)大學(xué)電氣與電子工程學(xué)院, 長(zhǎng)春 130012)
機(jī)械臂的基本控制問題是確定驅(qū)動(dòng)關(guān)節(jié)位置以及跟隨位置軌跡的控制算法。由于機(jī)械臂本身存在非線性和動(dòng)態(tài)耦合的特性,因此控制算法的設(shè)計(jì)通常很復(fù)雜。目前,已經(jīng)提出了多種用于機(jī)械臂系統(tǒng)的控制方法[1-2],例如比例積分微分控制[3]和計(jì)算力矩控制[4],它們通過反饋來實(shí)現(xiàn)軌跡跟蹤目標(biāo)。其次,自適應(yīng)控制[5]、變結(jié)構(gòu)控制[6]和模糊控制[7]等控制算法也經(jīng)常被研究人員應(yīng)用于機(jī)械臂控制中。但是,在機(jī)械臂系統(tǒng)應(yīng)用上述算法時(shí)會(huì)導(dǎo)致相同的跟蹤誤差一次又一次地出現(xiàn)。針對(duì)不確定性和強(qiáng)非線性耦合的動(dòng)態(tài)系統(tǒng)的控制問題,迭代學(xué)習(xí)控制(iterative learning control, ILC)[8]作為一種有效的控制策略,可以進(jìn)行復(fù)雜建模,適用于具有重復(fù)性質(zhì)的機(jī)械臂系統(tǒng)[9-12]。
在實(shí)驗(yàn)中,使用ILC時(shí),機(jī)器臂系統(tǒng)在每次迭代開始時(shí)以相同的初始條件啟動(dòng),因此機(jī)械臂每次運(yùn)行時(shí)都需要重置系統(tǒng)的初始條件[13-16]。為了抑制初始條件對(duì)實(shí)驗(yàn)結(jié)果的影響,目前,Bouakrif[17]提出了一種微分(differentiation, D)型ILC,用于具有外部干擾的剛性機(jī)械臂的軌跡跟蹤問題,并具有初始狀態(tài)算法。因?yàn)槌跏紶顟B(tài)值可以經(jīng)由迭代自動(dòng)獲得,因此,避免了在每次迭代時(shí)需要選擇初始狀態(tài)值。
加速迭代學(xué)習(xí)收斂速率也是眾多學(xué)者重點(diǎn)研究的科研目標(biāo)。Wang等基于傳統(tǒng)的D型ILC控制律,利用誤差積分項(xiàng)和比例項(xiàng)抑制初始條件對(duì)控制結(jié)果的影響等[18]。但是,它沒有考慮系統(tǒng)存在干擾時(shí)是否仍然收斂到零的情況。為加快迭代學(xué)習(xí)控制律的收斂速度[19-21],郭文雅[22]在非擴(kuò)張算子迭代算法中對(duì)算法收斂速度進(jìn)行研究,使其控制算法具有更加快速的收斂速度。蘭天一等[23]采取區(qū)間可調(diào)的變?cè)鲆婕铀俚鷮W(xué)習(xí)控制算法,處理線性時(shí)不變系統(tǒng),以加快ILC算法的收斂速度。并且在此基礎(chǔ)上,蘭天一等[24]以比例微分(proportion differentiation, PD)型為例提出在區(qū)間內(nèi)可調(diào)的加速迭代學(xué)習(xí)控制算法,通過可調(diào)節(jié)區(qū)間證明Lebesgue-p范數(shù)下的加速迭代學(xué)習(xí)控制,在設(shè)計(jì)的修正區(qū)間內(nèi)學(xué)習(xí)增益進(jìn)行實(shí)時(shí)修正,區(qū)間外無修正的方式加快系統(tǒng)收斂速度,并通過 Young不等式給出收斂證明。李巖等[25]設(shè)計(jì)了一種PD型控制律,隨著迭代次數(shù)的不斷增加,通過在區(qū)間內(nèi)對(duì)增益矩陣進(jìn)行實(shí)時(shí)修改來縮短修正區(qū)間,進(jìn)而達(dá)到加快收斂速度的目的。
在前期工作的基礎(chǔ)上[25],現(xiàn)提出一種無需重置條件下加速迭代學(xué)習(xí)控制方法。首先,利用控制算法使每次迭代時(shí)的初始值無需重置。其次,利用指數(shù)變?cè)鲆婕铀俚鷮W(xué)習(xí)控制律,采用2自由度機(jī)械臂系統(tǒng)作為仿真驗(yàn)證對(duì)象,通過對(duì)比有無加速收斂算法仿真實(shí)驗(yàn),驗(yàn)證本文所提出算法的可行性及有效性。最后,將該算法在Quanser機(jī)電一體化運(yùn)動(dòng)控制實(shí)驗(yàn)平臺(tái)上應(yīng)用,驗(yàn)證本文提出算法的實(shí)用性。
考慮n自由度機(jī)械臂動(dòng)力學(xué)模型:

(1)
系統(tǒng)動(dòng)力學(xué)模型[式(1)]具有以下性質(zhì):
性質(zhì)1慣性矩陣M(qk)是正定有界矩陣,滿足:

(2)
性質(zhì)2慣性矩陣M(qk)滿足全局Lipschitz連續(xù)條件:

(3)
式(3)中:lm為正數(shù)。
性質(zhì)3重力矩陣G(qk)滿足全局Lipschitz連續(xù)條件:

(4)
式(4)中:gm為正數(shù)。


(5)
引理1[26]對(duì)于連續(xù)變量
z(t)=[z1(t),z2(t),…,zn(t)]∈Rn,t∈[0,T],可以得到向量值函數(shù)z的λ范數(shù)范圍,即不等式:

(6)
式(6)中:λ為一實(shí)數(shù)。
引理2[27]考慮連續(xù)函數(shù)f(x,y),其中x∈Rp,|x|≤ρi,ρi≥0,1≤i≤p,y∈Rq,|y|≤μi,μi≥0,1≤i≤q,因此存在L(y)使:

(7)
基本假設(shè):



對(duì)于具有外部干擾的機(jī)械臂系統(tǒng),設(shè)計(jì)指數(shù)變?cè)鲆鍼D型迭代學(xué)習(xí)控制律為

kPek(t)e-KEt]+τk(t)
(8)
無需重置初始條件需滿足等式:

(9)
式(9)中:ek=qd-qk;KE為修正因子;kD、kP是對(duì)稱正定矩陣。
機(jī)械臂閉環(huán)系統(tǒng)是穩(wěn)定的,需滿足:

(10)
則

(11)
為了方便討論,令M(qk)≡Mk,G(qk)≡Gk。
根據(jù)式(1),可以得出:

(12)
使

(13)
根據(jù)式(12)和式(13),得:

(14)


(15)
對(duì)式(15)求解一般解xk(t)為


(16)
式(16)中:eA(t-s)是狀態(tài)轉(zhuǎn)移矩陣。
將式(8)代入式(16),得到:
xk+1(t)-xk(t)=eAtK1ek(0)e-KEt+


(17)
式(8)和式(17)通過分步積分公式得到表達(dá)式
xk+1(t)-xk(t)=K1ek(t)e-KEt+

(18)

εk+1-εk=-K1ek(t)e-KEt-



(19)
在式(19)“=”兩邊同時(shí)取范數(shù),存在不等式:

(20)
式(20)中:

(21)
式(21)中:I2=[InIn]2。
因此,可以得到不等式:
‖εk+1(t)‖≤‖I2-K1‖‖εk(t)‖+



(22)
為了簡(jiǎn)化式(22),令

(23)
根據(jù)式(15)和式(23),可以得到:


(24)
根據(jù)式(23)、式(24)以及性質(zhì)1~性質(zhì)4、引理2和假設(shè)1~假設(shè)3,可以得到:


(25)
因此,

(26)
根據(jù)式(22)和式(26),可得:


(27)
式(27)中:

式(27)兩邊乘e-λt,根據(jù)引理1,可以得出:

(28)


(29)
因此,根據(jù)式(28)可得:

(30)
根據(jù)式(29)和式(30),可以得出:

(31)
從而得出結(jié)論

(32)
為驗(yàn)證無需重置條件下加速迭代學(xué)習(xí)控制算法的可行性和有效性,利用MATLAB對(duì)2-DOFs機(jī)械臂系統(tǒng)進(jìn)行仿真實(shí)驗(yàn),2-DOFs機(jī)械臂模型如圖1所示。Matlab代碼是在MatlabR2014a環(huán)境下運(yùn)行實(shí)現(xiàn),采用如下機(jī)械臂系統(tǒng)動(dòng)力學(xué)模型進(jìn)行仿真:
M(q)=

G(q)=
仿真實(shí)驗(yàn)時(shí)各參數(shù)為m1=2 kg,m2=2 kg,l1=0.6 m,l2=0.6 m,lc1=0.4,lc2=0.4,I1=0.1,I2=0.1期望軌跡為qd1=sin(4πt),qd2=sin(4πt)

圖1 二自由度機(jī)械臂系統(tǒng)Fig.1 The 2-DOFs manipulator
本節(jié)在兩種不同類型的外部干擾下,利用MATLAB對(duì)2-DOFs機(jī)械臂系統(tǒng)進(jìn)行仿真實(shí)驗(yàn)。
外部干擾為d1(t)=sin(30kπt),d2(t)=sin(30kπt)。仿真參數(shù):KE=0.1,kP=diag{5,5},kD=diag{0.75,0.75}。

圖2 連桿1的跟蹤曲線(正弦函數(shù))Fig.2 Trajectory tracking of connecting rod 1 (sine function)

圖3 連桿2的跟蹤曲線(正弦函數(shù))Fig.3 Trajectory tracking of connecting rod 2 (sine function)
圖2和圖3分別為機(jī)械臂系統(tǒng)的連桿1(q1)和連桿2(q2)經(jīng)過20次迭代后曲線圖。從中可以得出,機(jī)械臂的每個(gè)輸出軌跡在無需重置條件加速迭代學(xué)習(xí)控制算法下,經(jīng)過20次迭代后能完全跟蹤其相應(yīng)的期望軌跡。
圖4為2-DOFs機(jī)械臂系統(tǒng)跟蹤誤差隨迭代學(xué)習(xí)次數(shù)變化的曲線。在5次迭代范圍內(nèi),機(jī)械臂系統(tǒng)每個(gè)連桿的跟蹤誤差減少速度較快,在經(jīng)過17次迭代后可以完全跟蹤上期望軌跡,表明無需重置條件加速迭代學(xué)習(xí)控制算法的收斂性。
為了便于比較分析,在相同仿真條件下,2-DOFs機(jī)械臂系統(tǒng)在無加速收斂條件下,跟蹤誤差數(shù)值變化曲線如圖5所示。通過對(duì)比兩組仿真實(shí)驗(yàn),可以得出在本文提出的指數(shù)加速收斂算法下,機(jī)械臂系統(tǒng)連桿1跟蹤誤差和連桿2跟蹤誤差的數(shù)值在17次迭代后可收斂到零的鄰域內(nèi)。在無加速收斂條件下,機(jī)械臂系統(tǒng)連桿1跟蹤誤差和連桿2跟蹤誤差的數(shù)值在第25次迭代時(shí)減少到零。結(jié)果表明,無需重置條件的PD型加速迭代學(xué)習(xí)控制方法對(duì)加速收斂的效果十分明顯。
(2)外部干擾為隨機(jī)函數(shù)。外部干擾為:d1(t)=random(1)sin(100kπt),d2(t)=random(1)×sin(100kπt)。
仿真參數(shù):KE=0.5,kD=diag{0.45,0.45},kP=diag{6,6}。
圖6和圖7分別為連桿1和連桿2在第20次迭代時(shí),跟蹤軌跡曲線圖。實(shí)線為期望軌跡曲線,虛線為第20次迭代時(shí)實(shí)時(shí)軌跡曲線。從圖6和圖7中可以得出,具有隨機(jī)函數(shù)形式外部干擾的機(jī)械臂系統(tǒng),在經(jīng)過20次迭代后每個(gè)輸出軌跡能完全跟蹤其相應(yīng)的期望軌跡。

圖4 跟蹤誤差隨迭代學(xué)習(xí)次數(shù)變化曲線(正弦函數(shù))Fig.4 The changes of tracking errors in iterations (sine function)

圖5 在無加速條件下,跟蹤誤差隨迭代學(xué)習(xí)次數(shù)變化曲線(正弦函數(shù))Fig.5 The changes of tracking errors in iterations without accelerated convergence (sine function)
圖8為2-DOFs機(jī)械臂系統(tǒng)基于無需重置條件下跟蹤誤差隨迭代學(xué)習(xí)次數(shù)變化的曲線圖,帶星號(hào)為連桿1跟蹤誤差數(shù)值的變化圖,帶圓圈為連桿2跟蹤誤差數(shù)值的變化圖。可以得出在經(jīng)過16次迭代后可以完全跟蹤上期望軌跡,證明無需重置條件下加速迭代學(xué)習(xí)控制算法的收斂性。為了便于比較分析,在相同仿真條件下,圖9為系統(tǒng)在無加速收斂條件下,跟蹤誤差數(shù)值變化曲線圖。通過對(duì)比圖8和圖9,可以得出跟蹤誤差在加速收斂算法下比無加速收斂情況下更快地收斂到零。結(jié)果表明,無需重置條件的PD型加速迭代學(xué)習(xí)控制方法對(duì)加速收斂的效果十分明顯。

圖6 連桿1的跟蹤曲線(隨機(jī)函數(shù))Fig.6 Trajectory tracking of connecting rod 1 (random function)

圖7 連桿2的跟蹤曲線(隨機(jī)函數(shù))Fig.7 Trajectory tracking of connecting rod 2 (random function)

圖8 跟蹤誤差隨迭代學(xué)習(xí)次數(shù)變化曲線(隨機(jī)函數(shù))Fig.8 The changes of tracking errors in iterations (random function)

圖9 在無加速條件下,跟蹤誤差隨迭代學(xué)習(xí)次數(shù)變化曲線(隨機(jī)函數(shù))Fig.9 The changes of tracking errors in iterations without accelerated convergence (random function)
為進(jìn)一步說明本文提出的無需重置初始條件下加速收斂算法的實(shí)用性,將該算法在Quanser機(jī)電一體化運(yùn)動(dòng)控制實(shí)驗(yàn)平臺(tái)上運(yùn)行,實(shí)驗(yàn)平臺(tái)如圖10所示。

圖10 Quanser 機(jī)電一體化運(yùn)動(dòng)控制實(shí)驗(yàn)平臺(tái)Fig.10 Quanser mechatronics motion control experimental platform
該實(shí)驗(yàn)在外部干擾為正弦函數(shù)情況下進(jìn)行,外部干擾為d1(t)=sin(30kπt),d2(t)=sin(30kπt)。
仿真參數(shù):KE=0.1,kD=diag{0.75,0.75},kP=diag{5,5}。

圖11 連桿1的跟蹤曲線Fig.11 Trajectory tracking of connecting rod 1

圖12 連桿2的跟蹤曲線Fig.12 Trajectory tracking of connecting rod 2
圖11和圖12分別為機(jī)械臂系統(tǒng)連桿1和連桿2經(jīng)過20次迭代后曲線圖。實(shí)線為期望軌跡曲線,虛線為第20次迭代后實(shí)時(shí)軌跡曲線。從圖11和圖12中可以得出,在前0.2 s內(nèi)存跟蹤軌跡不能完全跟蹤上期望軌跡,在0.2 s后機(jī)械臂的每個(gè)輸出軌跡在Quanser機(jī)電一體化運(yùn)動(dòng)控制實(shí)驗(yàn)平臺(tái)上,利用無需重置條件加速迭代學(xué)習(xí)控制算法,經(jīng)過20次迭代后能完全跟蹤其相應(yīng)的期望軌跡。說明本文提出的算法的實(shí)用性。
針對(duì)存在不確定性的2-DOFs機(jī)械臂系統(tǒng),提出了一類無需重置條件的PD型加速迭代學(xué)習(xí)控制方法。首先,利用指數(shù)變?cè)鲆婕铀賹W(xué)習(xí)控制律。基于ILC算法,無需重置每次運(yùn)行時(shí)的初始條件。其次,在λ范數(shù)意義下,證明了無需重置條件的PD型加速迭代學(xué)習(xí)控制算法的收斂性。最后,通過對(duì)比仿真實(shí)驗(yàn)表明無需重置條件下加速迭代學(xué)習(xí)控制算法能夠有效加速收斂,并將該算法在Quanser機(jī)電一體化運(yùn)動(dòng)控制實(shí)驗(yàn)平臺(tái)上進(jìn)行驗(yàn)證,進(jìn)一步說明本文提出算法的實(shí)用性。因此,本文提出的無需重置條件PD型加速迭代學(xué)習(xí)控制算法是可行有效的。