我在Python http://code.google.com/p/robotics-toolbox-python/的機器人學工具箱(cq機器人模塊)中使用,我完全困惑如何解釋下面的轉換結果(我做過這樣的事情在過去總是可以解決......)。Python(機器人模塊):轉換。 (旋轉)矩陣和歐拉角或RPY角
一個簡單的披= PI/10繞x軸的旋轉產生以下(3×3)的旋轉矩陣:
R =
[ 1. 0. 0. ]
[ 0. 0.99609879 -0.08824514]
[-0. 0.08824514 0.99609879]]
(其中0.996 .. = COS(PHI)和0.0882 .. = SIN( PHI))
與相應的(4×4)齊次變換矩陣:
T = | R 0 | =
| 0 1 |
[[ 1. 0. 0. 0. ]
[ 0. 0.99609879 -0.08824514 0. ]
[-0. 0.08824514 0.99609879 0. ]
[ 0. 0. 0. 1. ]]
轉化的T成角度表示產生以下:
RPY(滾動,俯仰,偏航)角(圍繞Z,Y軸和x軸,分別,...我推測):
print robot.tr2rpy(T)
[[ 0. 0. 0.08836007]]
問題:在x旋轉如何可以是最後一個元素(而不是第一個)....?
此外:
歐拉角(圍繞x,y和z軸,分別,...我推測):
print robot.tr2eul(T)
[[-1.57079633 0.08836007 1.57079633]]
(= [[-PI/4, sin(phi),PI/4]]))
問題:我的解釋(繞x,y,z軸的順序旋轉)告訴我結果是錯的......?
我錯過了什麼?謝謝。
- 亨克