掌俊瑋,張禮華,蔣雨洋,李家富,李晨潔
(江蘇科技大學(xué) 機(jī)械工程學(xué)院 鎮(zhèn)江 212100)
在焊接作業(yè)中,大多焊接接頭以不規(guī)則的分布呈現(xiàn),而機(jī)器人對(duì)焊點(diǎn)次序的選擇,將會(huì)影響其焊接效率[1].傳統(tǒng)的路徑規(guī)劃方法往往依賴于人工規(guī)劃,很難保證最優(yōu)解,容易導(dǎo)致耗時(shí)長(zhǎng)、生產(chǎn)率降低等一些問題[2].智能算法能夠提供一種有效的方法避免人工規(guī)劃,進(jìn)而獲取最優(yōu)解.遺傳算法(GA)和粒子群算法(PSO)是這類智能算法中的典型代表[3-6].遺傳算法是一種并行的、隨機(jī)的全局搜索優(yōu)化方法,選用繼承、突變和交叉等生物學(xué)技術(shù),模擬生物進(jìn)化機(jī)制的迭代過程,具備較強(qiáng)的適應(yīng)性和較為優(yōu)異的計(jì)算性能等優(yōu)點(diǎn).粒子群算法由于簡(jiǎn)單、容易實(shí)現(xiàn),且參數(shù)較少,在實(shí)數(shù)編碼問題上具有良好的性能[4].將遺傳算法和粒子群算法進(jìn)行恰當(dāng)?shù)幕旌?,不僅可以提高粒子群的算法的粒子多樣性,還可以保留變異操作,優(yōu)化遺傳算法的全局搜索能力.文獻(xiàn)[7]在粒子群算法中下一代粒子的生成中引入遺傳算法提高粒子多樣性,設(shè)計(jì)了HPSOGA算法解決機(jī)器人的逆運(yùn)動(dòng)學(xué)求解問題,具有較好的性能.文獻(xiàn)[8]在解決機(jī)器的調(diào)度優(yōu)化問題時(shí),通過聚類將GA算法和PSO算法結(jié)合,當(dāng)GA算法被先執(zhí)行時(shí),能夠有效提高HPSOGA算法的全局搜索能力. 在文獻(xiàn)[9]中,將HPSOGA算法用于解決焊接機(jī)器人的路徑規(guī)劃問題,并表明HPSOGA算法具有較強(qiáng)的搜索能力和實(shí)用性.受文獻(xiàn)[10]啟發(fā),在翅片管與匯集箱的焊點(diǎn)路徑規(guī)劃問題中,引入螺距約束進(jìn)行描述多個(gè)翅片管焊點(diǎn)間的關(guān)系,并設(shè)計(jì)了帶有螺距約束的HPSOGA算法,搜索機(jī)械臂的焊接最短路徑.
在翅片管和匯集箱的焊接問題中,根據(jù)對(duì)焊接工藝的分析,選用六自由度機(jī)械臂.如圖1,將六自由度機(jī)械臂放入D-H坐標(biāo)系,進(jìn)行動(dòng)力學(xué)分析,得到六自由度機(jī)械臂的D-H參數(shù),如表1:αi-1、ai-1、θi-1分別為連桿的扭角、長(zhǎng)度、轉(zhuǎn)角,di-1為關(guān)節(jié)距離.
圖1 機(jī)械臂D-H坐標(biāo)系
表1 焊接機(jī)械臂的D-H參數(shù)
設(shè)機(jī)械臂節(jié)點(diǎn)i的坐標(biāo)系{i}變換到機(jī)械臂節(jié)點(diǎn)i-1坐標(biāo)系{i-1}的矩陣記為i-1Ti,則節(jié)點(diǎn)i到節(jié)點(diǎn)i-1的變換矩陣可以描述為:
i-1Ti=R(xi-1,αi-1)T(xi-1,ai-1)R(zi-1,θi)T(zi,di)=
(1)
式中:R(xi-1,αi-1)為繞xi-1轉(zhuǎn)動(dòng)αi-1角的矩陣;T(xi-1,ai)為沿著xi-1移動(dòng)ai-1的矩陣;R(zi,θi)為繞著zi轉(zhuǎn)動(dòng)θi角的矩陣;T(zi-1,di)為沿著xi-1移動(dòng)ai-1的矩陣.
設(shè)機(jī)械臂末端位姿的變換矩陣為0T6,可以描述為:
0T6=0T1·1T2·2T3·3T4·4T5·5T6=
(2)
其中,
將設(shè)計(jì)的焊接機(jī)械臂的D-H參數(shù)帶入式(2),根據(jù)正運(yùn)動(dòng)學(xué)矩陣變換關(guān)系,機(jī)械臂位于空間中某一種位姿時(shí),可以計(jì)算每個(gè)關(guān)節(jié)的角度值,進(jìn)而可以確認(rèn)出位姿矩陣0T6的具體參數(shù),求解機(jī)械臂末端位姿.
螺距是指兩螺旋線上對(duì)應(yīng)點(diǎn)間的距離.在焊接工件時(shí),第i根翅片管與匯集箱的焊接軌跡i以及第i+1根翅片管與匯集箱的焊接軌跡受螺距約束,如圖2.
圖2 工件焊接時(shí)軌跡間的螺距
(3)
(4)
式中:c=cos(angle),s=sin(angle),angle為矢量(x,y,z)的正向看去逆時(shí)針旋轉(zhuǎn)得到的角度,且矢量(x,y,z)必須是單位化且經(jīng)過原點(diǎn).
(5)
式中:r為機(jī)械臂的半徑;n為焊點(diǎn)P的法向量在機(jī)械臂平面上的投影矢量,且是單位向量.
考慮第i根翅片管與匯集箱的焊接任務(wù)P={Pi},則第i根翅片管與匯集箱的焊接軌跡i以及第i+1根翅片管與匯集箱的焊接路徑可以描述為:
(6)
則機(jī)械臂的路徑規(guī)劃的目的時(shí),搜索最短的焊接頭序列,使得機(jī)械臂在起始焊點(diǎn)到目標(biāo)焊點(diǎn)的總路徑最小.當(dāng)焊接路徑為Path時(shí),機(jī)械臂的焊接距離f(Path)可以描述為:
(7)
在傳統(tǒng)的PSO算法中,粒子狀態(tài)在t時(shí)刻的更新過程可以描述為:
(8)
式中:ω為慣性權(quán)重;C1和C2為學(xué)習(xí)因子;r1和r2為0~1間均勻分布的隨機(jī)數(shù);i為粒子索引.
隨著時(shí)間的增長(zhǎng),每個(gè)粒子會(huì)不斷的更新局部最優(yōu)解pbest和全局最優(yōu)解gbest,逐漸會(huì)收斂到pbest或gbest.當(dāng)pbest和gbest陷入局部最優(yōu)解后,則粒子最終也將陷入局部最優(yōu)解,很難獲得真正的全局最優(yōu)解.基于此,同時(shí)采用GA算法來搜索全局最優(yōu)解gbestGA,當(dāng)PSO算法陷入局部最優(yōu)解時(shí),將GA算法獲取的gbestGA,作為全局最優(yōu)解更新粒子狀態(tài),因此HPSOGA算法中的粒子狀態(tài)更新過程可以設(shè)計(jì)為:
(9)
式中:GA(k)為第t時(shí)刻迭代時(shí)的采用GA算法獲取的全局最優(yōu)解;r1、r2、r3服從均勻分布[0,1].
在實(shí)際中,工程問題往往是離散的.為了解決翅片管與匯集箱的焊接路徑規(guī)劃問題,借鑒文獻(xiàn)[11],引入交換算子和交換序列,將HPSOGA算法中的粒子的更新過程式(9)進(jìn)行離散化,可得:
(10)
(11)
(12)
式中:D為粒子群的長(zhǎng)度.
仿真采用六自由度機(jī)械臂焊接翅片管與匯集箱,如圖3,在matlab導(dǎo)入solidwork模型進(jìn)行仿真,假設(shè)機(jī)械臂在初始位置的關(guān)節(jié)角度q0=[π/2,-π/2,0,0,0,0],則機(jī)械臂的末端位姿0T6根據(jù)運(yùn)動(dòng)學(xué)求解可得:
圖3 六自由度機(jī)械臂初始位置
為了便于對(duì)比,分別采用PSO算法、GA算法、HPSOGA算法求解翅片管與匯集箱的最優(yōu)焊接路徑,其初始參數(shù)設(shè)置:
PSO算法的粒子數(shù)目為2 000個(gè)迭代次數(shù)設(shè)為1 000次,GA算法的種群數(shù)目為2 000個(gè),迭代次數(shù)為1 000代,在HPSOGA算法中,PSO的迭代次數(shù)為40,GA的迭代次數(shù)為200.同時(shí),GA算法和HPSOGA算法中的交叉概率取0.93,
變異概率取0.06,PSO算法和HPSOGA算法的學(xué)習(xí)因子取C1=1.496 2、C1=0.582 5,分別運(yùn)行3種算法20次,對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行加權(quán)平均處理.圖4為3種算法的收斂速度曲線,可以看出HPSOGA的收斂速度最快,當(dāng)達(dá)到值時(shí),獲取最優(yōu)解;PSO算法的收斂速度要微快于GA算法.
圖4 3種算法的收斂速度
圖5為HPSOGA算法獲得的較好焊接路徑.
圖5 HPSOGA路徑規(guī)劃結(jié)果
(1) 對(duì)六自由度機(jī)械臂進(jìn)行動(dòng)力學(xué)分析,建立六自由度機(jī)械臂的動(dòng)力學(xué)模型,并求解其D-H參數(shù).
(2) 在解決帶有螺距約束的焊接問題中,將遺傳算法和粒子群算法進(jìn)行恰當(dāng)?shù)幕旌希岣吡W尤核惴ǖ牧W佣鄻有?,通過變異操作優(yōu)化遺傳算法的全局搜索能力,并運(yùn)用交換算子和交換序列對(duì)粒子狀態(tài)的更新過程進(jìn)行離散化.
(3) 在matlab中導(dǎo)入solidworks模型,搭建算法仿真平臺(tái),分別采用PSO算法、GA算法、HPSOGA算法進(jìn)行路徑搜索,經(jīng)過多次實(shí)驗(yàn)表明,在本文所設(shè)計(jì)的算法下,機(jī)械臂能夠獲得較為平滑的焊接軌跡,且焊點(diǎn)路徑最短,進(jìn)而驗(yàn)證了該算法的有效性和正確性.