← All modules

2.2 Dynamics of Mobile Robotic Systems

In review— Full notation rewrite: q_dot→\dot q, M_bar→ar M; fixed bracket mismatch in Eq 9, broken matrix in Eq 16, paren-stripping regression in Eq 20. Physics signs/constants pending.· updated 2026-04-18
Download lecture slides (PPTX)
CH2.2 Mobile Robot Control Dynamics
CH2.2-Mobile_Robot_Control_Dynamics.pptx
Differential-drive coordinate frames, body velocities v and ω, heading θ, and the no-slip constraint
Differential-drive kinematic configuration: world frame {W}, body frame {B}, pose (x, y, θ), body velocities v and ω, and the no-lateral-slip constraint (red).

Theoretical Background: Dynamics of Mobile Robotic Systems

Module 2 Theory: Dynamics of Wheeled Robots, Actuators, and Friction

2.2.1 Dynamic Modeling of Wheeled Robots

Unlike manipulators with a fixed base, mobile robots translate through their environment. Their dynamics must account for wheel-ground interaction forces, nonholonomic constraints prohibiting lateral sliding, coupling between translational and rotational motion, and friction and slip effects.

Reference Frames:

  • World frame {W}: Fixed inertial frame (X, Y)
  • Body frame {B}: Attached to robot center, aligned with heading

The robot pose in the world frame:

where is the position of the robot center and is the heading angle.

2.2.2 Differential Drive Robot Dynamics

Kinematic Model Review:

For a differential drive robot with wheel radius and wheelbase :

where and are the angular velocities of the right and left wheels. In compact form , where is the body-frame velocity.

Nonholonomic Constraint (no lateral slip):

In Pfaffian form :

Lagrangian Formulation:

Generalized coordinates:

Kinetic Energy:

where is total robot mass and is moment of inertia about the center of mass.

Potential Energy: for a robot on a flat surface.

Lagrangian:

Euler-Lagrange with Constraints:

Using Lagrange multipliers to enforce the nonholonomic constraint:

where is the input transformation matrix, are wheel torques, and is the Lagrange multiplier (constraint force).

Expanding yields:

2.2.3 Body-Frame Dynamic Model

Substituting the constraint and its time derivative eliminates lambda, yielding:

where is the body-frame velocity vector. The matrices are:

( holds for a symmetric mass distribution about the robot’s heading axis; otherwise a Coriolis term appears.)

Simplified body-frame dynamics:

Key Observation: The body-frame formulation decouples linear and angular dynamics for a symmetric robot, making controller design straightforward.

2.2.4 Mass Distribution and Inertia

For a rectangular chassis of mass , width , and length :

For each wheel of mass at distance from the robot center:

Total moment of inertia:

where is the spin inertia of each wheel about its own axis.

Differential Drive (2 wheels + caster):

Skid-Steer (4 wheels):

2.2.5 DC Motor Model

Most mobile robots use DC motors. The electromechanical model consists of coupled electrical and mechanical equations.

Electrical equation:

Mechanical equation:

with : applied voltage, : armature inductance, : armature resistance, : back-EMF constant, : torque constant, : motor inertia, : viscous damping coefficient, : gear ratio, and : load torque at the wheel.

Steady-State Motor Characteristic:

At steady state (, ):

Operating limits: stall torque , and no-load speed . The motor operates along a linear torque–speed curve between these two extremes.

Combined Robot-Motor Dynamics:

where is the effective mass seen by each wheel.

2.2.6 Friction Models

Coulomb Friction:

Viscous Friction:

Combined Friction Model:

Rolling Condition and Slip:

The rolling-without-slip condition requires:

The slip ratio quantifies deviation from ideal rolling:

: Pure rolling (ideal).

: Full slip (wheel spinning freely).

Acceptable range: for most control algorithms.

Terrain Effects on Friction:

  • Concrete/asphalt: , rolling resistance
  • Carpet: , rolling resistance
  • Grass: , rolling resistance
  • Sand: , rolling resistance
  • Ice: , rolling resistance

2.2.7 Simplified Models for Real-Time Control

First-Order Velocity Model:

For control design, the full dynamic model is often simplified to first-order transfer functions:

where and are time constants, and are steady-state gains, and and are voltage commands. These parameters are identified experimentally through step-response tests.

Unicycle Model:

For motion planning and high-level control, the unicycle model is standard:

Key Assumption: The inner velocity control loop is fast compared to the navigation loop, so the robot tracks commanded velocities without transient dynamics.

2.2.8 Numerical Integration for Dynamic Simulation

For simulating the dynamic equations, the choice of integration method affects accuracy and stability.

Euler (1st order): Simple but can be unstable for stiff systems.

Runge-Kutta 4 (RK4): Good accuracy-to-cost ratio. The update rule is:

// RK4 integration step
k1 = f(t, x)
k2 = f(t + dt/2, x + dt/2 * k1)
k3 = f(t + dt/2, x + dt/2 * k2)
k4 = f(t + dt, x + dt * k3)
x_next = x + (dt/6) * (k1 + 2*k2 + 2*k3 + k4)

Typical time steps for mobile robot simulation: 1-10 ms.

Integration: Theory to Practice

The body-frame dynamic model (Equations 17-18) maps directly to a ROS 2 control node: wheel torque commands are computed from desired linear and angular accelerations by inverting M_bar and B_bar. The DC motor model (Equations 24-25) determines the voltage commands sent to motor drivers. In practice, the first-order velocity model (Equations 33-34) is preferred for outer-loop control because its two parameters (time constant and gain) are easily identified from step response data. The unicycle model (Equations 35-37) serves as the interface between the navigation stack and the low-level velocity controller, with the assumption that velocity tracking is handled by the inner loop.

Theoretical Design Choices

The Lagrangian formulation with Lagrange multipliers is chosen over direct Newton-Euler analysis because it systematically handles the nonholonomic no-slip constraint, which cannot be expressed as a position-level equation. The body-frame transformation eliminates the constraint force lambda, yielding a reduced-order model that is diagonal for symmetric robots – this diagonality is why differential drive robots are so widely used in research. The combined Coulomb-viscous friction model (Equation 30) is chosen as the minimum-complexity friction model that captures both static breakaway behavior and velocity-dependent losses; more sophisticated models (Stribeck, LuGre) add parameters that are difficult to identify without specialized test equipment. The first-order velocity abstraction (Equations 33-34) deliberately discards actuator dynamics to create a hierarchy of control loops operating at different timescales, which is the standard approach in industrial motor control.