Professional Documents
Culture Documents
Mechanics of Industrial Robots: (Lecture Notes)
Mechanics of Industrial Robots: (Lecture Notes)
of
Industrial Robots
(Lecture Notes)
by
Faculty of engineering
Zagazig University
2020
Chapter 1
Dr Khaled Roshdy E. Atia
INTRODUCTION
Industrial Robot
Industrial robots consist of a number of rigid links connected by mechanical joints. The link
assembly, or robot arm, is mounted onto a base and the entire system is run by a controller.
A wrist attached to the robot arm uses an end effector to facilitate gripping or handling. The
complete motion of the end effector is accomplished through a series of motions and positions
of the links, joints, and wrist. The axes of movement that a robot has are referred to as
degrees of freedom.
3. Can be reprogrammed.
4. Most robots are controlled by computers and can therefore be interfaced to other computer
systems.
1
Degrees of Freedom
The mobility of a system formed from n moving links and j joints each with freedom fi , i =
1, ..., j, is given by
X
j
M = 6(n − j) + fi (1.1)
i=1
I Body-and-arm –for positioning of objects (gripper, tool, etc.) in the robot’s work volume.
In a robot, the connection of different manipulator joints is known as Robot Links, and the
integration of two or more link is called as Robot Joints. A robot link will be in the form of
solid material, and it can be classified into two key types – input link and output link. The
movement of the input link allows the output link to move at various motions. An input link
will be located nearer to the base.
. This type of joints, fig(1.1), can perform both translational and sliding movements. These
motions will be attained by several ways such as telescoping mechanism and piston. The two
links should be in parallel axes for achieving the linear movement.
This joint, fig(1.1), is somewhat similar to the linear joint. The only difference is that the
output and input links will be moving at the right angles.
This type, fig(1.2), will allow the joints to move in a rotary motion along the axis, which is
vertical to the arm axes.
This joint, fig(1.2), makes twisting motion among the output and input link. During this
process, the output link axis will be vertical to the rotational axis. The output link rotates in
relation to the input link.
2
Dr Khaled Roshdy E. Atia
Here, fig(1.2), the output link axis is perpendicular to the rotational axis, and the input link
is parallel to the rotational axes. As like twisting joint, the output link spins about the input
link.
There are five common body-and-arm configurations for industrial robots (Figure 1.3):
3
Cartesian coordinate body-and-arm assembly
The Cartesian or (x, y, z) arrangement is the only one to use just prismatic joints, correspond-
ing to the dimensions of the Cartesian coordinate system. This is the mathematically simplest
system as far as translational movements are concerned. It is easy to calculate what joint
movements are needed to move the payload from one place to another, and arm movement
does not affect payload orientation. This is advantageous when dealing with a world domi-
nated by right angle geometry; an example is inserting components into printed circuit boards.
Robots for this purpose often hang down from a gantry rather than standing like a pillar.
Since the slideways for the two motions are supported at both ends, a gantry machine is easier
Dr Khaled Roshdy E. Atia
to make rigid, and is the most rigid of the common structures for industrial robots.
The spherical polar or (r, θ, ϕ) configuration was adopted in the Unimate, the first industrial
robot. This design is used mostly for machine loading, being well suited to a long straight
reach into a press or moulding machine.
This cylindrical or (r, z, θ) configuration is found mostly in pick and place robots for parts
feeding. As in the Cartesian geometry the wrist is automatically kept in a constant attitude
(apart from rotation about the vertical axis), and so it is suitable for tasks such as the
assembly of an electric motor where the assembly is dominated by a vertical axis along which
components such as bearings and shafts are to be inserted. Its main advantage over the
Cartesian arrangement is that the robot can be surrounded by the machines it serves and can
swing right round to cover a large working area.
This configuration is often referred to as a ’SCARA’ arm, for selective compliance assembly
robot. This means that the vertical axis at the gripper is kept rigidly vertical, and the vertical
prismatic joint can apply a force for insertion during assembly while the horizontal motion is
allowed to be somewhat compliant to take up small positioning errors. The SCARA arm is
often used for assembly, like cylindrical and Cartesian arms, and for the same reasons. It is
more compact than a cylindrical robot.
The anthropomorphic arm, sometimes said to use revolute coordinates, is very popular. It is
compact (and so has a large working volume for its size) and avoids prismatic joints.
4
Cartesian
cylinderical
Polar
Dr Khaled Roshdy E. Atia
SCARA
Articulated
Figure 1.3: Five common arm geometries: (a) Cartesian, (b) polar, (c) cylindrical, (d) SCARA, (e)
Jointed or anthropomorphic.
Wrist Configurations
Wrist assembly is attached to end-of-arm. The mathematically ideal wrist allows rotation of
the held object about three axes at right angles, such as those shown in Figure 1.4, although
wrists with fewer axes are also common. There are several systems of names for the three
axes; the system adopted here is that of pitch, roll and yaw. It would be mathematically tidy ,
and often useful in practice, if the axes of rotation passed through some specified point in the
payload, such as the tip of a tool or the centre of a workpiece. This is not usually possible;
the joints are almost always some distance behind this point. A more realistic objective is to
make the three joint axes intersect at a point somewhere in the wrist, and this is commonly
done.
5
Dr Khaled Roshdy E. Atia
It is difficult to design a satisfactory three-axis wrist. The main problem is this: if the joint
actuators are attached directly to the joints, the wrist will be heavy and bulky, but if they are
not then some mechanical transmission must be devised to couple the wrist joints to actuators
mounted on the arm.
1. The mass at the end of the arm should be minimized. Otherwise the arm will have to be
stronger than it need be, and because of excessive inertia the robot will be slow.
2. The volume of the wrist mechanism should be minimized as it is liable to intrude into
the work space and to collide with obstacles.
3. The wrist must allow transmission of power to the gripper. This can be done by a
mechanical linkage.
End effector is attached to wrist assembly. The purpose of it is to carry a tool or workpiece.
The most general way of accomplishing this is to provide a hand which, like the human hand,
is almost infinitely adaptable. Such hands are still in the research stage. Industrial robots
generally have a two-jaw gripper, a special purpose gripper, a permanently mounted tool or a
fitting for interchangeable tools .
H TWO-JAW GRIPPERS
6
The crudest kind of two-jaw gripper is shown in Figure 1.5(a). It is rarely used except in
very cheap robots owing to its tendency to displace the load sideways as the jaws close. The
version of Figure 1.5(b) is preferred. The jaws are coupled by gears or a linkage. The variant
of Figure 1.5(c) has been fitted with jaw faces matching a particular part. Those of Figures
1.5(d), (e) and (f) are suitable for gripping objects with parallel faces.
Such grippers can use any kind of power source, but pneumatic actuation is particularly
suitable because of its inherent springiness: if the workpiece starts to slip, some resilience in
the jaws may enable the gripper to keep its hold. However, grippers are also available with
jaws powered by servomotors which allow servo control of jaw separation or gripping force.
Dr Khaled Roshdy E. Atia
The gripping force may be measured by strain gauges or the motor current.
Suction cups are used in egg packing machinery and glass handling as well as in robotics. A
common way of producing the (partial) vacuum is to use vacuum pump.
Both magnetic and vacuum grippers are of limited load capacity. Another property they
share is that if an object is held by a flat surface it will tend to slide if it is at an angle to
the horizontal or if it is accelerated too rapidly. Vacuum and magnetic grippers also need a
continuous supply of power.
TOOLS
Tools are generally attached to the outermost link of the wrist, in place of a gripper. Arc and
spot welding, spraying and grinding are robot applications in which the robot carries a tool.
Other tools are gas torches, ladles, drills, wrenches, screwdrivers and inspection equipment.
What are the factors that must be taken into account when deciding whether a tool is suitable
for robot use ?
In deciding whether a tool is suitable for robot use several factors must be taken into account:
2. Positional and angular accuracy with which it must aligned with the workpiece;
7
Dr Khaled Roshdy E. Atia
Figure 1.5: Varieties of a two-jaw gripper: (a) single moving jaw; (b) both jaws move symmetrically,
coupled by gears; (c) jaws shaped to match a cylindrical workpiece; (d) self adjusting parallel jaws;
(e) standard design of parallel jaw gripper; and (f) sliding jaws driven by rack and pinion for
straight-line motion.
4. Rigidity with which it must be held (tools such as grinders and wrenches exert a large
reaction on the robot);
5. Reliability (a tool such as a screwdriver which jams once in a thousand operations might
be acceptable by a person but is useless for a robot).
Robot Workspace
The workspace of robot manipulator is defined as the set of points that can be reached by its
end-effector. Workspace is also sometimes called work volume or work envelope. It cab also
be defined as: the volume in space that a robot’s end-effector can reach, both in position and
orientation.
8
H Cartesian Robot Workspace.
Dr Khaled Roshdy E. Atia
9
H SCARA robot Workspace.
Dr Khaled Roshdy E. Atia
10
H Cylindrical Robot Workspace.
Dr Khaled Roshdy E. Atia
I There are three types of power source in common use: pneumatic, hydraulic and electric.
acceleration (m/sec2 )
a = P*A − k*v
2
11
Figure 1.12: Single effect pneumatic cylinders.
~ They are used almost entirely in pick and place manipulators since the compressibility of air
Dr Khaled Roshdy E. Atia
~ In a pick and place machine the valves are either fully on or fully off, and each actuator stops
only at the end of its travel.
~ Pneumatic (and also hydraulic) cylinders cannot resist torque about the long axis and so, if
axial rotation is undesirable, an extra sliding guide must be used.
12
Figure 1.14: Pneumatic cylinders with Lateral guides to prevent axial rotation.
Dr Khaled Roshdy E. Atia
~ A pneumatic actuator is often used for the gripper of robot, where its elasticity is useful as it
automatically limits the force which can be applied and can cope with variations in the size
of the workpieces.
~ A pneumatic gripper actuator is very light and needs to be connected only by a narrow flexible
tube which is easy to feed through a complex wrist.
13
Figure 1.17: Rodless pneumatic cylinders.
Dr Khaled Roshdy E. Atia
~ Hydraulic actuators can generate an extremely high force in a small volume, with good rigidity
and servo control of position and velocity.
~ The basic components such as cylinders and valves are similar to those used in pneumatics.
~ Hydraulic motors are used to convert hydraulic energy into mechanical energy.
~ Hydraulic motors are very similar in construction to hydraulic pumps. In fact many pumps
may be used as motors without any modification.
~ Hydraulic motors are classified as gear, vane, piston or deri sine type.
~ Rotary motors are generally rated in terms of DISPLACEMENT or TORQUE. They may be
fixed displacement motors or variable displacement motors.
14
~ Fixed displacement motors normally have constant torque, the speed being varied by altering
the flow to the motor.
~ Variable displacement motors have variable torque and speed. With the input flow and oper-
ating pressure remaining constant, varying the displacement can vary the ratio between torque
and speed to suit the load requirements.
F GEAR MOTORS
Fluid is pumped into the motor inlet (P) where it has two courses to follow around the outside
in the space between the teeth to the exit at (T). Like the gear pump the gears in a gear
Dr Khaled Roshdy E. Atia
motor are closely fitted in the housing end and, for this reason, flow of fluid through the motor
from the inlet to the outlet can occur only when the gears rotate. In the gear motor fluid
drives both gears but only one gear is coupled to the output shaft to supply rotary mechanical
motion. Gear motors are of the fixed displacement type - this means that the output shaft
speed varied only when the flow rate through the motor changes. These motors are generally
two directional, the motor being reversed by direction fluid through the motor in the opposite
direction.
Electric Actuation
Electric actuation is the dominant method for industrial robots. Most electric robots use
servomotors; these can be divided into DC servomotors, which power the majority of existing
robots, and a second class sometimes called the brushless DC servomotor and sometimes the
AC servomotor, which is becoming increasingly popular. Electric actuation can also be done
by stepper motors, for a limited class of robots.
15
F DC Motors
These have been the most common kind of motor used in industrial robots until now. Figure
1.20 illustrates the construction of a DC motor, consisting of a stator, a rotor, and a com-
mutation mechanism. The stator consists of permanent magnets, creating a magnetic field
in the air gap between the rotor and the stator. The rotor has several windings arranged
symmetrically around the motor shaft. An electric current applied to the motor is delivered
to individual windings through the brush-commutation mechanism, as shown in the figure. As
the rotor rotates the polarity of the current flowing to the individual windings is altered. This
allows the rotor to rotate continually.
Dr Khaled Roshdy E. Atia
2. Controlling the speed of a Brush DC Motor is simple. The higher the armature voltage,
the faster the rotation. This relationship is linear to maximum speed.
3. simple adjustment of torque (the higher the armature current, the higher the torque
generated).
4. Inexpensive.
If a permanent magnet DC servomotor is turned inside out so that the magnets form the rotor
while the windings are fixed, then no commutator connection to the rotor is needed. Instead
the current in the windings must be switched by electronic commutation, or must alternate, in
16
synchronism with the motor rotation. The rotor may carry a slotted disc or a ring of magnets
to operate optical or Hall-effect switches to synchronize the commutation.
1. higher reliability;
2. low friction;
4. no sparks;
Dr Khaled Roshdy E. Atia
5. longer life;
The disadvantage of Brushless DC Motors is: They require an electronic controller to generate
the alternating coil currents.
Robot Sensors
Potentiometer
The potentiometer is an inexpensive and easy to use position sensor. It has a wiper contact
linked to a mechanical shaft that can rotate or slider that allows linear movement. This
motion (linear or rotational) causes the resistance value between the wiper/slider and the two
end connections to change. This change in resistance is proportional to position of the wiper
or slider.
17
A DC reference voltage is applied across the two outer fixed connections forming the resistive
element. The output voltage signal is taken from the wiper terminal of the sliding contact as
shown below.
Dr Khaled Roshdy E. Atia
The output signal (Vout) from the potentiometer is taken from the centre wiper connection as
it moves along the resistive track, and is proportional to the angular position of the shaft.
This is an inductive type position sensor which works on the same principle as the AC
transformer. The LVDT consists of 3 coils wound on a hollow tube. One forms the primary
coil and the other two coils form identical secondaries connected electrically together in series
but 180o out of phase either side of the primary coil. A moveable soft iron ferromagnetic core
(sometimes called an “armature”) which is connected to the object being measured, slides or
moves up and down inside the tubular body of the LVDT.
A small AC reference voltage called the “excitation signal” (2˘20 V rms, 2˘20 kHz) is applied
to the primary winding which in turn induces an EMF signal into the two adjacent secondary
windings (transformer principles). If the soft iron magnetic core armature is exactly in the
centre of the tube and the windings, “null position”, the two induced emf’s in the two secondary
windings cancel each other out as they are 180o out of phase, so the resultant output voltage
is zero. As the core is displaced slightly to one side or the other from this null or zero position,
the induced voltage in one of the secondaries will be become greater than that of the other
secondary and an output will be produced.
The polarity of the output signal depends upon the direction and displacement of the moving
core. The greater the movement of the soft iron core from its central null position the greater
will be the resulting output signal. The result is a differential voltage output which varies
18
Dr Khaled Roshdy E. Atia
linearly with the cores position. Therefore, the output signal from this type of position sensor
has both an amplitude that is a linear function of the cores displacement and a polarity that
indicates direction of movement.
The phase of the output signal can be compared to the primary coil excitation phase to know
the direction of travel.
Resolver (RVDT)
The resolver is a transformer-type angular position transducer consisting of a stator with two
excitation windings shifted in phase by 90o , and a rotor with one output winding, the ends
of which touch the slide rings fitted on the resolver shaft. Resolvers usually transform the
rotation angle into a phase of the voltage induced in the output winding. Figure 1.24 shows
their operating principle with sine excitation voltages and sine output voltage. Coefficient kr
is the resolver’s ratio.
An optical encoder in an incremental position readout, which uses a light source (LED), two
photosensors in quadrature and a glass or plastic disk between them, Figure 1.25. The disk
has fine etched lines radiating from its center, and as it rotates the sensors see patterns of
light and dark. The number of lines on the disk and some other techniques determines the
resolution, which is typically 1,024, 2,048 or even as high as 4,096 counts per revolution.
Encoders actually generate a quadrature signal, consisting of two square waves that are 90o
out of phase, figure 1.26.
19
Dr Khaled Roshdy E. Atia
Direction of rotation is determined by the phase difference between the two signals. For
example, if Channel A leads Channel B, then the encoder is rotating (say) CCW. If Channel
B leads Channel A, then the direction of rotation is CW.
However, the encoder is an incremental, not absolute, indicator of motion. In order to deter-
mine absolute position, most encoders add a third track, with just one window, and photosensor
as an indicator "zero reference track"; the shaft must rotate enough to pass the zero reference
position for this to signal.
Tachometer
The permanent magnet DC (PMDC) tachometer has the same structure as the PMDC motor.
The differece is that the former take motion as an input and gives voltage as output. Figure
1.27 shows a schmeatic of the tachometer.
The permanent magnet generates a steady and uniform magnetic field. Relative motion be-
tween the field and the rotor induces voltages, which is proportional to the speed of the rotor.
The inductance gives the tachometer a certain time constant so that the tachometer cannot
measure fast transient accurately.
1. Material handling
2. Processing operations
3. Assembly
4. Inspection
20
Dr Khaled Roshdy E. Atia
Figure 1.25: The optical encoder has a light source, quadrature light sensors and an interposed disk
with lines.
1
Index (I)
0
Channel A
1
Channel B
Figure 1.26: The A/B quadrature and index outputs of the optical encoder .
Robot Programming
21
Figure 1.27: A permanent magnet DC (PMDC) tachometer.
Dr Khaled Roshdy E. Atia
22
Chapter 2
2.1 INTRODUCTION
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.
Description of a position
Once a coordinate system is established, we can locate any point in the universe with a
3 × 1 position vector. Because we will often define many coordinate systems in addition to
the universe coordinate system, vectors must be tagged with information identifying which
coordinate system they are defined within. In this course, vectors are written with a leading
superscript indicating the coordinate·system to which they are referenced — for example, AP .
This means that the components of AP 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.
Figure 2.1 pictorially represents a coordinate system, {A}, with three mutually orthogonal
unit vectors with solid heads. A point AP is represented as a vector and can equivalently be
thought of as a position in space, or simply as an ordered set of three numbers. Individual
23
elements of a vector are given the subscripts x, y, and z:
x
A
P =
y
z
frame
Dr Khaled Roshdy E. Atia
Description of an orientation
In order to describe the orientation of a body, we will attach a coordinate system to the body
and then give a description of this coordinate system relative to the reference system. In Fig.
2.2, coordinate system {B} has been attached to the body in a known way. A description of
{B} relative to {A} now suffices to give the orientation of the body.
Cos(X̂B , X̂A ) Cos(ŶB , X̂A ) Cos(ẐB , X̂A )
" #
A
BR = A X̂
B
A Ŷ
B
A Ẑ
B
= Cos(X̂B , ŶA ) Cos(ŶB , ŶA ) Cos(ẐB , ŶA )
(2.1)
Cos(X̂B , ẐA ) Cos(ŶB , ẐA ) Cos(ẐB , ẐA )
B A −1 A T
AR = BR = BR (2.2)
24
Dr Khaled Roshdy E. Atia
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. It is defined by a set of four
vectors giving position and orientation information. For example, in Fig. 2.2, one vector locates
the fingertip 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.
For example, frame {B} is described by " AR
B " and a " AP
BORG " where AP
BORG is the
vector that locates the origin of the frame {B} :
A
{B} = B
R, A
PBORG (2.3)
In Fig. 2.3, 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}.
25
2.3 Mappings: Changing descriptions from frame to frame
In many cases 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.
In Fig. 2.4, we have a position defined by the vector BP . We wish to express this point in
Dr Khaled Roshdy E. Atia
space in terms of frame {A}, when {A} has the same orientation as {B}. In this case, {B}
differs from {A} only by a translation, which is given by AP
BDRG , a vector that locates the
origin of {B} relative to {A}.
Because both vectors are defined relative to frames of the same orientation, we calculate the
description of point P relative to {A}, AP , by vector addition:
A A B
P = PBDRG + P (2.4)
Note that only in the special case of equivalent orientations may we add vectors that are
defined in terms of different frames.
P
26
Mappings Involving Rotated Frames
As in Fig. 2.5, a situation will arise often where we know the definition of a vector BP with
respect to some frame, {B}, and we would like to know its definition AP with respect to
another frame, {A}, where the origins of the two frames are coincident. This computation is
P
Dr Khaled Roshdy E. Atia
possible when a description of the orientation of {B} is known relative to {A}. This orientation
is given by the rotation matrix A R.
B
AP can be calculated as
A A B
P = BR P (2.5)
EXAMPLE
Figure 2.6 shows a frame {B} that is rotated relative to frame {A} about Ẑ by 30 degrees.
Here, Ẑ is pointing out of the page. Given BP = [ 0 2 0 ]T . Find AP ?
27
Solution
Cos(X̂B , X̂A ) Cos(ŶB , X̂A ) Cos(ẐB , X̂A )
A
B R = Cos(X̂B , ŶA )
Cos(ŶB , ŶA ) Cos(ẐB , ŶA )
Cos(X̂B , ẐA ) Cos(ŶB , ẐA ) Cos(ẐB , ẐA )
Cos(30) Cos(120) Cos(90) 0.866 −0.500 0.000
= Cos(60) Cos(30) Cos(90) = 0.500 0.866 0.000
Dr Khaled Roshdy E. Atia
Cos(90) Cos(90) Cos(0) 0.000 0.000 1.000
Now, we have
A A B
P = R P
B
0.866 −0.500 0.000 0 −1
= 0.500 0.866 0.000 · 2 = 1.732
0.000 0.000 1.000 0 0
We can first change BP to its description relative to an intermediate frame that has the same
orientation as {A}, but whose origin is coincident with the origin of {B}. This is done by
premultiplying by A R. We then account for the translation between origins by simple vector
B
Equation 2.6 describes a general transformation mapping of a vector from its description in
one frame to a description in a second frame. Note that the B’s cancel, leaving all quantities
as vectors written in terms of A, which may then be added.
28
Dr Khaled Roshdy E. Atia
A A B
P = BT P (2.7)
This aids in writing compact equations and is conceptually clearer than 2.6. Equation 2.7 has
the structure
A P AR AP
BORG P
B
B
= (2.8)
1 0 0 0 1 1
The 4 x 4 matrix T in 2.7 is called a homogeneous transform. For our purposes, it can be
regarded purely as a construction used to cast the rotation and translation of the general
transform into a single matrix form.
EXAMPLE
Figure 2.8 shows a frame {B}, which is rotated relative to frame {A} about ẐA by 30 degrees,
translated 10 units in X̂A and translated 5 units in ŶA . Find AP , where BP = [3 7 0]T .
Cos(30) Cos(120) Cos(90) 10 0.866 −0.5 0 10
Cos(60) Cos(30) Cos(90) 5 0.5 0.866 0 5
A
BT =
=
Cos(90) Cos(90) Cos(0) 0 0 0 1 0
0 0 0 1 0 0 0 1
29
Dr Khaled Roshdy E. Atia
Thus,
A A B
P = BR P +A PBORG
0.866 −0.5 0 3 10 9.098
=
0.5 0.866 0
+ =
7 5 12.562
0 0 1 0 0 0
0.866 −0.5 0 10 3 9.098
0.5 0.866 0 5 7 12.562
A
P =
· =
0 0 1 0 0 0
0 0 0 1 1 1
COMPOUND TRANSFORMATIONS
In Fig. 2.9, we have CP and wish to find AP .
Frame {C} is known relative to frame {B}, and frame {B} is known relative to frame {A}.
We can transform CP into BP as
B
P =B
C T
C
P − − − − − − − (i)
30
Dr Khaled Roshdy E. Atia
Figure 2.9: Compound frames: Each is known relative to the previous one.
A
P =A
B T
B
P − − − − − − − (ii)
A
P =A
B T
B
CT
C
P − − − − − − − (iii)
In terms of the known descriptions of {B} and {C}, we can give the expression for AT
C as
AR BR AR BP +A PBORG
A B C B CORG
CT = (2.10)
0 0 0 1
INVERTING A TRANSFORM
Consider a frame {B} that is known with respect to a frame {A}—that is, we know the value
of AT , i.e.
B
AR AP
BORG
A B
BT =
0 0 0 1
Sometimes we will wish to invert this transform, in order to get a description of {A} relative
to {B}—that is, BT .
A
31
we can write the form of BT as
A
A RT −A
BR
T AP
BORG
B −1 B
AT =A
B T = (2.11)
0 0 0 1
Translational operators
A translation moves a point in space a finite distance along a given vector direction. With
Dr Khaled Roshdy E. Atia
this interpretation of actually translating the point in space, only one coordinate system need
be involved. Figure 2.7 indicates pictorially how a vector AP is translated by a vector A Q.
1
Here, the vector AQ gives the information needed to perform the translation.
A
P2 =A Q +A P1
A A
P2 = DQ (q) P1 (2.12)
where q is the signed magnitude of the translation along the vector direction Q̂. The DQ
32
operator may be thought of as a homogeneous transform of a special simple form:
1 0 0 qx
0 qy
1 0
DQ (q) =
(2.13)
0 0 1 qz
0 0 0 1
q
Dr Khaled Roshdy E. Atia
where qx , qy and qz are the components of the translation vector Q and q = qx2 + qy2 + qz2 .
Now that the "DQ " notation has been introduced, we may also use it to describe a frame
{ζ} with a rotation matrix AR
ζ equal the identity matrix I3×3 and AP
ζORG = [qx qy qz ]T .
Rotational operators
Another interpretation of a rotation matrix is as a rotational operator that operates on a
vector AP and changes that vector to a new vector, AP
1 2, by means of a rotation, R. Usually,
when a rotation matrix is shown as an operator, no sub- or superscripts appear, because it is
not viewed as relating two frames. That is, we may write
A A
P2 = R P1
The rotation matrix that rotates vectors through some rotation, R, is the same as the rotation
matrix that describes a frame rotated by R relative to the reference frame.
Although a rotation matrix is easily viewed as an operator, we will also define another notation
for a rotational operator that clearly indicates which axis is being rotated about:
A A
P2 = RK (θ) P1 (2.14)
In this notation, "RK (θ)" is a rotational operator that performs a rotation about the axis
direction K̂ by θ degrees. This operator can be written as a homogeneous transform whose
position-vector part is zero. For example, the operator that rotates about the Ẑ axis by θ can
be written as
Cosθ −Sinθ 0 0
Sinθ Cosθ 0 0
RZ (θ) =
(2.15)
0 0 1 0
0 0 0 1
Of course, to rotate a position vector, we could just as well use the 3 x 3 rotation matrix part
33
of the homogeneous transform. The "RK " notation, therefore, may be considered to represent
a 3 x 3 or a 4 x 4 matrix.
EXAMPLE
Figure 2.11 shows a vector AP = [0 2 0]T . We wish to compute the vector obtained by
l
Solution
The rotation matrix that rotates vectors by 30 degrees about Ẑ is the same as the rotation
matrix that describes a frame rotated 30 degrees about Ẑ relative to the reference frame.
Thus, the correct rotational operator is
0.866 −0.5 0
RZ (30) = 0.5 0.866 0
0 0 1
we calculate AP as
2
0.866 −0.5 0 0 −1
A A
P2 = RZ (30) P1 = 0.5 0.866 0 2 = 1.732
0 0 1 0 0
Transformation operators
As with vectors and rotation matrices, a frame has another interpretation as a transformation
operator. In this interpretation, only one coordinate system is involved, and so the symbol T
is used without sub- or superscripts. The operator T rotates and translates a vector AP to
1
34
A transform is usually thought of as being in the form of a homogeneous transform with general
rotation-matrix and position-vector parts.
EXAMPLE
Solution
The operator T, which performs the translation and rotation, is
0.866 −0.5 0 10
0.5 0.866 0 5
T =
0 0 1 0
0 0 0 1
0.866 −0.5 0 10 3 9.098
9.098
0.5 0.866 0 5 7 12.562
A A
P2 = T P1 =
= = 12.562
0 0 1 0 0 0
0
0 0 0 1 1 1
35