国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

工業(yè)機器人工作空間求解及逆運動學唯一解的確定*

2019-09-18 08:12:10劉曰濤沈寶民楊正嬌
組合機床與自動化加工技術 2019年9期
關鍵詞:運動學姿態(tài)方向

劉曰濤,沈寶民,楊 林,楊正嬌

(山東理工大學 機械工程學院,山東 淄博 255000)

0 引言

機器人的工作空間定義為,不同關節(jié)運動所達到的末端執(zhí)行器的所有位置的集合,該集合稱為可達工作空間[1]。機器人的工作空間是研究設計機器人以及機器人應用過程中需要考慮的一個重要的問題。

目前用于研究機器人工作空間的算法主要有:幾何繪圖法、解析法以及數(shù)值法[2-10],以上三種算法各有其優(yōu)勢。但是通過對現(xiàn)有機器人工作空間的求解算法對比研究發(fā)現(xiàn),現(xiàn)有的關于機器人工作空間的算法大多太過于復雜,雖具有一定的研究意義,但實用性不強。本文基于MATLAB依據(jù)機器人工作空間的最基本算法對機器人結構進行簡化,得出機器人工作空間的曲線圖,與繪圖法得出的機器人工作空間一致,由此證明了本算法的可行性。

同時本文還對機器人逆運動學進行了計算和分析,并確定了機器人逆運動學唯一解。機器人逆運動學就是通過已知機器人末端的位置及姿態(tài),計算所對應的全部關節(jié)的變量,機器人逆運動學是機器人運動規(guī)劃和軌跡控制的基礎[11]。對于機器人逆運動學解的計算方法有很多,包括Paul提出的反變換法[12],Lee和Ziegler的幾何法[13],Pieper的方法[14]等。機器人正向運動學是給定各個關節(jié)變量之后,機器人末端位置和姿態(tài)是唯一確定的,而逆運動學一般具有多重解或無解,因此當出現(xiàn)多重解的情況下對于唯一解的確定就尤為重要。

本文采用的是比較普遍的反變換法求解,之后再通過篩選和條件限制確定唯一解。

1 機器人工作空間的計算

1.1 工作空間計算過程

本文以普通的6軸串聯(lián)機器人為研究對象,機器人各個關節(jié)對其末端的位置和姿態(tài)的作用不同,前3個軸主要是實現(xiàn)末端的位置要求,被稱為位置結構;后3個軸主要是實現(xiàn)末端姿態(tài)的要求,被稱為姿態(tài)結構;機器人的工作空間的大小主要受位置結構的影響[15]。機器人工作空間設計時也是以第1、第2、第3軸及其所對應的臂長進行設計。對機器人工作空間計算時只需考慮機器人的前3個軸即可,為了提高機器人工作空間的直觀性,甚至可以只計算機器人的第2、第3軸及其所對應的臂長,這樣可以大大減小機器人工作空間的計算量提升機器人工作空間的求解速度。

本文所研究的6自由度工業(yè)機器人結構簡圖如圖1所示。

圖1 機器人結構簡圖

根據(jù)D-H算法給每一個關節(jié)賦予一個坐標建立參數(shù)表,如表1所示。

表1 D-H參數(shù)表

依據(jù)表1建立機器人D-H算法的齊次變換矩陣為:

(1)

(2)

式中,Ci代表cosθi,Si代表sinθi。

式(1)、式(2)是以坐標系前置根據(jù)機器人參數(shù)建立的6自由度工業(yè)機器人數(shù)學模型,本文工作空間的計算主要是依靠坐標系后置所建立的數(shù)學模型進行計算分析。

由于本文求解的機器人工作空間是其剖截面圖,即不考慮第一軸;在對機器人可達工作空間進行分析時不考慮第4、5、6軸姿態(tài)的條件,所以最終只考慮第2軸和第3軸及其所對應的大臂及小臂4個條件因素。

3T2=A2×A3=

(3)

Px=a3(C2C3﹣S2S3)﹢a2C2

(4)

Py=a3(S2C3﹢C2S3)﹢a2S2

(5)

Pz=0

(6)

因為本文只考慮了2軸和3軸,所以得出的是機器人工作空間的剖截面,故Pz=0。

根據(jù)機器人的結構特點和運動特性,存在如下條件約束:

