You are on page 1of 32

Homogeneous Transformation

Representation Chapter 2
of a Point in
RobotSpace
Kinematics: Position Analysis

A point P in space :
3 coordinates relative to a reference frame

^ ^ ^
P  a x i  by j  c z k

Fig. 1 Representation of a point in space


Representation of
Chapter 2
a Vector in
Robot Space
Kinematics: Position Analysis

A Vector P in space :
3 coordinates of its tail and of its head

__ ^ ^ ^
P  a x i  by j  c z k
 x
__  y
P 
z
 
 w
Fig. 2 Representation of a vector in space
Representation of a Frame at the Ori-
Chapter 2
gin of a Fixed-Reference Frame
Robot Kinematics: Position Analysis

Each Unit Vector is mutually perpendicular. :


normal, orientation, approach vector

 nx ox a x 
F  n y o y a y 
 nz oz a z 

Fig. 3 Representation of a frame at the origin of the reference frame


Representation of
Chapter 2
a Frame in a
Fixed Reference
Robot Kinematics: PositionFrame
Analysis

Each Unit Vector is mutually perpendicular. :


normal, orientation, approach vector

The
same as
last slide

 nx ox ax Px 
n oy ay Py 
y
F 
 nz oz az Pz 
 
0 0 0 1

Fig. 4 Representation of a frame in a frame


Homogeneous Coordinates
• Homogeneous coordinates: embed 3D
vectors into 4D by adding a “1”
• More generally, the transformation matrix
T has the form:
 Rot. Matrix Trans. Vector 
T  
 Perspect. Trans. Scaling Factor 
a11 a12 a13 b1
a21 a22 a23 b2
a31 a32 a33 b3
c1 c2 c3 sf
Chapter
Representation of a 2Rigid Body
Robot Kinematics: Position Analysis

An object can be represented in space by attaching a frame


to it and representing the frame in space.

 nx ox ax Px 
n oy ay Py 
y
Fobject  
 nz oz az Pz 
 
0 0 0 1

Fig. 5 Representation of an object in space


HOMOGENEOUS
Chapter 2
TRANSFORMATION MATRICES
Robot Kinematics: Position Analysis

A transformation matrices must be in square form.


• It is much easier to calculate the inverse of square matri-
ces.

• To multiply two matrices, their dimensions must match.

 nx ox ax Px 
n oy ay Py 
y
F 
 nz oz az Pz 
 
0 0 0 1
Representation of
Transformations of
rigid objects
in 3D space
RepresentationChapter 2
of a Pure
Translation
Robot Kinematics: Position Analysis

A transformation is defined as making a movement in space.


• A pure translation.
• A pure rotation about an axis.
• A combination of translation or rotations.

Same
value a
identity

1 0 0 dx 
0 1 0 d y 
T 
0 0 1 dz 
 
0 0 0 1
Fig. 6 Representation of an pure translation in space
Basic Rotation Matrix
– Rotation about x-axis with
1 0 0  z
w
Rot ( x, )  0 C  S  P v
0 S C 
 px   pu  
 p   R ( x,  )  p  u
y
 y  v x
 p z   pw 
p x  pu
p y  pv cos   pw sin 
p z  pv sin   pw cos 
Basic Rotation Matrices

– Rotation about x-axis with 


1 0 0 
Rx ,  Rot ( x, )  0 C  S 
0 S C 

– Rotation about y-axis with
 C 0 S 
R y ,  Rot ( y,  )   0 1 0 
 S 0 C 


– Rotation about z-axis with C  S 0
Rz ,  Rot ( z ,  )   S C 0
Pxyz  RPuvw  0 0 1
Properties of Rotation Matrix

Orthogonality property
Find the missing elements in F.

 0.433 b 0.75 2 
 0.25 0.866 c 4 
F  
 a 0 0.5 5 
 
 0 0 0 1 
Inverse of the transformation matrix
 nx ox ax Px 
n oy ay Py 
T  y
 nz oz az Pz 
 
0 0 0 1

 nx ny nz  P.n   nx ny nz ( Px nx  Py n y  Pz nz ) 
  
1  ox oy oz  P.o   ox oy oz ( Px ox  Py o y  Pz oz ) 
T  
 ax ay az  P. a   ax ay az ( Px ax  Py a y  Pz az ) 
   
 0 0 0 1   0 0 0 1 
2. Calculate the inverse of the following
transformation matrix.

 0.5 0 0.866 3 
0.866 0 0.5 2 
T 
 0 1 0 5
 
 0 0 0 1

 0.5 0.866 0 (3*0.5  2*0.866  5*0) 


 0 0 1  (3*0  2*0  5*1) 
T 1  
0.866 0.5 0 (3*0.866  2*( 0.5)  5*0) 
 
 0 0 0 1 

 0.5 0.866 0 3.232 


 0 0 1  5 
T 1  
0.866 0.5 0 1.5998 
 
 0 0 0 1 
