# Euler Angles - Why postmultiply

#### Have a question or want to show off your project? Post it! No Registration Necessary.  Now with pictures!

•  Subject
• Author
• Posted on
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.

Re: Euler Angles - Why postmultiply
Phiby wrote:

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