(1)各驅動副轉角范圍。由于受到機器人機械臂上各零部件的影響和限制,機器人的大部分關節(jié)都有自己的轉動范圍,很難實現(xiàn)全周轉動。通過了解現(xiàn)有的6自由度機器人確定第2第3軸的轉角范圍如表2所示。

(2)臂長。機器人的臂長越長其工作空間越大,但是為了適應不同的工作環(huán)境,需要設計不同臂長的機器人。

表2 機器人第2、3軸的轉角范圍

1.2 工作空間仿真與分析

用上述方法求(Px,Py)關于關節(jié)轉角在φ2、φ3轉動范圍內(nèi)所有點的集合,得到的仿真結果如圖2所示。

圖2 基于MATLAB生成的機器人工作空間圖

圖2是用本算法基于MATLAB生成的機器人工作空間圖,圖3是KUKA官方給出的機器人工作空間圖。為了使本算法生成的工作空間圖更具參考性和實用性,其參數(shù)和圖3所示的機器人工作空間參數(shù)相同,是實驗室現(xiàn)有的一臺KUKA KR16型號機器人的參數(shù)。通過MATLAB生成的機器人工作空間圖在X軸方向的尺寸為2636.3mm,在Y軸方向的尺寸為2406.6mm;而庫卡官方給出的機器人工作空間圖在X軸方向的尺寸為2638mm,在Y軸方向的尺寸為2412mm,兩者在X軸方向上相差1.7mm,在Y軸方向上相差5.4mm,因為在對工作空間具體計算時,具體的參數(shù)和KUKA內(nèi)部的參數(shù)存在一定的誤差,并且KUKA官方承認所給的工作空間參考圖外觀尺寸并不是一個精確尺寸,由此可以確定通過此方法得出的機器人工作空間圖和繪圖法得出的機器人工作空間的剖截面圖基本相同。同時證明了本算法對于機器人工作空間的計算以及描述具有重要參考意義。

圖3 KUKA給出的機器人工作空間圖

2 機器人逆運動學解

2.1 機器人逆運動學解的計算

機器人逆運動學解對于機器人的重要性不言而喻,只有能夠計算出機器人逆運動學解才能確定機器人每個軸對應的角度,進而使機器人到達期望的位置及姿態(tài)。對于機器人逆運動學解已經(jīng)有比較成熟的算法,對于多個逆運動學解中唯一解的確定很少有文獻給出明確的方法,本文提供一種對于6自由度工業(yè)機器人唯一解確定的方法。

首先,需要確定機器人的結構,根據(jù)機器人的結構按照D-H算法建立數(shù)學模型。為了便于后期的分析對比,同時也使得所建立的模型更加接近實際,本文按照實驗室里一臺現(xiàn)有的KUKA KR60-3型號的機器人建立數(shù)學模型。

表3 機器人參數(shù)

本文數(shù)學模型的建立和式(1)數(shù)學模型的建立不同,為了對機器人逆運動學解的計算更加簡便而采用了坐標系前置,于是有:

(12)

A=A1×A2×A3×A4×A5×A6

(13)

(14)

對于機器人逆運動學求解,根據(jù)式(13)進行計算,因為式(13)左側矩陣各元素已知,即式(14)矩陣A中所有元素是已知的,而右側的6個矩陣未知,Paul等人在進行反變換計算時是用未知的逆變換依次左乘式(13)的矩陣方程,把關節(jié)變量分離出來,然后求解未知變量[11]。

對于具體的機器人逆運動學解的過程這里不再詳細描述,只介紹一下求逆解的步驟及結果:

(1)求解第一軸的反解。

用A1的逆矩陣左乘式(13),經(jīng)過整理以及三角代換后可得出θ1。

(15)

由于公式里存在正負號,所以一軸有兩個解。

(2)求解第3軸的反解。

直接求解θ2因為參數(shù)不夠無法直接求出,所以先求解θ3(求解θ3的參數(shù)是足夠的,可以直接求出),之后求解θ23即θ2+θ3的和,然后減θ3,最后得出θ2的具體解。

(16)

其中,

(17)

同樣三軸也有兩個解。

(3)求解第二軸的反解。

如上所述,這里首先求解θ23,然后減θ3,最后得出θ2的具體解。

