田國(guó)富,鄭博濤
(沈陽(yáng)工業(yè)大學(xué) 機(jī)械工程學(xué)院,遼寧 沈陽(yáng) 110870)
傳統(tǒng)方式加工出來(lái)的零件往往都有飛邊、毛刺等表面缺陷,為了得到最終的產(chǎn)品還要對(duì)這些缺陷進(jìn)行打磨處理[1]。當(dāng)前,我國(guó)還是主要以人工方式來(lái)打磨工件,這樣不僅生產(chǎn)效率低、工件表面一致性差,還會(huì)由于打磨環(huán)境惡劣對(duì)工人的健康造成影響。隨著工業(yè)機(jī)器人技術(shù)的不斷突破,未來(lái)使用機(jī)器人代替人工打磨就成了趨勢(shì),為了研究打磨機(jī)器人的軌跡規(guī)劃,本文以FANUC公司的R-2000iB/165型號(hào)機(jī)器人為打磨設(shè)備,通過(guò)使用MATLAB軟件中的機(jī)器人工具箱對(duì)打磨軌跡進(jìn)行規(guī)劃研究。
R-2000iB/165(圖1)是六自由度工業(yè)機(jī)器人,由6個(gè)旋轉(zhuǎn)關(guān)節(jié)及連桿組成,根據(jù)機(jī)器人的結(jié)構(gòu),通過(guò)D-H法建立機(jī)器人坐標(biāo)系(圖2)。
圖2 機(jī)器人連桿坐標(biāo)系
使用參考文獻(xiàn)[1]中的方法確定D-H參數(shù)見(jiàn)表1,關(guān)節(jié)轉(zhuǎn)角θi、連桿扭角αi-1、連桿長(zhǎng)度ai-1和連桿偏距di[2]。
表1 機(jī)器人D-H參數(shù)
通過(guò)調(diào)用MATLAB中機(jī)器人工具箱中的函數(shù)[3-6],對(duì)R-2000iB/165機(jī)器人進(jìn)行三維建模,具體的MATLAB程序如圖3所示。
圖3 機(jī)器人三維建模
其中Link函數(shù)中的參數(shù)分別為連桿扭角、桿長(zhǎng)、關(guān)節(jié)轉(zhuǎn)角、連桿偏距與使用標(biāo)準(zhǔn)的D-H參數(shù),調(diào)用robot函數(shù)將所有的連桿連接起來(lái)構(gòu)成一個(gè)整體,調(diào)用drivebot函數(shù)彈出機(jī)器人關(guān)節(jié)驅(qū)動(dòng)器如圖4所示,通過(guò)滑動(dòng)滑塊即可將機(jī)器人運(yùn)動(dòng)到指定的位姿。
圖4 機(jī)器人三維模型
建立完機(jī)器人三維模型建立后便可進(jìn)行機(jī)器人軌跡的規(guī)劃研究。
軌跡規(guī)劃包括關(guān)節(jié)空間規(guī)劃與笛卡爾空間規(guī)劃兩種軌跡規(guī)劃,不同空間的軌跡規(guī)劃具有不同的優(yōu)缺點(diǎn)。關(guān)節(jié)空間軌跡規(guī)劃具有計(jì)算量小、不會(huì)出現(xiàn)奇異現(xiàn)象的優(yōu)點(diǎn),但機(jī)器人末端在空間中的運(yùn)動(dòng)軌跡是未知的。笛卡爾空間軌跡規(guī)劃具有運(yùn)動(dòng)路徑直觀的優(yōu)點(diǎn),但難以確定在運(yùn)動(dòng)過(guò)程中是否會(huì)發(fā)生奇異的現(xiàn)象。要使機(jī)器人能夠平穩(wěn)的運(yùn)動(dòng),不論哪種規(guī)劃,都要求運(yùn)動(dòng)軌跡是光滑連續(xù)的[7-10]。
為了在關(guān)節(jié)空間中規(guī)劃?rùn)C(jī)器人的運(yùn)行軌跡,需要設(shè)定下運(yùn)動(dòng)初始點(diǎn)與終止點(diǎn),取初始點(diǎn)q1=[0 0 0 0 0 0],終止點(diǎn)q2=[pi/4 pi/5 pi/6 pi/4 pi/3 pi/5],設(shè)定運(yùn)動(dòng)時(shí)間為2 s,為了方便僅對(duì)關(guān)節(jié)1和關(guān)節(jié)2進(jìn)行研究,其MATLAB程序如圖5所示。
圖5 關(guān)節(jié)空間軌跡規(guī)劃程序
調(diào)用jtraj函數(shù)可對(duì)關(guān)節(jié)空間進(jìn)行五次多項(xiàng)式插值,調(diào)用plot(t,q(:,i))、plot(t,qd(:,i))和 plot(t,qdd(:,i))可分別得到各個(gè)關(guān)節(jié)的角位移曲線、角速度曲線和角加速度曲線。運(yùn)行程序即可得到關(guān)節(jié)1、2的角位移、角速度和角加速度曲線,如圖6所示。
圖6 關(guān)節(jié)角位移、速度、加速度曲線
觀察圖6可以發(fā)現(xiàn)機(jī)器人在運(yùn)動(dòng)過(guò)程中角位移、速度、加速度曲線都光滑平穩(wěn),說(shuō)明機(jī)器人各個(gè)連桿沒(méi)有發(fā)生錯(cuò)位的現(xiàn)象,角位移從初始位置隨著時(shí)間運(yùn)動(dòng)到終止點(diǎn)的位置,角速度從零運(yùn)動(dòng)1 s左右達(dá)到最大速度后又逐漸減為零,角加速度先正后負(fù)正好對(duì)應(yīng)上速度先增大后減小,因此該關(guān)節(jié)空間軌跡規(guī)劃是較為合理的。
本文以空間直線為例進(jìn)行軌跡規(guī)劃,在笛卡爾空間進(jìn)行軌跡規(guī)劃時(shí)同樣需要設(shè)定初始點(diǎn)與終止點(diǎn),取初始點(diǎn)T1=transl(78,171,1953,093,123,915),終止點(diǎn)T2=(387,872,1920,068,880,126),運(yùn)動(dòng)時(shí)間也設(shè)定為2秒,軌跡規(guī)劃MATLAB程序如圖7所示。
圖7 笛卡爾空間軌跡規(guī)劃程序
調(diào)用工具箱中的ctraj函數(shù)可以在笛卡爾空間軌跡機(jī)器人運(yùn)動(dòng)軌跡,調(diào)用plot(t,Tj(:,i))函數(shù)可以得出機(jī)械臂末端的三維空間坐標(biāo),如圖8所示。
圖8 機(jī)器人末端三維坐標(biāo)
通過(guò)程序語(yǔ)句plot3(Tj(:,1),Tj(:,2),Tj(:,3))即可畫(huà)出機(jī)械臂末端在空間中的運(yùn)行軌跡,如圖9所示。
圖9 機(jī)器人末端空間運(yùn)動(dòng)軌跡
為了確定該軌跡規(guī)劃是否合理,還需要觀察機(jī)器人在運(yùn)動(dòng)過(guò)程中各個(gè)關(guān)節(jié)轉(zhuǎn)角的變化情況,通過(guò)如圖10中的MATLAB程序就可得到關(guān)節(jié)轉(zhuǎn)角的變化曲線如圖11所示。
圖10 求各個(gè)關(guān)節(jié)角的MATLAB程序
圖11 關(guān)節(jié)角度變化曲線
觀察圖11可以發(fā)現(xiàn)在笛卡爾空間進(jìn)行軌跡規(guī)劃時(shí),各個(gè)關(guān)節(jié)轉(zhuǎn)角沒(méi)有發(fā)生突變,說(shuō)明規(guī)劃是合理的。
利用MATLAB軟件建立了機(jī)器人三維模型,在關(guān)節(jié)空間與笛卡爾空間進(jìn)行了軌跡規(guī)劃,通過(guò)軌跡仿真可以得出機(jī)器人的運(yùn)動(dòng)是平穩(wěn)連續(xù)的,在機(jī)器人從初始位置(或開(kāi)機(jī)位置)運(yùn)動(dòng)到打磨初始點(diǎn)時(shí),由于這個(gè)過(guò)程不需要有精確的行走路線,為了節(jié)省時(shí)間,可對(duì)這個(gè)過(guò)程進(jìn)行關(guān)節(jié)空間軌跡規(guī)劃。當(dāng)從打磨初始點(diǎn)運(yùn)動(dòng)到打磨終止點(diǎn)時(shí)需要機(jī)器人沿著精確到路徑移動(dòng),這時(shí)就需要在笛卡爾空間進(jìn)行軌跡規(guī)劃,這樣不僅提高了打磨效率,還提高了打磨質(zhì)量。