孫銀生,賀艷娜,田國豪
(1.鄭州機(jī)械研究所有限公司,河南 鄭州 450002;2.河南省理工中等專業(yè)學(xué)校,河南 鄭州 450008)
目前越來越多的機(jī)器人正在取代人工,機(jī)械手臂作為現(xiàn)代化生產(chǎn)線的重要組成部分,已被廣泛應(yīng)用于工件加工、貨物搬運(yùn)和產(chǎn)品組裝等環(huán)節(jié)[1-3]。王浩等[4]通過對六自由度機(jī)器人進(jìn)行運(yùn)動學(xué)建模,采用樣條插補(bǔ)法規(guī)劃運(yùn)動軌跡,并成功應(yīng)用在葉輪加工中。嚴(yán)浩等[5]對SCARA機(jī)器人進(jìn)行了分析,設(shè)計了預(yù)測型迭代學(xué)習(xí)控制器,大大提高了控制精度。樂健等[6]將機(jī)器人應(yīng)用于焊接領(lǐng)域,通過模糊控制器算法實現(xiàn)了對焊縫的高精度跟蹤,提高了焊接的質(zhì)量和效率。然而,當(dāng)前在簡單工件的焊接作業(yè)中,大部分采用人工焊接為主,如果將這部分工作交給機(jī)器人完成,不僅會解放更多的勞動力,還會大大提高生產(chǎn)效率。為此,本文以SCARA型機(jī)器人為基礎(chǔ),研制了四自由度的自動焊接機(jī)械手臂,通過在計算機(jī)控制平臺上對運(yùn)行軌跡進(jìn)行規(guī)劃,在三維空間上實現(xiàn)了簡單工件的自動焊接,且具有較高的焊接精度。
在SCARA機(jī)器人的基礎(chǔ)上,對焊接手臂進(jìn)行了開發(fā),四自由度焊接機(jī)械手臂主要由基座、立柱、伸展大臂和小臂、安裝焊絲的管套以及輸送焊絲的機(jī)構(gòu)組成,其機(jī)械結(jié)構(gòu)模型如圖1所示。

圖1 SCARA型四自由度焊接手臂機(jī)械結(jié)構(gòu)模型
步進(jìn)電機(jī)驅(qū)動伸展大臂和小臂上的從動輪,實現(xiàn)各關(guān)節(jié)的轉(zhuǎn)動,完成在xy平面的定位;在z軸的移動則利用步進(jìn)電機(jī)驅(qū)動杠絲轉(zhuǎn)動,使大臂在立柱滑軌上做垂直方向的運(yùn)動而實現(xiàn)[7-8]。同時,在機(jī)械手臂的末端固定了安裝焊條的管套,在焊接的過程中,根據(jù)焊接的速度控制傳送輪帶動焊絲向管套外移動。
四自由度SCARA型焊接機(jī)械手臂由4個連桿串聯(lián)組成,采用D-H(齊次變換矩陣)方法對機(jī)械手臂進(jìn)行運(yùn)動學(xué)建模,空間坐標(biāo)系如圖2所示。

圖2 焊接機(jī)械手臂空間坐標(biāo)系
采用相鄰兩軸夾角αi、連桿的夾角θi、關(guān)節(jié)法線的距離li以及連桿間的相對位移di表示機(jī)械手臂的位姿,D-H參數(shù)如表1所示。

表1 焊接機(jī)械手臂D-H參數(shù)
任意相鄰連桿坐標(biāo)系之間的位置關(guān)系矩陣可以采用下式描述:
(1)
根據(jù)表1的已知參數(shù),能夠求出每個相鄰連桿的位置矩陣:
其中:ci=cosθi;si=sinθi。
焊接手臂的控制系統(tǒng)主要由計算機(jī)控制平臺和機(jī)械手臂控制板兩部分組成,焊接手臂的控制系統(tǒng)結(jié)構(gòu)框圖如圖3所示。

圖3 焊接手臂的控制系統(tǒng)結(jié)構(gòu)框圖
利用計算機(jī)控制平臺中MATLAB的Robotics Toolbox建模,并按照設(shè)計的D-H參數(shù)進(jìn)行配置。首先將焊接任務(wù)導(dǎo)入平臺,然后對任務(wù)進(jìn)行數(shù)字建模,規(guī)劃焊接路徑,并對路徑進(jìn)行離散化處理,求解出各離散點的運(yùn)動學(xué)解,得到各關(guān)節(jié)的旋轉(zhuǎn)角度和速度等參數(shù)[9]。通過RS232串行通信接口將路徑上各離散點的關(guān)節(jié)參數(shù)發(fā)送到機(jī)械手臂控制板上,微處理器根據(jù)收到的數(shù)據(jù)控制各關(guān)節(jié)的步進(jìn)電機(jī)將機(jī)械手臂送到指定的空間位置。在焊接的過程中,還會根據(jù)焊接的速度控制焊絲的傳送速度,從而完成整個焊接任務(wù)。
當(dāng)已知機(jī)械手臂所有連桿的長度與關(guān)節(jié)角度狀態(tài)時,可以在坐標(biāo)系中方便地求解出末端執(zhí)行器的位姿,這個過程稱之為正運(yùn)動學(xué)分析[10]。當(dāng)已知末端執(zhí)行器要到達(dá)的位態(tài)時,需要求解出每個連桿的參數(shù),這個過程為求運(yùn)動學(xué)的逆解[11]。
由于各連桿之間是串聯(lián)的,所以正運(yùn)動學(xué)的位置和姿態(tài)方程表示為:
[M0,4]=[M0,1][M1,2][M2,3][M3,4]=

