方建文,晁永生,袁逸萍
(新疆大學(xué)機(jī)械工程學(xué)院,新疆 烏魯木齊830047)
白車身的焊接是汽車生產(chǎn)制造過(guò)程中不可缺少的一環(huán),隨著生產(chǎn)工藝的不斷發(fā)展,焊接過(guò)程中機(jī)器人的移動(dòng)軌跡要求也越來(lái)越高。目前工業(yè)生產(chǎn)中應(yīng)用的焊接機(jī)器人大多是示教機(jī)器人,其反應(yīng)能力往往較差,而針對(duì)白車身焊點(diǎn)的焊接是一個(gè)快速起停的過(guò)程,一旦出現(xiàn)不穩(wěn)定因素干擾可能無(wú)法及時(shí)反應(yīng)過(guò)來(lái),在一定程度上影響了焊接的質(zhì)量。因此,根據(jù)實(shí)際的焊接任務(wù),在確保焊接精度的前提下,在相鄰焊點(diǎn)之間找到一條合理的路徑曲線,使臨近焊點(diǎn)附近時(shí)焊接機(jī)器人各關(guān)節(jié)的位移、速度、加速度隨時(shí)間變化曲線更加平滑,避免快速起停過(guò)程中出現(xiàn)機(jī)器臂共振等情況,這對(duì)高質(zhì)量高精度完成焊接任務(wù),提高白車身焊接生產(chǎn)線生產(chǎn)效率,延長(zhǎng)機(jī)器人的使用壽命具有重要意義。
常見(jiàn)的機(jī)器人運(yùn)動(dòng)軌跡規(guī)劃包括關(guān)節(jié)空間軌跡規(guī)劃和笛卡爾空間軌跡規(guī)劃。眾多學(xué)者針對(duì)現(xiàn)代車身焊接過(guò)程中的軌跡優(yōu)化問(wèn)題進(jìn)行了進(jìn)一步的研究。文獻(xiàn)[1]將軌跡曲線分段用三次多項(xiàng)式插值曲線進(jìn)行分段擬合,對(duì)關(guān)節(jié)速度進(jìn)行了約束。文獻(xiàn)[2]提出了一種基于三次多項(xiàng)式插值法的加減速型Nurbs曲線前瞻算法,優(yōu)化了軌跡的穩(wěn)定性。文獻(xiàn)[3]提出一種新型S型速度規(guī)劃算法,在一定程度平滑了加加速度曲線,提升了運(yùn)動(dòng)過(guò)程中的抗沖擊性能。文獻(xiàn)[4]針對(duì)加速度的突變,采用S型速度曲線進(jìn)行軌跡規(guī)劃,提高了運(yùn)動(dòng)過(guò)程中的抗沖擊性能。文獻(xiàn)[5]針對(duì)工業(yè)機(jī)器人時(shí)間最優(yōu)、能耗最優(yōu)、脈動(dòng)最優(yōu)等多目標(biāo)的軌跡優(yōu)化問(wèn)題,基于非均勻有理B樣條曲線矩陣表示法,提出一種最優(yōu)軌跡規(guī)劃方法。文獻(xiàn)[6]構(gòu)建七次B樣條曲線,將機(jī)械人的運(yùn)動(dòng)學(xué)約束轉(zhuǎn)化為B樣條控制頂點(diǎn)的約束,實(shí)現(xiàn)了多目標(biāo)軌跡優(yōu)化。文獻(xiàn)[7-8]以加加速度的平方以及Jerk的絕對(duì)值為優(yōu)化目標(biāo),其軌跡由于單一目標(biāo)優(yōu)化軌跡。文獻(xiàn)[9]采用五次B樣條插值法對(duì)軌跡進(jìn)行擬合,當(dāng)約束條件復(fù)雜時(shí)其優(yōu)化效果優(yōu)于三次B樣條插值法,但由于反算控制點(diǎn)過(guò)程的計(jì)算量太大,為研究帶來(lái)了不便。上述方法從運(yùn)動(dòng)軌跡整體上實(shí)現(xiàn)了對(duì)速度、加速度的規(guī)劃,提高了運(yùn)動(dòng)過(guò)程的平穩(wěn)性,然而關(guān)于焊槍在進(jìn)出焊點(diǎn)時(shí)局部運(yùn)動(dòng)的平穩(wěn)性研究還比較匱乏。因此對(duì)機(jī)器人各關(guān)節(jié)空間采用改進(jìn)的B樣條插值法進(jìn)行優(yōu)化,使運(yùn)動(dòng)軌跡能夠準(zhǔn)確通過(guò)焊點(diǎn),并通過(guò)增加輔助控制點(diǎn)方法,對(duì)焊點(diǎn)附近運(yùn)動(dòng)過(guò)程中的速度、加速度進(jìn)行了優(yōu)化,使運(yùn)動(dòng)過(guò)程更加平穩(wěn)。
焊接機(jī)器人具有6個(gè)自由度,即機(jī)器人關(guān)節(jié)空間為6維空間,由于焊接過(guò)程中焊點(diǎn)是固定且必須經(jīng)過(guò)的,因此將其作為末端執(zhí)行器在空間運(yùn)動(dòng)過(guò)程中的通過(guò)點(diǎn)。通過(guò)逆解每個(gè)焊點(diǎn)都有一組關(guān)節(jié)角與之對(duì)應(yīng),即各焊點(diǎn)對(duì)應(yīng)的關(guān)節(jié)空間位置,記為qj=表示機(jī)器人在qj點(diǎn)時(shí)的6個(gè)關(guān)節(jié)的關(guān)節(jié)值。
其中,Qi(i=0,1,…,n)為控制頂點(diǎn),Ni,k(t)(i=0,1,…,n)是k次規(guī)范B樣條基函數(shù),且有
式中:k-B樣條函數(shù)的階數(shù);i-B樣條函數(shù)的序列號(hào),記0/0=0。文獻(xiàn)[10]通過(guò)關(guān)節(jié)空間中對(duì)應(yīng)的位置-時(shí)間序列點(diǎn),將其作為型值點(diǎn)反算控制頂點(diǎn),再利用三次B樣條插值法進(jìn)行軌跡的擬合,保證了運(yùn)動(dòng)軌跡經(jīng)過(guò)所對(duì)應(yīng)的關(guān)節(jié)空間位置,其第i段曲線的函數(shù)表達(dá)式為
通過(guò)上一小節(jié)的描述、計(jì)算,要使規(guī)劃的運(yùn)動(dòng)曲線能夠經(jīng)過(guò)焊點(diǎn)所對(duì)應(yīng)機(jī)器人關(guān)節(jié)空間位置,通過(guò)反算控制點(diǎn)求得B樣條插值曲線。雖然利用該方法能夠?qū)崿F(xiàn)運(yùn)動(dòng)軌跡經(jīng)過(guò)期望的關(guān)節(jié)位置,但焊接機(jī)器人從一個(gè)焊點(diǎn)移動(dòng)至另一焊點(diǎn)時(shí),要求在到達(dá)焊點(diǎn)位置附近時(shí),速度變化平穩(wěn),以確保焊接質(zhì)量。所以說(shuō),在上述基礎(chǔ)上通過(guò)增加或改變控制點(diǎn)的數(shù)目來(lái)控制曲線形狀,進(jìn)而優(yōu)化軌跡的運(yùn)動(dòng)性能。
已知,利用三次均勻B樣條插值法,通過(guò)4個(gè)控制點(diǎn)可以確定一段曲線,如圖1所示。
圖1 三次均勻B樣條曲線Fig.1 Cubic Uniform B-Spline Curve
依據(jù)德布爾遞推法,圖1中的三次均勻B樣條曲線段由是由Q0、Q1、Q2、Q3四個(gè)控制頂點(diǎn)確定,該三次曲線的起點(diǎn)是Q0、Q1、Q2構(gòu)成的三角形的中線Q1Q1′上的一點(diǎn)N1,Q1N1的位長(zhǎng)度是ΔQ0Q1Q2中線Q1Q1′長(zhǎng)度的1 3,終點(diǎn)是Q1、Q2、Q3構(gòu)成的三角形的中線Q2Q2′上的一點(diǎn)N2,Q2N2的位長(zhǎng)度是ΔQ1Q2Q3中線Q2Q2′長(zhǎng)度的1 3,由N1N2構(gòu)成的三次B樣條插值曲線,且該曲線不經(jīng)過(guò)Q0、Q1、Q2、Q3中的任意控制頂點(diǎn)。假設(shè),當(dāng)Q1點(diǎn)不斷趨近于Q1′點(diǎn)時(shí),那么N1點(diǎn)則會(huì)不斷靠近Q1′點(diǎn),同理,當(dāng)Q2點(diǎn)不斷趨近于Q2′點(diǎn)時(shí),那么N2點(diǎn)則會(huì)不斷靠近Q2′點(diǎn)。這時(shí),該三次B樣條插值曲線的起點(diǎn)和終點(diǎn)將不斷逼近ΔQ0Q1Q2、ΔQ1Q2Q3的底邊,即Q0Q1、Q2Q3,最終Q1(Q1′),Q2(Q2′)兩兩重合,此時(shí)該三次B樣條插值曲線的起點(diǎn)和終點(diǎn)為兩控制頂點(diǎn)。依據(jù)此現(xiàn)象,可以得出,3個(gè)相鄰等距的控制頂點(diǎn)如果共線,那么該三次B樣條插值曲線的起點(diǎn)和終點(diǎn)曲線會(huì)經(jīng)過(guò)中間控制點(diǎn)。為了滿足所有的控制頂點(diǎn)都在該曲線上,則需要在每個(gè)控制頂點(diǎn)的兩側(cè)再加入兩個(gè)控制頂點(diǎn),用來(lái)調(diào)整曲線形狀,使之經(jīng)過(guò)原先的控制頂點(diǎn),新規(guī)劃出的曲線較原來(lái)平緩,如圖2所示。
圖2 改進(jìn)B樣條曲線Fig.2 Improved B-Spline Curve
規(guī)劃方法具體如下:
(1)如圖2,在Q1兩側(cè)增加輔助控制點(diǎn)Q1z、Q1y,使Q1、Q1z、Q1y三點(diǎn)共線,且Q1是Q1zQ1y的中點(diǎn),同時(shí)平行于Q0Q2,由三角形的幾何性質(zhì)可得Q1zQ1=Q1Q1y=hQ0Q2,其中,h為ΔQ0Q1Q2底邊Q0Q2長(zhǎng)度的比例系數(shù)同理在Q2兩側(cè)增加點(diǎn)Q2z、Q2y,使Q2、Q2z、Q2y三點(diǎn)共線,且Q2是Q2zQ2y的中點(diǎn),同時(shí)平行于Q1Q3,可得Q2zQ2=Q2Q2y=Q1Q3/6。
(2)為了讓該三次B樣條曲線通過(guò)起始和末端的兩個(gè)控制點(diǎn)Q0、Q3,依據(jù)B樣條曲線特殊的幾何性質(zhì),在Q0、Q3點(diǎn)原處增加兩個(gè)輔助控制點(diǎn)使之重合,那么能夠使曲線從Q0點(diǎn)出發(fā)止于Q3點(diǎn)。
綜上所述,以Q0、Q1z、Q1、Q1y、Q2z、Q2、Q2y、Q3為控制頂點(diǎn),可以得到三段三次B樣條曲線,且得到的曲線通過(guò)Q1、Q2點(diǎn),若要使曲線通過(guò)首尾控制點(diǎn),則在首尾控制點(diǎn)原處各增加兩個(gè)輔助控制點(diǎn)。若曲線需要經(jīng)過(guò)n個(gè)關(guān)節(jié)位置點(diǎn),則需要添加2n個(gè)輔助控制點(diǎn)生成3n-3段曲線,生成的三次B樣條曲線通過(guò)所有原始關(guān)節(jié)位置點(diǎn)。添加的控制點(diǎn)的位姿計(jì)算公式如下:
結(jié)合式(3)、(4)可得改進(jìn)后的三次B樣條曲線方程為:
其中,i=0,1,…,n-1
由于所有的輔助控制點(diǎn)都可以由最初的控制點(diǎn)求得,故將式(4)代入式(6),可得由Q0,Q1,Q2,…,Qn表示的改進(jìn)三次B樣條曲線方程:
注:式(7)中的i不取0和n-1,因?yàn)槭寄﹥啥它c(diǎn)的新增輔助點(diǎn)不按照上述方程求解,但滿足式(6),可從此求解。
點(diǎn)焊機(jī)器人最優(yōu)軌跡規(guī)劃就是要求各個(gè)關(guān)節(jié)在滿足運(yùn)動(dòng)學(xué)約束條件的情況下,確保焊接的準(zhǔn)確性,同時(shí)以較高的速度從焊點(diǎn)移出,并以較小的速度變化移至下一個(gè)焊點(diǎn)。所以說(shuō),在實(shí)際運(yùn)動(dòng)控制過(guò)程中,機(jī)器人受到驅(qū)動(dòng)機(jī)構(gòu)性能等因素的制約,具體體現(xiàn)在角度約束、角速度約束和角加速度約束這三方面。利用改進(jìn)三次B樣條插值法進(jìn)行軌跡規(guī)劃,通過(guò)對(duì)控制頂點(diǎn)的約束來(lái)實(shí)現(xiàn)對(duì)機(jī)器人運(yùn)動(dòng)軌跡的約束。
假設(shè)機(jī)器人每個(gè)關(guān)節(jié)的角變化、速度、加速度約束分別為θm、ωm、am(m=1,2,…,6)??梢郧蟮酶麝P(guān)節(jié)的位置、速度、加速度曲線方程為:
式(8)還要滿足以下約束條件:
以Panasonic TA1800G2型焊接機(jī)器人為研究對(duì)象,該機(jī)器人機(jī)構(gòu)特點(diǎn)滿足Pieper原則,其D-H參數(shù),如表1所示。
表1 機(jī)器人運(yùn)動(dòng)參數(shù)和關(guān)節(jié)變量Tab.1 Motion Parameters and Joint Variables of the Robot
根據(jù)表1中D-H參數(shù)使用如下指令,利用MATLAB中的Robotics Toolbox建立Panasonic TA-1800G2機(jī)械臂模型,示例代碼如下:
示例代碼中的Link指令中的各參數(shù),從左到右,第一位表示扭轉(zhuǎn)角α,第二位表示連桿長(zhǎng)度a,第三位表示關(guān)節(jié)角θ,第四位表示連桿偏距d,最后一位表示關(guān)節(jié)角類型,由于是6R機(jī)器人,故都為0,默認(rèn)采用標(biāo)準(zhǔn)D-H法進(jìn)行建模,如圖3所示。
圖3 Panasonic TA-1800G2模型Fig.3 Model of Panasonic TA-1800G2 Robot
在以機(jī)器人的基座為原點(diǎn)建立的空間坐標(biāo)系中,在(100×100×100)cm的坐標(biāo)空間中提取了5個(gè)焊點(diǎn)的空間位姿,記為piont=[30,0,-30;26,50,-33;22,15,-27;26,35,-35;42,39,-24],如圖4所示次序進(jìn)行焊接。
圖4 焊點(diǎn)空間位置及焊接次序Fig.4 Spacial Location and Welding Sequence of Welding Spot
機(jī)器人的末端執(zhí)行器在移動(dòng)過(guò)程中必經(jīng)焊點(diǎn)的位置,將焊點(diǎn)的位姿信息轉(zhuǎn)化為機(jī)器人末端位姿,通過(guò)運(yùn)動(dòng)學(xué)逆解得到每個(gè)焊接位姿對(duì)應(yīng)的關(guān)節(jié)角,如表2所示。
表2 焊接位姿對(duì)應(yīng)的關(guān)節(jié)角Tab.2 Joint Angle Corresponding to the Welding Pose
以表2中的數(shù)據(jù)作為型值點(diǎn),利用改進(jìn)的三次B樣條插值法,在兩側(cè)添加輔助控制點(diǎn),對(duì)曲線進(jìn)行擬合。為了能更直觀的看出各關(guān)節(jié)的軌跡規(guī)劃效果,與三次樣條插值法進(jìn)行對(duì)比,結(jié)果如圖5所示。通過(guò)對(duì)比可發(fā)現(xiàn),在滿足焊接準(zhǔn)確性的前提下,部分關(guān)節(jié)的速度、加速度曲線均有波峰,加速度曲線出現(xiàn)尖點(diǎn),通過(guò)改進(jìn)三次B樣條插值后的關(guān)節(jié)速度波動(dòng)范圍以及關(guān)節(jié)加速度波動(dòng)范圍較之三次樣條插值法顯著降低,同時(shí),型值點(diǎn)附近的速度、加速度曲線變得更加平緩,驗(yàn)證了機(jī)器人進(jìn)入焊點(diǎn)位置和焊完離開(kāi)焊點(diǎn)位置時(shí),運(yùn)動(dòng)過(guò)程的穩(wěn)定性,減小了運(yùn)動(dòng)過(guò)程出現(xiàn)的沖擊,保證了焊接的質(zhì)量。
圖5 各關(guān)節(jié)位移、速度、加速度曲線(為型值點(diǎn))Fig.5 Curves of Displacement,Velocity and Acceleration for Each Joint(were recognized as the value points)
針對(duì)焊接機(jī)器人中焊槍進(jìn)出焊點(diǎn)時(shí)運(yùn)動(dòng)過(guò)程的平穩(wěn)問(wèn)題,先求解出各個(gè)焊點(diǎn)對(duì)應(yīng)的機(jī)器人各關(guān)節(jié)的空間位置,然后以此為控制頂點(diǎn),通過(guò)添加輔助控制點(diǎn)的方法,對(duì)三次B樣條插值法進(jìn)行了改進(jìn),生成平滑的運(yùn)動(dòng)。通過(guò)與三次樣條插值法在不同時(shí)刻的位移、速度、加速度的對(duì)比,驗(yàn)證了經(jīng)過(guò)改進(jìn)三次B樣條插值法平滑后的軌跡保證了焊接的準(zhǔn)確性,同時(shí)運(yùn)動(dòng)過(guò)程的平穩(wěn)性也得到顯著提高。