0% found this document useful (0 votes)
13 views12 pages

Hom Transf Matrix

The document discusses how to recover the location of moving objects using homogeneous transformation matrices. It describes using translation and rotation transformations to calculate the position of a point on a moving object. Rotation is broken down into roll, pitch, and yaw transformations around the x, y, and z axes respectively.

Uploaded by

Crazy Sanjai
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views12 pages

Hom Transf Matrix

The document discusses how to recover the location of moving objects using homogeneous transformation matrices. It describes using translation and rotation transformations to calculate the position of a point on a moving object. Rotation is broken down into roll, pitch, and yaw transformations around the x, y, and z axes respectively.

Uploaded by

Crazy Sanjai
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

HOMOGENEOUS TRANSFORMATION MATRICES

CARTESIAN COORDINATES

Corkscrew rule
z (right-hand rule) y
to define positive
directions of the
axes

y x

x z Cartesian coordinates
Cartesian coordinates used in computer
used in robotics graphics

Prof. Emil. M. Petriu


RECOVERING THE LOCATION OF MOVING OBJECTS: TRANSLATION
Using a reference frame N affixed to the object allows the calculation of the variable
location of the point Q on the moving object in a given reference frame R as the sum
z0 of two vectors, a constant one representing the location of Q relative to N and another
variable representing the location of N relative to R:
Rq = Rp + Nq

z1
Recovering the 3D location of a point on a moving object
Q in a given reference frame R. when the object suffers only
a translation movement relative to R..
R p* = R p + Rr
Nq
z1 R q* R Nq
= p* +
Rq y1 Q*
Rp R q* R q* R Nq
N = p+ + Rr
x1
Rr Nq
R
y0
R P*
x0 N* y1
x1

Prof. Emil. M. Petriu


RECOVERING THE LOCATION OF MOVING OBJECTS: ROTATION

Recovering the 3D location of a point on an object Vectors can not


R q* = ?
rotating in a given reference frame R. describe the rotation !

z0
z1 z0
Q z1

R q* = ? Q*
Nq

y1 Nq

Rp
x1
ROT N N*
Rp
x1
y0 y1
R
y0
x0
x0

Prof. Emil. M. Petriu


RECOVERING THE LOCATION OF MOVING OBJECT: ROTATION > continued

z0

z1
Q z
1
Rot( z, φ )
Q*
Nq
Rot( y, θ)
Nq y1y1
x N
R p1
ROT N
N*
xR1 p
x1 Rot( x, ψ ) y1
R
y0
x0

Prof. Emil. M. Petriu


RECOVERING THE LOCATION OF MOVING OBJECT: ROTATION > continued

The general rotation of an object in 3D


z0 can be conveniently decomposed into a
sequence of three elementary rotations
about the axes of the Cartesian reference
frame attached to that object, namely:
z1 Rot( z, φ ) a rotation about z-axis, “roll,”
by an angle φ ;
Q Rot( y, θ) a rotation about y-axis, “pitch,”
Rot( z, φ ) by an angle θ ;
Rot( x, ψ ) a rotation about x-axis, “yaw,”
by an angle ψ .
Nq
Rot( y, θ)
N y1y1
Rp
ROT N
x1
x1 Rot( x, ψ )
R
y0
x0

Prof. Emil. M. Petriu


RECOVERING THE LOCATION OF MOVING OBJECT: ROTATION > continued

z0
The general rotation in 3D is often known as the
RPY rotation , a name reminding of the Roll,
Pitch, and Yaw components.
z1
Q z
1
Rot( z, φ )
Q*
Nq
Rot( y, θ)
Nq y1y1
x N
R p1
RPY
ROT N
N*
xR1 p
x1 Rot( x, ψ ) y1
R
y0
x0

Prof. Emil. M. Petriu


RECOVERING THE LOCATION OF MOVING OBJECT: ROTATION >> continued

z z

Rot( z, φ )
Roll z*
Q
Q* y*

Nq

y y

N N
Rot( y, θ)
Pitch x*
Rot( x, ψ )
x x
Yaw

Prof. Emil. M. Petriu


RECOVERING THE LOCATION OF MOVING OBJECTS: Roll, Rot( z, φ )

z z

Rot( z, φ )
Roll
z Q (x,y,z) z’ = z
Q* (x’,y’,z’)

y*
y φ
N y y’ y
x x’

x x x*

Prof. Emil. M. Petriu


RECOVERING THE LOCATION OF MOVING OBJECTS: Rot( z, φ ) > continued

y* y’ = d . sin(α+ φ)
y’ = d . sin(α) . cos(φ) + d . sin(φ) . cos(α)
φ
y y’ x = d . cos(α)
y y = d . sin(α)

y’ = y . cos(φ) + x . sin(φ)
d
d
α
Q* (x’,y’) In a similar way we get:
α
x
Q (x,y) x’ = x . cos(φ) − y . sin(φ)

φ
x*
x x’ cos(φ) − sin(φ) x
=
y’ sin(φ) cos(φ) y

Prof. Emil. M. Petriu


3D HOMOGENEOUS TRANSFORMATION MATRICES FOR ROBOTICS

Homogeneous transformation 3-by-3 3-by-1


matrices are general 4-by-4 rotation translation
matrices accounting for both T = sub-matrix sub-matrix
object translation and object
rotation in 3D. 0 0 0 1

The homogeneous
transformations matrix 1 0 0 px
for a general Trans (px, py, pz) = 0 1 0 py
3D translation 0 0 1 pz
by a vector 0 0 0 1
px . i + py . j + pz . k is:

Prof. Emil. M. Petriu


The homogeneous transformations matrices for 3D rotations about the x, y, and z axes:

z 1 0 0 0
0 cos (ψ) -sin (ψ) 0
Rot( x, ψ ) = 0 sin (ψ) cos (ψ) 0
Rot( z, φ )
0 0 0 1
Roll
Q (x,y,z)
cos (θ) 0 sin (θ) 0
0 1 0 0
Rot( y, θ ) = -sin (θ) 0 cos (θ) 0
0 0 0 1
y

N
Rot( y, θ)
cos (φ) -sin (φ) 0 0
Pitch sin (φ) cos (φ) 0 0
Rot( z, φ ) = 0 0 1 0
Rot( x, ψ )
x 0 0 0 1
Yaw

Prof. Emil. M. Petriu


Homogeneous transformation matrices allow to calculate the final
effect of a sequence of object transforms (translations and/or rotations) by
multiplying the homogeneous matrices corresponding to these transforms.

l2 l3

θ3
θ2
l1 { x 3 , y3 , z 3 }
θ1

Prof. Emil. M. Petriu

You might also like