程韜波,李曉曉 ,徐智浩,周雪峰
(1.廣東省智能制造研究所,廣州 501070;2.廣東省現(xiàn)代控制技術(shù)重點實驗室,廣州 501070)
機器人被譽為“制造業(yè)皇冠頂端的明珠”,是實現(xiàn)智能制造的重要載體[1]。近年來,隨著機器人技術(shù)的推廣應(yīng)用,其操作要求越來越復(fù)雜化、精密化,單個機器人難以滿足當前柔性化生產(chǎn)的市場需求,主要表現(xiàn)在[2]:(1)單機器人負載能力有限、工作空間較小,難以適應(yīng)大空間加工任務(wù);(2)單機器人加工的作業(yè)效率有限;(3)單個機器人的自由度有限,難以滿足實現(xiàn)復(fù)雜度高的加工任務(wù)。多機器人協(xié)作系統(tǒng)具有高冗余自由度、結(jié)構(gòu)靈活多變等特點,是解決上述問題的有效途徑之一。其中,多機協(xié)同控制指通過設(shè)計協(xié)同控制策略,使多機器人執(zhí)行共同的任務(wù),在多機搬運、裝配、焊接等領(lǐng)域應(yīng)用廣泛[3-5]。
針對快速切換的加工任務(wù),傳統(tǒng)示教或離線編程方式效率不足;實時運動控制工程意義較強,但同樣面臨技術(shù)挑戰(zhàn):需要根據(jù)多機器人加工任務(wù)實時設(shè)計控制量,實現(xiàn)對給定任務(wù)軌跡的跟蹤,同時能夠?qū)崟r避免機器人超越其關(guān)節(jié)約束。此外,區(qū)別于傳統(tǒng)單機控制,多機器人系統(tǒng)之間可能存在結(jié)構(gòu)閉鏈,機器人之間的相互影響對系統(tǒng)的同步性有很高的要求。
針對上述挑戰(zhàn),金龍等[6]利用遞歸神經(jīng)網(wǎng)絡(luò)(RNN)的實時處理性能為雙機器人提出一種基于RNN的同步控制方案,但未提及機器人之間的通信方式。李帥等[7]提出一種樹形結(jié)構(gòu)通信的多機器人協(xié)同控制方法,之后他們從博弈論的角度再次探討了該問題,提出一種分布式協(xié)同控制方案[8]。張海濤等[9]為實現(xiàn)機器人圓形編隊提出一種多機器人系統(tǒng)控制算法,通過使用排斥力/轉(zhuǎn)向力和相位調(diào)節(jié)機制,避免機器人之間或機器人與墻壁的碰撞。查延麟[10]結(jié)合量化通信和區(qū)間算術(shù)方法提出一種考慮系統(tǒng)不確定性的多移動機器人協(xié)調(diào)控制策略。陳梅等[11]提出一種隊形軌跡跟蹤控制方法,可使各機器人較快形成期望隊形,以期望隊形追蹤期望軌跡。Alessandro[12]提出一種分布式自適應(yīng)控制策略,在機器人未知系統(tǒng)完整狀態(tài)的情況下實現(xiàn)協(xié)同控制。
上述多機器人協(xié)同控制策略大多基于系統(tǒng)狀態(tài)信息全局未知的情況,在設(shè)計控制方案時需要考慮期望軌跡信息獲取等因素。受益于5G通訊技術(shù)的發(fā)展,使得多機協(xié)同控制過程中可實時獲取各機器人的狀態(tài)信息,保證了集中式控制策略在工業(yè)多機器人的系統(tǒng)實現(xiàn)。機器人跟蹤控制問題通常分為兩類:關(guān)節(jié)空間跟蹤和任務(wù)空間跟蹤。關(guān)節(jié)空間跟蹤目標是設(shè)計一個控制器控制機器人的每一個關(guān)節(jié)去追蹤一條預(yù)定軌跡。任務(wù)空間跟蹤是在笛卡爾空間建立期望軌跡,將控制命令發(fā)送給關(guān)節(jié)的每個驅(qū)動器,然后控制末端執(zhí)行器在笛卡爾空間執(zhí)行。由于笛卡爾空間和關(guān)節(jié)空間之間映射關(guān)系的高度非線性,任務(wù)空間跟蹤比關(guān)節(jié)空間跟蹤更困難。
本文研究關(guān)節(jié)約束下多機器人任務(wù)空間跟蹤的智能協(xié)同控制問題,以軌跡追蹤為主要任務(wù),首先構(gòu)建同步跟蹤誤差并設(shè)計外環(huán)控制策略,選取關(guān)節(jié)速度范數(shù)最小化為次級任務(wù),進一步考慮關(guān)節(jié)速度和關(guān)節(jié)角限幅,將多機協(xié)同運動控制問題建模為一個二次型優(yōu)化問題,然后設(shè)計一個動態(tài)神經(jīng)網(wǎng)絡(luò)控制器實時求解控制量,最后建立MATLAB與V-REP聯(lián)合仿真實驗平臺以驗證多機協(xié)同控制策略的有效性。
機器人的正向運動學(xué)模型可以描述為:
式中:r(t)∈?n,為機械臂末端執(zhí)行器t時刻在笛卡爾空間中位置和方向的n維向量;θ(t)∈?m,為關(guān)節(jié)空間中的m維向量,它的每一個元素表示一個關(guān)節(jié)角,不失一般性,本文考慮機器人存在冗余自由度的情況,即m>n;f(·)為笛卡爾空間到關(guān)節(jié)空間映射關(guān)系的非線性函數(shù),通常由機械臂的結(jié)構(gòu)和參數(shù)決定。
對式 (1)求導(dǎo)可得速度層r˙(t)與 θ˙(t)的映射關(guān)系:
式 中 : J(θ(t))=?f(θ(t))/?θ(t)∈?m×n, 為 雅 可 比 矩 陣 ;r˙(t)和θ˙(t)分別為機械臂末端執(zhí)行器的笛卡爾速度與關(guān)節(jié)角速度。
由于f(·)的非線性和冗余性,給定期望軌跡r(t)→rd(t)很難獲得相應(yīng)的關(guān)節(jié)角θ(t)。式(2)速度層從關(guān)節(jié)空間到笛卡爾空間的映射簡化了該問題。
本文研究多機器人任務(wù)空間跟蹤的智能協(xié)同控制問題,考慮機械臂關(guān)節(jié)角和關(guān)節(jié)速度限幅,定義第i個機械臂的關(guān)節(jié)角 θi和角速度的上下界分別為,期望軌跡為rd(t),各機器人相對其初始位置的位移為ri(t)-ri(0),i=1,2,…,N。智能協(xié)同控制的目標可以描述為:設(shè)計關(guān)節(jié)速度指令使機器人協(xié)同完成軌跡追蹤任務(wù)且不發(fā)生相對位移,即r1(t)-r1(0)=…=rN(t)-rN(0)=rd(t)-rd(0)。
機器人逆運動學(xué)指給定笛卡爾空間期望速度r˙(t)和機器人模型雅可比矩陣J(·)已知情況下計算機器人對應(yīng)位置的關(guān)節(jié)速度θ˙(t)。偽逆法求解機器人逆運動學(xué)相對簡單,然而該方案未考慮機器人關(guān)節(jié)約束。由于機器人的物理結(jié)構(gòu)和機械臂關(guān)節(jié)通常由一個伺服電機驅(qū)動,關(guān)節(jié)旋轉(zhuǎn)角度和關(guān)節(jié)角速度有限。如果違反關(guān)節(jié)限幅,機器人協(xié)同追蹤將會產(chǎn)生大追蹤誤差或造成對機械臂的損害甚至是協(xié)同追蹤任務(wù)失敗。由于m>n,冗余機械臂的逆運動學(xué)解不唯一,機械臂冗余的性質(zhì)可以使得根據(jù)某些特定的優(yōu)化標準(如關(guān)節(jié)速度范數(shù)最小化、重復(fù)性優(yōu)化、關(guān)節(jié)加速度范數(shù)最小化等)和約束條件(關(guān)節(jié)角、關(guān)節(jié)速度或關(guān)節(jié)加速度約束)在所有可行解中選擇最優(yōu)的一個。
基于約束優(yōu)化思想,將機械臂的物理約束抽象為不等式約束,機械臂末端執(zhí)行器笛卡爾空間到關(guān)節(jié)空間的非線性映射抽象為等式約束,優(yōu)化目標函數(shù)選擇關(guān)節(jié)速度范數(shù)最小化,將多機器人協(xié)同運動控制問題建模為一個二次型問題如下:
為提高機器人之間的同步精度,設(shè)計一個同步機制并將式(4)改寫為:
如果期望機器人末端執(zhí)行器以速度r˙i運動,式(4)描述了機器人關(guān)節(jié)角速度θ˙i需要滿足的條件,同時也是系統(tǒng)協(xié)同跟蹤誤差收斂到零的充分必要條件。由于約束式(5)和式(6)描述在不同層,很難直接求解該二次型問題。因此利用速度逃逸法[13]將式(5)和式(6)共同描述在速度層,得到:
對于上述得到的速度范數(shù)最小化約束優(yōu)化問題,定義拉格朗日函數(shù)為:
式中: NΩi(θ˙i)為集合 Ωi在 θ˙i處的正規(guī)錐。
式(12)可以進一步描述為:
式中:PΩi為投影算子。
圖1 基于RNN的多機器人協(xié)同控制框圖
由于多機器人系統(tǒng)的非線性性質(zhì),式(8)具有高度非線性的特點,目前尚沒有可以直接求解式(8)的解析方法,而且利用數(shù)值算法求解的效率很低且功能有限,利用RNN并行計算性能優(yōu)化的特點,本文設(shè)計了RNN神經(jīng)動態(tài)求解器求解:
式中:ε>0為正常數(shù)。
基于RNN的多機器人智能協(xié)同控制框圖如圖1所示。
綜上所述,基于RNN的多機器人系統(tǒng)協(xié)同控制問題可歸納為三步:(1)建立同步誤差,選擇優(yōu)化目標函數(shù)并將機械臂協(xié)同控制問題建模為約束二次型優(yōu)化問題(見式(8)~(10));(2)在對偶空間中研究該問題,以非線性方程的形式建立其解表達式(見式(16)~(17));(3)設(shè)計一個收斂的神經(jīng)動力學(xué)系統(tǒng),其穩(wěn)態(tài)解與非線性方程組的穩(wěn)態(tài)解相同(見式(16)~(17))。
為驗證所提協(xié)同控制方案的有效性,本文建立了MATLAB+V-REP[14]聯(lián)合仿真實驗平臺。以圖2所示的7自由度iiwa R800機械臂為對象,機器人個數(shù)為3,期望運動軌跡設(shè)定為三環(huán)路徑:
式中: μ=πt/T,實驗設(shè)置中T=10;參數(shù)lx,ly和lz分別設(shè)置為-0.191 5,0.511 0和0.656 0。神經(jīng)網(wǎng)絡(luò)參數(shù)ε1=…=ε3=0.000 5。3個機器人的關(guān)節(jié)角初始值θ(0)分別設(shè)置為[0 , 20,0,-60,0,30,0]T·π/180°rad ,[0,20,0,-60,0,30,0]T·π/180°rad, [0,-20,0,60,0,-30,0]T·π/180°rad ??刂圃鲆鎱?shù)設(shè)置為k=1,α=8。關(guān)節(jié)角和關(guān)節(jié)速度的上下限分別為=-1.5 ,-0.7。仿真實驗中本文僅考慮了3D空間中的位置控制,表1所示為iiwa R800機械臂的DH參數(shù)。
表1 DH參數(shù)表
圖2 7自由度iiwa R800機械臂模型
圖3 對三環(huán)曲線的協(xié)同控制結(jié)果
實驗結(jié)果如圖3、4所示。圖3(a)所示為軌跡誤差曲線,末端執(zhí)行器位置誤差通過計算e=r-rd∈?3獲得,基于所設(shè)計的控制器,機器人實現(xiàn)的軌跡與期望軌跡之間的誤差可達到10-4量級。圖3(b)~(d)分別為λ,關(guān)節(jié)角θ和關(guān)節(jié)速度的曲線圖。在t=8時關(guān)節(jié)速度θ達到了最大值(±1.3 rad),在t=1和t=5時關(guān)節(jié)速度達到了最大值(±0.4 rad/s),但是關(guān)節(jié)角和關(guān)節(jié)速度皆在所設(shè)置的約束范圍之內(nèi),并且在協(xié)同控制方案的控制下,曲線都比較平滑,處于一個相對平穩(wěn)的狀態(tài)。圖4(a)所示為三環(huán)曲線跟蹤過程中V-REP環(huán)境下截取的跟蹤效果,圖4(b)所示為最終狀態(tài)下機器人實現(xiàn)的曲線跟蹤結(jié)果,可以看到在神經(jīng)網(wǎng)絡(luò)協(xié)同控制器控制下所有機器人最終都精確實現(xiàn)了期望的三環(huán)路徑軌跡。
圖4 V-REP環(huán)境下對三環(huán)曲線的跟蹤效果
本文針對多機械臂協(xié)同運動控制問題提出了一種基于RNN的協(xié)同控制方案。機器人關(guān)節(jié)角和關(guān)節(jié)角速度限幅描述為不等式約束,設(shè)計了一個動態(tài)RNN控制器實時控制機器人的運動。MATLAB與V-REP聯(lián)合仿真實驗驗證了在神經(jīng)網(wǎng)絡(luò)協(xié)同控制策略的控制下,多機器人系統(tǒng)成功地實現(xiàn)了期望軌跡跟蹤,跟蹤誤差可達到10-4量級,且關(guān)節(jié)角和關(guān)節(jié)速度值都在所設(shè)置的限幅內(nèi)。
對多機器人系統(tǒng)而言,障礙物避免方案不僅要考慮機器人與環(huán)境的碰撞,還要考慮機器人之間的碰撞,這是一個值得探討且充滿挑戰(zhàn)的問題。未來工作將致力于多機器人系統(tǒng)障礙物避免策略研究。