Dynamics
Forces, torques, equations of motion.
Prerequisites
Why it matters in robotics
Dynamics relates the forces and torques on a robot to its motion — how mass, inertia, and gravity combine to determine acceleration at every joint, and how moving parts push back on each other as they speed up, slow down, and change direction. Working out the motion that results from a given set of torques, and the reverse problem of working out what torques are needed to produce a desired motion, are both essential, and together they underpin model-based control approaches used for precise and efficient movement. It is what makes precise, contact-rich, and high-speed motion possible.
What to study
- ✓Lagrangian formulation: deriving equations of motion from kinetic minus potential energy (d/dt(∂L/∂q̇) - ∂L/∂q = τ)
- ✓The manipulator equation and its terms: mass/inertia matrix M(q), Coriolis/centripetal C(q,q̇), and gravity g(q)
- ✓Recursive Newton-Euler algorithm for efficient inverse dynamics (forward/backward iterations)
- ✓Forward vs. inverse dynamics and their use in simulation and model-based control (computed-torque, gravity compensation)
Where to study
Cheatsheet
Symbols used below
Lagrangian formulation
Write kinetic and potential energy in terms of the joint coordinates, then this recipe mechanically produces the equations of motion — no free-body diagrams needed.
The manipulator equation
Every rigid robot's dynamics reduce to this form: an inertia term, a velocity-dependent term, and a configuration-dependent gravity term, all balanced against the applied joint torques.
What each term means physically
: how much torque it takes to accelerate the joints — couples every joint to every other through the arm's changing geometry.
: Coriolis (cross-joint velocity coupling) and centripetal () effects — zero when the arm isn't moving.
: the torque needed just to hold the arm still against gravity, which changes with pose.
Forward vs. inverse dynamics
Forward dynamics: given , solve for — used to simulate how the robot moves.
Inverse dynamics: given a desired (and , ), solve for the required — used directly in model-based control.
Recursive Newton-Euler
Computes inverse dynamics in time for joints, without ever forming explicitly.
Forward pass: propagate velocities and accelerations outward from the base to the tip, link by link.
Backward pass: propagate forces and torques back from the tip to the base, accumulating each joint's required torque.
Computed-torque control
Use the inverse dynamics model to cancel the robot's own nonlinearities:
With a perfect model this turns the nonlinear arm into a simple linear system for the feedback term to stabilize. Gravity compensation is the special case that only cancels , holding a pose without drift.