Académique Documents
Professionnel Documents
Culture Documents
INTRODUCTION
1.1 Robotics
Robotics is a relatively young field of modern technology that crosses tra-
ditional engineering boundaries. Understanding the complexity of robots
and their applications requires knowledge of electrical engineering, mechan-
ical engineering, systems and industrial engineering, computer science, eco-
nomics, and mathematics. New disciplines of engineering, such as manu-
facturing engineering, applications engineering, and knowledge engineering
have emerged to deal with the complexity of the field of robotics and factory
automation.
This book is concerned with fundamentals of robotics, including kine-
matics, dynamics, motion planning, computer vision, and control.
Our goal is to provide a complete introduction to the most important con-
cepts in these subjects as applied to industrial robot manipulators.
The science of robotics has grown tremendously over the past twenty
years, fueled by rapid advances in computer and sensor technology as well
as theoretical advances in control and computer vision. In addition to the
topics listed above, robotics encompasses several areas not covered in this
text such as locomotion, including wheeled and legged robots, flying and
swimming robots, grasping, artificial intelligence, computer architectures,
programming languages, and computer-aided design. A complete treatment
of the discipline of robotics would require several volumes. Nevertheless, at
the present time, the vast majority of robot applications deal with indus-
trial robot arms operating in structured factory environments so that a first
introduction to the subject of robotics must include a rigorous treatment of
the topics in this text.
3
4 CHAPTER 1. INTRODUCTION
use the convention (R) for representing revolute joints and (P ) for prismatic
joints and draw them as shown in Figure 1.2.
Revolute Prismatic
2D
3D
Each joint represents the interconnection between two links, say ℓi and ℓi+1 .
We denote the axis of rotation of a revolute joint, or the axis along which a
prismatic joint slides by zi if the joint is the interconnection of links i and
i + 1. The joint variables, denoted by θi for a revolute joint and di for the
prismatic joint, represent the relative displacement between adjacent links.
We will make this precise in Chapter 3.
(iv) Geometry
Most industrial manipulators at the present time have six or fewer degrees-
of-freedom. These manipulators are usually classified kinematically on the
basis of the first three joints of the arm, with the wrist being described
separately. The majority of these manipulators fall into one of five geo-
metric types: articulate (RRR), spherical (RRP), SCARA (RRP),
cylindrical (RPP), or cartesian (PPP).
We discuss each of these in detail below. Each of these five configura-
tions are serial link robots. A sixth and fundamentally distinct class of
manipulators is the so-called parallel robot. In a parallel configuration
the links are arranged in a closed rather than open kinematic chain. We
1.3. COMPONENTS AND STRUCTURE OF ROBOTS 11
such as the Motoman SK16, shown in Figure 1.4. In both of these arrange-
ments joint axis z2 is parallel to z1 and both z1 and z2 are perpendicular to
z0 . The structure and terminology associated with the elbow manipulator
are shown in Figure 1.5. Its workspace is shown in Figure 1.6. The revolute
configuration provides for relatively large freedom of movement in a compact
space. The parallelogram linkage, although less dextrous typically than the
elbow manipulator configuration, nevertheless has several advantages that
make it an attractive and popular design. The most notable feature of the
12 CHAPTER 1. INTRODUCTION
z0
z1 z2
θ2 θ3
Shoulder
Forearm
Elbow
θ1
Body
Base
Figure 1.5: Structure of the elbow manipulator.
The cylindrical configuration is shown in Figure 1.13. The first joint is rev-
olute and produces a rotation about the base, while the second and third
joints are prismatic. As the name suggests, the joint variables are the cylin-
drical coordinates of the end-effector with respect to the base. A cylindrical
robot, the Seiko RT3300, is shown in Figure 1.14, with its workspace shown
in Figure 1.15.
14 CHAPTER 1. INTRODUCTION
θ3
θ2
θ1
Top Side
Parallel Manipulator
A parallel manipulator is one in which the links form a closed chain. More
specifically, a parallel manipulator has two or more independent kinematic
chains connecting the base to the end-effector. Figure 1.19 shows the ABB
IRB 940 Tricept robot, which has a parallel configuration. The closed chain
kinematics of parallel robots can result in greater structural rigidity, and
hence greater accuracy, than open chain robots. The kinematic description
of parallel robots fundamentally different from that of serial link robots and
1.3. COMPONENTS AND STRUCTURE OF ROBOTS 15
z0
z1
θ2
d3
z2
θ1
Figure 1.8: The Stanford Arm. Photo courtesy of the Coordinated Science
Lab, University of Illinois at Urbana-Champaign.
encoders located at the joints, either on the shaft of the motor that actuates
the joint or on the joint itself. There is typically no direct measurement of
the end-effector position and orientation. One must rely on the assumed
geometry of the manipulator and its rigidity to infer (i.e., to calculate) the
end-effector position from the measured joint angles. Accuracy is affected
therefore by computational errors, machining accuracy in the construction
of the manipulator, flexibility effects such as the bending of the links under
gravitational and other loads, gear backlash, and a host of other static and
dynamic effects. It is primarily for this reason that robots are designed
with extremely high rigidity. Without high rigidity, accuracy can only be
improved by some sort of direct sensing of the end-effector position, such as
with vision.
Once a point is taught to the manipulator, however, say with a teach
pendant, the above effects are taken into account and the proper encoder
values necessary to return to the given point are stored by the controlling
computer. Repeatability therefore is affected primarily by the controller
resolution. Controller resolution means the smallest increment of mo-
1.3. COMPONENTS AND STRUCTURE OF ROBOTS 17
tion that the controller can sense. The resolution is computed as the total
distance traveled by the tip divided by 2n , where n is the number of bits
of encoder accuracy. In this context, linear axes, that is, prismatic joints,
typically have higher resolution than revolute joints, since the straight line
distance traversed by the tip of a linear axis between two points is less than
the corresponding arclength traced by the tip of a rotational link.
In addition, as we will see in later chapters, rotational axes usually result
in a large amount of kinematic and dynamic coupling among the links with
a resultant accumulation of errors and a more difficult control problem. One
may wonder then what the advantages of revolute joints are in manipulator
design. The answer lies primarily in the increased dexterity and compactness
of revolute joint designs. For example, Figure 1.21 shows that for the same
range of motion, a rotational link can be made much smaller than a link
with linear motion. Thus manipulators made from revolute joints occupy a
smaller working volume than manipulators with linear axes. This increases
the ability of the manipulator to work in the same space with other robots,
machines, and people. At the same time revolute joint manipulators are
better able to maneuver around obstacles and have a wider range of possible
applications.
18 CHAPTER 1. INTRODUCTION
z1 z2
θ2
d3
z0
θ1
Figure 1.10: The SCARA (Selective Compliant Articulated Robot for As-
sembly).
Figure 1.11: The Epson E2L653S SCARA Robot. Photo Courtesy of Epson.
position A, from which point the robot is to follow the contour of the surface
S to the point B, at constant velocity, while maintaining a prescribed force
F normal to the surface. In so doing the robot will cut or grind the surface
according to a predetermined specification.
d3
z2
z1
d2
z0
θ1
in which α1 and α2 are the lengths of the two links, respectively. Also
the orientation of the tool frame relative to the base frame is given by
the direction cosines of the x2 and y2 axes relative to the x0 and y0 axes,
that is,
are nonlinear, a solution may not be easy to find nor is there a unique so-
lution in general. We can see, for example, in the case of a two-link planar
mechanism that there may be no solution, if the given (x, y) coordinates are
out of reach of the manipulator. If the given (x, y) coordinates are within
the manipulator’s reach there may be two solutions as shown in Figure 1.27,
the so-called elbow up and elbow down configurations, or there may be
exactly one solution if the manipulator must be fully extended to reach the
point. There may even be an infinite number of solutions in some cases
(Problem 1.25).
Consider the diagram of Figure 1.28. Using the Law of Cosines we see
that the angle θ2 is given by
x2 + y 2 − α12 − α22
cos θ2 = := D. (1.5)
2α1 α2
d2
z1 d3
d1 z0
z2
α2 sin θ2
θ1 = tan−1 (y/x) − tan−1 . (1.9)
α1 + α2 cos θ2
Notice that the angle θ1 , depends on θ2 . This makes sense physically
since we would expect to require a different value for θ1 , depending on which
solution is chosen for θ2 .
1.4. OUTLINE OF THE TEXT 25
velocities are found from the end-effector velocities via the inverse Jacobian
θ̇ = J −1 ẋ (1.12)
where J −1 is given by
" #
1 α2 cθ1 +θ2 α2 sθ1 +θ2
J −1
= (1.13)
α1 α2 sθ2 −α1 cθ1 − α2 cθ1 +θ2 −α1 sθ1 − α2 sθ1 +θ2
Figure 1.19: The ABB IRB940 Tricept Parallel Robot. Photo courtesy of
ABB.
Problem 5: Vision
Cameras have become reliable and relatively inexpensive sensors in many
robotic applications. Unlike joint sensors, which give information about the
internal configuration of the robot, cameras can be used not only to measure
the position of the robot but also to locate objects external to the robot in its
workspace. In Chapter ?? we discuss the use of cameras to obtain position
and orientation of objects.
Problem 6: Dynamics
A robot manipulator is basically a positioning device. To control the position
we must know the dynamic properties of the manipulator in order to know
how much force to exert on it to cause it to move: too little force and the
manipulator is slow to react; too much force and the arm may crash into
objects or oscillate about its desired position.
Deriving the dynamic equations of motion for robots is not a simple task
due to the large number of degrees of freedom and nonlinearities present in
the system. In Chapter 6 we develop techniques based on Lagrangian dy-
namics for systematically deriving the equations of motion of such a system.
28 CHAPTER 1. INTRODUCTION
Power supply
Input device
or o / Computer o / Mechanical
teach pendant controller arm
O O
Program End-of-arm
storage tooling
or network
Pitch Roll
Yaw
Camera
A
F
Home
y2 x2
y0
y1
x1
θ2
θ1
x0
elbow up
elbow down
c α2 θ2
α1
θ1
x
Figure 1.28: Solving for the joint angles of a two-link planar arm.
y0
α2
α1 θ2 = 0
θ1
x0
1.5 Problems
1. What are the key features that distinguish robots from other forms of
”automation,” such as CNC milling machines?
5. From the list of references at the end of this chapter make a list of 20
robot applications. For each application discuss which type of manip-
ulator would be best suited; which least suited. Justify your choices
in each case.
10. Find out how many industrial robots are currently in operation in the
United States. How many are in operation in Japan? What country
ranks third in the number of industrial robots in use?
11. Suppose we could close every factory in the United States today and
reopen then tomorrow fully automated with robots. What would be
some of the economic and social consequences of such a development?
12. Suppose a law were passed banning all future use of industrial robots
in the United States. What would be some of the economic and social
consequences of such an act?
14. Referring to Figure 1.30 suppose that the tip of a single link travels a
distance d between two points. A linear axis would travel the distance
d while a rotational link would travel through an arclength ℓθ as shown.
Using the law of cosines show that the distance d is given by
q
d = ℓ 2(1 − cos(θ))
which is of course less than ℓθ. With 10-bit accuracy and ℓ = 1m,
θ = 90◦ what is the resolution of the linear link? of the rotational
link?
15. A single-link revolute arm is shown in Figure 1.30. If the length of the
link is 50 cm and the arm travels 180? what is the control resolution
obtained with an 8-bit encoder?
16. Repeat Problem 1.15 assuming that the 8-bit encoder is located on the
motor shaft that is connected to the link through a 50:1 gear reduction.
Assume perfect gears.
21.
Find the joint angles θ1 , θ2 when the tool is located at coordinates
1 1
2, 2 .
1.5. PROBLEMS 35
22. If the joint velocities are constant at θ̇1 = 1, θ̇2 = 2, what is the
velocity of the tool? What is the instantaneous tool velocity when
θ1 = θ2 = π4 ?
24. Suppose we desire that the tool follow a straight line between the
points (0,2) and (2,0) at constant speed s. Plot the time history of
joint angles.
25. For the two-link planar manipulator of Figure 1.25 is it possible for
there to be an infinite number of solutions to the inverse kinematic
equations? If so, explain how this can occur.
36 CHAPTER 1. INTRODUCTION