Documente Academic
Documente Profesional
Documente Cultură
Preview
As an academic discipline, robotics is a relatively young eld with highly ambitious goals, the ultimate one being the creation of machines that behave and think like humans. This attempt to create intelligent machines naturally leads us to rst examine ourselvesto ask, for example, why our bodies are designed the way they are, how our limbs are coordinated, and how we learn and rene complex motions. The sense that the fundamental questions in robotics are ultimately questions about ourselves is part of what makes robotics such a fascinating and engaging endeavor. In contrast to the lofty goals set by robotics researchers, the aims of this textbook are more modest. Our focus will be on the mechanics, planning and control of robot mechanisms. Robot arms are one familiar example. So are wheeled platforms, as are robot arms mounted on wheeled platforms. Basically, a mechanism is constructed by connecting rigid bodies, called links, together with joints, so that relative motion between adjacent links becomes possible. Actuation of the joints, typically by electric motors, then causes the robot to move and exert forces in desired ways. The links of a robot mechanism can be arranged in serial fashion, like the familiar serial-chain arm shown in Figure 1.1(a). Robot mechanisms can also have closed loops, such as the Stewart-Gough platform shown in Figure 1.1(b). In the case of a serial chain, all of its joints are actuated, while in the case of mechanisms with closed loops only a subset of its joints may be actuated. Let us examine more closely the current technology behind robot mechanisms. The links are moved by actuators, which are typically electrically driven (e.g., DC or AC servo motors, stepper motors, even shape memory alloys), or sometimes by pneumatic or hydraulic cylinders, or internal combustion engines. In the case of rotating electric motors, they should ideally be lightweight, operate at relatively low rotational speeds (e.g., in the range of hundreds of RPM) and be able to generate large forces and torques. Since most currently available motors operate in the range of thousands of RPM, speed reduction devices with low slippage and backlash are often required. Belts, sprockets, and spur gears are usually not well-suited for this purpose; instead, specially designed 1
Preview
low backlash gears, harmonic drives, and ball screws are used to simultaneously reduce speed and amplify the delivered torque. Brakes may also be attached to quickly stop the robot or to maintain a stationary posture. Robots are also equipped with sensors to measure the position and velocity at the joints. For both revolute and prismatic joints, optical encoders measure the displacement, while tachometers measure their velocity. Forces at the links or at the tip can be measured using various types of force-torque sensors. Additional sensors may be used depending on the nature of the task, e.g., cameras, sonar and laser range nders to locate and measure the position and orientation of objects. This textbook is about the mechanics, motion planning, and control of such robots. We now provide a preview of the later chapters.
Figure 1.1: Open chain and closed chain robot mechanisms. At its most basic level, a robot consists of rigid bodies connected by joints, with the joints driven by actuators. In practice the links may not be completely rigid, and the joints may be aected by factors such as elasticity, backlash, friction, and hysteresis. In this book we shall ignore these eects for the most part and assume all links are rigid. The most commonly found joints are revolute joints (allowing for rotation about the joint axis) and prismatic joints (allowing for linear translation along the joint axis). Revolute and prismatic joints have one degree of freedom (either rotation or translation); other joints, such as the spherical joint (also called the ball-in-socket joint), have higher degrees of freedom.
3 In the case of a serial chain robot such as the industrial manipulator of Figure 1.1(a), all of its joints are independently actuated. This is the essential idea behind the degrees of freedom of a robot: it is the sum of all the independently actuated degrees of freedom of the joints. For serial chains the degrees of freedom is obtained simply by adding up all the degrees of freedom associated with the joints. For closed chains like the Stewart-Gough platform shown in Figure 1.1(b), the situation is somewhat more complicated. First, joints with multiple degrees of freedom like the spherical joint are quite common. Second, it is usually not possible to independently actuate all of the jointsxing a certain set of joints to prescribed values automatically determines the values of the remaining joints. For even more complicated closed chains with multiple loops and dierent joint types, determining the degrees of freedom may not be straightforward or intuitive. A more abstract but equivalent denition of the degrees of freedom of a robot begins with the notion of its conguration space: a robots conguration is a complete specication of the positions and orientations of each link of a robot, and its conguration space is the set of all possible congurations of the robot. The degrees of freedom, then, is the minimum number of independent parameters required to specify the position and orientation of each of the links. Based on this denition we obtain a formulaGr ublers formulathat relates the number of links and joints (including the degrees of freedom of each joint) comprising a robot with its degrees of freedom. Robot motion planning and control both begin by choosing coordinates that parametrize the robots conguration space. Often the coordinates of choice are the joint variables, and the conguration space can be parametrized either explicitly or implicitly in terms of these joint variables. Also, to grasp and manipulate objects, a robot is typically equipped with an end-eector, e.g., a mechanical hand or gripper. The task space, also called the workspace, is the conguration space of the end-eector. In this chapter we study the various ways in which the conguration and task spaces of a robot can be parametrized.
Preview
Figure 1.2: A multi-ngered robot hand grasping an object. the object is said to be in force closure. In this chapter we develop both form and force closure tests for planar and spatial grasps.
Preview
and orientation, but for a particular end-eector position and orientation, there may exist multiple solutions, or even none at all. In this chapter we rst examine a special class of six-dof serial chain structures whose inverse kinematics admits a closed-form analytic solution. Iterative numerical algorithms are then derived for solving the inverse kinematics of general six-dof serial chains. We also examine the inverse kinematics of redundant serial chains (that is, those with more than seven degrees of freedom) in the context of tracking a desired end-eector trajectory. For this problem, we present a solution for obtaining the corresponding input joint rates that relies on the generalized inverse of the forward kinematics Jacobian.
7 of each joint for every task; clearly it would be desirable for the computer to ll in the details from a small set of task input data. This chapter is concerned with the automatic generation of joint trajectories from this set of task input data. Often this input data is given in the form of an ordered set of joint values, called control points, together with a corresponding set of control times. Based on this data the trajectory generation algorithm produces a smooth trajectory for each joint that satises various user-supplied conditions. We will study some popular algorithms for trajectory generation that were originally developed for computer-aided curve design applications. Algorithms that are of particular interest are cubic splines and B ezier curves. Versions of these algorithms are oered for the generation of trajectories in both joint space and end-eector space. In the latter case, algorithms are presented for interpolating through an ordered set of end-eector reference frames.
Preview
to achieve the behaviors described above are known as motion (or position) control, force control, hybrid motion-force control, and impedance control. Which of these behaviors is appropriate depends on both the task and the environment. For example, a force control goal makes sense when the endeector is in contact with something, but not when it is moving in free space. We also have a fundamental constraint imposed by mechanics, irrespective of the environment: the robot cannot independently control both motions and forces in the same direction. If the robot imposes a motion, then the environment determines the force, and vice versa. Most robots are driven by actuators that apply a force or torque to each joint. Hence, to precisely control a robot would require an understanding of the relationship between joint forces and torques and the motion of the robot; this is the domain of dynamics. Even for simple robots, however, the dynamic equations are usually very complex, Also, to accurately derive the dynamics requires, among other things, precise knowledge of the mass and inertia of each link, which may not be readily available. Even if they were, the dynamic equations would still not reect physical phenomena like friction, elasticity, backlash, and hysteresis. Most practical control schemes compensate for these errors by using feedback. One eective method of industrial robot control is to neglect the robots dynamics, and instead model each actuator as a scalar second-order linear system. As such we rst introduce basic concepts from linear control, and show how they can be used to eectively control complex multi-dof robots. This chapter also introduces some basic robot control techniques that assume a dynamic model of the robot is available; such feedforward control techniques use the dynamic model of the robot and its environment to determine actuator control inputs that achieve the desired task. Because of modeling and other errors, feedforward control is rarely used by itself, but is often used in conjunction with feedback control. After considering feedback and forward strategies for model-based motion control, we then examine force control, hybrid motion-force control, and impedance control.