MTS-417 Introduction
to Robotics
Lecture 2
Fall 2024
Modeling the Human Arm
• A human arm is considered to have seven DOFs
• A shoulder gives pitch, yaw and roll
• An elbow allows for pitch
• A wrist allows for pitch, yaw and roll
Fall 2024
Modeling the Human Arm
Fall 2024
Example end-effector: Grippers
The Barrett Hand
Fall 2024
Robot Manipulators
• Workspace represents that portion of the environment the manipulator’s end-effector
can access
• Its shape and volume depend on the manipulator structure as well as on the presence
of mechanical joint limits
• The task required of the arm is to position the wrist which then is required to orient
the end-effector
Fall 2024
Robot Arm Structures
• Figures on next slides show some common robot arm structures
• Robotic arms are meant to perform work similarly to the way human arms do
• However, whereas as human arm has only rotational joints, robot can include
prismatic and revolute joints and have greater ranges of motion strength in their
joints
• The robot structures shown in figures have three or four joints and can position
their end effectors within their workspace
Fall 2024
Robot Arm Structures
Fall 2024
Robot Arm Structures
Fall 2024
Cylindrical
Robot Arm Structures
Fall 2024
Robot Arm Structures
Fall 2024
SCARA
Spatial Descriptions and Transformations
• Robotic manipulation, by definition, implies that parts and tools will be moved
around in space by some sort of mechanism.
• This naturally leads to a need for representing positions and orientations of parts,
of tools, and of the mechanism itself.
• To define and manipulate mathematical quantities that represent position and
orientation, we must define coordinate systems and develop conventions for
representation
Fall 2024
Universe Coordinate System
• We adopt the philosophy that somewhere there is a universe coordinate system to
which everything we discuss can be referenced.
• We will describe all positions and orientations with respect to the universe
coordinate system or with respect to other Cartesian coordinate systems that are
(or could be) defined relative to the universe system
Fall 2024
Description of a Position
• Once a coordinate system is established, we can locate any point in the universe
with a 3 × 1 position vector.
• Components of 𝐴𝑃 have numerical values that indicate distances along the axes of
{A}
• Each of these distances along an axis can be
thought of as the result of projecting the vector
onto the corresponding axis
Fall 2024
Description of Orientation
• Positions of points are described with vectors and
orientations of bodies are described with an attached
coordinate system
• One way to describe the body attached coordinate
system, {B}, is to write the unit vectors of its three
principal axes in terms of the coordinate system {A}
Fall 2024
Derivation of Rotation Matrix in 2D
• Consider a vector 𝑟Ԧ whose initial position can be
represented by 𝑦
𝑟𝑐𝑜𝑠(𝜃) 𝑥1
• 𝒓= = 𝑦 𝑟
𝑟𝑠𝑖𝑛(𝜃) 1
𝜙 𝑟
𝜃
𝑥
• After some time, its final position can be represented by
′ 𝑟𝑐𝑜𝑠 𝜃 + 𝜙 𝑥2
• 𝒓 = = 𝑦
𝑟𝑠𝑖𝑛 𝜃 + 𝜙 2
Fall 2024
Derivation of Rotation Matrix in 2D
Using Trigonometry
𝑟𝑐𝑜𝑠 𝜃 cos 𝜙 − 𝑟sin 𝜃 sin 𝜙 𝑦
′
• 𝑟 =
𝑟 cos 𝜃 sin 𝜙 + 𝑟s𝑖𝑛(𝜃) cos 𝜙
𝑟
𝜙 𝑟
• 𝑟′ =
𝑥1 𝑐𝑜𝑠 𝜙 − 𝑦1 sin 𝜙 𝜃
𝑥1 𝑠𝑖𝑛 𝜙 + y1 cos 𝜙 𝑥
𝑥2 𝑐𝑜𝑠 𝜙 − sin 𝜙 𝑥1
• 𝑦 = 𝑦1
2 𝑠𝑖𝑛 𝜙 cos 𝜙
Fall 2024
Description of Orientation – Rotation Matrix
• We denote the unit vectors giving the principal directions of coordinate system{B}
as 𝑋𝐵 , 𝑌𝐵 , 𝑍መ𝐵
• When written in terms of {A} they are written as
Fall 2024
Description of Orientation – Rotation Matrix
• Each component of 𝐵𝐴𝑅 can be written as the dot product of a pair of unit vectors
• Rows of the matrix are the unit vectors of {A} expressed in {B}; that is
Fall 2024
Description of Orientation – Rotation Matrix
• This suggests that the inverse of a rotation matrix is equal to its transpose, a fact
that can be easily verified as
Fall 2024
Description of an Orientation
Example ZA
YB
{A}
1 0 0
AR = 0 0 -1 ZB YA
B
0 1 0 {B}
XA
XB
Fall 2024
Rotated frames – General Notation
Fall 2024
Description of a Frame
• The information needed to completely specify the whereabouts of the manipulator
hand is a position and an orientation
• For convenience, the point whose position we will describe is chosen as the origin
of the body-attached frame
• The situation of a position and an orientation pair arises so often in robotics that
we define an entity called a frame, which is a set of four vectors giving position
and orientation information
• Note that a frame is a coordinate system where, in addition to the orientation, we
give a position vector which locates its origin relative to some other embedding
frame
Fall 2024
Description of a Frame
• There are three frames that are shown along
with the universe coordinate system.
• Frames {A} and {B} are known relative to the
universe coordinate system, and frame {C} is
known relative to frame {A}
Fall 2024
Mappings: Changing Descriptions from Frame to Frame
• In Robotics, we are concerned with expressing the same quantity in terms of
various reference coordinate systems.
• The previous section introduced descriptions of positions, orientations, and frames
• We now consider the mathematics of mapping in order to change descriptions
from frame to frame
Fall 2024
Mappings Involving Translated Frames
• In this simple example, we have illustrated mapping a
vector from one frame to another.
• The quantity itself (here, a point in space) is not changed; only its description is
changed.
• Point described by 𝐵𝑃 is not translated, but remains the same, and instead we have
computed a new description of the same point, but now with respect to system {A}
Fall 2024
Mappings Involving Rotated Frames
• The rotation matrix describes frame {B} relative to frame {A}, it was named with
𝐴
𝐵𝑅
• Because the columns of 𝐵𝐴𝑅 are the unit vectors of {B} written in {A}, the rows of
𝐴
𝐵𝑅 are the unit vectors of {A} written in {B}
Fall 2024
Mappings Involving Rotated Frames
• In order to calculate 𝐴𝑃, we note that the components of any
vector are simply the projections of that vector onto the unit
directions of its frame
Fall 2024
Example
A frame {B} that is rotated relative to frame {A} about 𝑍መ by
30 degrees. Here, 𝑍መ is pointing out of the page.
Fall 2024
Mappings Involving General Frames
• We consider the general case of mapping.
• The origin of frame {B} is not coincident with that of frame {A} but has a general
vector offset. The vector that locates {B}’s origin is called 𝐴𝑃 𝐵𝑂𝑅𝐺 .
• Also {B} is rotated with respect to {A}, as described by 𝐵𝐴𝑅
• Given 𝐵𝑃, we wish to compute 𝐴𝑃
Fall 2024
Mappings Involving General Frames
The more appealing form is as follows:
This aids in writing compact equations
and is conceptually clearer
We define a 4 × 4 matrix operator and use 4 × 1 position vectors, so that the
structure is:
Fall 2024
Mappings Involving General Frames
The 4×4 matrix 𝐵𝐴𝑇 is called a homogeneous transform
• Although homogeneous transforms are useful in writing compact equations, a
computer program to transform vectors would generally not use them, because of
time wasted multiplying ones and zeros.
Fall 2024
Example
Fall 2024
Operators: Translations, Rotations, And Transformations
• Translational Operator
• A translation moves a point in space a finite distance along a given vector direction
Fall 2024
Rotation Operator
Fall 2024
Transformation Operator
The transform that rotates by R and translates by Q is the same as the transform
that describes a frame rotated by R and translated by Q relative to the reference
frame
Example
Fall 2024
Fall 2024
Transformation Arithmetic
Compound Transformations
We have 𝐶 𝑃 and wish to find 𝐴𝑃
Frame {C} is known relative to frame {B}
and frame {B} is known relative to
frame {A}. We can transform 𝐶 𝑃 into 𝐵𝑃 as
then we can transform 𝐵𝑃 into 𝐴𝑃 as
Fall 2024
Transformation Arithmetic
Inverting Transform
Fall 2024
Transformation Arithmetic
Inverting Transform (Proof)
Fall 2024
Transformation Arithmetic
Transformation matrices multiplication is not
commutative
Fall 2024
Transform Equations
Consider that all transforms are known except 𝐵𝐶 𝑇
Here, we have one transform equation and
one unknown transform; hence, we easily find its solution
to be
Fall 2024
Transform Equations
Fall 2024
Example
𝐵 𝐵 𝑆 𝐵 𝐵 𝑇
𝐺 𝑇= 𝑆𝑇 𝐺 𝑇 𝐺 𝑇= 𝑇𝑇 𝐺 𝑇
Equating above two to get the bolt frame
Relative to the tool frame
Fall 2024
More on Representation of Orientation
• Orientation is by giving a 3 × 3 rotation matrix.
• Rotation matrices are special in that all columns are mutually orthogonal and have
unit magnitude
• Determinant of Rotation matrices is always equal to +1 (Proper Orthonormal)
Cayley’s formula for orthonormal matrices
For any proper orthonormal matrix R, there exists a skew-symmetric matrix S such
that
Fall 2024
More on Representation of Orientation
• Therefore any 3 × 3 rotation matrix can be specified by just three parameters
• This means there are six constraints on the nine elements of a rotation matrix
• A human operator at a computer terminal who wishes to
type in the specification of the desired orientation of a robot’s
hand would have a hard time inputting a nine-element matrix
with orthonormal columns
• A representation that requires only three numbers would be
simpler
Fall 2024
X-Y-Z Fixed Angles
Fall 2024
X-Y-Z Fixed Angles
The inverse problem, that of extracting equivalent X–Y–Z fixed angles from a
rotation matrix, is often of interest
Fall 2024
X-Y-Z Fixed Angles
Fall 2024
X-Y-Z Fixed Angles
Fall 2024
Z-Y-X Euler Angles
• In this representation, each rotation is
performed about an axis of the moving
system {B} rather than one of the fixed
reference {A}
• Such sets of three rotations are called
Euler Angles
Fall 2024
Z-Y-X Euler Angles
Relations for finding Z-Y-X Euler angles from a given rotation matrix are exactly
same as the X-Y-Z Fixed Angles (as the rotation matrix is same)
Fall 2024
Z–Y–Z Euler angles
Fall 2024
Z–Y–Z Euler angles
Fall 2024
Other Angle-Set Conventions
• In the preceding subsections we have seen three conventions for specifying
orientation: X–Y–Z fixed angles, Z–Y–X Euler angles, and Z–Y–Z Euler angles.
• Each of these conventions requires performing three rotations about principal axes
in a certain order.
• These conventions are examples of a set of 24 conventions that we will call angle-
set conventions
• Of these, 12 conventions are for fixed-angle sets, and 12 are for Euler-angle sets.
Fall 2024
Equivalent angle-axis representations
is sometimes called the equivalent axis of a finite rotation.
• Vector 𝐾
𝜃) or 𝑅𝐾 (𝜃)
• A general orientation of {B} relative to {A} may be written as 𝐵𝐴𝑅(𝐾,
and will be called the equivalent angle–axis representation.
• The specification of the vector 𝐴𝐾 requires only two parameters, because its
length is always taken to be one.
• The angle specifies a third parameter. Often, we will multiply the unit direction, 𝐾
with the amount of rotation, θ, to form a compact 3 × 1 vector description of
orientation, denoted by K (no ‘‘hat’’)
Fall 2024
Equivalent angle-axis representations
Fall 2024
Equivalent angle-axis representations
Example
K axis is along the standard x axis of the body. Find the equivalent transformation matrix
using Equivalent angle-axis representation
Fall 2024
Equivalent angle-axis representation
1
= 0
• 𝐾
0
1 0 0
𝑅𝐾 𝜃 = 0 𝑐𝜃 −𝑠𝜃
0 𝑠𝜃 𝑐𝜃
Fall 2024
Equivalent angle-axis representations
Example
Fall 2024
Fall 2024
Fall 2024
Equivalent Angle-Axis Representation Proof
Fall 2024
Equivalent Angle-Axis
Representation
Fall 2024
Equivalent Angle-
Axis Representation
Fall 2024
Equivalent
Angle-Axis
Representation
Fall 2024
Equivalent Angle-Axis Representation
Fall 2024