蔡玉強(qiáng),吳漢文
(華北理工大學(xué) 機(jī)械工程學(xué)院,河北 唐山063210)
工業(yè)機(jī)器人是實(shí)施自動(dòng)化生產(chǎn)線、智能制造車間的關(guān)鍵設(shè)備,為推動(dòng)我國(guó)機(jī)器人產(chǎn)業(yè)快速、健康的可持續(xù)發(fā)展,大力發(fā)展工業(yè)機(jī)器人技術(shù)勢(shì)在必行。為提高裝備制造現(xiàn)場(chǎng)的產(chǎn)品質(zhì)量和效率,合理的軌跡規(guī)劃至關(guān)重要。軌跡規(guī)劃目標(biāo)是確定一條機(jī)器人運(yùn)動(dòng)過(guò)程中速度、加速度過(guò)渡平緩,并保持機(jī)器人末端運(yùn)動(dòng)狀態(tài)穩(wěn)定的軌跡。并在此條件下,針對(duì)機(jī)器人運(yùn)行時(shí)間進(jìn)行優(yōu)化,提高其工作效率。
根據(jù)軌跡規(guī)劃空間不同,其主要分為笛卡爾空間與關(guān)節(jié)空間:前者直接描述末端執(zhí)行器的位姿與時(shí)間的函數(shù);后者描述的是各關(guān)節(jié)角度與時(shí)間的函數(shù)關(guān)系,該方法計(jì)算量較小,且沒(méi)有奇異性,十分適用于點(diǎn)對(duì)點(diǎn)的運(yùn)動(dòng)問(wèn)題。針對(duì)適用對(duì)象,該項(xiàng)目主要研究關(guān)節(jié)空間軌跡規(guī)劃,當(dāng)前國(guó)內(nèi)外學(xué)者在關(guān)節(jié)空間軌跡規(guī)劃及優(yōu)化領(lǐng)域的研究逐步深入[1],目前主要有多項(xiàng)式插值法[2,3]、組合多項(xiàng)式插值法[4,5]、B樣條插值法[6,7]以及是針對(duì)此類基礎(chǔ)插值算法進(jìn)行改進(jìn)。在軌跡規(guī)劃時(shí)常伴隨軌跡優(yōu)化的研究,優(yōu)化目標(biāo)主要有時(shí)間[8-10]、能耗[11,12]、脈動(dòng)[13],通常采用各類智能算法來(lái)實(shí)現(xiàn)以上目的[14]。綜上,本文以時(shí)間最優(yōu)為目標(biāo),采用改進(jìn)PSO算法對(duì)6R焊接機(jī)器人運(yùn)行時(shí)間優(yōu)化。在任務(wù)空間焊接路徑上選取路徑點(diǎn),并將其對(duì)應(yīng)的機(jī)器人末端位姿映射為關(guān)節(jié)空間各關(guān)節(jié)角度值;采用3-5-3多項(xiàng)式對(duì)各關(guān)節(jié)路徑點(diǎn)插值,擬合得到關(guān)節(jié)空間連續(xù)運(yùn)動(dòng)軌跡;最后,采用遞減慣性權(quán)重和非線性動(dòng)態(tài)學(xué)習(xí)因子的PSO算法對(duì)該軌跡進(jìn)行優(yōu)化計(jì)算,得到機(jī)器人運(yùn)行時(shí)間最優(yōu)軌跡,并用MATLAB軟件進(jìn)行驗(yàn)證。
以ABB IRB1660型機(jī)器人為研究對(duì)象,如圖1為機(jī)器人運(yùn)動(dòng)狀態(tài)的CAD模型,根據(jù)D-H法建立機(jī)械臂的各連桿坐標(biāo)系如圖2所示。該機(jī)器人均為轉(zhuǎn)動(dòng)關(guān)節(jié),末端夾持焊槍。令基坐標(biāo)系 坐標(biāo)系 重合,其余坐標(biāo)系各方向按右手定則確定。其D-H參數(shù)及個(gè)關(guān)節(jié)變量范圍如表1所示。
表1 ABB IRB1660機(jī)器人D-H參數(shù)表
圖1 IRB1660機(jī)器人三維模型圖 圖2 IRB1660機(jī)器人連桿坐標(biāo)系
其中,ai-1為連接連桿i-1的相鄰兩關(guān)節(jié)軸線的公垂線,即連桿的長(zhǎng)度;αi-1為相鄰的2個(gè)關(guān)節(jié)之間的扭角,即連桿扭角;di為ai-1與軸線i的交點(diǎn)到ai與該軸交點(diǎn)的距離,即連桿偏距;θi為ai-1與ai的延長(zhǎng)線間的夾角,即關(guān)節(jié)角。
根據(jù)D-H表建立該機(jī)器人正運(yùn)動(dòng)學(xué)方程,相鄰連桿間坐標(biāo)轉(zhuǎn)換通式為:
(1)
變換矩陣的一般表達(dá)式為:
(2)
將基坐標(biāo)系{o}至機(jī)器人末端坐標(biāo)系{6}的連桿變換矩陣依次相乘便得到IRB1660的機(jī)器人末端夾持機(jī)構(gòu)相對(duì)于基座的總變換矩陣為:
(3)
(4)
式中,[n、o、a]分別為機(jī)械臂位姿的方向分量;[p]為機(jī)械臂的位置分量。通過(guò)MATLAB軟件來(lái)驗(yàn)證機(jī)器人運(yùn)動(dòng)模型正確性、保證軌跡規(guī)劃可行性,完成對(duì)機(jī)器人軌跡的優(yōu)化設(shè)計(jì)。機(jī)器人示教模型如圖3所示。
圖3 ABB IRB1660機(jī)器人示教模型
為了保證機(jī)器人作業(yè)過(guò)程平穩(wěn)運(yùn)行且滿足運(yùn)動(dòng)學(xué)約束條件。關(guān)節(jié)空間中一般采用三次或五次多項(xiàng)式插值,三次插值多項(xiàng)式中加速度存在突變,使得機(jī)器人磨損加劇,從而降低工作精度并增加能量消耗;五次插值多項(xiàng)式中加速度雖無(wú)突變避免了沖擊與振動(dòng),但其計(jì)算量相對(duì)較大且對(duì)不同軌跡設(shè)計(jì)時(shí)可能會(huì)存在龍格現(xiàn)象,造成電機(jī)驅(qū)動(dòng)系統(tǒng)破壞的缺點(diǎn)。而3-5-3多項(xiàng)式兼顧兩者優(yōu)點(diǎn),在多軌跡點(diǎn)規(guī)劃中有很強(qiáng)的優(yōu)勢(shì),因而被廣泛應(yīng)用。其具體方法為將路徑分為三段進(jìn)行設(shè)計(jì),即0→ta、ta→tb、tb→tf分別進(jìn)行3次、5次、3次多項(xiàng)式進(jìn)行插值。
第j關(guān)節(jié)在0→ta、ta→tb、tb→tf三段的角位移、角速度、角加速度的函數(shù)表達(dá)式,即:
當(dāng)0≤t≤ta時(shí),表示為:
(5)
當(dāng)ta≤t≤tb時(shí),表示為:
(6)
當(dāng)tb≤t≤tf時(shí),表示為:
(7)
式中,用ti(i=a、b、c)來(lái)表示第i關(guān)節(jié)3段插值多項(xiàng)式的時(shí)間,θji表示第j關(guān)節(jié)4個(gè)關(guān)節(jié)角度點(diǎn)、aj1i、aj2i、aj3i(j=1、2…6;i=0、1、2…5)表示第j關(guān)節(jié)在任意段路徑中插值多項(xiàng)式的系數(shù)。
通過(guò)上式計(jì)算可得插值多項(xiàng)式系數(shù),其表示關(guān)系為:
(8)
(9)
(10)
從上述分析可以看出,分段插值多項(xiàng)式系數(shù)受到各段時(shí)間t的影響,針對(duì)t合理取值可達(dá)到理想效果。
粒子群算法的總體思想是針對(duì)鳥(niǎo)類群體行為的建模與仿真,提出的一種優(yōu)化算法。通過(guò)種群中信息的交流來(lái)驅(qū)動(dòng)種群在空間內(nèi)不斷搜索最優(yōu)解。首次生成包含n個(gè)粒子的初始種群X=(X1、X2、…Xn),每個(gè)粒子X(jué)i表示其對(duì)應(yīng)的一個(gè)解向量,每個(gè)粒子有一個(gè)表示其速度向量的Vi來(lái)決定其運(yùn)動(dòng)的方向和距離,并且根據(jù)粒子本身最優(yōu)位置和種群最優(yōu)位置更新其變化速度?;诹W铀俣葋?lái)更新粒子的位置用以尋找最優(yōu)解。粒子的位置和速度隨著算法迭代按照式(11)進(jìn)行更新。
(11)
(12)
fitness=tj1+tj2+tj3
(13)
(14)
式中,Vjmax、Ajmax分別為機(jī)器人各關(guān)節(jié)運(yùn)動(dòng)過(guò)程中允許的最大速度、加速度。
傳統(tǒng)粒子群算法中各參數(shù)固定不變,易陷入局部最優(yōu)且后期收斂速度慢等問(wèn)題。為優(yōu)化其性能,平衡全局和局部搜索能力。針對(duì)ω在線性遞減慣性權(quán)重的基礎(chǔ)上,創(chuàng)新性地提出對(duì)其進(jìn)行非線性處理,對(duì)[(ωmax-ωmin)/Nmax]項(xiàng)進(jìn)行平方處理,相較于傳統(tǒng)的線性遞減慣性權(quán)重,可更好地讓其值在搜索前期保持較大值,以此保證各個(gè)粒子在搜索空間內(nèi)充分飛行,后期保持較小值,充分保證各粒子間信息交流學(xué)習(xí);c1、c2設(shè)置為非線性的動(dòng)態(tài)函數(shù),c1表示個(gè)體最大飛行步長(zhǎng),前期其值應(yīng)較大,c2表示全局最大飛行步長(zhǎng),后期其值應(yīng)較大。改進(jìn)后的ω、c1、c2分別見(jiàn)式(15)和式(16)。
(15)
(16)
式中,ωmax表示慣性權(quán)重最大值;ωmin表示慣性權(quán)重最小值;Nmax表示最大迭代次數(shù);cmax、cmin分別表示表示學(xué)習(xí)因子最大值、最小值。
改進(jìn)后的時(shí)間最優(yōu)軌跡規(guī)劃流程圖如圖4所示。
圖4 改進(jìn)粒子群算法優(yōu)化流程圖
以改進(jìn)粒子群算法為基礎(chǔ),結(jié)合3-5-3插值多項(xiàng)式對(duì)機(jī)器人軌跡優(yōu)化方法的正確性和有效性進(jìn)行驗(yàn)證。采用MATLAB R2022a進(jìn)行仿真實(shí)驗(yàn)研究。各關(guān)節(jié)在各個(gè)軌跡點(diǎn)角度見(jiàn)表2,機(jī)器人運(yùn)動(dòng)軌跡見(jiàn)圖5。
表2 關(guān)節(jié)角度插值點(diǎn)/°
圖5 機(jī)器人運(yùn)動(dòng)軌跡
由于機(jī)器人3個(gè)腕關(guān)節(jié)(關(guān)節(jié)4、5、6)軸相交于一點(diǎn)。按照Pieper準(zhǔn)則,腕關(guān)節(jié)只改變機(jī)器人姿態(tài),對(duì)其位置不產(chǎn)生影響。故以前三關(guān)節(jié)為主要研究對(duì)象得出結(jié)果,將傳統(tǒng)粒子群算法與優(yōu)化后粒子群算法進(jìn)行對(duì)比研究。
前三關(guān)節(jié)經(jīng)過(guò)傳統(tǒng)粒子群算法與改進(jìn)粒子群算法優(yōu)化后,其適應(yīng)度值曲線如圖6所示。各關(guān)節(jié)總用時(shí)均不同程度少于傳統(tǒng)粒子群算法,對(duì)機(jī)器人效率的提升具有重要意義。另外,在搜索前期粒子群體能夠很快地到達(dá)全局最優(yōu),并且在搜索后期相較于傳統(tǒng)粒子群算法可更快地到達(dá)局部最優(yōu)。
圖6 前三關(guān)節(jié)優(yōu)化前后適應(yīng)度值迭代曲線
為確保6R焊接機(jī)器人各關(guān)節(jié)能夠穩(wěn)定、高效地完成既定作業(yè)軌跡,設(shè)定該軌跡起始點(diǎn)及終止點(diǎn)的加速度、角加速度均為0,且其中間銜接點(diǎn)處的角速度、角加速度均相等。機(jī)器人仿真實(shí)驗(yàn)優(yōu)化后時(shí)間分量見(jiàn)表3,優(yōu)化前后各關(guān)節(jié)位置、速度及加速度曲線對(duì)比見(jiàn)圖7。
表3 優(yōu)化后各關(guān)節(jié)時(shí)間分量
圖7 改進(jìn)粒子群算法優(yōu)化前后各關(guān)節(jié)位置、速度、加速度曲線圖
由圖7機(jī)器人分析可知,各關(guān)節(jié)的位置、速度、加速度曲線更為順滑且耗時(shí)更短。為保證各關(guān)節(jié)在每段路徑中有充足時(shí)間完成其相應(yīng)軌跡且滿足關(guān)節(jié)運(yùn)動(dòng)在過(guò)程中的運(yùn)動(dòng)約束,選取6個(gè)關(guān)節(jié)在各分段軌跡中所用時(shí)間最大值。經(jīng)過(guò)該算法優(yōu)化后完成該段軌跡所需時(shí)間由9 s降低至2.49 s,極大地提高了該型號(hào)機(jī)器人生產(chǎn)效率,有效保證了機(jī)器人在高速運(yùn)動(dòng)過(guò)程中的穩(wěn)定性。
(1)提出一種改進(jìn)粒子群算法結(jié)合3-5-3插值多項(xiàng)式方法來(lái)進(jìn)行軌跡規(guī)劃,以解決機(jī)器人各關(guān)節(jié)在作業(yè)中存在的位置、速度、加速度突變導(dǎo)致運(yùn)行過(guò)程中不穩(wěn)定而導(dǎo)致機(jī)器人磨損加劇、工作壽命降低的問(wèn)題。
(2)通過(guò)采用優(yōu)化后的遞減慣性權(quán)重和非線性動(dòng)態(tài)學(xué)習(xí)因子的方法,在滿足機(jī)器人運(yùn)動(dòng)學(xué)約束的條件下,針對(duì)機(jī)器人軌跡以時(shí)間最優(yōu)為目標(biāo)進(jìn)行優(yōu)化。MATLAB仿真實(shí)驗(yàn)得出,該方法在保證了各關(guān)節(jié)角速度、角加速度曲線平滑的情況下,使得機(jī)械人軌跡運(yùn)行時(shí)間極大降低,使得生產(chǎn)效率大幅度提高。因此驗(yàn)證該算法的有效性且相較于其它算法更易于實(shí)現(xiàn),并為其他機(jī)器人軌跡優(yōu)化問(wèn)題提供借鑒。