(2)
其中:(px,py,pz)T為末端執(zhí)行器的位置矢量;(ox,oy,oz)T為方位矢量;(nx,ny,nz)T為法向矢量;(ax,ay,az)T為接近矢量。
運(yùn)動學(xué)的逆解往往不唯一,連桿和關(guān)節(jié)的數(shù)量越多,逆解的數(shù)量也就越多。如果要求解大臂關(guān)節(jié)的旋轉(zhuǎn)角度θ1,只需在式(2)的等號兩側(cè)分別左乘[M0,1]-1,可得到:
[M0,1]-1[M0,4]=[M0,1]-1[M0,1]·[M1,2]·[M2,3]·[M3,4].
(3)
將相鄰連桿的位置矩陣以及式(2)代入式(3)得:
(4)
根據(jù)公式(4)能夠得到θ1為:
(5)

令式(4)等號左側(cè)矩陣中的第1行與第4列的數(shù)值相乘,并與等號右側(cè)矩陣元素對應(yīng)相等,即:
c1px+s1py-l1=l2c2.
(6)
變換后可得:
(7)
同理,令式(4)等號左側(cè)矩陣的第3行與第4列的數(shù)值相等,并與等號右側(cè)矩陣元素對應(yīng)相等,即:
pz=-d3-d4.
(8)
同理,令式(4)等號左側(cè)矩陣的第2行與第1列的數(shù)值相乘,并與等號右側(cè)矩陣元素對應(yīng)相等,即:
-s1nx+c1ny=s2c4+c2s4.
(9)
變換后可得:
θ4=arcsin(-nxsinθ1+nycosθ1)-θ2.
(10)
根據(jù)焊接機(jī)械手臂的結(jié)構(gòu),建立了運(yùn)動學(xué)模型,利用各關(guān)節(jié)之間的幾何關(guān)系,得到了機(jī)械手臂的運(yùn)動學(xué)正解和逆解,為軌跡規(guī)劃奠定了基礎(chǔ)[12]。
從逆解得到的結(jié)果可以看出:求解的連桿參數(shù)并不唯一,而且受機(jī)械手臂各連桿的參數(shù)限制,其工作的空間也受到了一定的限制,所以在控制各關(guān)節(jié)運(yùn)動時,需要選擇路徑較短的最優(yōu)方案[13-15]。對機(jī)械手臂的求逆解屬于離散點運(yùn)算,即計算從起始點PO到終點PD各關(guān)節(jié)的參數(shù)變化量,但實際上在焊接的作業(yè)中末端執(zhí)行器(焊絲末端,即焊點)經(jīng)過連續(xù)的軌跡,才能保證焊接的質(zhì)量[16]。為此,本文提出了勻速離散點插補(bǔ)算法,將焊接的軌跡離散成多個點Qi(xi,yi,zi),離散點越多,規(guī)劃的軌跡精度越高,通過控制各關(guān)節(jié)的參數(shù),依次經(jīng)過每個離散點,從而實現(xiàn)整個路徑的規(guī)劃。
假設(shè)在三維坐標(biāo)空間中要完成一條直線的焊接,起點坐標(biāo)為PO(xO,yO,zO),終點坐標(biāo)為PD(xD,yD,zD),那么兩點之間的距離LOD表示為:
(11)
如果焊絲末端的運(yùn)動速度保持為v,令插補(bǔ)時間間隔為Tc,那么每個插補(bǔ)時間經(jīng)過的距離d表示為v·Tc,可以計算出在這個行程中總的插補(bǔ)離散點數(shù)為ent[LOD/(v·Tc)]+1,故可得到每個插補(bǔ)點的位置坐標(biāo)為:
(12)
其中:1≤i≤ent[LOD/(v·Tc)]+1。通過勻速離散點插補(bǔ)算法處理后,求解得到每個對應(yīng)離散點的逆解,即各關(guān)節(jié)的參數(shù),通過計算機(jī)控制平臺的RS232接口傳送給機(jī)械手臂控制板,微控制器會根據(jù)各關(guān)節(jié)旋轉(zhuǎn)角度增量和位移增量的大小,通過給步進(jìn)電機(jī)輸送脈沖信號的個數(shù)和頻率控制各關(guān)節(jié)運(yùn)動到指定位置,能保證焊絲末端所經(jīng)過的焊接路徑為連續(xù)的。根據(jù)經(jīng)驗可知,插補(bǔ)的離散點數(shù)量適當(dāng)?shù)亩嘁恍軌虮WC焊接過程更加平穩(wěn)。
為了驗證本文研制的SCARA型四自由度焊接機(jī)械手臂的建模方式及運(yùn)動學(xué)分析的可行性,對焊接機(jī)械手臂單點位置的控制精度進(jìn)行了測試實驗。首先在計算機(jī)控制平臺利用MATLAB中的機(jī)器人工具箱對研制的SCARA型四自由度焊接機(jī)械手臂進(jìn)行建模,具體參數(shù)如表2所示。

