(南華大學(xué) 機械工程學(xué)院,衡陽 421001)
隨著我國工業(yè)的迅猛發(fā)展,機器人的應(yīng)用越來越廣泛。在機器人的生產(chǎn)與使用中需要考慮機器人的最佳使用位姿以保證機器人的使用壽命與其工作的穩(wěn)定性[1],需要求出機器人的逆解,并選擇其最優(yōu)解。目前,逆運動學(xué)求解方法分為數(shù)值解法與封閉解法,數(shù)值解法能夠精確的求出逆解并且能運用于絕大多數(shù)的機器人,但是其運算量較大,函數(shù)構(gòu)造較復(fù)雜[2~5];本文研究的封閉解法在通用性上不如數(shù)值法,但其函數(shù)構(gòu)造簡便、計算方便快捷,對滿足pieper準則的機器人具有通用性。本文對PUMA560機器人建立正向運動數(shù)學(xué)模型,利用封閉解法求出其逆解。
PUMA560機器人D-H參數(shù)如表1所示。D-H參數(shù)法如圖1所示,ai-1為延xi-1,從zi-1移動到zi的距離;αi-1為繞xi-1,從zi-1旋轉(zhuǎn)到zi的角度;di為延zi-1,從xi-1移動到xi的距離;θi為繞zi-1,從xi-1旋轉(zhuǎn)到xi的角度。利用D-H參數(shù)進行連桿建模[6],廣義變換矩陣如式(1)所示:
表1 PUMA560機器人D-H參數(shù)
圖1 D-H參數(shù)表示法
式(1)中,R表示繞相應(yīng)的軸轉(zhuǎn)動θ或者αi-1角度,T表示沿對應(yīng)的軸移動ai-1或者d長度。
機器人位姿正解是求逆解的基礎(chǔ),通過正解的計算求出末端執(zhí)行器最后的位姿,并將該位姿參數(shù)作為輸入應(yīng)用到逆解計算中。構(gòu)造機器人正解參數(shù)模型,首先從機器人的固定基座開始為連桿進行編號,將固定基座記為連桿0,第一個可動連桿為連桿1,依此類推,機器人最末端的連桿為連桿n。機器人至少有6個關(guān)節(jié)對應(yīng)6個自由度。末端執(zhí)行器需要3個位置和3個方位的參數(shù)才能保證其在三維空間中達到任意位姿。利用D-H參數(shù)分步建立各連桿變換矩陣,再依次連接各個變換矩陣。
根據(jù)變化矩陣求得機器人正解為:
機器人的位姿逆解需要考慮三個方面因素[7,8]:
1)解的存在性
逆運動學(xué)的解是否存在取決于期望位姿是否在機器人的工作空間內(nèi)。
2)多解性問題
逆運動學(xué)解的個數(shù)取決于機器人的關(guān)節(jié)數(shù)量,也與連桿參數(shù)和關(guān)節(jié)運動范圍有關(guān),通常機器人的關(guān)節(jié)數(shù)量越多,連桿的非零參數(shù)越多,運動學(xué)的逆解的個數(shù)就越多。
3)逆運動學(xué)的求解方法
當今設(shè)計的絕大多數(shù)6自由度機器人都滿足pieper準則,即相鄰的三個關(guān)節(jié)軸線相交于一點,因此它們都有封閉解,本文采用代數(shù)的方法求得各個參數(shù)的解。
式(3)中,向矢量處于夾手進入物體的方向,稱為接近向量a;y方向矢量的方向從一個指尖指向另外一個指尖,稱為方向矢量o;最后一個矢量n,它與矢量o和a一起構(gòu)成一個右手矢量合集,矢量p描述坐標系的原點至于夾手指尖的中心所在位置。以上12個參數(shù)都是已知的。由式(3)得知等號左右兩邊對應(yīng)元素相等,得到如下方程:
式(7)表示等式左邊第二行第四列與右邊第二行第四列對應(yīng)相等,并采用三角代換式(8)、式(9)進行計算:
計算結(jié)果如下:
同理可得其余角度數(shù)值:
由于三角函數(shù)產(chǎn)生的正負號導(dǎo)致θ1與θ3分別都有兩個符號不同的解,因此其兩兩組合就能產(chǎn)生四組不同的解,其產(chǎn)生的解的組合如表2所示。
表2 機器人四組逆解
對于PUMA560機器人來說,由于本身結(jié)構(gòu)的性質(zhì)導(dǎo)致其到達某一位姿時有對稱解,因此到達某一位置除了上述四種逆解之外,通過機器人臂彎關(guān)節(jié)“翻轉(zhuǎn)”可以得到另外不同的四組解,如表3所示。
表3 機器人對稱四組逆解
利用MATLAB對上述解析式進行編程,輸入一組各關(guān)節(jié)的初始角度參數(shù),生成末端位姿參數(shù)[9~11],然后利用末端位姿參數(shù)反過來求逆解得到八組不同的解(在MATLAB平臺首先將角度值轉(zhuǎn)換為弧度值)。
初始狀態(tài)如表4所示。
表4 初始各關(guān)節(jié)角度參數(shù)
求出逆解如表5所示。
表5 逆解求解結(jié)果
通過上表數(shù)據(jù)可以看到第六組解與初始值接近,并且其余七組解在理論上也是滿足執(zhí)行器到達執(zhí)行位姿的解。此外,通過改變不同的初始位姿得到的逆解誤差都在允許范圍以內(nèi),滿足機器人求逆解的精確度要求。
通過實驗研究分析,在MATLAB平臺下進行的逆解運算能夠快速準確的得出機器人在理論上能夠?qū)崿F(xiàn)的八組位姿逆解,再根據(jù)實際情況進行取舍使得其滿足機器人運作平穩(wěn)、避障等相關(guān)條件的約束,具有重要的實際意義。