Lecture 3
Lecture 3
Robotics
Lecture 3
Manipulator Kinematics
Introduction
• Kinematics is the science of motion that treats the subject without regard to the
forces that cause it
• Within the science of kinematics, one studies the position, the velocity, the
acceleration, and all higher order derivatives of the position variables (with respect
to time or any other variable(s)).
• Hence, the study of the kinematics of manipulators refers to all the geometrical
and time-based properties of the motion.
• The relationships between these motions and the forces and torques that cause
them constitute the problem of dynamics, which is the subject of Chapter 6.
Introduction
• In this chapter, we consider position and orientation of the manipulator linkages in
static situations.
• In order to deal with the complex geometry of a manipulator, we will affix frames
to the various parts of the mechanism and then describe the relationships between
these frames.
• The central topic of this chapter is a method to compute the position and
orientation of the manipulator’s end-effector relative to the base of the
manipulator as a function of the joint variables.
Link Description
• A manipulator may be thought of as a set of bodies connected in a chain by joints.
• These bodies are called links. Joints form a connection between a neighboring pair
of links. The term lower pair is used to describe the connection between a pair of
links.
• There are only six types of lower pair joints as follows:
• R-joint= Revolute joint → (1 DOF)
• P-joint= Prismatic joint → (1 DOF)
• H-joint= Helical joint (Screw joint) → (1 DOF)
• C-joint= Cylindrical joint → (2 DOF)
• S-joint= Spherical Joint (Ball joint) → (3 DOF)
• PL-joint= Planar joint → (3 DOF)
• Most manipulators have revolute joints or have sliding joints called prismatic
joints
• In the rare case that a mechanism is built with a joint having n degrees of freedom,
it can be modeled as n joints of one degree of freedom connected with n-1 links of
zero length
• The links are numbered starting from the immobile base of the arm, which might
be called link 0. The first moving body is link 1, and so on, out to the free end of
the arm, which is link n.
Link Description
• The links are numbered starting from
• The immobile base of the arm, which might be called link 0
• The first moving body is link 1, and so on, out to the free end of the arm, which is
link n
Link and Link Connection Description
Link Length ai-1 Link Twist 𝜶𝒊−𝟏
Link Offset di Joint Angle 𝜽𝒊
Link Description
• Joint axes are defined by lines in space. Joint axis i is defined by a line in space,
or a vector direction, about which link i rotates relative to link i − 1.
• It turns out that, for kinematic purposes, a link can be specified with two numbers,
which define the relative location of the two axes in space.
• Link Length ai-1 is the distance measured along a line that is mutually
perpendicular to both axes. This mutual perpendicular always exists
• It is unique except when both axes are parallel, in which case there are many
mutual perpendiculars of equal length
Link Description
• The second parameter needed to define the relative location of the two axes is called the
link twist.
• If we imagine a plane whose normal is the mutually perpendicular line just constructed,
we can project the axes i − 1 and i onto this plane and measure the angle between them.
• This angle is measured from axis i − 1 to axis i in the right-hand sense about ai−1
• In the case of intersecting axes, twist is measured in the plane containing both axes, but
the sense of 𝛼𝑖−1 is lost. In this special case, one is free to assign the sign of 𝛼𝑖−1
arbitrarily
Intermediate links in the chain
• Neighboring links have a common joint axis between them
• One parameter of interconnection has to do with the distance along this common
axis from one link to the next.
• This parameter is called the link offset. The offset at joint axis i is called di
• The second parameter describes the amount of rotation about this common axis
between one link and its neighbor.
• The first parameter of interconnection is the link offset, di, which is the signed
distance measured along the axis of joint i from the point where ai−1 intersects the
axis to the point where ai intersects the axis.
• At the ends of the chain, it will be our convention to assign zero to these
quantities. a0 = an = 0.0 and α0 = αn = 0.0.
• Link offset, di, and joint angle, θi, are well defined for joints 2 through n − 1
according to the conventions discussed in this section.
• Exactly the same statements apply to joint n. These conventions have been chosen
so that, in a case where a quantity could be assigned arbitrarily, a zero value is
assigned so that later calculations will be as simple as possible
• In the usual case of a revolute joint, θi is called the joint variable, and the other
three quantities would be fixed link parameters.
• For prismatic joints, di is the joint variable, and the other three quantities are fixed
link parameters.
Link Parameters
• The definition of mechanisms by means of these quantities is a convention usually
called the Denavit–Hartenberg notation
• At this point, we could inspect any mechanism and determine the Denavit–
Hartenberg parameters that describe it.
• In the case of a six-jointed robot with all revolute joints, the 18 numbers are in the
form of six sets of (ai, αi, di)
Convention For Affixing Frames To Links
• In order to describe the location of each link relative to its neighbors, we define a
frame attached to each link
• The link frames are named by number according to the link to which they are
attached. That is, frame {i} is attached rigidly to link i.
• The 𝑍መ -axis of frame {i}, called 𝑍መ𝑖 , is coincident with the joint axis i.
• The origin of frame {i} is located where the ai perpendicular intersects the joint i
axis. 𝑋𝑖 points along ai in the direction from joint i to joint i + 1
Convention For Affixing Frames To Links
• In the case of ai = 0, 𝑋𝑖 is normal to
the plane of 𝑍መ𝑖 and 𝑍መ𝑖+1 .
• This frame does not move; for the problem of arm kinematics, it can be considered
the reference frame. We may describe the position of all other link frames in terms
of this frame.
• Frame {0} is arbitrary, so it always simplifies matters to choose 𝑍መ0 along axis 1
and to locate frame {0} so that it coincides with frame {1} when joint variable 1 is
zero.
• Using this convention, we will always have a0 = 0.0, α0 = 0.0. Additionally, this
ensures that d1 = 0.0 if joint 1 is revolute, or θ1 = 0.0 if joint 1 is prismatic.
Convention For Affixing Frames To Links
• For joint n revolute, the direction of 𝑋𝑁 is chosen so that it aligns with 𝑋𝑁−1
• When θn = 0.0, and the origin of frame {N} is chosen so that dn = 0.0.
• For joint n prismatic, the direction of 𝑋𝑁 is chosen so that θn = 0.0, and the origin
of frame {N} is chosen at the intersection of 𝑋𝑁−1 and joint axis n when dn = 0.0
Figure shows a three-link planar arm. Because all three joints are revolute, this
manipulator is sometimes called an RRR (or 3R) mechanism.
Assign link frames to the mechanism and give the Denavit–Hartenberg parameters.
Example
Example
Figure (a) shows a robot having three degrees of freedom and one prismatic joint. This manipulator
can be called an ‘‘RPR mechanism,’’ in a notation that specifies the type and order of the joints.
It is a ‘‘cylindrical’’ robot whose first two joints are analogous to polar coordinates when viewed
from above. The last joint (joint 3) provides ‘‘roll’’ for the hand.
Figure (b) shows the same manipulator in schematic form. Note the symbol used to represent
prismatic joints, and note that a ‘‘dot’’ is used to indicate the point at which two adjacent axes
intersect. Also, the fact that axes 1 and 2 are orthogonal has been indicated
Figure (a) shows the manipulator with the prismatic joint at minimum extension; the assignment of
link frames is shown in Fig. (b)
Note that frame {0} and frame {1} are shown as exactly coincident in this figure, because the robot is
drawn for the position θ1 = 0. Note that frame {0}, although not at the bottom of the flanged base of
the robot, is nonetheless rigidly affixed to link 0, the nonmoving part of the robot. Just as our link
frames are not used to describe the kinematics all the way out to the hand, they need not be attached
all the way back to the lowest part of the base of the robot. It is sufficient that frame {0} be attached
anywhere to the nonmoving link 0, and that frame {N}, the final frame, be attached anywhere to the
last link of the manipulator. Other offsets can be handled later in a general way.
Note that rotational joints rotate about the 𝑍መ axis of the associated frame, but prismatic joints slide
መ In the case where joint i is prismatic, θi is a fixed constant, and di is the variable.
along 𝑍.
If di is zero at minimum extension of the link, then frame {2} should be attached where shown, so
that d2 will give the true offset. The link parameters are shown in Fig.
• For any given robot, this transformation will be a function of only one variable,
the other three parameters being fixed by mechanical design.
𝒊−𝟏
• By defining a frame for each link, we can solve a subproblem, namely 𝒊𝑻, we
will further break each subproblem into four subsubproblems.
Example
Using the link parameters found in earlier
example for the robot shown, compute the
individual transformations for each link
Substituting the parameters into above equation, we obtain
Examples: Kinematics Of Industrial Robot
• In this section, we work out the kinematics of typical industrial robots. First we consider the
Unimation PUMA 560, a rotary-joint manipulator with six degrees of freedom (6R mechanism).
• We will solve for the kinematic equations as functions of the joint angles.
PUMA 560
• Figure in previous slide shows link frame assignment of the robot with all joint angles equal to zero
• This figure shows a detail of the forearm of the robot
• Note that the frame {0} (not shown) is coincident with frame {1} when θ1 is zero. Note also that,
for this robot, as for many industrial robots, the joint axes of joints 4, 5, and 6 all intersect at a
common point, and this point of intersection coincides with the origin of frames {4}, {5}, and {6}.
• Furthermore, the joint axes 4, 5, and 6 are mutually orthogonal. This wrist mechanism is illustrated
schematically in Fig.
PUMA 560
• The link parameters corresponding to this placement of link frames are shown
below:
PUMA 560
PUMA 560
We now form 60𝑇 by matrix multiplication of the individual link matrices.
While forming this product, we will derive some subresults that will be useful when
solving the inverse kinematic problem in Chapter 4.
PUMA 560
PUMA 560
• Figure shows a typical situation in which a robot has grasped some sort of tool and is to position
the tool tip to a user-defined location.
Frames With Standard Names
• The base frame, {B}
• {B} is located at the base of the manipulator. It is merely another name for frame {0}. It is
affixed to a nonmoving part of the robot, sometimes called link 0.
𝐵
• Once 𝑊 𝑇 has been computed via the kinematic equations, we can use Cartesian transforms, as
studied in Chapter 2, to calculate {T} relative to {S}. Solving a simple transform equation leads to
• Equation implements what is called the WHERE function in some robot systems. It computes
‘‘where’’ the arm is.
• For the situation in Fig. 3.28, the output of WHERE would be the position and orientation of the
pin relative to the table top.