ROBOTIC MANIPULATORS AND
WORK CELL DESIGN
Module 1 –Part2
Dr. Anilkumar C.D.
Professor, ECE, RIT
Presentation prepared for S3 RAI 2026
Prepared from:
Introduction to Robotics Mechanics and Control By John J. Craig; PEARSON Prentice Hall
1
2
Syllabus
Module 1:
• Kinematics of Robots: Rotations - Fundamental and
Composite Rotations, Homogeneous coordinates, Translations
and Rotations, Composite homogeneous transformations,
Screw transformations, Inverse of Homogeneous
Transformation Matrices, Other representations of Rotations:
• Definitions of RPY, Euler Angles and Quaternions
3
Coordinate Systems
– Cartesian [Rectangular]Coordinate
System
• A point in space is represented by
X,Y,Z coordinates, p(x,y,z)
– Cylindrical Coordinate System
• A point in space is considered to be a
point on the contour of a cylinder with r
radius, z height as p(r,θ,z),
4
Coordinate Systems
• Spherical [Polar]Coordinate
system
– A point in space is considered to
be a point on the surface of a
sphere with r radius as p(r,θ,Φ),
5
Vector Projection
• The magnitude of the Projection of vector 𝑭
on vector 𝒃,
𝐹 = 𝐹cos(𝜃) 𝑭
𝒃
= 𝐹cos 𝜃 .
𝒃
𝟏
= 𝐹. 𝒃 cos 𝜃
𝒃
𝒃
𝑭 .𝒃
=
𝒃
• The projected vector,
𝐹 = 𝐹cos 𝜃 . 𝑏
6
Position Vector
• Any point in space can be
positioned/located by its position
vector
• The point P in the coordinate system {A}
is given by the vector
𝐴𝑃
= 3𝑖 + 5𝑗 + 4𝑘
3
= 5
4
7
Description of orientation of a body
• It needs additional information than the
base coordinate system
• Attach a new coordinate system to the
body,
– and then give a description of this new
coordinate system relative to the reference
system
• Thus,
– Positions of points are described with vectors
– Orientations of bodies are described with an
attached coordinate system.
8
Frame
• The entity that gives the position and an orientation pair of a
robot is called a frame
– which is a set of four vectors giving position and orientation
information
– one vector locates the end effector position
– and three more describe its orientation
• Equivalently, the description of a frame can be thought of as
a position vector and a rotation matrix.
9
Frame
• The entity that gives the position and an orientation pair of a
robot is called a frame
• It is a set of four vectors giving position and orientation
information
– one vector locates the end effector position
– and three more describe its orientation
• Equivalently, the description of a frame can be thought of as
a position vector and a rotation matrix.
10
Frame
• So, a frame is a coordinate system gives
– the orientation and the position vector which locates its origin
relative to some other embedding frame
• Frame {B},
• From Frame, the position vector 𝐴𝑋𝐵𝑂𝑅𝐺 is found my making the rotation
matrix part an identity matrix
• From Frame, the orientation 𝐵𝐴𝑅 is found my making the position vector
𝐴𝑋
𝐵𝑂𝑅𝐺 a unit vector
11
Standard Names of frames
• Base frame {B} or frame {0}
• The station frame {S}
– Task frame/world frame/ universal frame
– The station frame is always specified with
respect to the base frame
• The wrist frame {W}
• The tool frame {T}
• The goal frame {G}
12
Description of orientation of a body
• In order to describe the new axes/frame {B} in
terms of frame{A}
– The unit vectors of {B} need to be projected to
the reference axes {A};
𝐵
𝑍
– ie, each of the projected vector will be Dot 𝐴𝑍
𝐵
P
Product of unit vectors of {A} and {B} 𝐴
• Assume, P
𝐵
𝑌
– the unit vectors in {B} are 𝑋𝐵 , 𝑌𝐵 , and 𝑍𝐵 O
𝐴𝑌
– the unit vectors in {A} are 𝑋𝐴 , 𝑌𝐴 , and 𝑍𝐴
𝐵
– The projection of {B} on {A} is given by a matrix, 𝐴𝑋
𝑋
𝐴 𝐴𝑋 𝐴𝑌 𝐴𝑍
𝐵𝑅 = 𝐵 𝐵 𝐵
13
Rotation Matrix
• The projection of {B} on {A} is
𝐴 𝐴 𝐴 𝐴
𝐵𝑅 = 𝑋𝐵 𝑌𝐵 𝑍𝐵
𝑋𝐵 ∙ 𝑋𝐴 𝑌𝐵 ∙ 𝑋𝐴 𝑍𝐵 ∙ 𝑋𝐴
= 𝑋𝐵 ∙ 𝑌𝐴 𝑌𝐵 ∙ 𝑌𝐴 𝑍𝐵 ∙ 𝑌𝐴
𝑋𝐵 ∙ 𝑍𝐴 𝑌𝐵 ∙ 𝑍𝐴 𝑍𝐵 ∙ 𝑍𝐴
– This is Rotation Matrix; The elements are called Directional
Cosines
14
Rotation matrix when rotated about X axis
Frame {B} is rotated α degree about 𝐴𝑋
• Projection of 𝐵𝑋 on 𝐴𝑋,
– ie. 𝐵𝑋. 𝐴𝑋 = cos(0) = 1 𝐴
𝑍
𝐵
𝐵𝑋 𝑍
( since the magnitude of and 𝐴𝑋 are 1) 𝐴
α
• Projection of 𝐵𝑋 on 𝐴𝑌 and 𝐴𝑍 are cos(90)=0 𝐵
𝐵
𝑌
𝐵 𝐴
– ie. 𝑋 . 𝑌 = cos(90) = 0 α
𝐵
– And 𝑋 . 𝐴𝑍 = cos(90) = 0 𝐴
𝑌
• Similarly, Projection of 𝐵𝑌 on {A} 𝐵
𝑋
𝐵 𝑌 . 𝐴𝑋 𝐴
– = cos(90) = 0 𝑋
𝐵 𝑌 . 𝐴𝑌
– = cos(𝛼)
– 𝐵𝑌
. 𝐴𝑍 = cos(90 − 𝛼) = sin(𝛼) Continues…
15
• Projection of 𝐵𝑍 on {A}
𝐵
– 𝑍. 𝐴𝑋 = cos(90) = 0
𝐵
– 𝑍. 𝐴𝑌 = cos 90 + 𝛼 = −sin(𝛼)
𝐵
– 𝑍. 𝐴𝑍 = cos(𝛼)
𝐴
𝑍
𝐵
𝑍
𝐴
• Therefore, the Rotation matrix , 𝐵𝐴𝑅 α
𝐵
𝐵
𝑋𝐵 ∙ 𝑋𝐴 𝑌𝐵 ∙ 𝑋𝐴 𝑍𝐵 ∙ 𝑋𝐴 𝑌
α
= 𝑋𝐵 ∙ 𝑌𝐴 𝑌𝐵 ∙ 𝑌𝐴 𝑍𝐵 ∙ 𝑌𝐴
𝐴
𝑌
𝑋𝐵 ∙ 𝑍𝐴 𝑌𝐵 ∙ 𝑍𝐴 𝑍𝐵 ∙ 𝑍𝐴
𝐵
𝑋
1 0 0 𝐴
𝑋
= 0 cos(𝛼) −sin(𝛼)
0 sin(𝛼) cos(𝛼)
16
Rotation matrix when rotated about Y axis
𝐵
– 𝑋. 𝐴𝑋 = cos(𝛼) 𝐵
𝑍
𝐴
𝑍
– 𝐵
𝑋. 𝐴𝑌 = cos(90) = 0 𝐴
α
𝐵
– 𝐵 𝑋 . 𝐴𝑍 = cos(90 + 𝛼) = −sin(𝛼) 𝐵
𝑌
– 𝐵 𝑌 . 𝐴𝑋 = cos(90) = 0 𝐴
𝑌
– 𝐵 𝑌 . 𝐴𝑌 = cos 0 = 1 𝐴
𝑋 𝐵
α 𝑋
𝐵𝑌 𝐴𝑍
– . = cos(90) = 0
– 𝐵
𝑍. 𝐴𝑋 = cos(90 − 𝛼) = sin(𝛼)
– 𝐵 𝑍 . 𝐴𝑌
= cos 90 = 0 cos(𝛼) 0 sin(𝛼)
𝐴 0 1 0
– 𝐵𝑍 . 𝐴𝑍
= cos(𝛼) Therefore , 𝐵𝑅 =
−sin(𝛼) 0 cos(𝛼)
17
Rotation matrix when rotated about Z axis
𝐵
– 𝑋. 𝐴𝑋 = cos(𝛼) 𝐴
𝑍
𝐵
– 𝑋. 𝐴𝑌 = cos(90 − 𝛼) = sin(𝛼) 𝐴
– 𝐵
𝑋. 𝐴𝑍 = cos(90) = 0
𝐵
𝑍
𝐵 𝐴
– 𝑌. 𝑋 = cos(90 + 𝛼) = − sin(𝛼) α
𝐴
𝐵 𝑌 . 𝐴𝑌 𝑌
– = cos(𝛼) 𝐵 𝐵
𝐴
𝑌
𝐵𝑌 𝑋
– . 𝐴𝑍 = cos(90) = 0 α
– 𝐵
𝑍. 𝐴𝑋 = cos(90) = 0
𝐵
– 𝐵 𝑍 . 𝐴𝑌 = cos 90 = 0 𝑋
– 𝐵𝑍 . 𝐴𝑍 = cos 0 = 1 cos(𝛼) sin(𝛼) 0
𝐴
Therefore, 𝐵𝑅 = − sin(𝛼) cos(𝛼) 0
0 0 1
18
Rotation matrix-summary
• When rotated about X-axis
1 0 0
𝐵𝑅 = 0 cos(𝛼) −sin(𝛼)
𝐴
0 sin(𝛼) cos(𝛼)
• When rotated about Y-axis
cos(𝛼) 0 sin(𝛼)
𝐴 0 1 0
𝐵𝑅 =
−sin(𝛼) 0 cos(𝛼)
• When rotated about Z-axis
cos(𝛼) −sin(𝛼) 0
𝐴
𝐵𝑅 = sin(𝛼) cos(𝛼) 0
0 0 1
19
Transpose of Rotation matrix
• Rotation of {B} wrto {A} is given by
𝐴 𝐴 𝐴 𝐴
𝐵𝑅 = 𝑋𝐵 𝑌𝐵 𝑍𝐵
𝑋𝐵 ∙ 𝑋𝐴 𝑌𝐵 ∙ 𝑋𝐴 𝑍𝐵 ∙ 𝑋𝐴
= 𝑋𝐵 ∙ 𝑌𝐴 𝑌𝐵 ∙ 𝑌𝐴 𝑍𝐵 ∙ 𝑌𝐴
𝑋𝐵 ∙ 𝑍𝐴 𝑌𝐵 ∙ 𝑍𝐴 𝑍𝐵 ∙ 𝑍𝐴
– Each Column is the unit vector of {B} expressed in {A}
– Each Column is the unit vector of {A} expressed in {B}
𝐴
• Transpose of 𝐵 𝑅,
𝐴 𝑇
𝐵𝑅 = 𝐵
𝑋𝐴 𝐵
𝑌𝐴 𝐵
𝑍𝐴 = 𝐵𝐴𝑅
20
Frame
• The entity that gives the position and an orientation pair of a
manipulator called a frame
– which is a set of four vectors giving position and orientation
information
– one vector locates the end effector position
– and three more describe its orientation
• Equivalently, the description of a frame can be thought of as
a position vector and a rotation matrix.
21
MAPPING
(CHANGING DESCRIPTIONS FROM FRAME TO FRAME)
𝐵
• If an object in one frame, needs to be 𝑍
interpreted from another frame, the 𝐴 𝐵
𝑍
description is to be mapped to the new 𝐵𝑃
𝐴
frame
𝐴𝑃
• The object’s real orientation doesn’t
change 𝐵𝑌
• Example 1: Here, the description of point O
𝐴𝑃
𝐵𝑂𝑅𝐺
𝐵𝑃 is to be found from frame {A},ie 𝐴𝑃 .
𝐴
𝑌
– {A} and {B} have same orientation. So,
only origin of 𝐵𝑃 is to be changed 𝐵
𝑋
– 𝐴𝑃 = 𝐵 𝑃 + 𝐴𝑃
𝐵𝑂𝑅𝐺 𝐴𝑋
This process is done through translation
22
• Example 2: Here 𝐵𝑃 is described on frame {B}. It
needs to be mapped to {A}, 𝐴𝑃.
– Both {A} and {B} have same origin, but
different orientation
𝐴𝑍
– Aim is to find components of 𝐴𝑃, ie. 𝐵
𝑍
𝐴
𝑝𝑥 , 𝐴𝑝𝑦 , 𝐴𝑝𝑧 ,
𝐵𝑃
𝐵
– 𝐴𝑝𝑥 = 𝐵𝑋𝐴 ∙ 𝐵𝑃
– Thus, the other two components of 𝐴𝑃 in {A},
𝐵𝑌
𝐴𝑌
𝐴𝑋
It can be shown that, 𝐵
𝑋
23
Worked out problem:
• Fig shows a frame {B} that is rotated relative to
frame {A} about Z-axis by 30 degrees.
• Here, 𝑍 is pointing out of the page
• Given 𝐵𝑃(0,2,0); Find 𝐴𝑃
0.866 −0.500 0.000 0
𝐴
𝑃 = 0.500 0.866 0.000 2 ∴ 𝐴𝑃 =
0.000 0.000 1 0
24
Worked out problem:
• Fig shows a frame {B} that is rotated relative to frame {A} about Z-axis by 60
degrees.
• Here, 𝑍 is pointing out of the page
• Given 𝐵𝑃(2,4,0); Find 𝐴𝑃
𝐴
𝐵𝑃
𝐵
0.500 −0.866 0.000 2
𝐴
𝑃 = 0.866 0.500 0.000 4
0.000 0.000 1 0
−2.464
𝐴
𝑃 = 3.732
0
25
Homogenous Transformation
• Here, {A} and {B} do neither
have same origin nor same
orientation
• So, to describe the vector 𝐵𝑃
from {A}:
– ie. 𝐴𝑃, rotate the vector
𝐵
𝑃 to frame {A}’s
orientation
– Then add an offset vector
to locate the origin of {B}
(the vector that locates
{B}’s origin is 𝐴𝑃𝐵𝑂𝑅𝐺
– ie.
26
Homogenous Transformation
• This can be seen as 𝐵𝑃 is transformed by a transformation, 𝐵𝐴𝑇, as
• In matrix form, 𝐴𝑃 = 𝐴
𝐵𝑇
𝐵𝑃
𝐴𝑃 = 𝐴
𝐵𝑅
𝐴
𝑃𝐵𝑂𝑅𝐺 𝐵𝑃 1
But Eqn-1 is incorrect since the matrix dimensions don’t match
• So, add dummy rows in the equation without altering the outcome:
27
Homogenous Transformation
𝐴𝑝 𝐴𝑋 𝐴𝑌 𝐴𝑍 𝐴𝑝 𝐵𝑝
𝑥 𝐵𝑥 𝐵𝑥 𝐵𝑥 𝐵𝑂𝑥 𝑥
𝐴𝑝 𝐴𝑋 𝐴𝑌 𝐴𝑍 𝐴𝑝 𝐵𝑝
𝑦 = 𝐵𝑦 𝐵𝑦 𝐵𝑦 𝐵𝑂𝑦 𝑦
𝐴𝑝 𝐴𝑋 𝐴𝑌 𝐴𝑍 𝐴𝑝 𝐵𝑝
𝑧 𝐵𝑧 𝐵𝑧 𝐵𝑧 𝐵𝑂𝑧 𝑧
1 0 0 0 1 1
28
.
• A frame {B}, which is rotated relative to frame {A}
about 𝑍 by 30 degrees, translated 10 units in 𝑋𝐴 ,
and translated 5 units in 𝑌𝐴 . Find 𝐴𝑃, where
𝐵𝑃 =
3.0 7.0 0.0 𝑇
∴ 𝐴𝑃 =
29
Translation Operator
• Vector 𝐴𝑄 Translates the vector 𝐴𝑃1 to
𝐴
𝑃2 by:
– where 𝐷𝑄 (𝑞)is the translational
operator, and q is the signed
magnitude of the translation along the
vector direction 𝑄
where 𝑞𝑥 , 𝑞𝑦 and 𝑞𝑧 are the components of the translation vector Q
30
Rotation Operator
• Here, 𝑅𝐾 (𝜃) is a rotational operator that performs
a rotation about the axis direction 𝐾 by 𝜃 degrees
• Example: The vector 𝐴𝑃1 is rotated 30 degree
about 𝑍 to get 𝐴𝑃2
31
Transformation Operator
• The transform that rotates by R and translates
by Q. Example:
• From the figure:
– The vector 𝐴𝑃1 is rotated 30 degree about 𝑍 , and
translated 10 units in 𝑋𝐴 , and translated 5 units in 𝑌𝐴 .
to get 𝐴𝑃2 . Given 𝐴𝑃1 = 3.0 7.0 0.0 𝑇
32
Compound Transformation
• When multiple transformations
are used to describe a vector, it is
called compound transformation
• For example: In the fig, with
𝐶 𝑃given, to describe 𝐴𝑃
– First find 𝐵𝑃 = 𝐵𝐶𝑇 𝐶𝑃
– Then find 𝐴𝑃 = 𝐵𝐴𝑇 𝐵𝑃
– ie. 𝐴𝑃 = 𝐵𝐴𝑇 𝐵𝐶𝑇 𝐶𝑃
• Therefore, 𝐴
𝐶 𝑇 = 𝐴 𝐵
𝐵𝑇 𝐶 𝑇
33
• From 𝐴𝐶𝑇 = 𝐵𝐴𝑇 𝐵𝐶𝑇,
𝐴 𝐴𝑃 𝐵 𝐵𝑃
𝐴 𝐵𝑅 𝐵𝑜𝑟𝑔 𝐶𝑅 𝐶𝑜𝑟𝑔
𝐶𝑇=
0 0 0 1 0 0 0 1
34
Inverse transform
• If {A} is to be described with respect to {B}, ie. 𝐵𝐴𝑇is needed to be found,
and given 𝐵𝐴𝑇:
𝐵
𝐴𝑇 = 𝐵𝐴𝑇 −1
35
• Example: A frame {B} that is rotated
relative to frame {A} about 𝑍 by 30 degrees
and translated four units 𝑋𝐴 , and translated
three units in 𝑌𝐴 , as given in:
• Find 𝐵𝐴𝑇
36
Transform Equations
• To describe frame {D} from {U}, two ways
are possible:
𝑈 𝑈 𝐴
𝐷 𝑇 = 𝐴𝑇 𝐷 𝑇
and
𝑈
𝐷𝑇= 𝑈𝐵𝑇 𝐵𝐶 𝑇 𝐷𝐶𝑇
• The above two relationships forms the
transform equation,
𝑈 𝐴
𝐴𝑇 𝐷 𝑇 = 𝑈𝐵𝑇 𝐵𝐶𝑇 𝐷𝐶𝑇
37
Significance of direction of frame description
• Arrows from frame to frame shows the
direction of definition
• If the direction is opposite to the
description needed, put the inverse of
transform
• For example:
𝑈 𝑈 𝐷 −1 𝐷
𝐶 𝑇 = 𝐴 𝑇 𝐴𝑇 𝐶𝑇
• and
38
39
𝐵
𝐴𝑍 𝑍 𝐵𝑃
3
𝐵
2 𝐴
𝑍
𝐵𝑌
1
0
𝐴
𝑌
-1 𝐴𝑌
𝐴𝑋 𝐵
𝑋
𝐴𝑋
40
Example
• Assume the following are
known:
𝐵
– 𝑇𝑇, that describes the frame at
the manipulator's fingertips {T}
relative to the base of the
manipulator {B}
𝐵
– 𝑆𝑇 where the tabletop is located
in space relative to the
manipulator's base
𝑆
– 𝐺 𝑇, that describes the location of the
frame attached to the bolt lying on the
table relative to the table frame
• Then, to calculate the position and
orientation of the bolt relative to the
manipulator's hand, the transformation is
41
Anatomy of Robotic Arms
Important terms
• Arm configuration configurations
– Cartesian ( 3 Prismatic joints, PPP)
– Cylindrical (R PP)
– Spherical (RRP)
– Revolute (RRR)
• Wrist configuration
– Roll, Pitch, Yaw
42
Orientation Description with axes rotation
• X—Y—Z fixed angles
method describes the
orientation of a frame {B}
:
– Start with the frame
coincident with a known
reference frame {A}.
– Rotate {B} first about
𝑋𝐴 by an angle 𝛾, (ROLL)
– then about 𝑌𝐴 by an
angle 𝛽, (PITCH)
– finally, about 𝑍𝐴 by an
angle 𝛼, (YAW)
43
X—Y—Z fixed angles
• The rotation matrix
𝐴
𝐵𝑅𝑋𝑌𝑍 (𝛾, 𝛽, 𝛼)
44
Euler’s angle
• Euler angles are three angles that describe the orientation of
a rigid body in relation to a fixed coordinate system
• Rotation angles about Z, Y and X axes of the reference frame
are called Euler’s angle or
• Any random orientation in space can be reached by the 3
step by step movements using Euler angles, Yaw, Pitch, Roll-
YPR
45
Z-Y-X Euler angle
𝑍𝐴 • Consider an object in
frame {C}
Side 1
𝑌𝐴
𝑋𝐴
46
`
• The object is in a
𝑍𝐵 random rotation
from frame {A}
𝑍𝐶 • Frame {B} is the
initial orientation,
and frame {C} is
𝑌𝐶 the orientation to
reach
𝑌𝐵
𝑋𝐶
𝑋𝐵
47
𝑍𝐵 ′ • Rotate about 𝑍𝐵 ,
at angle 𝛼
𝑌𝐵 ′
𝑋𝐵 ′
48
𝑍𝐵 ′′ • Rotate about 𝑌𝐵 ′,
at angle 𝛽
𝛽 𝑌𝐵 ′′
𝑋𝐵 ′′
49
• The final
𝑍𝐵 ′′′ orientation can
be described as
𝑌𝐵 ′′′
𝑋𝐵 ′′′
50
• A rotation matrix which is
parameterized by Z—Y—X
Euler angles will be
indicated by the n0tation
𝐴
𝐵𝑅𝑍 ′ 𝑌 ′ 𝑋 ′ (𝛼, 𝛽, 𝛾)
51
𝐴
𝐵 𝑅𝑍 ′ 𝑌 ′ 𝑋 ′ 𝛼, 𝛽, 𝛾 = 𝐵𝐴𝑅𝑋𝑌𝑍 (𝛾, 𝛽, 𝛼)
52