Difference between revisions of "Robot Dynamics and Control"

From MLSwiki
Jump to: navigation, search
 
 
(13 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
{{chapter header|Manipulator Kinematics|Robot Dynamics and Control|Multifingered Hand Kinematics}}
 
{{chapter header|Manipulator Kinematics|Robot Dynamics and Control|Multifingered Hand Kinematics}}
 +
{{righttoc}}
 +
This chapter presents an introduction to the dynamics and control of
 +
robot manipulators.  We derive the equations of motion for a general
 +
open-chain manipulator and, using the structure present in the
 +
dynamics, construct control laws for asymptotic tracking of a desired
 +
trajectory.  In deriving the dynamics, we will make explicit use of
 +
twists for representing the kinematics of the manipulator and explore
 +
the role that the kinematics play in the equations of motion.  We
 +
assume some familiarity with dynamics and control of physical systems.
 +
 +
{| width=100%
 +
|- valign=top
 +
| width=25% |
 +
| width=25% |
 +
* {{MLS pdf|mls94-manipdyn_v1_2.pdf|Chapter pdf}} (436K)
 +
| width=25% |
 +
* {{MLS pdf|zxl_manipdyn-jul09.pdf|Lecture notes}} (1.2M)
 +
| width=25% |
 +
|}
 +
 +
=== Summary ===
 +
The following are the key concepts covered in this chapter:
 +
<ol>
 +
<li>
 +
The equations of motion for a mechanical system with Lagrangian <amsmath>L =
 +
T(q,\dot q)
 +
- V(q)</amsmath> satisfies ''Lagrange's equations'':
 +
<center><amsmath>
 +
  \frac{d}{dt} \frac{\partial L}{\partial \dot q_i} - \frac{\partial
 +
  L}{\partial q_i} = \Upsilon_i,
 +
</amsmath></center>
 +
where <amsmath>q \in {\mathbb R}^n</amsmath> is a set of generalized coordinates for the
 +
system and <amsmath>\Upsilon \in {\mathbb R}^n</amsmath> represents the vector of
 +
generalized external forces.
 +
</li>
 +
 +
<li> The equations of motion for a rigid body with configuration
 +
<amsmath>g(t) \in \mbox{\it SE}(3)</amsmath> are given by the ''Newton-Euler equations'':
 +
<center><amsmath>
 +
  \begin{bmatrix} mI & 0 \\ 0 & \cal I \end{bmatrix} \begin{bmatrix}
 +
  \dot v^b \\ \dot \omega^b \end{bmatrix} +
 +
  \begin{bmatrix} \omega^b \times m v^b \\ \omega^b \times {\cal I}
 +
  \omega^b \end{bmatrix} = F^b,
 +
</amsmath></center>
 +
where <amsmath>m</amsmath> is the mass of the body, <amsmath>\cal I</amsmath> is the inertia tensor, and
 +
<amsmath>V^b = (v^b, \omega^b)</amsmath> and <amsmath>F^b</amsmath> represent the instantaneous body
 +
velocity and applied body wrench.
 +
</li>
 +
 +
<li> The equations of motion for an open-chain robot manipulator can be
 +
written as
 +
<center><amsmath>
 +
  M(\theta) \ddot\theta +
 +
  C(\theta, \dot\theta) \dot\theta +
 +
  N(\theta, \dot\theta)
 +
  = \tau
 +
</amsmath></center>
 +
where <amsmath>\theta \in {\mathbb R}^n</amsmath> is the set of joint
 +
variables for the robot and <amsmath>\tau \in {\mathbb R}^n</amsmath>
 +
is the set of actuator forces applied at the joints.  The dynamics of
 +
a robot manipulator satisfy the following properties:
 +
* <amsmath>M(\theta)</amsmath> is symmetric and positive definite.
 +
* <amsmath>\dot M - 2C \in {\mathbb R}^{n \times n}</amsmath> is a skew-symmetric matrix.
 +
</li>
 +
 +
<li>
 +
An equilibrium point <amsmath>x^*</amsmath> for the system <amsmath>\dot x = f(x,t)</amsmath> is ''locally asymptotically stable'' if all solutions which start near <amsmath>x^*</amsmath>
 +
approach <amsmath>x^*</amsmath> as <amsmath>t \to \infty</amsmath>.  Stability can be checked using the
 +
''direct method of Lyapunov'', by finding a locally positive
 +
definite function <amsmath>V(x,t) \geq 0</amsmath> such that <amsmath>-\dot V(x,t)</amsmath> is a
 +
locally positive definite function along trajectories of the system.
 +
In situations in which <amsmath>-\dot V</amsmath> is only positive semi-definite,
 +
''Lasalle's invariance principle'' can be used to check asymptotic
 +
stability.  Alternatively, the ''indirect method of Lyapunov'' can
 +
be employed by examining the linearization of the system, if it
 +
exists.  Global exponential stability of the linearization implies
 +
local exponential stability of the full nonlinear system.
 +
</li>
 +
 +
<li> Using the form and structure of the robot dynamics, several control
 +
laws can be shown to track arbitrary trajectories.  Two of the most
 +
common are the ''computed torque control law'',
 +
<center><amsmath>
 +
  \tau = M(\theta) (\ddot \theta_d + K_v \dot e + K_p e) +
 +
    C(\theta,\dot \theta) \dot \theta + N(\theta,\dot \theta),
 +
</amsmath></center>
 +
and an ''augmented PD control law'',
 +
<center><amsmath>
 +
  \tau = M(\theta) \ddot \theta_d +
 +
  C(\theta, \dot \theta) \dot \theta_d +
 +
  N(\theta, \dot \theta) +
 +
  K_v \dot e + K_p e.
 +
</amsmath></center>
 +
Both of these controllers result in exponential trajectory tracking of
 +
a given joint space trajectory.  Workspace versions of these control
 +
laws can also be derived, allowing end-effector trajectories to be
 +
tracked without solving the inverse kinematics problem.  Stability of
 +
these controllers can be verified using Lyapunov stability.
 +
</li>
 +
</ol>
 +
 +
=== Errata ===
 +
<ncl>Robot Dynamics and Control errata v1</ncl>
 +
* [[:Category:Robot Dynamics and Control errata|Full list of errata]]
 +
* {{submitbug}}
 +
 +
=== Additional information ===

Latest revision as of 05:29, 17 August 2009

Prev: Manipulator Kinematics Chapter 4 - Robot Dynamics and Control Next: Multifingered Hand Kinematics

This chapter presents an introduction to the dynamics and control of robot manipulators. We derive the equations of motion for a general open-chain manipulator and, using the structure present in the dynamics, construct control laws for asymptotic tracking of a desired trajectory. In deriving the dynamics, we will make explicit use of twists for representing the kinematics of the manipulator and explore the role that the kinematics play in the equations of motion. We assume some familiarity with dynamics and control of physical systems.

Summary

The following are the key concepts covered in this chapter:

  1. The equations of motion for a mechanical system with Lagrangian <amsmath>L = T(q,\dot q) - V(q)</amsmath> satisfies Lagrange's equations:
    <amsmath>
     \frac{d}{dt} \frac{\partial L}{\partial \dot q_i} - \frac{\partial
     L}{\partial q_i} = \Upsilon_i,
    
    </amsmath>

    where <amsmath>q \in {\mathbb R}^n</amsmath> is a set of generalized coordinates for the system and <amsmath>\Upsilon \in {\mathbb R}^n</amsmath> represents the vector of generalized external forces.

  2. The equations of motion for a rigid body with configuration <amsmath>g(t) \in \mbox{\it SE}(3)</amsmath> are given by the Newton-Euler equations:
    <amsmath>
     \begin{bmatrix} mI & 0 \\ 0 & \cal I \end{bmatrix} \begin{bmatrix}
     \dot v^b \\ \dot \omega^b \end{bmatrix} +
     \begin{bmatrix} \omega^b \times m v^b \\ \omega^b \times {\cal I}
     \omega^b \end{bmatrix} = F^b,
    
    </amsmath>

    where <amsmath>m</amsmath> is the mass of the body, <amsmath>\cal I</amsmath> is the inertia tensor, and <amsmath>V^b = (v^b, \omega^b)</amsmath> and <amsmath>F^b</amsmath> represent the instantaneous body velocity and applied body wrench.

  3. The equations of motion for an open-chain robot manipulator can be written as
    <amsmath>
     M(\theta) \ddot\theta +
     C(\theta, \dot\theta) \dot\theta +
     N(\theta, \dot\theta)
     = \tau
    
    </amsmath>

    where <amsmath>\theta \in {\mathbb R}^n</amsmath> is the set of joint variables for the robot and <amsmath>\tau \in {\mathbb R}^n</amsmath> is the set of actuator forces applied at the joints. The dynamics of a robot manipulator satisfy the following properties:

    • <amsmath>M(\theta)</amsmath> is symmetric and positive definite.
    • <amsmath>\dot M - 2C \in {\mathbb R}^{n \times n}</amsmath> is a skew-symmetric matrix.
  4. An equilibrium point <amsmath>x^*</amsmath> for the system <amsmath>\dot x = f(x,t)</amsmath> is locally asymptotically stable if all solutions which start near <amsmath>x^*</amsmath> approach <amsmath>x^*</amsmath> as <amsmath>t \to \infty</amsmath>. Stability can be checked using the direct method of Lyapunov, by finding a locally positive definite function <amsmath>V(x,t) \geq 0</amsmath> such that <amsmath>-\dot V(x,t)</amsmath> is a locally positive definite function along trajectories of the system. In situations in which <amsmath>-\dot V</amsmath> is only positive semi-definite, Lasalle's invariance principle can be used to check asymptotic stability. Alternatively, the indirect method of Lyapunov can be employed by examining the linearization of the system, if it exists. Global exponential stability of the linearization implies local exponential stability of the full nonlinear system.
  5. Using the form and structure of the robot dynamics, several control laws can be shown to track arbitrary trajectories. Two of the most common are the computed torque control law,
    <amsmath>
     \tau = M(\theta) (\ddot \theta_d + K_v \dot e + K_p e) + 
       C(\theta,\dot \theta) \dot \theta + N(\theta,\dot \theta),
    
    </amsmath>

    and an augmented PD control law,

    <amsmath>
     \tau = M(\theta) \ddot \theta_d + 
     C(\theta, \dot \theta) \dot \theta_d + 
     N(\theta, \dot \theta) +
     K_v \dot e + K_p e.
    
    </amsmath>

    Both of these controllers result in exponential trajectory tracking of a given joint space trajectory. Workspace versions of these control laws can also be derived, allowing end-effector trajectories to be tracked without solving the inverse kinematics problem. Stability of these controllers can be verified using Lyapunov stability.

Errata

Additional information