from (Lynch & Park, 2017):

In this chapter we study once again the motions of open-chain robots, but this time taking into account the forces and torques that cause them; this is the subject of robot dynamics. The associated dynamic equations – also referred to as the equations of motion – are a set of second-order differential equations of the form

where is the vector of joint variables, is the vector of joint forces and torques, is a symmetric positive-definite mass matrix, and are forces that lump together centripetal, Coriolis, gravity, and friction terms that depend on and .

One should not be deceived by the apparent simplicity of these equations; even for “simple” open chains, e.g., those with joint axes that are either orthogonal or parallel to each other, and can be extraordinarily complex.

Just as a distinction was made between a robot’s forward and inverse kinematics, it is also customary to distinguish between a robot’s forward and inverse dynamics.

Forward Dynamics Problem: Determining the robot’s acceleration given the state and the joint forces and torques:

Inverse Dynamics Problem: Finding the joint forces and torques corresponding to the robot’s state and a desired acceleration, i.e., Equation (LP8.1).

A robot’s dynamic equations are typically derived in one of two ways:

  1. Newton–Euler formulation: Direct application of Newton’s and Euler’s dynamic equations for a rigid body
  2. Lagrangian dynamics formulation: Derived from the kinetic and potential energy of the robot

The Lagrangian formalism is conceptually elegant and quite effective for robots with simple structures, e.g., with three or fewer degrees of freedom. For general open chains, the Newton–Euler formulation leads to efficient recursive algorithms for both the inverse and forward dynamics.

Lagrangian Formulation

Basic Concepts

As developed in Lagrangian mechanics, the Lagrangian approach for manipulator dynamics follows these steps:

  1. Choose generalized coordinates that describe the system’s configuration
  2. Define the Lagrangian function as:
    $$
    L(\mathbf{q}, \dot{\mathbf{q}}) = T(\mathbf{q}, \dot{\mathbf{q}}) - V(\mathbf{q})
  3. Apply the Euler-Lagrange equations:
    $$
    \boldsymbol{\tau} = \frac{\mathrm{d}}{\mathrm{d}t}\left(\frac{\partial L}{\partial \dot{\mathbf{q}}}\right) - \frac{\partial L}{\partial \mathbf{q}} \tag{LP8.3}

For manipulators, the generalized coordinates are typically the joint variables , and the generalized forces are the joint torques , since corresponds to power.

Consider a planar 2R open chain moving in the presence of gravity, as shown in the following figure. The chain moves in the -plane, with gravity acting in the -direction.

bookhue

Figure 5.1: (Left) A open chain under gravity. (Right) At . (Lynch & Park, 2017).

To keep things simple, the two links are modeled as point masses and concentrated at the ends of each link.

Position and Velocity Analysis:

The position and velocity of the link- mass:

The position and velocity of the link- mass:

Energy Analysis:

The kinetic energy terms:

The potential energy terms:

Dynamic Equations:

Applying the Euler-Lagrange equations (LP8.3) and gathering terms into the standard form:

where:

Mass Matrix:

Coriolis and Centripetal Terms:

Gravitational Terms:

The complete equations of motion are:

The equations reveal that the equations of motion are:

  • Linear in (accelerations)
  • Quadratic in (velocities)
  • Trigonometric in (positions)

This is true in general for serial chains containing revolute joints.

Joint coordinates are not in an inertial frame, so accelerations contain terms that are quadratic in joint velocities:

  • Centripetal terms: Containing - arise from rotation of individual joints
  • Coriolis terms: Containing - arise from interaction between joint motions

Important Insight:

Figure 5.2: does not mean zero acceleration of the link masses, due to the centripetal and Coriolis terms.

Consider the arm at configuration . Assuming , the acceleration of can be written as:

bookhue

Figure 5.3: Accelerations of when and . (Left) The centripetal acceleration when . (Middle) The centripetal acceleration when . (Right) When both joints are rotating, the acceleration includes Coriolis effects. (Lynch & Park, 2017).

Physical meaning:

  • Centripetal accelerations pull toward each joint center to maintain circular motion
  • Coriolis acceleration arises from the interaction between joint motions - as joint 2 rotates, gets closer to joint 1, reducing its moment of inertia about joint 1

Understanding the Mass Matrix

The kinetic energy is a generalization of the familiar expression for a point mass. The fact that the mass matrix is positive definite, meaning that for all , is a generalization of the fact that the mass of a point mass is always positive, . In both cases, if the velocity is nonzero, the kinetic energy must be positive.

On the one hand, for a point mass with dynamics expressed in Cartesian coordinates as , the mass is independent of the direction of acceleration, and the acceleration is always “parallel” to the force, in the sense that is a scalar multiple of . A mass matrix , on the other hand, presents a different effective mass in different acceleration directions, and is not generally a scalar multiple of even when .

To visualize the direction dependence of the effective mass, we can map a unit ball of joint accelerations through the mass matrix to generate a joint force–torque ellipsoid when the mechanism is at rest ().

bookhue

(Bold lines) A unit ball of accelerations in maps through the mass matrix to a torque ellipsoid that depends on the configuration of the 2R arm. These torque ellipsoids may be interpreted as mass ellipsoids. The mapping is shown for two arm configurations: and . (Dotted lines) A unit ball in maps through to an acceleration ellipsoid. (Lynch & Park, 2017).

The torque ellipsoid can be interpreted as a direction-dependent mass ellipsoid: the same joint acceleration magnitude requires different joint torque magnitudes depending on the acceleration direction. The directions of the principal axes of the mass ellipsoid are given by the eigenvectors of and the lengths of the principal semi-axes are given by the corresponding eigenvalues . The acceleration is only a scalar multiple of when is along a principal axis of the ellipsoid.

It is easier to visualize the mass matrix if it is represented as an effective mass of the end-effector, since it is possible to feel this mass directly by grabbing and moving the end-effector. If you grabbed the endpoint of the 2R robot, depending on the direction you applied force to it, how massy would it feel?

Let us denote the effective mass matrix at the end-effector as , and the velocity of the end-effector as . We know that the kinetic energy of the robot must be the same regardless of the coordinates we use, so

Assuming the Jacobian satisfying is invertible, Equation (LP8.20) can be rewritten as follows:

In other words, the end-effector mass matrix is

The endpoint acceleration is a scalar multiple of the force applied at the endpoint only if the force is along a principal axis of the ellipsoid. Unless is of the form , where is a scalar and is the identity matrix, the mass at the endpoint feels different from a point mass.

Important Note:

The ellipsoidal interpretations of the relationship between forces and accelerations defined here are only relevant at zero velocity, where there are no Coriolis or centripetal terms.