表2 焊接機(jī)械手臂的參數(shù)
在焊接機(jī)械手臂工作的三維空間內(nèi)選取10個目標(biāo)坐標(biāo)點,并將這些點導(dǎo)入到機(jī)器人工具箱中,經(jīng)過對這10個點求逆解,得到各關(guān)節(jié)的參數(shù),并發(fā)送給機(jī)械手臂控制板執(zhí)行,使焊絲末端運(yùn)行到指定位置,并進(jìn)行實際測量,得到10組數(shù)據(jù),最后計算出目標(biāo)與實際坐標(biāo)的誤差,結(jié)果如表3所示。

表3 精度控制實驗結(jié)果
從表3的實驗結(jié)果可看出:在得到的10組數(shù)據(jù)中,焊接機(jī)械手臂到達(dá)的實際坐標(biāo)點與目標(biāo)坐標(biāo)均有一定的距離偏差,最小誤差為0.39 mm,最大偏差為0.71 mm,平均誤差僅為0.54 mm,說明設(shè)計的四自由度焊接機(jī)械手臂具有較高的控制精度。
為了解焊接機(jī)械手臂在運(yùn)動過程中各關(guān)節(jié)的運(yùn)動狀態(tài),在三維空間內(nèi)選取兩點A(226,48,-283)和B(-63,390,-317),規(guī)劃焊絲末端從A點運(yùn)行到B點,跟蹤各關(guān)節(jié)主要參數(shù)及焊點位移的變化情況,如圖4和圖5所示。

圖4 各關(guān)節(jié)主要參數(shù)跟蹤結(jié)果

圖5 焊點的位移與時間關(guān)系
從圖4的跟蹤結(jié)果可看出:關(guān)節(jié)1和關(guān)節(jié)2的角速度和角加速度曲線均非常光滑,說明兩個關(guān)節(jié)的運(yùn)行非常平穩(wěn);關(guān)節(jié)3是焊絲傳送部件,在z軸的垂直方向上運(yùn)動,在傳送結(jié)構(gòu)的控制下保持了勻速的運(yùn)動狀態(tài);關(guān)節(jié)4是末端執(zhí)行器的狀態(tài)控制部件,在本應(yīng)用中未發(fā)揮作用,始終保持靜止的狀態(tài),所以角速度一直為0。
從圖5的跟蹤結(jié)果可看出:焊點在x軸和y軸上的位移曲線也非常光滑,在z軸上則呈現(xiàn)出了標(biāo)準(zhǔn)的線性運(yùn)動趨勢,符合焊絲傳送結(jié)構(gòu)的設(shè)計預(yù)期。進(jìn)一步說明了本文設(shè)計的四自由度焊接機(jī)械手臂在點到點的運(yùn)動過程中運(yùn)動連續(xù)平滑,不卡頓,各部件均工作正常。
本文基于SCARA型機(jī)器人研制了四自由度機(jī)械手臂的自動焊接系統(tǒng),通過對機(jī)械手臂進(jìn)行運(yùn)動學(xué)建模和分析,得到了正解和逆解,將各關(guān)節(jié)參數(shù)發(fā)送給機(jī)械手臂控制板執(zhí)行,可使末端執(zhí)行器運(yùn)行到指定的目標(biāo)坐標(biāo)點。通過勻速插補(bǔ)算法實現(xiàn)路徑規(guī)劃,實現(xiàn)在三維空間中對簡單工件的焊接作業(yè)。通過對10組單點位置控制,驗證設(shè)計的自動焊接系統(tǒng)對機(jī)械手臂具有較高的控制精度,平均誤差僅為0.54 mm。通過對關(guān)節(jié)和焊點的運(yùn)動狀態(tài)進(jìn)行跟蹤,發(fā)現(xiàn)關(guān)節(jié)的角速度、角加速度和焊點的位移曲線非常光滑,說明了焊接機(jī)械手臂運(yùn)行非常平穩(wěn);另外,在對兩塊鐵板焊接的路徑規(guī)劃中,使用的勻速插補(bǔ)算法也保證了焊接軌跡的連續(xù)性,所以設(shè)計的四自由度機(jī)械手臂自動焊接系統(tǒng)符合設(shè)計預(yù)期,能夠滿足焊接的工藝要求。