Skip to main content

Module 02: Rigid Body Dynamics

Introductionโ€‹

Understanding rigid body dynamics is fundamental to robotics. This module covers the physics that governs how robots move and interact with their environment, providing the mathematical foundation for control and simulation.

Section 1: Newton-Euler Formulationโ€‹

1.1 Newton's Laws for Rigid Bodiesโ€‹

Rigid Body: A solid object in which the distance between any two points remains constant regardless of external forces applied.

For a rigid body, Newton's second law extends to:

F=macm\mathbf{F} = m\mathbf{a}_{cm}

where F\mathbf{F} is the net force, mm is mass, and acm\mathbf{a}_{cm} is acceleration of the center of mass.

1.2 Euler's Equations for Rotationโ€‹

The rotational equivalent involves angular momentum:

ฯ„=Iฯ‰ห™+ฯ‰ร—(Iฯ‰)\boldsymbol{\tau} = \mathbf{I}\dot{\boldsymbol{\omega}} + \boldsymbol{\omega} \times (\mathbf{I}\boldsymbol{\omega})

where:

  • ฯ„\boldsymbol{\tau} is the net torque
  • I\mathbf{I} is the inertia tensor
  • ฯ‰\boldsymbol{\omega} is angular velocity

Section 2: Mass Propertiesโ€‹

2.1 Center of Massโ€‹

rcm=1Mโˆ‘imiri\mathbf{r}_{cm} = \frac{1}{M}\sum_{i} m_i \mathbf{r}_i

2.2 Inertia Tensorโ€‹

The inertia tensor captures rotational inertia about all axes:

def compute_inertia_tensor(masses, positions):
"""Compute inertia tensor for a set of point masses."""
I = np.zeros((3, 3))
for m, r in zip(masses, positions):
r_sq = np.dot(r, r)
I += m * (r_sq * np.eye(3) - np.outer(r, r))
return I

Section 3: Equations of Motionโ€‹

3.1 Free Body Diagramsโ€‹

Every force and torque acting on a body must be identified:

  • Gravitational forces
  • Contact forces (normal and friction)
  • Joint reaction forces
  • External applied forces

3.2 Multi-Body Systemsโ€‹

For articulated robots, the dynamics become:

M(q)qยจ+C(q,qห™)qห™+g(q)=ฯ„\mathbf{M}(\mathbf{q})\ddot{\mathbf{q}} + \mathbf{C}(\mathbf{q}, \dot{\mathbf{q}})\dot{\mathbf{q}} + \mathbf{g}(\mathbf{q}) = \boldsymbol{\tau}

The mass matrix M(q)\mathbf{M}(\mathbf{q}) is configuration-dependent and must be recomputed at each time step.

Summaryโ€‹

Key takeaways:

  1. Newton-Euler equations govern rigid body motion
  2. Mass properties (COM, inertia) are essential for dynamics
  3. Multi-body dynamics leads to coupled differential equations
  4. Numerical integration enables simulation

Key Conceptsโ€‹

  • Rigid Body: Idealized solid with fixed shape
  • Inertia Tensor: 3ร—3 matrix describing rotational inertia
  • Equations of Motion: ODEs describing system dynamics
  • Newton-Euler Method: Algorithm for computing joint torques

Further Readingโ€‹

  1. Featherstone, R. (2008). "Rigid Body Dynamics Algorithms"
  2. Craig, J. (2005). "Introduction to Robotics: Mechanics and Control"