Machine Drives and Mechatronics
Dr. Shyamal Mondal
My contact: Room T402
mondals@lsbu.ac.uk
Dr. Shyamal Mondal 1
Today’s content
• Robot movement in space
– Homogeneous transformation matrix
– A pure translation
– A pure rotation about an axis
– A combination of translations and/or rotations
Dr. Shyamal Mondal 2
Homogeneous Transfomation matrix
What is homogeneous transformation?
Homogeneous Transformation Matrices use to locate robot’s end effector
position in space
• 4 by 4 matrices:
– Can be pre- or post-multiplied
– Represents both orientation and position information, including
directional vectors (scale factor) in order to make it 4x4 matrix.
– Easy to find inverse of the matrix
nx ox ax px
n oy ay p y
F = y
nz oz az pz
0 0 0 1
Dr. Shyamal Mondal 3
Representation of Transformations
A transformation is defined as making a robot arm
movement in space.
A transformation may be in one of the following forms:
• A pure translation
• A pure rotation about an axis
• A combination of translations and/or rotations
Dr. Shyamal Mondal 4
Representation of a Pure Translation
If a frame moves in space without any change in its
orientation, the transformation is a pure translation.
Fnew = Trans (dx ,dy ,dz ) Fold
1 0 0 d x nx ox ax p x nx ox ax px + d x
0 1 0 d y n y oy ay p y n y oy ay p y + d y
Fnew = =
0 0 1 d z nz oz az p z nz oz az pz + d z
0 0 0 1 0 0 0 1 0 0z 0 1
a a
Notice that the directional vectors d
o
remain the same after a pure translation p
n
o
n
but the new location of the frame is at
d+p. x y
Figure: Representation of a pure translation in space
Dr. Shyamal Mondal 5
Representation of a Pure Rotation
Rotation about the x-Axis
Before rotation
1 0 0
Rot ( x, ) = 0 C − S
0 S C
After rotation about x axis
Rotation about the Z-Axis Rotation about the Y-Axis
C − S 0 C 0 S
Rot ( z , ) = S C 0 Rot ( y, ) = 0 1 0
0 0 1 − S 0 C
Dr. Shyamal Mondal 6
Representation of a Pure Rotation
• A point point P(2,3,4)T is attached to a rotating frame. The
frame rotates 900 about the x axis of the reference frame.
Find the coordinates of the point relative to the reference
frame after the rotation.
1 0 0 0
𝑅𝑜𝑡 𝑥, 𝜃 = 0 𝐶𝜃 −𝑆𝜃 0
0 𝑆𝜃 𝐶𝜃 0
𝑃𝑛𝑒𝑤 = 𝑅𝑜𝑡(𝑥, 𝜃)𝑃𝑜𝑙𝑑 0 0 0 1
1 0 0 0 1 0 0 2 1 0 0 2
𝑃𝑛𝑒𝑤 = 𝑅𝑜𝑡 𝑥, 90 𝑃𝑜𝑙𝑑 = 0 0 −1 0 0 1 0 3 = 0 0 −1 −4
0 1 0 0 0 0 1 4 0 1 0 3
0 0 0 1 0 0 0 1 0 0 0 1
Dr. Shyamal Mondal 7
Representation of Combined Transformations
Combined transformations consist of a number of successive translations and
rotations about the reference frame axes Pnoa or the moving frame axes.
• Example:
1. Rotation of degrees about the x-axis,
2. Followed by a translation of [l1,l2,l3] (relative to the x-, y-,
and z-axes respectively),
3. Followed by a rotation of degrees about the y-axis.
• Pre-multiply by each matrix:
p1, xyz =Rot ( x, ) pnoa
p2, xyz = Trans(l1 , l2 , l3 ) p1, xyz = Trans(l1 , l2 , l3 ) Rot ( x, ) pnoa
pxyz = p3, xyz = Rot ( y, ) p2, xyz = Rot ( y, ) Trans(l1 , l2 , l3 ) Rot ( x, ) pnoa
Dr. Shyamal Mondal 8
Inverse of Transformation Matrices
• The inverse of a transformation (or a frame) matrix is the
following: 𝑝. 𝑛 = 𝑛𝑥 𝑝𝑥 + 𝑛𝑦 𝑝𝑦 + 𝑛𝑧 𝑝𝑧
nx ox ax px nx ny nz −p n
n oy ay p y o oy oz −p o
T = y and T −1 = x
nz oz az pz ax ay az −p a
0 0 0 1 0 0 0 1
– 1. Transpose the rotation portion of the matrix.
– 2. Take the negative of the dot-product of the P and n, P and o,
and P and a vectors.
Example
• Calculate the inverse of the given
transformation matrix.
0.5 0 0.86 3
0.86 0 −0.5 2
0 5
T=
1 0
0
0 0 1
0.5 0.86 0 −3.23
Answer: 0 0 1 −5
0.86 −0.5 0 −1.59
0
0 0 1
Question - TASK 1
A point P in space is defined as BP = (5,3,4)T relative to frame B which is attached
to the origin of the reference frame A and is parallel to it. Apply the following
transformations to frame B and find AP.
• Rotate 900 about x-axis, then
• Translate 3 units about y-axis, 6 units about z-axis, and 5 units about x-axis.
Then,
• Rotate 900 about z-axis.
Dr. Shyamal Mondal 11