θ23=θ2+θ3=atan2[-(a3+a2c3)pz+(c1px+s1py)
(a2s3-d4),(-d4+a2s3)pz+(c1px+s1py)(a2c3+a3)]

(18)

θ2=θ23-θ3

(19)

因為θ1和θ3各有兩個解,有4種可能的組合,所以可以得到θ2的4種可能的解。

(4)求解第4軸的反解,在5軸角度不為0的前提下可解出4軸的唯一解(當五軸為0時即為奇異形位)。

通過上面對式(13)的依次左乘,θ4可以通過被左乘整理后的式(13)左右兩側參數(shù)的對應直接求出。

θ4=atan2(-axs1+ayc1,-axc1c23-ayc1c23+azs23)

(20)

(5)求解5軸的反解

θ5=atan2(s5,c5)

(21)

(6)求解6軸的反解

θ6=atan2(s6,c6)

(22)

在求解第4、5、6軸的反解時,第5軸在取得唯一解的同時也可取當前解的負數(shù)解,而同時第4軸和第6軸在當前解的前提下可以加180°,可取得相同姿態(tài),所以一共有8個解。同時如果第4軸和第6軸的轉動范圍可達到將近±360°,則在最終姿態(tài)解上會更多,但是這并不意味著6自由度工業(yè)機器人的解已經(jīng)超過了8個,而是多余的解是在我們限定的周期以外。

此時一個6軸工業(yè)機器人的6個軸的解已經(jīng)全部計算完成,并且已經(jīng)確定共有8個解,下一步需要對這8個解進行篩選以確定唯一解。

2.2 唯一解的確定

確定了機器人所有解以后,通過確定空間內(nèi)兩個不同點,即機器人從位置1到達位置2。本文可以對比大部分機器人在執(zhí)行所有的程序之前為什么必須確定Home點,因為Home點是所有程序開始執(zhí)行的第一個位置,也就確定了最原始位置的唯一解。為了對原理理解的更加簡單清晰,這里假設Home點即為位置1,由此確定了位置1的唯一解。

對位置2求反解,前面已經(jīng)確定位置2會有8個解,但是這8個解中首先可以排除4個解,即第一軸中在確定一個解以后,第二個解是首先確定的解加180°(只有當關節(jié)偏移為0時才是180°)。剩余的4個解可以繼續(xù)排除2個,即通過第2軸和第3軸轉動范圍進行排除,因為機器人受機械的限制不可能每個軸都可以旋轉360°,由此可以排除第2、3軸中轉動角度較大的解。

最終只剩下兩個解,而這兩個解是第5軸取正負所取得第4軸和第6軸同原解相差180°的兩組不同的解,由于之前確定了位置一的唯一解,由此判斷在運動過程中使得第6軸轉動最小的解即為最優(yōu)解,由此確定了6自由度工業(yè)機器人逆運動學的唯一解(選擇第6軸轉動最小是因為考慮結合實際情況,當機器人末端到達下一個位置姿態(tài)時,使得機器人末端的動作盡量的小)。

以上所有分析均為機器人工作位置二不在奇異形位,第4和第6軸未超出其轉動范圍的前提下。當?shù)?軸和第6軸有一個軸超出其轉動范圍時,可以選擇使第5軸取原解的負數(shù),同時判斷第4軸和第6軸是正向超出其轉動范圍還是負向超出其轉動范圍,由此選擇在原來的基礎上加或者減180°。

本文按照實驗室現(xiàn)有的一臺KUKA KR60-3型號的機器人參數(shù)建立模型,以便于能夠和現(xiàn)實情況進行對比,即a1=350mm、a2=850mm、a3=145mm、d2=0(指的是二軸的關節(jié)偏移和三軸的關節(jié)偏移總和為0)、d4=820mm。本算法通過MATLAB仿真和KUKA實際運動走相同的一段路徑,通過KUKA研發(fā)的一款名為mxAutomation軟件對KUKA所經(jīng)過的路徑的點進行記錄,之后同樣通過MATLAB生成路徑曲線。

圖5是通過本算法對機器人行走的一段路徑的仿真曲線和通過記錄KUKA行走的一段路徑的點之后仿真出的路徑曲線,兩者起點和終點坐標完全相同。

(a) 沿Y軸方向MATLAB仿真圖

(b) 沿Y軸方向KUKA實際路徑圖

