Dynamics and Control of Robotic Systems CH01
Dynamics and Control of Robotic Systems CH01
Micro-
CAD Mechatronics controllers
Computer Science
Chapter 1
Figure 1.1 Fields of expertise associated with mechatronics.
Introduction
flapping wing autonomous flight vehicle, the modification of a commercial vehicle for
autonomous operation, or the development of a humanoid robot. The diversity and
In this chapter the collection of robotic systems that are studied in this book are intro- complexity of this list continues to grow every year.
duced. The field of robotics embraces topics requiring expertise in a number of technical While the study of robotics has been popular for several decades, the recent rapid
disciplines including mechanical engineering, electrical engineering, computer science, expansion of robotic systems in commercial markets can be attributed in part to the
applied mathematics, industrial engineering, cognitive science, psychology, biology, fact that sensors and actuators have become increasingly cost effective, modular, and
bio-inspired design, and software engineering. Moreover, the family of robotic systems portable. This trend has lead to the emergence of the field of mechatronics, which has
that can be designed and fabricated today is growing rapidly. Reasons for this trend are played a key role in the spread of robotics technologies. Mechatronics is a multidis-
based in economics and the maturity of the technological infrastructure supporting ciplinary field of study that integrates aspects of mechanisms, electronics, computer
robotics. A wide variety of sensing and actuation technologies that are portable, hardware/software, systems theory, and information technologies into a unified practi-
compact, and inexpensive are now readily available. These building blocks can be used cal design methodology. The fusion of these topical areas that define the study of mecha-
to construct a plethora of robotic systems using commercial off-the-shelf technology. tronics is depicted in Figure 1.1. A key feature of mechatronic systems is that they often
The broad scope of the robotics field precludes a comprehensive theoretical summary feature built-in intelligence that is applied to the task for which they are designed.
of the disciplines relevant to all of these diverse systems being given. Instead, this text Although the range of mechatronic systems is vast, there are features common to
specifically deals with the construction of models of the kinematics and dynamics of most, if not all, such systems. Figure 1.2 illustrates a schematic drawing of signal flow
typical robotic systems, and the derivation of control strategies for these systems. Upon for a typical mechatronic system. Computer systems connect the mechatronic system
completion of this chapter, the student should be able to: to sources of intelligence, be it user inputs/outputs to include humans in the opera-
• Discuss a variety of definitions of a robotic system and explain their key attributes. tion and/or algorithms to interpret sensor data and make decisions for the mechatronic
• Discuss the general structure and components of robotic systems. systems. The electrical system conditions signals passing between the computer and
• Describe a variety of methods for classifying robotic systems. mechanical systems, along with regulating the electrical power provided to the mecha-
• Describe the classical robotic manipulators, including the Cartesian, cylindrical, tronic system. The mechanical systems consist of the physical system(s) that interact
spherical, SCARA, PUMA, and articulated robotic manipulators. with their environment. Commands from the digital computer systems to the analog
• Describe other common, contemporary robotic systems. electrical systems pass through a digital-to-analog converter, and these commands are
• Describe the fundamental problems of forward kinematics, inverse kinematics, implemented on actuators connecting the electrical and mechanical systems. Sensors
forward dynamics, and control synthesis for robotic systems.
Digital-to-
1.1 Motivation Analog
Computer Converter Electrical Actuators Mechanical
Over the past few decades, the robotic systems that undergraduate and graduate Systems Analog-to- Systems
Sensors
Systems
students are expected to be able to design and analyze has expanded dramatically. It is Digital
now commonplace in varying engineering disciplines to ask relatively inexperienced Converter
engineers and researchers to design, analyze, and construct prototypical robotic
systems. Students may encounter such challenges in either undergraduate or graduate Figure 1.2 Structure of a typical mechatronic system.
design projects, or immediately upon taking a job in industry or at a national laboratory.
Projects may be as varied as the development of a computer controlled, multi-axis
stage for positioning of laser Doppler vibration measurements, the development of a
Dynamics and Control of Robotic Systems, First Edition. Andrew J. Kurdila and Pinhas Ben-Tzvi.
© 2020 John Wiley & Sons Ltd. Published 2020 by John Wiley & Sons Ltd.
Companion website: www.wiley.com/go/kurdila/robotic-systems
integrated into the mechanical systems generate signals passed to the electrical sys- vendors of these packages. Most large engineering firms or government laboratories
tems, and these signals (after conditioning) are communicated to the computer systems also have licenses for a portfolio of these analysis programs. Many of the more complex
through an analog-to-digital converter. examples in this book have been modeled by students under an academic license for
Mechatronics is elevated to a field distinct from its contributing fields by the need Autodesk Inventor.
to balance consideration of mechanical, electrical and information technology factors As useful as the programs above can be, sometimes greater flexibility is needed in
when designing an overall system. Assessing the signal processing and algorithmic formulating the governing equations of dynamics or in deriving a control architecture
requirements for operating a physical system, and meeting these requirements for a robotic system. As an example, when a model is created for the purpose of
intelligently and efficiently, distinguishes mechatronics as a unique discipline and constructing a controller for a specific robot system, a symbolic set of equations
not simply an exercise in hardware connectivity. While some systems may require for hardware implementation is often required. Some programs have the option of
complex multi-core processors to operate in real time, others may simply require a explicitly generating symbolic code that is suitable for hardware implementation. It
simple embedded controller. Interested readers can refer to the following textbooks should be noted that the packages listed above vary dramatically in the ways that they
for a more in-depth study of mechatronics as an integrating approach to engineering handle code generation. There is currently a highly competitive market of software
design [1, 8, 11]. tools to download controller equations to specific hardware platforms. Still, it is often
As the robotics infrastructure has matured, expectations of students in the field of the case that a standard commercially available software simulation tool, such as those
robotics has correspondingly increased. A decade ago a beginning student might have listed above, does not allow the flexibility that a practicing control engineer requires. It
been asked to create a simple two-dimensional model of a robotic system. Older text- can also be the case that an analyst wants to implement a controller in terms of a highly
books are filled with such introductory problems that serve to familiarize students with efficient algorithm, like the recursive formulations discussed in Chapters 3 or 4. These
the fundamentals. However, technical tools and analytical skills are now required that algorithms may not be supported by a specific commercial software package. It should
facilitate modeling of robot kinematics and dynamics in three spatial dimensions. come as no surprise that no matter how well a commercial package is designed, a user
Fortunately, the tools that are applicable throughout the design and analysis process will often desire some functionality that is not available.
have also evolved and matured. A few years ago, the computational tools available for In such cases, the software packages that support symbolic computation can be used
the systematic design, analysis, and study of complex robotic systems were limited in to great advantage. These are general purpose, object-oriented, high level programs that
number. At that time a student faced with the creation of a detailed model of a realistic define their own computing languages. Examples include:
robotic system was confronted with a daunting task. The determination of the kine-
• MATLAB
matics and dynamics of robotic systems via hand calculation was a lengthy and tedious
• Mathematica
job for all but the simplest cases. Once the heroic effort of deriving a formulation was
• Mathcad
complete, the student was faced with coding the governing equations in a low level pro-
• Maple
gramming language such as C or Fortran. It is no exaggeration that the time involved in
this task could be measured in months, or worse, years, of effort. Each of these software programs has developed its own object oriented, high level
Now, two separate and complementary collections of commercial software packages language that performs calculations on a large number of different types of mathemat-
make this problem much more manageable. First, there is an ever expanding list of spe- ical objects. For example, they usually have a large library of operators based on linear
cialized three dimensional modeling programs such as algebra, signal processing, and calculus. The mathematical objects may be matrices and
vectors, or they can be discrete dynamical systems, or they might take the form of
• Autodesk Inventor
systems of ordinary differential equations. A few lines of code in the language of these
• SolidWorks
packages can replace thousands of lines of code in a low level programming language
• Pro Engineer
like C, C++ or Fortran. Perhaps most importantly for this text, each of these programs
• MSC Adams
has a syntax that enables symbolic computation. This is a computing engine that incor-
• LabView
porates most well known operations defined in differential or integral calculus. For the
that are available for building highly detailed and general models of the kinematics, most part, tedious operations can be performed using these symbolic variables with
dynamics, and control of robotic systems. These packages vary in the generality of their minimal input from the analyst. Both public domain and commercial packages designed
simulation capabilities, but all allow numerical approximation of the solutions of the expressly for the study of robotic systems have been written in several of these comput-
forward kinematics and dynamics problems. Some also incorporate programming inter- ing languages. This text makes extensive use of some of these packages in solving the
faces for the introduction of user-defined controls. These software packages can be examples in the text and the problems at the end of each chapter. In many cases the solu-
expensive to purchase. However, most universities have software contracts with the tions of the problems are carried out by writing general purpose programs that address
1.2 Origins of Robotic Systems 5 6 1 Introduction
fundamental robotics problems; a family of high level functions that solve core robotics Some definitions of robots have arisen in view of the historical concentration of
problems are provided with the solutions for this text. robots in factories and along assembly lines. The Robotics Institute of America defines
a robot as
• a reprogrammable, multi-functional manipulator designed to move material, parts,
1.2 Origins of Robotic Systems tools, or specialized devices through various programmed motions for the perfor-
mance of a variety of tasks.
Robotic systems have been traced historically to efforts by early artists, artisans, This definition focuses on the robot as a multifunctional manipulator or robotic arm,
craftsmen, engineers, and scientists to create machines that mimic humans in action but neglects a wide range of mobile robots designed to explore and map environments
or reasoning. The modern notion of a robotic system emerged as society sought to without the need for a manipulator to interact with these environments.
create surrogates that can replace human labor in jobs that are menial, tiresome or All of the definitions of robots above are accurate in some contexts, but do not describe
even dangerous. Even before industrial robots became commonplace, the potentially the breadth of systems that will be considered in this book. The definition of a robotic
transformative role of automatons in the workplace was imagined. The role of robots as system that will be used in this book is given below.
factory workers has been noted repeatedly over the years. The word “robot” was coined
by the Czech writer Karel Capek in the play Rossum’s Universal Robots published in
1920. Capek wanted to describe the repetitive and boring nature of robotic tasks. The Definition 1.1 (Robotic System) A robotic system is a reprogrammable,
word “robot” originates from the Czech word “robota” which means “work” or “forced computer-controlled mechanical system that may sense and react to attributes of
labor”. The play studied moral questions arising in the creation and use of digitally its surroundings as it performs assigned tasks with some degree of autonomy.
programmed slaves. This has been a recurring theme in novels, plays, and movies. For
example, the novelist Kurt Vonnegut explores the angst and disillusionment of a society
with the displacement of human workers by automation in the more recent novel This definition expands those previously introduced and is broad enough to encom-
Player Piano. pass the examples encountered in this book. A robot need not have humanoid form, and
Despite these cautionary tales, robots have proliferated as a means of replacing human it does not necessarily have the form of a multi-functional manipulator. The above defi-
labor in adverse environments. The first reprogrammable digitally controlled robot was nition emphasizes that robotic systems exhibit some level of autonomy. They operate, to
created in 1954 by George Devol. This robot, Unimate, was an industrial manipulator varying degrees, independent of human intervention. They have sensors such as cam-
having a spherical workspace and was used to lift and move heavy production parts in eras, laser ranging sensors, acoustic proximity sensors, or force transducers that allow
a factory setting. It was purchased by General Motors in 1960 and was the forerunner them to sense their environment via measurements. This data is subsequently used by
of the large collection of industrial robots that are now commonplace along modern the robot to react to its environment. For example, an autonomous ground, air, marine,
factory assembly lines. Demands on performance have been a driving force in the use or space vehicle may change course to avoid obstructions or debris; a dexterous manip-
of robotics in industry. The load capacity, repeatability, precision, and speed afforded by ulator may change the pressure with which a tool is gripped based on force transducer
modern robotic systems far exceed the capabilities of man. measurements; a robotic manipulator may use camera measurements to position a tool
Current definitions of what constitutes a robotic system vary dramatically, but in the workspace. Finally, the definition makes explicit that a robot is a mechanical sys-
all definitions convey the idea that robots perform menial or repetitive tasks. tem, one that is built from the interconnection of components.
Merriam-Webster’s Dictionary defines a robot as In summary, a robotic system is made possible through the synthesis of theory and
techniques from many fields, perhaps most notably mechanical engineering, electri-
• a machine that looks like a human being and performs various complex tasks, or cal engineering, and information technology. The field of mechatronics facilitates and
• a device that automatically performs complicated often repetitive tasks. enables the development of complex robotic systems from standard sub-systems and
The first definition above requires that robots appear to be humanoid, and while some has accelerated the maturation of the robotics field in recent years. This relationship
robotic systems do indeed have a humanoid appearance, this definition would exclude among some of the primary fields contributing to robotics is depicted in Figure 1.3.
many of the robotic systems in this book. A critical attribute of robotic systems that this
definition omits, one that is important to engineers and scientists who actually build Mechatronics
robotic systems, is that robots are controlled by computers. This fact is made explicit in Mechanisms Electronics Computing
the Cambridge Dictionary which defines a robot as Mechanical MotorDrivers, Automation,
Design, Signal Software
• a machine used to perform jobs automatically, which is controlled by a computer. Dynamics Conditioning Design
Robotics
1.3 General Structure of Robotic Systems the robot. The end effector can be used to make intentional contact with an object or to
produce the robot’s final effect on its surroundings. In some cases there may be several
As will be discussed in the following sections, there are a diverse population of robots manipulator arms or gripping mechanisms. Since a robot must interact with its envi-
that have been developed over the years, ranging from robotic manipulators to mobile ronment, and usually lacks much information about its surroundings, many robots also
robots that traverse the air, land, or sea. These robots may emulate humans or animals, include sensor suites that include a variety of sensing modalities. Each sensor is usually a
or have novel topologies to accomplish desired tasks. However, despite these differ- transducer of some kind whose inputs are physical phenomena and whose outputs con-
ences, there are some common features that many robots share that are discussed in sist of electronic signals. Finally, since mobility, sensing and actuation require energy
this section. expenditure, a robot must have a power supply of some type. Most frequently this is an
Figure 1.4 depicts several components of a typical robotic system. Nearly all robotic energy storage device such as a battery. In some instances the robot may be tethered to
systems feature actuators. The actuators serve as the muscles of the system and produce a fixed power supply. For example, a military or industrial exoskeleton may require so
motion. Their power is usually supplied electrically, pneumatically, or by hydraulics. much power that it is only feasible to connect to a remote local power supply while the
Since many robots are either controlled remotely or make provision for interruptions suit is worn in a warehouse to move heavy payloads.
to their autonomous operation from outside agents, many robots include a communica- Any particular robotic system may include many of these components, or simply a few
tor of some sort. The communicator is a unit that transmits information to a host and/or in each category. An autonomous military ground vehicle will usually host a wide vari-
receives instructions from a remote operator. As noted earlier, an essential feature of any ety of vision sensors, motion sensors including a ground positioning system (GPS) and
robot is that it exhibit some level of autonomy or intelligence. A control unit is a vital compass, thermal sensors, and chemical sensors. A simple table top robotic manipulator
component of nearly all robotic systems. It may consist of a single processor, or may be a in a laboratory might only have joint encoders to sense motion. Figure 1.5 illustrates a
central computer that integrates the activities of several microprocessors. Many robotic typical robotic manipulator that might be suitable for a laboratory benchtop. The figure
manipulator systems, underwater autonomous vehicles, or space robots must directly emphasizes the data flow within the robotic system. In this system, the robot is usu-
mechanically manipulate their environment. An end effector that consists of a gripping ally equipped with rotary encoders that return measurements of angular motion at the
device at the end of a manipulator arm can therefore be essential to the operation of joints to the controller and computer. In this particular system, a vision or laser track-
ing sensor is also configured to provide measurements of the end effector position and
velocity. This measurement is returned to the computer to assist controlling the posi-
tion tracking of the end effector along a desired trajectory. It should also be noted that
Vision System this figure, while giving a general picture of the topology and connectivity of a robotic
system, lacks many details that are necessary for a real robotic system. For example, the
Manipulator
End-effector
Vision or Laser
Tracking
System
Robot
Communication
Locomotion Workpiece
Feedback
Computer
Motor
r Control
owe
nit, P tors
trol U a
Con ly, Actu Feedback
u p p
S
Command Feedback
Controller
motor controllers are not shown in the figure, nor are the amplifiers or signal condition- Name of Pair Geometric Form Schematic Representation Degrees of Freedom
ers that may be required between the primary components.
joints can be modeled by combining these two. For example, a universal joint consists N = 𝜆(n − 1) − (𝜆 − fi ) (1.1)
i=1
of a pair of revolute joints with their joint axes orthogonal to one another. A prismatic
joint allows only relative translation between two links along a prescribed axis, while the where n is then number of links, k is the number of joints, and fi is the number of degrees
revolute joint permits only relative rotation about a prescribed axis. of freedom for joint i. For planar mechanisms 𝜆 = 3 and for spatial mechanisms 𝜆 = 6.
links in the mechanism perform planar motions that are parallel to one another.
In contrast, a spatial manipulator is one in which at least one of the moving links
Example 1.1 Consider the pantograph mechanism depicted in Figure 1.7.
demonstrates a general spatial motion. In other words 𝜆 = 6 in Equation (1.1). In some
cases the manipulator is constructed so that only very specific kinds of motion are
possible. A spherical manipulator is constructed so that the moving links perform
spherical motions about a common stationary point. A cylindrical manipulator is
constructed so that the end effector travels on the surface of a cylinder. More details of
these two types of manipulators are discussed in Sections 1.4.3.2 and 1.4.3.4.
connectivity topology of a system can have a dramatic influence on the complexity of mounted on the robot base or waist. This design reduces the inertia of the manipulator.
simulating or deriving a control strategy for a system. Such a system, which contains both open and closed loop chains as sub-systems, is
A robotic system is said to have the connectivity of a kinematic chain if there is one known as a hybrid manipulator.
and only one connected path that traverses a system from the first to the last link. Such In summary, robotic systems that have the form of a kinematic chain are the most
a robot is also often referred to as a serial manipulator or as a open loop manipulator basic; other more complicated robotic systems can be assembled from them. Meth-
in the robotics literature. A single arm or leg of a humanoid robot is a good example ods for analyzing, simulating, or synthesizing a controller for kinematic chains can be
of a kinematic chain. Multibody systems that form a kinematic chain have the simplest applied to sub-systems having more complex connectivity. Robotic manipulators serve
connectivity topology. It is this class of robotic systems for which the richest collection as prototypical examples of robots that form kinematic chains.
of formulations and control strategies have been derived. The kinematics of chains is
studied carefully in Chapter 3, their dynamics is studied in Chapters 4 and 5, and their 1.4.2.5 Classification by Workspace Geometry
control is the topic of Chapters 6 and 7. The last method for classifying the robots discussed looks at their workspace geometry.
A multibody system is said to have tree topology connectivity when it is built from an The manipulator workspace is the volume of space that the end effector can reach. The
assembly of kinematic chains and no closed loops are formed by their interconnection. set of points where every point can be reached by the end effector in at least one ori-
A full body humanoid robot or a space station in orbit are two familiar examples of entation or pose is the reachable workspace. The set of points where every point can
systems having a tree topology connectivity. It is relatively straightforward to extend be reached by the end effector in all possible orientations or poses is called the dex-
the techniques for modeling and control of kinematic chains to treat systems that have trous workspace. By definition, it follows that the dexterous workspace is a subset of
tree topology connectivity, although such methods must often be extended to account the reachable workspace. It should be noted that most industrial serial manipulators
for the rigid body motion of the robotic system as a whole. are designed with their first three moving links longer than the remaining links. These
Finally, a robotic system is said to have closed loop connectivity whenever it is possible inner links are used primarily for controlling the end effector position. The remaining
to construct a continuous path that starts at one link, traverses several other links, and outboard links are used typically for controlling the end effector pose or orientation.
finally connects to the original link. The multibody model of an autonomous ground Often, the sub-assembly associated with the first three links is denoted the arm, and the
vehicle is an example of a system that has closed loop topology if its suspension system remaining outboard links constitute the wrist. Figure 1.9 shows four common types of
has closed loops. Two robotic manipulators that cooperate in the task of lifting a large workspaces.
payload also form a system that has closed loop topology. The Stewart platform depicted
in Figure 1.8 is a common robotic platform that has closed loop connectivity. 1.4.3 Examples of Robotic Manipulators
Robotic manipulator systems with closed loop connectivity are commonly referred
In the next few sections a few of the most common robotic manipulators are described.
to as parallel manipulators in the field of robotics. General robotic systems that have
All of these examples consist of a few links joined by either prismatic joints or revolute
closed loop topology are not addressed in this introductory book.
joints. These joints can be either driven or passive.
Of course, some systems are constructed from sub-systems that constitute both open
A driven joint is one in which an actuator directly generates motion, either translation
and closed loop chains. In some industrial manipulators, such as the Fanuc S-900W,
(prismatic joint) or rotation (revolute joint). In a driven joint, a linear or rotational motor
a four-bar push-rod linkage is used to drive the intermediate joints, which in turn are
Cartesian Cylindrical Spherical Articulated
z r
z o 𝜃 𝜃2
r 𝜑
y 𝜑 𝜑 𝜃1
Figure 1.8 Industrial Stewart platforms. Figure 1.9 Various workspace geometries.
is connected to each link constrained by the joint. If a joint is not driven by an actuator, it
is said to be a passive joint. For example, in the pantograph shown in Figure 1.7, assume
the two prismatic joints (J1 and J2) are controlled by linear actuators. These are thus
driven joints. The remaining revolute joints (J3–J8) are now passive joints, as the motion
between the bodies at these joints is prescribed by the motion of the two active joints.
Usually, the manipulators are designated by a sequence such as PPP or RPP that indi-
cate the type and ordering of the prismatic (P) and revolute (R) joints that make up
the robot. For example, a PPP robotic manipulator is constructed from three prismatic
joints, while an RPP robot is built from a revolute joint that is followed by two succes-
sive prismatic joints. This designation is often a good indicator, in broad terms, of the
general geometry and functionality of a robotic manipulator.
two revolute joints are parallel in a SCARA robot, this robot is relatively compliant in
motion that occurs in the horizontal plane and relatively stiff in motion normal to this
plane. The variation in compliance between these two modes of motion gives this robot
its name. The workspace of this robot is highly structured. The SCARA manipulator can
be an attractive robot for precision pick and place operations, for example. Figure 1.14 PUMA Robot.
1.4.3.4 Spherical Robotic Manipulator complicated than those for Cartesian or cylindrical manipulators, which leads to control
The RRP spherical robotic manipulator is formed from two perpendicular revolute laws that are likewise more complex. The introduction of an additional perpendicular
joints and a prismatic joint. For some choices of the fixed offset dimensions between axis of rotation yields a robot that is less rigid and more compliant than the Cartesian
the joints, the motion of the tool or tip of the manipulator arm can be expressed in manipulator. The result is that the spherical robot can be less precise in positioning.
terms of spherical coordinates, which gives this robot its name. Some of the most Generally speaking, a spherical robot can be more appropriate for tasks such as weld-
famous robotic manipulators that have appeared over the years have been of this type. ing or painting that require somewhat less precision than pick and place operations, but
The Unimate robot discussed in Section 1.2 and shown in Figure 1.13 is an example of require accessibility over a large and complex workspace.
a spherical manipulator.
The primary advantage of this robot architecture is its suitability to a wide range of 1.4.3.5 PUMA Robotic Manipulator
tasks that must be carried out over complex geometries. The spherical workspace acces- Historically, one of the most widely used robotic manipulators on assembly lines is the
sible by this robot is large compared to the robot size. Unfortunately, this flexibility PUMA (Programmable Universal Machine for Assembly) RRR robot. An example of a
comes at a cost. The kinematic and dynamic models of the spherical robot are more PUMA robot is depicted in Figure 1.14. The first revolute joint of this robot is about the
vertical axis, and the next two parallel revolute joints are perpendicular to the vertical
axis. The widespread use of the PUMA robot can be attributed to the fact that it has a
rich kinematics and can access a large hemispherical workspace. With the introduction
of three rotational axes along two perpendicular directions, however, the PUMA is less
rigid than the Cartesian robot. It is well suited to applications that require a large and
highly reconfigurable workspace.
is connected to the end of the arm. Not only does this design resemble human anatomy,
it has an important pragmatic implication for control design. This common geometry is
attractive in that it makes it possible to decouple the task of positioning the wrist center
and orienting the tool at the end of the spherical wrist. This topic is discussed in Chapter
θ1
3 when inverse kinematics is covered.
z1
1.4.5 Articulated Robot
The articulated robot arm or anthropomorphic robot arm is a manipulator that is able
θ3 to achieve motions that resemble those of the human arm. All anthropomorphic robot
θ2 arms have at least three revolute joints, and it is common that they have five, six, or
z3 more, revolute joints. A typical configuration is depicted in Figure 1.16 where a spheri-
cal wrist has been attached to an RRR robotic arm. Note that the first three degrees of
z2
freedom resemble that of the PUMA robot studied in Section 1.4.3.5. The first, vertical
revolute joint permits the motion that is sometimes known as the arm sweep. The next
two joints are referred to as the shoulder and elbow joints, respectively. The result is an
arm that can access a large workspace, and it can pose the tool located at its tip at an
arbitrary orientation. The anthropomorphic arm finds widespread use in welding and
spraying on assembly lines. In comparison to the other robotic manipulators discussed,
Figure 1.15 Spherical wrist. this arm does have a complicated geometry. The corresponding equations that describe
the kinematics and dynamics of this robotic system are complicated in form, as are the
control laws derived from these models.
Figure 1.18 Humanoid robot CHARLI. Created by students at Virginia Tech under the direction of
Professor Dennis Hong, currently of UCLA.
Figure 1.21 Autonomous rotorcraft for radiation sensing. Created by students under the direction of
Professor Kevin Kochersberger of Virginia Tech.
the fleet of SPAARO autonomous aircraft that Professor Craig Woolsey at Virginia Tech
uses in a variety of research activities. These vehicles support research in applications
ranging from automation of commercial agriculture and remote sensing of airborne
pathogens to coordinated control of autonomous vehicle teams.
z1 p z2
x1
Link 3
Link 1
y3
Link 0
r Link 4
z0
z3 y4
x3
o y0
s x4
x0 z4
Figure 1.23 ASV. Created by students under the direction of Dr. Dan Stilwell of Virginia Tech. Figure 1.25 Flapping wing robot.
1.6.1 Forward Kinematics by qi (t) for i = 1, … , N where N is the number of degrees of freedom. The problem of
forward kinematics studies how the configuration of the robot changes as the joint vari-
Just as researchers have sought to design and build robots that mimic humans in form
ables are varied. For example, for the flapping wing robot, it is desired to design a system
and action, so too have designers striven to build robots that resemble animals. Efforts
such that the wings trace out motions that resemble as closely as possible the motion of
to create bio-inspired flapping wing robots are one particularly challenging example.
actual birds. The problem of forward kinematics seeks to find the position, velocity, and
These designs represent a significant departure from that of most existing commercial
acceleration of typical points like s on the robot in Figure 1.25 given the time histories
flying vehicles. A successful design of a flapping wing robot is difficult in part due to
qi (t) of the joint variables for i = 1, … , N.
a lack of understanding of the inherently complex nonlinear and unsteady aerodynam-
This problem can be stated succinctly: let r0,s (t), v0,s (t) and a0,s (t) be the position, veloc-
ics surrounding the vehicle. This area continues to be an active topic of research. In
ity and acceleration of the point s relative to the ground, or 0, frame; find the mapping
this section we discuss various robotic analysis problems for a robot that drives a flap-
from the joint variables and their derivatives to the position, velocity and acceleration
ping wing for wind tunnel testing. The task of building a flapping wing vehicle, while
of point s on the robot.
exceptionally difficult, provides an excellent example of how the classical problems of
forward kinematics, inverse kinematics, forward dynamics, and feedback control can ̇
q(t), q(t), ̈ → r0,s (t), v0,s (t), a0,s (t).
q(t)
arise in applications.
It is important to realize that this problem must be solved as part of nearly all modeling
One of the first considerations in building a model of a robot of the type depicted
or control tasks. The specific choice of joint angles used in Figure 1.26 are defined using
in Figure 1.25 is the choice of the variables that will be used in its representation. This
the Denavit–Hartenberg convention, one of the most commonly used general strategies
topic is discussed in general terms in Chapter 2, and a summary of the more common
for describing articulated robots that form kinematic chains. This topic is covered in
representations for articulated robotic systems is presented in Chapter 3. While there
detail in Chapter 3.
are exceptions, the most popular choice of variables for articulated mechanical systems
is joint variables that define how the bodies of a robotic system move relative to one
another. If the entire robotic system also undergoes rigid body motion with respect to a 1.6.2 Inverse Kinematics
defined ground reference (instead of being fixed to that reference), as seen in the study
While solving the problem of forward kinematics is an important first step in many mod-
of the space robotics or full body humanoids, the joint variables must be supplemented
eling and control problems, it does not answer all the important questions regarding the
with additional variables to represent the net motion.
motion of a given robot. In the case at hand of the flapping wing robot, the wings should
In Figure 1.26, the robot is fixed rigidly to the ground. Therefore, the use of joint vari-
be able to trace out trajectories that mimic those of real birds, or as close as possible
ables alone suffices to represent the dynamics. The joint variables in this example are
given the robot geometry. By taking video recordings of birds in flight, it is possible to
the joint angles 𝜃1 , 𝜃2 , 𝜃3 , and 𝜃4 that determine the relative rotations of the bodies at
generate estimates of the trajectories that certain points on the wings trace out as a func-
individual revolute joints. It is also frequently the case that joint variables are selected
tion of time. Suppose these experimentally collected trajectories of point s on the wings
to be the relative displacements between the bodies when a robot includes prismatic
are treated as input data. That is, suppose the position, velocity and acceleration of the
joints that permit translation. In general, a generic set of joint variables is denoted by
point s as a function of time are given. The problem of inverse kinematics seeks to find
the joint variables and their derivatives given the position, velocity, and acceleration of
θ2 a point s on the robotic system. In other words the mapping from the positions, veloci-
z1 ties, and accelerations of point s on the robot to the joint variables and their derivatives
z2
should be found.
θ3
̇
r0,s (t), v0,s (t), a0,s (t) → q(t), q(t), ̈
q(t).
Trajectory of It is evident that this problem seeks to find the inverse of the mapping studied in the
point s forward kinematics problem. It is well known that the inverse kinematics problem can
be much more difficult to solve than the forward kinematics problem. The inverse kine-
matics problem can have no solutions or multiple solutions, depending on the robot
z0 geometry and design objectives. Chapter 3 discusses some of the difficulties encoun-
z4
θ1 θ4 tered in the solution of inverse kinematic problems.
y0
r0,s(t)
s
x0
1.6.3 Forward Dynamics
The problems of forward kinematics and inverse kinematics are purely geometric in
Figure 1.26 Robotic flapping using robot and joint variables 𝜃1 , 𝜃2 , 𝜃3 , and 𝜃4 . nature. There is no provision for or consideration of the forces or moments that must
1.6 An Overview of Robotics Dynamics and Control Problems 29 30 1 Introduction
be applied to achieve a specific motion. For many of the robotic systems studied in this While there are numerous specific control problems that make sense for a robotic
book, the governing equations can be written in the form system, a tracking control problem is easy to pose for the flapping wing robot. Suppose
again that video post-processing methods have been used to identify the trajectories
̈ = n(q(t), q(t))
M(q(t))q(t) ̇ + 𝝉(t)
of points on the wings of actual birds in flight. One example of a trajectory tracking
where M(q) is an N × N nonlinear generalized mass or inertia matrix, n(q, q) ̇ is an problem seeks to find the input torques and forces 𝝉(t) as a function of time that will
N × 1 vector of nonlinear functions including Coriolis and centripetal terms, and 𝝉 is drive the robot so that the points on the wing approach the experimentally collected
an N × 1 vector of forces or torques applied to the robot by actuators. This is a nonlin- trajectories as time t increases. Many variants of this problem can be defined depend-
ear, second-order system of coupled ordinary differential equations (ODEs). A common ing on the type of measurements and the metric used to define how closely the robot
general strategy for studying these equations introduces the state variables x that stacks follows the desired trajectories. Mathematically, many of these control problems can
the generalized coordinates q and their derivatives q̇ in the form be interpreted as a constrained optimization problem where some cost or performance
{ } { } functional J is minimized. The optimization problem is solved for the best input u∗ in
x1 (t) q(t)
x(t) ∶= ∶= the set of admissible controls in the sense that
x2 (t) ̇
q(t)
u∗ = argmin J(x, u) (1.3)
and rewrites the governing system of equations as u∈
{ }
x2 (t) subject to the constraint that the state x satisfies the equations of motion in
̇
x(t) = f(x(t), u(t)) ∶= (1.2)
M−1 (x1 (t))(n(x1 (t), x2 (t)) + u(t)) Equation (1.2).
where u(t) ∶= 𝝉(t) is the set of control inputs.
The problem of forward dynamics seeks to solve these equations for the state x(t), 1.6.5 Dynamics and Control of Robotic Vehicles
̇
thereby obtaining the joint variables q(t) and their derivatives q(t), given the input forces The fundamental dynamics and control problems for robotics, and their role in the
and torques in 𝝉(t). The solution procedure may be analytic or numerical, but the models study of a typical flapping wing robot, were discussed in Sections 1.6.1, 1.6.2, 1.6.3, and
of most practical robots are so complex that analytic solutions are not usually feasi- 1.6.4. The example used for illustration in these sections could just as well have been
ble. The numerical approximate solution of these equations utilizes the rich and well selected to be any of the robotic manipulators. The structural similarity among these sys-
developed collection of time stepping numerical algorithms for nonlinear ordinary dif- tems is striking. Perhaps surprisingly, each of the fundamental problems of robotics and
ferential equations. Specific algorithms that are commonly used to generate numerical dynamics – forward kinematics, inverse kinematics, forward dynamics, and feedback
approximations of the solutions include the popular family of Runge–Kutta techniques, control synthesis – can also be stated when robotic systems that are autonomous vehi-
linear multi-step methods, and specialized schemes that are tailored to stiff systems. The cles are considered. In many cases the language used to describe the variants of these
solution of the forward dynamics problem can be used in many facets of robotic design problems is different depending on the type of vehicle, even though the underlying
and analysis. problems are structurally similar in form. For example, the trajectory tracking or path
following problem that seeks to position a tool mounted on a robotic arm is mathemati-
1.6.4 Inverse Dynamics and Feedback Control cally similar to that of guidance and navigation of autonomous vehicles. In addition, it is
also common that robotic manipulators are mounted on autonomous vehicles, as shown
The problem of forward dynamics can be solved to understand how a specific set of in Figure 1.27. Another example of this latter type includes the combined space shuttle
input forces and torques in 𝝉(t) induce a corresponding time history of the joint vari-
ables q(t) for t ≥ 0. The solution of the forward dynamics problem can be described as
finding the dynamic behavior of the system given an input actuation time history 𝝉(t),
t ≥ 0. Similar to the relationship between forward and inverse kinematics, the problem
of inverse dynamics of a robotic system can be thought of as asking a converse ques-
tion: what must the control input history 𝝉(t), t ≥ 0, be as a function of the generalized
coordinates 𝝉(t) ∶= 𝝉(q1 (t), … , qn (t), t) to yield a specific dynamic behavior?
However, when considering practical systems, there is often a disconnect between
the prescribed desired state vector qd and the estimated state vector qe from sensors
associated with the robotic system, internal (e.g., joint encoders) or external (e.g.,
workspace cameras. By incorporating techniques from control theory alongside inverse
dynamic analysis, feedback control laws may be designed to calculate appropriate
actuation inputs trajectories 𝝉(t) as a function of the desired and estimated states qd
and qe . Figure 1.27 AGV, iRobot PackBot, with manipulator arm.
and remote manipulator system. It is possible to speak of the guidance and navigation of recursive calculation of the kinematics. The chapter closes with a discussion of inverse
the vehicle and the control of the robotic manipulator. These problems are in fact cou- kinematics.
pled, and the solution of dynamics and control problems for the coupled system can be Chapter 4 discusses the strategy for deriving the equations of motion of robotic
substantially more difficult than that associated with only the base vehicle or only the systems using Newton–Euler formulations. General definitions of linear and angular
manipulator. momentum of rigid bodies are introduced. The inertia matrix of a rigid body is
While the study of robotic manipulators provides a foundation that can be used to introduced to facilitate the calculation of the angular momentum of components in a
help formulate and solve dynamics and control problems for autonomous systems, there robotic system. The Newton–Euler equations are introduced as a means for deriving
remain many substantial differences between methodologies for autonomous vehicles. the equations of motion of general robotic systems. This chapter further extends the
One of the principal differences between formulations of the dynamics of AGVs, AAVs, recursive formulation first studied in Chapter 3, and the resulting approach is used for
ASVs, or AUVs is that the set of variables used to describe motion must be capable the derivation of the equations of motion of robotic systems. It is demonstrated that the
of representing rigid body motion. While the general study of kinematics in Chapter 2 equations of motion of kinematic chains can be derived recursively by exploiting the
covers many of the topics needed to study this problem, the specific methodologies for structure of the same matrices that arise in the kinematics formulation. The equations
robots having the form of kinematic chains in Chapter 3 are not sufficient to represent of motion derived via the Newton–Euler formulation have the form of nonlinear
the rigid body motion of an autonomous vehicle. Fortunately, for many of the differ- differential-algebraic equations, or DAEs. It is demonstrated in the chapter that these
ent types of autonomous vehicles, it is the case that governing equations have the form equations can be re-cast as a set of nonlinear ordinary differential equations, or ODEs.
shown in Equation (1.2). Many problems of vehicle control are solved by casting the Methods of analytical mechanics, as they are used to derive the equations of motion of
control problem as one of optimization, as summarized in Equation (1.3). robotic systems, are introduced in Chapter 5. The chapter begins with the statement of
Hamilton’s principle and explains how it can be interpreted as a problem of variational
calculus. Its solution yields the equations of motion for the robotic system. Since the
1.7 Organization of the Book kinetic energy and potential energy of many robotic systems have the same functional
form, it is possible to derive Lagrange’s equations from the variational calculus prob-
The study of robotic systems begins with an exposition of the fundamental principles lem generated by Hamilton’s principle. Hamilton’s extended principle is presented as a
of kinematics in Chapter 2. The chapter constitutes a self-contained introduction to the means of incorporating contributions due to the presence of non-conservative forces in
field of kinematics in three spatial dimensions and establishes notation and conventions the equations of motion. A standard form for the governing equations for a large class of
for common mathematical expressions used throughout the book. Particular empha- robotic systems is derived using Lagrange’s equations. Finally, the chapter presents the
sis is placed on the foundations of kinematics in three spatial dimensions, including method of Lagrange’s equations with Lagrange multipliers that is appropriate for deriv-
the study of vectors, coordinate systems, and rotation matrices. General definitions of ing governing equations in terms of redundant collections of variables. This approach
linear position, velocity, and acceleration with respect to different frames of reference results in a system of nonlinear DAEs, in general.
are introduced, as well as angular velocity and angular acceleration. The chapter con- Methods of feedback control of robotic systems are presented in Chapter 6. The
cludes with a collection of some of the most commonly used theorems of kinematics. general form and structure of control problems are discussed, and an overview of
These include the theorems that introduce relative velocity (Theorem 2.16) and relative stability theory is given. The fundamental principles of stability theory are presented,
acceleration (Theorem 2.17), the derivative theorem (Theorem 2.12) and the addition and the use of the Lyapunov functions to establish stability for practical robotic systems
theorem (Theorem 2.15) for angular velocity. is discussed. These techniques are critical to modern approaches of control synthesis
Chapter 3 introduces refinements of the principles of kinematics that are tailored to for robotic systems. Lyapunov’s direct method and LaSalle’s invariance principle
specific types of robotic systems. The chapter introduces homogeneous transformations are applied to establish stability and convergence of typical set point and tracking
that are used to relate rigid body motions of links in a robotic system. Mathematical controllers. Feedback controllers based on exact feedback linearization or computed
models of ideal joints between the links that comprise the system are discussed. In addi- torque control, approximate dynamic inversion, and passivity principles are derived.
tion to these general topics in kinematics of robotic systems, the chapter discusses two The chapter finishes with an introduction to actuator models, emphasizing electric
popular methods (Denavit–Hartenberg and recursive) for the representation of robotic motors and electromechanical linear actuators.
systems that form kinematic chains. In the presentation of the Denavit–Hartenberg The final chapter of this book, Chapter 7, discusses techniques of image-based control
convention, explicit constructions of the homogeneous transforms associated with the for robotic systems. The ideal pinhole camera model is discussed in detail, which enables
bodies in a kinematic chain are derived. A general procedure is detailed for defining a succinct presentation of image based visual servo (IBVS) control strategies. Stability
the link parameters that determine the kinematics of a serial chain. The recursive and asymptotic stability of IBVS control methods is established, as well as the role of
formulation of the forward kinematics problem, in contrast to the Denavit–Hartenberg singular configurations in the performance of these methods. The general approach of
formulation, has been specifically based on efficiency in calculation. This formulation task space control formulations, in contrast to the joint space methods described in
notes the highly structured nature of the kinematic relationship between successive
bodies in a kinematic chain, and it exploits this structure to derive algorithms for
1.8 Problems for Chapter 1 33 34 1 Introduction
Chapter 6, is presented. Task space formulations of visual control objectives is the final Problem 1.7. Discuss examples of how the fundamental problems of the dynamics and
topic in Chapter 7. control of robots (forward kinematics, inverse kinematics, forward dynamics, and feed-
back control) may arise in the development of autonomous ground vehicles. Describe
specific sub-problems for each of the fundamental problems in this application area.
1.8 Problems for Chapter 1
Problem 1.8. Discuss examples of how the fundamental problems of the dynamics and
Problem 1.1. Briefly summarize the origins of the word “robot”. control of robots (forward kinematics, inverse kinematics, forward dynamics, and feed-
back control) may arise in the development of autonomous air vehicles. Describe specific
Problem 1.2. Define what is meant by a robotic system in this book. How does this sub-problems for each of the fundamental problems in this application area.
definition differ from other common definitions?
Problem 1.3. Define the following terms that commonly appear in the study of robotics:
Actuator
Sensor
Workspace
Ideal joint
Joint variable
Passive joint
Driven joint
Precision, accuracy, and resolution
Repeatability
Tool frame
End effector.
Problem 1.4. Define the following robotic manipulators, describe their general features,
and find commercially available examples of each.
Cartesian robot
Cylindrical robot
Spherical robot
SCARA robot
PUMA robot
Anthropomorphic arm.
Problem 1.6. Discuss examples of how the fundamental problems of the dynamics
and control of robots (forward kinematics, inverse kinematics, forward dynamics, and
feedback control) may arise in the development of humanoid robots. Describe specific
sub-problems for each of the fundamental problems in this application area.