萬(wàn)海鑫,馬思遠(yuǎn)
(阜陽(yáng)職業(yè)技術(shù)學(xué)院,安徽阜陽(yáng)236031)
【應(yīng)用研究】
關(guān)于工業(yè)機(jī)械臂運(yùn)動(dòng)實(shí)現(xiàn)的探究
萬(wàn)海鑫,馬思遠(yuǎn)
(阜陽(yáng)職業(yè)技術(shù)學(xué)院,安徽阜陽(yáng)236031)
工業(yè)機(jī)械臂是工廠自動(dòng)化的重要部件,因此人們對(duì)工業(yè)臂技術(shù)的研究和認(rèn)識(shí)逐步深入.探究工業(yè)機(jī)械臂的運(yùn)動(dòng)實(shí)現(xiàn),找到機(jī)械臂端部運(yùn)動(dòng)和伺服電機(jī)轉(zhuǎn)動(dòng)角度之間的關(guān)系至關(guān)重要.利用DOBOT機(jī)械臂建立模型,采用雙向研究的方法,從伺服電機(jī)轉(zhuǎn)動(dòng)到機(jī)械臂端部坐標(biāo)、再?gòu)臋C(jī)械臂端部坐標(biāo)到伺服電機(jī)轉(zhuǎn)動(dòng)兩個(gè)方向檢驗(yàn).通過(guò)對(duì)模型的研究,最終實(shí)現(xiàn)輸入機(jī)械臂控制坐標(biāo),得到伺服電機(jī)角度的公式.因模型具有普遍意義,所以得出的公式能夠?qū)崿F(xiàn)通過(guò)伺服電機(jī)對(duì)機(jī)械臂的控制.
機(jī)械臂;坐標(biāo)變換;運(yùn)動(dòng)軌跡
越來(lái)越多的工廠招工困難,這就要求工廠必須提高自動(dòng)化程度.工業(yè)機(jī)械臂技術(shù)作為工廠自動(dòng)化的重要部件,人們對(duì)這種技術(shù)的研究和認(rèn)識(shí)逐步深入,已在工業(yè)的各個(gè)領(lǐng)域內(nèi)得到了廣泛的應(yīng)用[1].在工業(yè)領(lǐng)域內(nèi),人們對(duì)裝卸機(jī)器人、碼垛機(jī)器人、搬運(yùn)機(jī)器人、焊接機(jī)器人等的應(yīng)用已經(jīng)很廣泛和成熟.在當(dāng)前的機(jī)器人技術(shù)領(lǐng)域內(nèi),應(yīng)用最廣泛的自動(dòng)化機(jī)械裝置當(dāng)屬機(jī)械臂.除了在工業(yè)領(lǐng)域內(nèi),在其他諸如娛樂(lè)服務(wù)、醫(yī)療醫(yī)學(xué)、軍事等領(lǐng)域都能用到械臂.機(jī)械臂通常是指一系列相互鉸接或相對(duì)滑動(dòng)的構(gòu)件所組成的具有模仿人類(lèi)手臂功能并可完成各種作業(yè)的自動(dòng)控制設(shè)備,它可把物件或工具按空間位姿的變化要求進(jìn)行移動(dòng),從而完成某一工業(yè)生產(chǎn)的作業(yè)要求[2].機(jī)械臂技術(shù)不僅可以提高生產(chǎn)效率,還可以節(jié)省人工成本.因此,機(jī)器人產(chǎn)業(yè)可能會(huì)成為在汽車(chē)以及計(jì)算機(jī)之后的又一個(gè)大型的高新技術(shù)產(chǎn)業(yè).
本文采用一種三軸工業(yè)機(jī)械臂作為研究模型,該模型選用深圳越疆科技有限公司生產(chǎn)的DOBOT機(jī)械臂,如圖1所示.該機(jī)械臂是常見(jiàn)的ABB碼垛機(jī)械臂的縮小版,可以作為學(xué)習(xí)研發(fā)使用.該機(jī)械臂的電動(dòng)機(jī)安裝于底座上,大小臂的質(zhì)量較輕,具有非??斓倪\(yùn)動(dòng)速度和定位精度[3].將該機(jī)械臂簡(jiǎn)化如圖2(見(jiàn)82頁(yè))所示.其中A表示底座第一個(gè)關(guān)節(jié)高度,B表示大臂長(zhǎng)度,C表示小臂長(zhǎng)度,D表示末端挾持部分長(zhǎng)度.大臂轉(zhuǎn)動(dòng)由一顆電機(jī)帶動(dòng),小臂轉(zhuǎn)動(dòng)由一顆電機(jī)帶動(dòng),整體轉(zhuǎn)動(dòng)由一顆電機(jī)帶動(dòng)[4].
首先明確兩個(gè)定義:正解函數(shù)和反解函數(shù).正解函數(shù)是已知機(jī)械臂的各旋轉(zhuǎn)角度求得笛卡爾坐標(biāo)系三維坐標(biāo)值,反解函數(shù)是已知笛卡爾坐標(biāo)系三維坐標(biāo)值求機(jī)械臂的各旋轉(zhuǎn)角度[5].
2.1 正解函數(shù)計(jì)算
如圖3所示,假設(shè)機(jī)械臂的主臂和副臂構(gòu)成一個(gè)平面坐標(biāo)系,CencerOffset表示旋轉(zhuǎn)軸偏移量,HeadOffset表示頭部偏移量,Linkage_1表示主臂長(zhǎng)度,Linkage_2表示副臂長(zhǎng)度,f_SCARA[X_AXIS]表示主臂旋轉(zhuǎn)角度,f_SCARA[Y_AXIS]表示副臂旋轉(zhuǎn)角度.三角換算得到(如圖4所示):
x_sin = sin(f_SCARA[X_AXIS]/SCARA_RAD2DEG)* Linkage_1;
x_cos = cos(f_SCARA[X_AXIS]/SCARA_RAD2DEG)* Linkage_1;
y_sin = sin(f_SCARA[Y_AXIS]/SCARA_RAD2DEG)* Linkage_2;
y_cos = cos(f_SCARA[Y_AXIS]/SCARA_RAD2DEG)* Linkage_2;
從上往下觀察機(jī)械臂,現(xiàn)在主臂和副臂構(gòu)成一條線,加上兩個(gè)偏移量就是ARM_XY值(如圖5所示).再根據(jù)ARM_XY值計(jì)算當(dāng)前笛卡爾坐標(biāo)系的XYZ三個(gè)坐標(biāo)軸坐標(biāo)值.
delta[X_AXIS]=ARM_XY*cos(f_SCARA[Z_AXIS]/SCARA_RAD2DEG)- SCARA_offset[X_AXIS];
delta[Y_AXIS]=ARM_XY*sin(f_SCARA[Z_AXIS]/SCARA_RAD2DEG)- SCARA_offset[Y_AXIS];
delta[Z_AXIS] =x_sin + y_sin -SCARA_offset[Z_AXIS];
注:(1)SCARA_RAD2DEG是弧度轉(zhuǎn)角度的計(jì)算因子,SCARA_RAD2DEG = 180/pi = 57.295 779 5.
(2)SCARA_offset[X_AXIS]、SCARA_offset[YAXIS]、SCARA_offset[Z_AXIS]是各軸笛卡爾坐標(biāo)系下的偏移量,可以自定義原點(diǎn)坐標(biāo).
2.2 反解函數(shù)計(jì)算
已知實(shí)際的機(jī)械臂末端XYZ坐標(biāo)值,用字母表示如下[2]:
SCARA_pos[X_AXIS]代表X軸坐標(biāo);
SCARA_pos[Y_AXIS]代表Y軸坐標(biāo);
SCARA_pos[Z_AXIS]代表Z軸坐標(biāo);
由上向下觀察機(jī)械臂,主臂和副臂成一條直線(如圖6所示).計(jì)算ARM_XY值如下:
ARM_XY=sqrt(pow(SCARA_pos[X_AXIS],2)+pow(SCARA_pos[Y_AXIS],2))- CencerOffset- HeadOffset;
通過(guò)ARM_XY和SCARA_pos[Z_AXIS]得到最下關(guān)節(jié)和機(jī)械臂末端的距離ARM_XYZ值.
通過(guò)三角變換得到(如圖7所示):
cosa=(b^2+c^2-a^2)/2bc
cosb=(a^2+c^2-b^2)/2ac
cosc=(a^2+b^2-c^2)/2ab
SCARA_C2 = (pow(ARM_XYZ,2) -pow(Linkage_1,2) - pow(Linkage_2,2))/(2 * Linkage_1 * Linkage_2);
SCARA_S2 = sqrt( 1 - pow(SCARA_C2,2) );
SCARA_K1 = Linkage_1 + Linkage_2 *SCARA_C2;
SCARA_K2 = Linkage_2 * SCARA_S2;
獲得大臂夾角SCARA_theta 和大小臂夾角SCARA_psi
SCARA_theta = (atan2(SCARA_pos[Z_AXIS],ARM_XY)+atan2(SCARA_K2,SCARA_K1));
SCARA_psi = atan2(SCARA_S2, SCARA_C2);
注:SCARA_C2 公式是(pow(Linkage_1,2) + pow(Linkage_2,2)- (pow(ARM_XYZ,2))/(2 *Linkage_1 * Linkage_2)前面加負(fù)號(hào)的簡(jiǎn)化公式.
最后計(jì)算出各軸轉(zhuǎn)動(dòng)角度(如圖8所示):
delta[X_AXIS] = SCARA_theta * SCARA_RAD2DEG
delta[Y_AXIS] = (SCARA_theta - SCARA_psi) *SCARA_RAD2DEG
delta[Z_AXIS] =atan2(SCARA_pos[Y_AXIS],SCARA_pos[X_AXIS]) * SCARA_RAD2DEG
通過(guò)上述的變換,可以在機(jī)械臂的末端笛卡爾坐標(biāo)系和轉(zhuǎn)動(dòng)角度之間進(jìn)行轉(zhuǎn)換,得到轉(zhuǎn)動(dòng)角度即可控制電機(jī)運(yùn)動(dòng).機(jī)械臂坐標(biāo)轉(zhuǎn)換作為求解機(jī)械臂運(yùn)動(dòng)學(xué)的基礎(chǔ),對(duì)于優(yōu)化機(jī)械臂的運(yùn)動(dòng)軌跡,使機(jī)械臂精準(zhǔn)地完成預(yù)定的工作任務(wù)具有重要的意義[6、7].本文從實(shí)際控制出發(fā),能夠通過(guò)電機(jī)轉(zhuǎn)動(dòng)角度得到笛卡爾坐標(biāo)系,也可以通過(guò)笛卡爾坐標(biāo)系得到電機(jī)轉(zhuǎn)動(dòng)角度.雖然只有一部分內(nèi)容,但是通過(guò)本文的引申研究,可以達(dá)到更多軸控制的目的,因此在機(jī)械臂運(yùn)動(dòng)學(xué)中占有重要地位.
[1]樂(lè)偉偉,李寧.機(jī)械臂在工業(yè)領(lǐng)域的應(yīng)用及發(fā)展[J]工程技術(shù),2016,44(12):00231.
[2]孫軍,張家亮,馬玲.Dobot機(jī)械臂建模仿真與軌跡規(guī)劃算法研究[J].機(jī)械與電子,2016,(6):72-75.
[3]孫亮,馬江,阮曉鋼.六自由度機(jī)械臂軌跡規(guī)劃與仿真研究[J].控制工程,2010,(3):388-392.
[4]郭闖強(qiáng). 空間大型機(jī)械臂關(guān)節(jié)控制系統(tǒng)及軌跡規(guī)劃研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2012.
[5]鄭秀娟. 移動(dòng)機(jī)械臂的運(yùn)動(dòng)控制與軌跡規(guī)劃算法研究[D].武漢:武漢科技大學(xué),2012.
[6]謝乃流,陳勁杰,石巖.基于六自由度機(jī)械臂的軌跡規(guī)劃[J].電氣技術(shù)與自動(dòng)化,2011,(2):141-144.
[7]毛飛躍.機(jī)械臂的結(jié)構(gòu)優(yōu)化設(shè)計(jì)研究[J].工程技術(shù),2016,9(7):0065.
(審稿人 王春會(huì) 管英杰,責(zé)任編輯 邵艷艷)
On movement research of mechanical arm in industry
WAN Hai-xin, MA Si-yuan
(Fuyang Institute of Technology, Fuyang Anhui 236031)
The mechanical arm in industry is the important component of the factory automation, so people are researching and getting to know it better and deeper now. It is extremely important to find the relations between end-range movement of industrial arm and the rotation angle of servo motor. Use the mechanical arm of DOBOT to build the module and adopt the method of bidirectional study to test from two directions, which are from the rotation of the servo motor to end coordinate and from the end coordinate of the mechanical arm to servo motor. Through the research on model, in the end it realizes that input mechanical arm controls the coordinate and achieve the formula of servo motor angle. With the model popular, the achieved formula can make it true that the servo motor controls the mechanical arm.
mechanical arm;coordinate conversion;movement path
2017—01—15
萬(wàn)海鑫(1985-),男,安徽阜陽(yáng)市人,講師,主要從事3D打印方面研究.
安徽省教育廳高校領(lǐng)軍人才引進(jìn)與培育計(jì)劃項(xiàng)目(gxyqZD2016546);阜陽(yáng)職業(yè)技術(shù)學(xué)院校級(jí)立項(xiàng)(2016JXTD01)
TP241.2
A
1008-5688(2017)01-0081-03