(c) Y軸方向下仿真與實際路徑對比圖

(d) 沿X軸方向MATLAB仿真圖

(e) 沿X軸方向KUKA實際路徑圖

(f) Y軸方向下仿真與實際路徑對比圖

(g) 沿斜線方向MATLAB仿真圖

(h) 沿斜線方向KUKA實際路徑圖

(i) 沿斜線方向仿真與實際路徑對比圖 圖4 MATLAB仿真路徑及KUKA仿真路徑

圖4中的9幅圖分別進行分析比較:

(1) 圖4a、圖4b是沿Y軸方向坐標為(1.17,0,0.995)、(1.17,-0.5,0.995)。圖4a是本算法通過MATLAB仿真生成的路徑圖;圖4b是MATLAB記錄的KUKA實際路徑的仿真圖;圖4c是將兩者的路徑放到一起后進行的對比。由圖4b可以看出KUKA機器人在沿Y軸移動的時候存在一定的抖動,路徑并沒有MATLAB仿真出的理論路徑圓滑,同時也可以由圖4c看出,兩者基本重合。

(2) 圖4d、圖4e是沿X軸方向,坐標為(1.17,0,0.995)、(1.57,0,0.995)。圖4d是本算法通過MATLAB仿真生成的路徑圖;圖4e是MATLAB記錄的KUKA實際路徑的仿真圖;圖4f是把兩者的路徑放到一起進行對比。由圖4f可以看出對比,可以看出兩者幾乎沒有區(qū)別。

(3) 圖4g、圖4h是沿一條斜線坐標為(1.17,0,0.995)、(1.27,-0.5,1.095)。圖4g是本算法通過MATLAB仿真生成的路徑圖;圖4h是MATLAB記錄的KUKA實際路徑的仿真圖;同樣圖4i也是將兩者路徑放到一起進行對比,可以看出兩者基本完全重合。

三種情況下姿態(tài)均保持不變,本算法是在笛卡爾坐標系下點到點的運動計算,KUKA也是在其工具坐標下執(zhí)行的PTP(點到點)的命令。通過對比可以確定兩者路徑相同,在執(zhí)行點到點的命令時都不是一條直線而是一段弧線。由此可以確定本算法對于機器人唯一解的確定具有重要的參考價值。

3 結論

普通6自由度工業(yè)機器人工作空間計算看似計算非常復雜,實際通過模型簡化基于MATLAB進行計算,可以生成和繪圖法相同的工作空間剖截面圖,為機器人工作空間的計算以及選型時需要反復的確定機器人工作空間帶來較大的便利。

通過對機器人運動學反解的計算得出最終的8種解,并對得出的8種解結合KUKA機器人程序的編寫以及運動進行分析和篩選,最終確定了機器人逆運動學解的唯一解,并且通過和KUKA機器人在相同參數(shù)下運動情況的對比,證明了本算法的可行性。

猜你喜歡
運動學姿態(tài)方向
2022年組稿方向
計算機應用(2022年2期)2022-03-01 12:33:42
2021年組稿方向
計算機應用(2021年4期)2021-04-20 14:06:36
2021年組稿方向
計算機應用(2021年1期)2021-01-21 03:22:38
攀爬的姿態(tài)
學生天地(2020年3期)2020-08-25 09:04:16
基于MATLAB的6R機器人逆運動學求解分析
基于D-H法的5-DOF串并聯(lián)機床運動學分析
全新一代宋的新姿態(tài)
汽車觀察(2018年9期)2018-10-23 05:46:40
跑與走的姿態(tài)
中國自行車(2018年8期)2018-09-26 06:53:44
基于運動學原理的LBI解模糊算法
位置與方向
达孜县| 桑日县| 赣榆县| 麟游县| 桐柏县| 济源市| 灵宝市| 涿州市| 前郭尔| 麟游县| 巴彦县| 界首市| 西华县| 柘城县| 烟台市| 辰溪县| 望奎县| 海淀区| 岳普湖县| 沙田区| 凤庆县| 尖扎县| 荆州市| 根河市| 修文县| 高密市| 裕民县| 郴州市| 同仁县| 天津市| 罗定市| 开原市| 汉川市| 普兰县| 深水埗区| 西盟| 沛县| 龙井市| 铁力市| 银川市| 若尔盖县|