0% found this document useful (0 votes)
48 views45 pages

Lecture 3

Introduction to robotics NUST Mechatronics Eng lec#3

Uploaded by

wajdankhan003
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views45 pages

Lecture 3

Introduction to robotics NUST Mechatronics Eng lec#3

Uploaded by

wajdankhan003
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 45

MTS-417 Introduction to

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 Chapters 5 and 6, we will consider the kinematics when velocities and


accelerations are involved

• 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)

• What are higher pair joints?


Link Description
• Mechanical-design considerations favor manipulators’ generally being constructed
from joints that exhibit just one degree of freedom

• 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

• We will use this definition of the twist of link i − 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.

• This is called the joint angle, θi


Link and Intermediate Link Variables
• Recall that ai−1 is the mutual perpendicular between the two axes of link i − 1.
Likewise, ai is the mutual perpendicular defined for link i.

• 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.

• The link offset di is variable if joint i is prismatic.

• The second parameter of interconnection is the angle made between an extension


of ai−1 and ai measured about the axis of joint i.

• This parameter is named θi and is variable for a revolute joint


Link Parameters and Joint Variables
First and last links in the chain
• Link length, ai , and link twist, αi, depend on joint axes i and i +1.

• Hence, a1 through an−1 and α1 through αn−1 are defined.

• 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.

• If joint 1 is revolute, the zero position for θ1 may be chosen arbitrarily; d1 = 0.


will be our convention
First and last links in the chain
• Similarly, if joint 1 is prismatic, the zero position of d1 may be chosen
arbitrarily; θ1 = 0.0 will be our convention

• 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.

• For a six-jointed robot, 18 numbers would be required to describe the fixed


portion of its kinematics completely

• 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 .

• We define αi as being measured in the


right-hand sense about 𝑋෠𝑖 , and so we
see that the freedom of choosing the
sign of αi in this case corresponds to
two choices for the direction of 𝑋෠𝑖 .𝑌෠𝑖
is formed by the right-hand rule to
complete the ith frame.

• Figure shows the location of frames


{i−1} and {i} for a general
manipulator.
Convention For Affixing Frames To Links
First and last links in the chain
• We attach a frame to the base of the robot, or link 0, called frame {0}.

• 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

Summary Of The Link Parameters In Terms Of The Link Frames


Summary Of Link-frame Attachment Procedure
1. Identify the joint axes and imagine (or draw) infinite lines along them. For steps 2
through 5 below, consider two of these neighboring lines (at axes i and i + 1).
2. Identify the common perpendicular between them, or point of intersection. At the point
of intersection, or at the point where the common perpendicular meets the ith axis,
assign the link-frame origin.
3. Assign the 𝑍መ𝑖 axis pointing along the ith joint axis.
4. Assign the 𝑋෠𝑖 axis pointing along the common perpendicular, or, if the axes intersect,
assign 𝑋෠𝑖 to be normal to the plane containing the two axes.
5. Assign the 𝑌෠𝑖 axis to complete a right-hand coordinate system.
6. Assign {0} to match {1} when the first joint variable is zero. For {N}, choose an origin
location and 𝑋෠𝑁 direction freely, but generally so as to cause as many linkage
parameters as possible to become zero.
Example

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.

The link parameters are shown on next slide.


• Note that θ2 is zero for this robot and that d2 is a
variable. Axes 1 and 2 intersect, so a1 is zero. Angle α1
must be 90 degrees in order to rotate 𝑍መ1 so as to align
with 𝑍መ2 (about 𝑋෠1 ).
Example
• Figure 3.12(a) shows a three-link, 3R
manipulator for which joint axes 1 and 2
intersect and axes 2 and 3 are parallel.

Figure 3.12(b) shows the kinematic schematic


of the manipulator. Note that the schematic includes annotations indicating that the first two axes are
orthogonal and that the last two are parallel.

Demonstrate the nonuniqueness of frame assignments and of the Denavit-Hartenberg parameters by


showing several possible correct assignments of frames{1} and {2}.
Derivation Of Link Transformations
• We wish to construct the transform that defines frame {i}relative to the frame
{i−1}.

• In general, this transformation will be a function of the four link parameters.

• 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.

• Each of these four transformations will be a function of one link parameter


only and will be simple enough that we can write down its form by inspection.
Derivation Of Link Transformations
• Figure shows the same pair of joints as before with frames
{P}, {Q}, and {R} defined.

• Frame {R} differs from frame {i − 1} only by a rotation of αi−1


• Frame {Q} differs from {R} by a translation ai−1
• Frame {P} differs from {Q} by a rotation θi
• Frame {i} differs from {P} by a translation di
Derivation Of Link Transformations

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

This equation constitute the kinematics of the


PUMA 560.

They specify how to compute the position and


orientation of frame {6} relative to frame {0} of
the robot.

These are the basic equations for all kinematic


analysis of this manipulator.
Frames With Standard Names
• As a matter of convention, it will be helpful if we assign specific names and locations to certain
‘‘standard’’ frames associated with a robot and its workspace.

• 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.

• The station frame {S}


• As far as the user of this robot system is concerned, {S} is the universe frame, and all actions
of the robot are performed relative to it. It is sometimes called the task frame, the world frame,
or the universe frame. The station frame is always specified with respect to the base frame,
that is, 𝐵𝑆𝑇

• The wrist frame, {W}


• It is affixed to the last link of the manipulator. It is another name for frame {N}. {W} moves
with the last link of the manipulator. It is defined relative to the base frame - that is, {W} =
𝐵 0
𝑊𝑇 = 𝑁𝑇
Frames With Standard Names
• The tool frame, {T}
• {T} is affixed to the end of any tool the robot happens to be holding. When the hand is empty,
{T} is usually located with its origin between the fingertips of the robot.
• The tool frame is always specified with respect to the wrist frame. In Fig., the tool frame is
defined with its origin at the tip of a pin that the robot is holding
• The goal frame, {G}
• {G} is a description of the location to which the robot is
to move the tool. Specifically this means that, at the end
of the motion, the tool frame should be brought to
coincidence with the goal frame. {G} is always specified
relative to the station frame.
• In Fig. the goal is located at a hole into which we want
the pin to be inserted.

All robot motions may be described in terms of these frames.


Their use helps to give us a standard language for talking about
robot tasks.
Where Is Tool?
• One of the first capabilities a robot must have is to be able to calculate the position and orientation
of the tool it is holding (or of its empty hand) with respect to a convenient coordinate system. That
is, we wish to calculate the value of the tool frame, {T}, relative to the station frame, {S}.

𝐵
• 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.

You might also like