牛韜,嵇道揚,馬晨波,孫見君
(1.江蘇速力達精密科技有限公司, 江蘇 南京 211299)
(2.南京林業(yè)大學機械電子工程學院, 江蘇 南京 210037)
機械手的軌跡規(guī)劃作為軌跡跟蹤控制的基礎(chǔ)[1],是通過給定的路徑點,在滿足相關(guān)運動學和動力學約束的條件下,得到通過路徑點的軌跡,并計算出機械手運動過程中的位移、速度、加速度等參數(shù),其優(yōu)劣對機械手的工作效率、運行平穩(wěn)性等起著決定性作用。由于路徑點之間的軌跡復雜繁多,人們希望從中找到一條最優(yōu)的軌跡。其中,注重效率的時間最優(yōu)軌跡規(guī)劃的研究開展最早[2-3],也最為熱門。張紅強[4]采用B樣條曲線構(gòu)造機器人的軌跡,提出了一種基于改進混沌優(yōu)化算法的機器人時間最優(yōu)軌跡設計方法,并在關(guān)節(jié)空間與笛卡爾空間對PUMA560前三關(guān)節(jié)軌跡進行了優(yōu)化計算。付榮[5]等人根據(jù)機械臂運動學約束,提出了關(guān)節(jié)空間基于粒子群優(yōu)化(PSO)的時間最優(yōu)3-5-3多項式插值軌跡規(guī)劃算法。但是,時間最優(yōu)的軌跡往往具有較大的脈動,脈動過大對機械手有不利的影響,會帶來振動、機械磨損、壽命縮短、軌跡跟蹤誤差增大等問題[6-7]。機械手最優(yōu)脈動軌跡的研究應運而生,楊錦濤[8]等人用S形速度曲線代替梯形速度曲線,對B樣條進行插補,插補后得到笛卡爾空間的位置、速度、加速度參數(shù),得到脈動最優(yōu)的軌跡曲線,并反推到關(guān)節(jié)空間進行仿真驗證。隨著現(xiàn)代工業(yè)生產(chǎn)要求的提高,單獨一種目標的最優(yōu)軌跡規(guī)劃很難滿足應用中的綜合要求,考慮兩種或者兩種以上性能的優(yōu)化可以得到更適合實際生產(chǎn)應用、綜合性能更優(yōu)的軌跡規(guī)劃方案[9-12]。
本文提出了一種基于遺傳算法的機械手時間-脈動最優(yōu)軌跡規(guī)劃方法。采用三次B樣條曲線對關(guān)節(jié)坐標內(nèi)路徑點的位移時間序列進行插值,得到待優(yōu)化的軌跡曲線;以相鄰路徑點之間的時間間隔為設計變量,以機械手的運動學約束為約束條件,使用加權(quán)系數(shù)法定義目標函數(shù),涵蓋機械手運行時間和機械手軌跡脈動兩個部分,基于遺傳算法求解帶約束的多目標優(yōu)化問題,得到運行時間和脈動綜合最優(yōu)的軌跡,并通過仿真分析進行了驗證。
機械手的軌跡規(guī)劃按規(guī)劃空間不同分為笛卡爾空間軌跡規(guī)劃和關(guān)節(jié)空間軌跡規(guī)劃。笛卡爾空間軌跡規(guī)劃在機械手的工作坐標系中進行,規(guī)劃對象是末端執(zhí)行器的軌跡曲線,經(jīng)過規(guī)劃后末端執(zhí)行器沿著規(guī)劃好的曲線運動。關(guān)節(jié)空間軌跡規(guī)劃在機械手的關(guān)節(jié)坐標系中進行,規(guī)劃對象是各個關(guān)節(jié)的角度,規(guī)劃后各個關(guān)節(jié)按照規(guī)劃方式運動,從而帶動機械手在工作空間中完成各種運動。
機械手的軌跡規(guī)劃按照規(guī)劃方式不同分為連續(xù)路徑軌跡規(guī)劃和點到點軌跡規(guī)劃[13]。在機械手末端執(zhí)行器的位姿有瞬時變化,如焊接、噴涂等作業(yè)中,機械手多采用連續(xù)路徑軌跡規(guī)劃。而在路徑簡單,對精度要求不高的工作中,如搬運、碼垛等作業(yè)中,則會采用點到點的方式進行軌跡規(guī)劃。
本文以ABB公司的IRB6640型機械手作為研究對象,此機械手有六個自由度,承載能力為180kg,在輪轂加工的過程中承擔將汽車輪轂在數(shù)控機床間的搬運工作,路徑較為簡單,因此,選擇在關(guān)節(jié)空間進點到點軌跡規(guī)劃。
在進行軌跡規(guī)劃的過程中,根據(jù)機械手要完成的工作,設定個路徑點和個與之對應時刻,給定機械手末端執(zhí)行器的位置時間序列(Pi,ti),其中,i=1,2,…,m。通過運動學逆運算,得到六個旋轉(zhuǎn)關(guān)節(jié)的角位移時間序列(Qij,ti),其中,i=1,2,…,m,j=1,2,…,6,Qij表示與第i個路徑點對應的第j關(guān)節(jié)的角位移。用三次B樣條曲線,對六個旋轉(zhuǎn)關(guān)節(jié)的角位移進行插值,得到關(guān)節(jié)運動軌跡函數(shù)qj(t),其中,j=1,2,…,6,qj(t)表示第j個關(guān)節(jié)角位移-時間函數(shù)。相應的,角速度、角加速度、脈動函數(shù)表示如下:
在進行軌跡規(guī)劃時,每一組不同的時間序列T=[t1,t2…tm](或者表達成時間間隔序列△T=[△t1,△t2…△tm-1],△Ti=ti+1-ti,i=1,2,…,m-1),都會得到不同的關(guān)節(jié)運動軌跡。為實現(xiàn)對不同軌跡的評價,進而實現(xiàn)軌跡優(yōu)化,從機械手的工作效率和運行平穩(wěn)的角度出發(fā),定義如下的評價指標:
其中,E1為機械手按某一軌跡運行的總時間,用來衡量機械手的工作效率,E2為機械手按某一軌跡運行的總脈動。本文旨在找出一組時間序列,得到一條時間-脈動綜合最優(yōu)的機械手運動軌跡。
B樣條曲線是一類分段光滑,且在各段交接處也有一定光滑性的函數(shù)曲線。B樣條曲線具有導數(shù)連續(xù)性、局部支撐性、可拓展性等優(yōu)點,被廣泛應用于機械手的軌跡規(guī)劃中[14-15]。本文采用三次B樣條曲線對關(guān)節(jié)空間的路徑點進行插值。
n次B樣條曲線的數(shù)學表達式為:
其中,0≤t≤1,Ni為控制點,F(xiàn)i,n(t)為n次B樣條基函數(shù),其表達式為:
由n次B樣條曲線插值得到的第k段關(guān)節(jié)軌跡:
當n=3時,將式(8)整理成矩陣形式,表達式如下:
其中,k=1,2,…,m-1,m≥2。
已知機械手的某關(guān)節(jié)需要經(jīng)過m個路徑點qi(i=1,2,…,m),完整的軌跡需要由m-1段曲線連接組成,曲線方程由m+2個未知的控制點Ni(i=1,2,…,m+1)所唯一控制。將已知條件m個路徑點qi帶入式(9),可以列出m個方程。若想求出所有的控制點Ni的解還需要增加兩個邊界條件,可以根據(jù)軌跡曲線的需要給定,一般是設置機械手關(guān)節(jié)的第一段軌跡的起始點和最后一段軌跡的終止點的速度為零。由已知的m+2個方程,可以求出m+2個控制點的確定解。
求得控制點后,根據(jù)式(8)能夠得到關(guān)節(jié)的運動軌跡,進而求導可以得到關(guān)節(jié)的角速度、角加速度、角加加速度曲線。
遺傳算法(Genetic Algorithm,GA)是一種進化算法,其基本原理是仿效生物界中的“物競天擇、適者生存”的演化法則,從代表問題可能潛在的解集的一個種群開始的,而一個種群則由經(jīng)過基因編碼的一定數(shù)目的個體組成[16]。初代種群產(chǎn)生之后,按照適者生存和優(yōu)勝劣汰的原理,逐代演化產(chǎn)生出越來越好的近似解,在每一代,根據(jù)問題域中個體的適應度大小選擇個體,并借助于自然遺傳學的遺傳算子進行組合交叉和變異,產(chǎn)生出代表新的解集的種群。這個過程將使得種群像自然進化一樣,后生代種群比前代更加適應環(huán)境,末代種群中的最優(yōu)個體經(jīng)過解碼,可以作為問題近似最優(yōu)解。在給定的搜索空間內(nèi),遺傳算法對多個解進行同時搜索,能夠避免解停滯在局部最優(yōu)的區(qū)間,適用于多目標,非線性,多模型的復雜系統(tǒng)的優(yōu)化問題。
采用加權(quán)系數(shù)法,將多目標E1與E2的優(yōu)化問題轉(zhuǎn)換成單目標優(yōu)化問題,定義算法所需的適應度函數(shù)如下:
軌跡的優(yōu)化以機械手的運動學約束作為約束條件,即以角速度、角加速度、角加加速度的最大值為約束條件。角速度約束如下:
基于遺傳算法的機械手時間-脈動最優(yōu)軌跡規(guī)劃優(yōu)化計算,其流程如下:
(1)編碼:遺傳算法在進行搜索之前先將解空間的解數(shù)據(jù)表示成遺傳空間的基因型串結(jié)構(gòu)數(shù)據(jù),這些串結(jié)構(gòu)數(shù)據(jù)的不同組合便構(gòu)成了不同的點。
(2)生成初代種群:隨機產(chǎn)生20組時間序列,一組時間序列對應一條軌跡,對應每組時間序列稱為一個個體,20個個體構(gòu)成了初代種群。
(3)適應度計算:適應度表明個體或解的優(yōu)劣性,20組時間序列帶入式(11)的適應度函數(shù)計算適應度。
(4)選擇、交叉、變異:選擇的目的是為了從當前群體中選出適應度高的個體,使它們有機會作為父代為下一代繁殖子孫。被選作父代的個體,通過交叉和變異獲得新的下一代的個體,新的20個個體組成新一代的種群。設置交叉概率pc=0.8,變異概率pm=0.1。
(5)判斷是否滿足終止條件:設置終止條件迭代代數(shù)為100代。若滿足,進行步驟(6);若不滿足,循環(huán)執(zhí)行步驟(3)和步驟(4),直至滿足終止條件。
(6)解碼:對末代種群做逆編碼操作,選擇其中的最優(yōu)時間序列,即為解得的最優(yōu)解。最優(yōu)時間序列對應的機械手軌跡則為時間-脈動最優(yōu)軌跡。
為了驗證該軌跡規(guī)劃方法的可行性,本文以IRB6640型機械手為研究對象,預設7個在工作過程中需要經(jīng)過的路徑點(見表1),考慮運動學約束(見表2),在關(guān)節(jié)空間進行時間-脈動最優(yōu)軌跡規(guī)劃。因為IRB6640型機械手前三個關(guān)節(jié)為大關(guān)節(jié),且前三個關(guān)節(jié)就能控制末端執(zhí)行器的位置,故本文僅以前三個關(guān)節(jié)為例,考慮脈動也僅考慮前三個關(guān)節(jié)的脈動。
表1 關(guān)節(jié)路徑點
表2 運動學約束
J2 90 50 70 J3 90 45 70
設置機械手7個路徑點之間的時間間隔為1s,2s,3s,3s,2s,1s;調(diào)整系數(shù)k=50;加權(quán)系數(shù)取值如下,α=0.8、0.7、0.6、0.5、0.4、0.3、0.2,相應的,β=0.2、0.3、0.4、0.5、0.6、0.7、0.8。分別對這七種情況進行優(yōu)化,得到的結(jié)果如表3所示。
由表3可知,當α值越大時,運行時間評價指標權(quán)重越大,得到的軌跡曲線,運行時間就越短,但是前三個關(guān)節(jié)的脈動總和就越大;相反的,當β值越大時,脈動評價指標權(quán)重越大,得到的軌跡曲線,脈動很小,但是運行時間較長。具體的,當α從0.8降到0.5,再降到0.2,運行時間從6.92s上升到9.57s,再上升到11.51s,分別上升了38.3%和66.3%;前三個關(guān)節(jié)的脈動總和從507.51下降到238.49,再降到176.72,分別下降了53.0%和65.2%。
當α為0.8、0.5、0.2時,對前三關(guān)節(jié)軌跡規(guī)劃進行了仿真,仿真的結(jié)果如圖1、圖2、圖3所示。
圖1 關(guān)節(jié)1軌跡規(guī)劃對比
圖2 關(guān)節(jié)2軌跡規(guī)劃對比
圖3 關(guān)節(jié)3軌跡規(guī)劃對比
在圖1、圖2、圖3中,各個關(guān)節(jié)的角速度、角加速度、角加加速度均在約束條件范圍內(nèi);各個關(guān)節(jié)的啟停角速度均為0;各個關(guān)節(jié)的角位移、角速度、角加速度連續(xù),而角加加速度存在數(shù)值突變的情況。當α=0.8,β=0.2時,所得軌跡接近時間最優(yōu)軌跡,運行時間短,脈動大;當α=0.5,β=0.5時,運行時間和脈動的權(quán)重相同,軌跡為同等考慮運行時間和脈動的軌跡;當α=0.2,β=0.8時,所得軌跡接近脈動最優(yōu)軌跡,運行時間長,脈動小。
本文運用了三次B樣條曲線對機械手進行關(guān)節(jié)空間的軌跡規(guī)劃,該方法保證了關(guān)節(jié)位移、速度、加速度的連續(xù),克服了多項式插值法的只能進行較少點之間插值的不足;采用加權(quán)系數(shù)法定義目標函數(shù),采用遺傳算法求解滿足運動學約束條件下的時間-脈動軌跡,仿真結(jié)果驗證了算法的有效性;在實際生產(chǎn)的過程中,可根據(jù)應用情況的不同,采用不同的加權(quán)因子和優(yōu)化策略,得到滿足生產(chǎn)要求的機械手優(yōu)化軌跡。
◆參考文獻
[1] 李黎,尚俊云,馮艷麗,等. 關(guān)節(jié)型工業(yè)機器人軌跡規(guī)劃研究綜述[J].計算機工程與應用,2018,54(5):36-50.
[2] Chun-Shin Lin,Po-Rong Chang,J.Y.S. Luh.Formulation and optimization of cubic polynomial joint trajectories for mechanical manipulators[J].IEEE Transactions on Automatic Control,1983, 28(12):1066-1074.
[3] 楊國軍,崔平遠. 機械手時間最優(yōu)軌跡規(guī)劃方法研究[J].中國機械工程,2002,(20):1715-1717.
[4] 張紅強. 工業(yè)機器人時間最優(yōu)軌跡規(guī)劃[D].長沙:湖南大學,2004.
[5] 付榮,居鶴華. 基于粒子群優(yōu)化的時間最優(yōu)機械臂軌跡規(guī)劃算法[J].信息與控制,2011,40(6):802-808.
[6] Jan M,Damian G.Calculating a near time-optimal jerkconstrained trajectory along a specified smooth path[J].International Journal of Advanced Manufacturing Technolo gy,2009,45(9/10):1007-1016.
[7] Gasparetto A,Lanzutti A.Experimental validation and comparative analysis of optimal time-jerk algorithms for trajectory planning[J].Robotics and Computer-Integrated Manufacturi ng,2012,28(2):164-181.
[8] 楊錦濤,姜文剛,林永才. 工業(yè)機器人沖擊最優(yōu)的軌跡規(guī)劃算法[J].科學技術(shù)與工程,2014,14(28):64-69.
[9] 朱世強,劉松國,王宣銀,等. 機械手時間最優(yōu)脈動連續(xù)軌跡規(guī)劃算法[J].機械工程學報,2010,46(3):47-52.
[10] Esfandiar H,Korayem M H.Optimal point to point path planning of flexible manipulator under large deformation by using harmony search method[J].Journal of Theoretical and Applied Mechanics,2016,54(1):179-193.
[11] 沈悅,李銀伢,戚國慶,等. 基于PSO的工業(yè)機器人時間-脈動最優(yōu)軌跡規(guī)劃[J].計算機測量與控制,2017,25(1):158-162.
[12] Rubio, Francisco,Valero, Francisco,Sunyer, Joseph,Cuadrado, Juan. Optimal time trajectories for industrial robots with torque, power, jerk and energy consumed constraints[J].The Industrial Robot,2012,39(1).
[13] 季晨. 工業(yè)機器人姿態(tài)規(guī)劃及軌跡優(yōu)化研究[D].哈爾濱:哈爾濱工業(yè)大學,2013.
[14] 陳偉華,張鐵. 三次均勻有理B樣條曲線插補算法的研究[J].機械設計與制造,2010(8):3-5.
[15] Per E.Koch,Kesheng Wang.Introduction of b-splines to trajectory planning for robot manipulators[J].Modeling, Identification and Control,1988,9(2).
[16] Maria da Gra?a Marcos,J.A.Tenreiro Machado,T.-P.Azevedo-Perdicoúlis. Trajectory planning of redundant manipulators using genetic algorithms[J].Communications in Nonlinear Science and Numerical Simulation,2009,14(7).