• A point Puvw=(4,3,2)T is attached to a frame (n,o,a). The frame
rotates 60 degree about the Z axis of the reference frame. Find
the coordinates of the point relative to the reference frame after
the rotation.

p xyz  Rot ( z ,60) puvw


 0.5  0.866 0 4  0.598
 0.866 0.5 0 3   4.964 
 0 0 1 2  2 
The following frame F has been moved nine units along the
x-axis and five units long the z-axis of the reference frame.
Fin the new location of the frame.
 0.527 0.574 0.628 5 
 0.369 0.819 0.439 3
F 
 0.766 0 0.643 8 
 
 0 0 0 1

1 0 0 9
0
1 0 0 
T 
Transformation matrix 0 0 1 5
 
0 0 0 1

Fnew=T.Fold
1 0 0 9   0.527 0.574 0.628 5  0.527 0.574 0.628 14 
0 1 0 0   0.369 0.819 0.439 3  0.369 0.819 0.439 3 
Fnew  
0 0 1 5   0.766 0 0.643 8  0.766 0 0.643 13
    
0 0 0 1  0 0 0 1  0 0 0 1
1. Calculate the matrix representing Rot(x,450)-1

Rot 1 ( x, 450 )  Rot T ( x, 450 )

1 0 0 
Rot ( x, 450 )  0 0.707 0.707 
0 0.707 0.707 

1 0 0 
Rot 1 ( x, 450 )  0 0.707 0.707 
0 0.707 0.707 
A point P(7,3,2)T is attached to a frame (n,o,a) and is
subjected to the following transformations.

i. Rotation of 900 about the z-axis


ii. Rotation of 900 about the y-axis
iii. Translation of [4,-3,7]

Find the coordinates of the point relative to the reference


frame at the end of the transformations.

Pnew  Tran(4, 3, 7) Rot(y,900 ) Rot(z,90 0 ) Pold

1 0 0 4   C (90) 0 S (90) 0  C (90)  S (90) 0 0  7 


0 1 0 3  0 1 0 0   S (90) C (90) 0 0   3 
Pnew 
0 0 1 7    S (90) 0 C (90) 0   0 0 1 0 2
    
0 0 0 1  0 0 0 1  0 0 0 1  1 
Solution:

• Coordinates of the new point


6
4
 
10 
 
1
A point P(7,3,2)T is attached to a frame (n,o,a) and is
subjected to the same transformations as previous one but
in different order as given below.

i. Rotation of 900 about the z-axis


ii. Translation of [4,-3,7]
iii. Rotation of 900 about the y-axis

Find the coordinates of the point relative to the reference


frame at the end of the transformations.

Pnew  Rot(y,900 )Tran(4, 3, 7) Rot(z,90 0 ) Pold

 C (90) 0 S (90) 0  1 0 0 4  C (90)  S (90) 0 0  7 


 0 1 0 0  0 1 0 3  S (90) C (90) 0 0   3 
Pnew 
  S (90) 0 C (90) 0  0 0 1 7  0 0 1 0  2 
    
 0 0 0 1  0 0 0 1  0 0 0 1  1 
Solution:

• Coordinates of the new point


9
4
 
 1
 
1

Inference: The order is important


Transformation about rotating frame
A point P(7,3,2)T is attached to a frame (n,o,a) and is subjected
to the following transformations.
i. Rotation of 900 about the o-axis
ii. Rotation of 900 about the a-axis
iii. Translation of 3 units along n-axis
Find the coordinates of the point relative to the reference frame
at the end of the transformations.

Pnew  Rot(o,900 ) Rot(a,900 )Tran(3, 0, 0) Pold

 C (90) 0 S (90) 0  C (90)  S (90) 0 0  1 0 0 3  7 


 0 1 0 0   S (90) C (90) 0 0  0 1 0 0   3 
Pnew 
  S (90) 0 C (90) 0  0 0 1 0  0 0 1 0 2
    
 0 0 0 1  0 0 0 1  0 0 0 1  1 

2
10 
Pnew  
3
 
1
Transformation about both fixed and moving axes

• A frame B was rotated about the x-axis 900; it


was then translated about the current a-axis 3
units before being rotated about the z axis by
900. Finally, it was translated by o-axis 5 units.

(a) write the equation describing the motions


(b) Find the final location of a point P(1,5,4)
attached to the frame relative to the reference
frame.
T=Rot(z,90)Rot(x,90)Trans(0,0,3)Trans(0,5,0)
Solution:
• T=Rot(z,90)Rot(x,90)Trans(0,0,3)Trans(0,5,0)

7
Pnew   1 
10 
Properties of Rotation Matrix

• The rotational matrix is a orthogonal matrix and


its determinant is equal to 1.

• Rotation matrix is always invertible.


Determine the new locations of the frame P=[2 3 1]T for the
following transformations and comment on the results.

(i) Rot(X,-900)

(ii) Rot-1(X,900)

Solution: Pnew=[2 1 -3]T

Similarly,
Multiplication of two Transformation Matrices
Consecutive transformations
Consecutive transformations about the same axis

You might also like