Chapter 1
Introduction
In this chapter the collection ofrobotic systems that are studied in this book are introduced. The field of robotics embraces topics requiring expertise in a number of technical disciplines including mechanical engineering, electrical engineering, computer science, applied mathematics, industrial engineering, cognitive science, psychology, biology, bio-inspired design, and software engineering. Moreover, the family of robotic systems that can be designed and fabricated today is growing rapidly. Reasons for this trend are based in economics and the maturity of the technological infrastructure supporting robotics. A wide variety of sensing and actuation technologies that are portable, compact, and inexpensive are now readily available. These building blocks can be used to construct a plethora of robotic systems using commercial off-the-shelf technology. The broad scope of the robotics field precludes a comprehensive theoretical summary of the disciplines relevant to all of these diverse systems being given. Instead, this text specifically deals with the construction of models of the kinematics and dynamics of typical robotic systems, and the derivation of control strategies for these systems. Upon completion of this chapter, the student should be able to:
- Discuss a variety of definitions of a robotic system and explain their key attributes.
- Discuss the general structure and components of robotic systems.
- Describe a variety of methods for classifying robotic systems.
- Describe the classical robotic manipulators, including the Cartesian, cylindrical, spherical, SCARA, PUMA, and articulated robotic manipulators.
- Describe other common, contemporary robotic systems.
- Describe the fundamental problems of forward kinematics, inverse kinematics, forward dynamics, and control synthesis for robotic systems.
1.1 Motivation
Over the past few decades, the robotic systems that undergraduate and graduate students are expected to be able to design and analyze has expanded dramatically. It is now commonplace in varying engineering disciplines to ask relatively inexperienced engineers and researchers to design, analyze, and construct prototypical robotic systems. Students may encounter such challenges in either undergraduate or graduate 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 flapping wing autonomous flight vehicle, the modification of a commercial vehicle for autonomous operation, or the development of a humanoid robot. The diversity and complexity of this list continues to grow every year.
While the study of robotics has been popular for several decades, the recent rapid expansion of robotic systems in commercial markets can be attributed in part to the fact that sensors and actuators have become increasingly cost effective, modular, and portable. This trend has lead to the emergence of the field ofmechatronics, which has played a key role in the spread of robotics technologies. Mechatronics is a multidisciplinary field of study that integrates aspects of mechanisms, electronics, computer hardware/software, systems theory, and information technologies into a unified practical design methodology. The fusion of these topical areas that define the study of mechatronics is depicted in Figure 1.1. A key feature of mechatronic systems is that they often feature built-in intelligence that is applied to the task for which they are designed.
Figure 1.1 Fields of expertise associated with mechatronics.
Although the range of mechatronic systems is vast, there are features common to most, if not all, such systems. Figure 1.2 illustrates a schematic drawing of signal flow for a typical mechatronic system. Computer systems connect the mechatronic system to sources of intelligence, be it user inputs/outputs to include humans in the operation and/or algorithms to interpret sensor data and make decisions for the mechatronic systems. The electrical system conditions signals passing between the computer and mechanical systems, along with regulating the electrical power provided to the mechatronic system. The mechanical systems consist of the physical system(s) that interact with their environment. Commands from the digital computer systems to the analog electrical systems pass through adigital-to-analog converter, and these commands are implemented on actuators connecting the electrical and mechanical systems. Sensors integrated into the mechanical systems generate signals passed to the electrical systems, and these signals (after conditioning) are communicated to the computer systems through ananalog-to-digital converter.
Mechatronics is elevated to a field distinct from its contributing fields by the need to balance consideration of mechanical, electrical and information technology factors when designing an overall system. Assessing the signal processing and algorithmic requirements for operating a physical system, and meeting these requirements intelligently and efficiently, distinguishes mechatronics as a unique discipline and not simply an exercise in hardware connectivity. While some systems may require complex multi-core processors to operate in real time, others may simply require a simple embedded controller. Interested readers can refer to the following textbooks for a more in-depth study of mechatronics as an integrating approach to engineering design [1,8,11].
Figure 1.2 Structure of a typical mechatronic system.
As the robotics infrastructure has matured, expectations of students in the field of robotics has correspondingly increased. A decade ago a beginning student might have been asked to create a simple two-dimensional model of a robotic system. Older textbooks are filled with such introductory problems that serve to familiarize students with the fundamentals. However, technical tools and analytical skills are now required that facilitate modeling of robot kinematics and dynamics in three spatial dimensions.
Fortunately, the tools that are applicable throughout the design and analysis process have also evolved and matured. A few years ago, the computational tools available for the systematic design, analysis, and study of complex robotic systems were limited in number. At that time a student faced with the creation of a detailed model of a realistic robotic system was confronted with a daunting task. The determination of the kinematics and dynamics of robotic systems via hand calculation was a lengthy and tedious job for all but the simplest cases. Once the heroic effort of deriving a formulation was complete, the student was faced with coding the governing equations in a low level programming 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.
Now, two separate and complementary collections of commercial software packages make this problem much more manageable. First, there is an ever expanding list of specialized three dimensional modeling programs such as
- Autodesk Inventor
- SolidWorks
- Pro Engineer
- MSC Adams
- LabView
that are available for building highly detailed and general models of the kinematics, dynamics, and control of robotic systems. These packages vary in the generality of their simulation capabilities, but all allow numerical approximation of the solutions of the forward kinematics and dynamics problems. Some also incorporate programming interfaces for the introduction of user-defined controls. These software packages can be expensive to purchase. However, most universities have software contracts with the vendors of these packages. Most large engineering firms or government laboratories also have licenses for a portfolio of these analysis programs. Many of the more complex examples in this book have been modeled by students under an academic license for Autodesk Inventor.
As useful as the programs above can be, sometimes greater flexibility is needed in formulating the governing equations of dynamics or in deriving a control architecture for a robotic system. As an example, when a model is created for the purpose of constructing a controller for a specific robot system, a symbolic set of equations for hardware implementation is often required. Some programs have the option of explicitly generating symbolic code that is suitable for hardware implementation. It should be noted that the packages listed above vary dramatically in the ways that they handle code generation. There is currently a highly competitive market of software tools to download controller equations to specific hardware platforms. Still, it is often the case that a standard commercially available software simulation tool, such as those listed above, does not allow the flexibility that a practicing control engineer requires. It can also be the case that an analyst wants to implement a controller in terms of a highly efficient algorithm, like the recursive formulations discussed in Chapters or . These algorithms may not be supported by a specific commercial software package. It should come as no surprise that no matter how well a commercial package is designed, a user will often desire some functionality that is not available.
In such cases, the software packages...