# Euler Angles - Why postmultiply

• posted
In Industrial Robotics, you have a co-ordinate frame which is at the
base & another which is at the next joint. You want to describe the
position and orientation of the 2nd frame with respect to the first in
terms of position and orientation. For the position, you use a
translation matrix.
The orientation is described by a rotation matrix which rotates the 2nd
frame from it's coincident position with the first frame and brings it
to it's final position.
Let the 1st frame have axis X, Y, Z
Let 2nd frame have axis x, y, z
To describe frame 2 in terms or frame 1, you start with both frames very
fully coincident at the beginning (i.e. even in orientation).
Then you have 2 methods. (You have many methods, actually)
1) Fixed Axis angles.
Then
- you rotate frame 2 by t1 about X - Rx(t1)
- you rotate frame 2 by t2 about Y - Ry(t2)
- you rotate frame 2 by t3 about Z - Rz(t2)
So new orientation of frame 2 is given by
Rz(t3) * Ry(t2) * Rx(t1)
(Obviously, you pre-multiply the 1st matrix by the 2nd. And the
premultiply the result with the 3rd matrix)
2) Euler Angles
2nd way of describing it is by Euler angles - i.e. you rotate the 2nd
frame about one of it's own axis (x or y or z), instead of (X, Y or Z)
- rotate frame 2 by t3 about x - (y becomes y' & z becomes z')
- rotate frame 2 by t2 about y' - (x becomes x' & z becomes z'')
- rotate frame 2 by t1 about z" - (x' becomes x'' & y becomes y")
Now this transform is described again by
Rz(t3) * Ry(t2) * Rx(t1)
I want to know how is this 2nd transform derived?
I know how the first one is derived because I know how to find the
rotation matrix for rotating a point about about a fixed axis. And I
know that if you are working with column vectors (for the point), you
premultiply the 1st rotation matrix by the 2nd rotation matrix.
However, I am not able to grok how you write the transformation matrices
for the 2nd case.
• posted
is at the
describe the
the first in
a
rotates the 2nd
brings it
frames very
orientation).
the
rotate the 2nd
(X, Y or Z)
z')
z'')
becomes y")
find the
axis. And I
point), you
matrix.
transformation matrices
You have it, just multiply the 3 rotation matrices together, but it has to be in the correct order. In robotics, we often use pitch-yaw-roll Euler sequences, while pilots often use yaw-pitch-roll (although they will sometimes call it heading- elevation-banking). An Euler sequence is like a procedure, it can't be treated like a vector. And part of that procedure is whether you're moving from the target to the base, or the base to target with your rotation sequences. But once you've got that agreed to, you set up the rotation matrices accordingly and multiply to get the final rotation matrix from frame1 to frame2.
Mike Ross

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.