機械人 基於指數積的機械臂正運動學演算法

2021-10-23 15:57:28 字數 2181 閱讀 5135

在學習了剛體運動的指數座標表示和運動旋量後,我又對使用指數積法(poe)對機械臂進行正運動學建模,相比於dh引數法,感覺poe還是非常簡單直接的,在此對我的學習進行總結,如有錯誤歡迎指出。

在使用poe建立正運動學模型時,我們需要獲得以下引數:

這裡的例項採用《現代機械人學》這本書中的例子,選擇了乙個3dof的例子進行講解,其餘自由度以及平移關節推導過程類似。

首先,寫出初始狀態下的末端執行器位姿為

m =[

001l

1010

0−10

0−l2

0001

]m= \left[ \begin 0 & 0 & 1 & l_1 \\ 0 & 1 & 0 & 0 \\ -1 & 0 & 0 & -l_2\\ 0 & 0 & 0 & 1 \end \right]

m=⎣⎢⎢⎡

​00−

10​0

100​

1000

​l1​

0−l2

​1​⎦

⎥⎥⎤​

然後,寫出每個關節的運動旋量。首先是角速度部分,因為採用的是單位角速度∣∣ω

∣∣=1

\left|| \omega \right||=1

∣∣ω∣∣=

1,故角速度部分也就是旋轉軸相對於慣性系的表達,注:只取方向表達,不用考慮旋轉軸位移

ω 1=

(0,0

,1)ω

2=(0

,−1,

0)ω3

=(1,

0,0)

\omega_1=(0,0,1) \\\omega_2=(0,-1,0) \\\omega_3=(1,0,0)

ω1​=(0

,0,1

)ω2​

=(0,

−1,0

)ω3​

=(1,

0,0)

接著,寫出線速度部分,該線速度指的是剛體繞關節軸旋轉時,慣性系的原點在該旋轉中的線速度,故需要選擇一條從旋轉軸到原點的矢徑,該矢徑在慣性系中的表達為q

qq,但當其代入線速度計算時,需要反向,因為是從旋轉軸指向原點,即

v =−

ω×qv=-\omega\times q

v=−ω×q

根據旋轉軸是條直線,可以無限延長來合適的選擇旋轉軸上的點,可以簡化該計算,本例中選擇qqq為

q 1=

(0,0

,0)q

2=(l

1,0,

0)q3

=(0,

0,−l

2)q_1=(0,0,0) \\q_2=(l_1,0,0) \\q_3=(0,0,-l_2)

q1​=(0

,0,0

)q2​

=(l1

​,0,

0)q3

​=(0

,0,−

l2​)

因此計算得到原點因各個關節旋轉而獲得的線速度為

v 1=

(0,0

,0)v

2=(0

,0,−

l1)v

3=(0

,−l2

,0)v_1=(0,0,0) \\v_2=(0,0,-l_1) \\v_3=(0,-l_2,0)

v1​=(0

,0,0

)v2​

=(0,

0,−l

1​)v

3​=(

0,−l

2​,0

)在引數個數上,dh占有優勢,僅用4n個引數即可描述機械臂,而poe則需要6n個引數來表達運動旋量,還有n個關節角引數,共計7n個。

但是poe在建模時更加方便直觀,對於旋轉和移動關節都能夠很好的進行表達。

dh引數座標系的建立還依賴於兩個關節軸的公法線,當相鄰的兩關節軸平行的時候,建立了乙個理論上的座標系,但是因為製造等誤差,讓一組關節軸偏離了精確平行或相交於一點的位置時,所建立的座標系即為錯誤的,這將對進行dh引數的精確測量和辨識增加困難。而poe則因沒有關節座標系而可以更加方便的進行引數辨識等。

UR機械人裝箱姿態 UR機械臂運動學正逆解方法

最近幾個月因為工作接觸到了機械臂的專案,突然對機械臂運動方法產生了興趣,也就是如何控制機械臂的位置和姿態。借用一張網上的,應該是ur5的尺寸。我用到的是ur3機械臂,除了尺寸不一樣,各關節結構和初始位置和ur5是一樣的。轉動關節 i是關節變數,連桿偏移di是常數。關節編號 繞x軸 a 沿x軸 繞z軸...

昌邑機械人 搬運機械臂昌邑機械人定製生產

搬運機械臂昌邑機械人定製生產 碼垛機在使用的中,難免會遇到一些故障,相對而言,比較常見到的是碼垛機無常前進 後退。1.限位開關失效或限位開關線路有故障。用萬用表電阻檔測相應的限位開關是否損壞及限位開關的相應線路 2.撥動開關損壞或控制線路斷開,用萬用表檢查撥動開關或控制線路。3.檢查小型繼電器或繼電...

機械人的運動範圍

題目 地上有乙個m行和n列的方格。乙個機械人從座標0,0的格仔開始移動,每一次只能向左,右,上,下四個方向移動一格,但是不能進入行座標和列座標的數字之和大於k的格仔。例如,當k為18時,機械人能夠進入方格 35,37 因為3 5 3 7 18。但是,它不能進入方格 35,38 因為3 5 3 8 1...