2015-06-23 21 views
2

我學導論機器人,發現有不同的方程式使用DH參數變換矩陣來確定機器人的末端執行器的位置和方向,它們是:機器人:用於DH齊次變換矩陣參數

1.

Translate by d_i along the z_i-axis. 
Rotate counterclockwise by theta_i about the z_i-axis. 
Translate by a_{i-1} along the x_{i-1}-axis. 
Rotate counterclockwise by alpha_{i-1} about the x_{i-1}-axis. 

2.

Rotate by theta_i about the Z_i-axis. 
Translate by d_i along the z_i-axis. 
Translate by a_(i-1) along the x(i-1)-axis. 
Rotate by alpha_(i-1)along the x(i-1)-axis. 

3.

Rotate by alpha_(i-1)along the x(i-1)-axis. 
Translate by a_(i-1)along the x(i-1)-axis. 
Rotate by theta_i about the Z_i-axis. 
Translate by d_i about the Z_i-axis. 

他們之間有什麼區別?結果會不一樣嗎? 計算位置和方向時應使用哪一個?

+0

也許這會更好的問在robotics.stackexchange.com,這裏似乎沒有編程問題。 – missimer

回答

0

據我所知,沒有區別。他們都應該給你相同的最終結果,但要保持一致。選擇一種形式並堅持下去。

當您嘗試顛倒過程時,主要問題出現。使用method 1從時間tt+1是好的,但如果你想從t+1t你需要使用method 1。使用另一種方法進行變換(雖然它應該在技術上起作用)通常不會因爲建模和旋轉誤差(cos和sin項)的非線性。

雖然這並不令人驚訝,但是從本地參考(相對於機器人)轉到全局參考時遇到同樣的問題。翻譯和旋轉的順序必須保持正向和反向的轉換