Deriving Differential Drive Robot Kinematics: Equations Explained

Added:

Robot Basics
Motion Control
Kinematics Setup
Frame Analysis
Derive Equations
Global Velocity
Center Speed
Final Kinematic

Robot Basics

0:00
Playing Section
  • 1

    Introduces differential drive robot with two motorized wheels.

  • 2

    Explains robot components: wheels, motors, caster, and body frame.

  • 3

    Sets up tutorial structure for kinematics derivation.

Basic rigid body 2D kinematics, including the relationship between linear velocity, angular velocity, and radius of rotation.
Fundamentals of coordinate frames, vector translation, and basic trigonometry (sine and cosine).
Introductory differential calculus, specifically understanding rates of change and derivatives with respect to time.
The concept of the 'pure rolling' (no-slip) constraint for wheels on a surface.
Deriving and solving the Inverse Kinematics equations to calculate wheel velocities from desired robot trajectories.
Implementing Odometry and Dead Reckoning algorithms to estimate a robot's position and orientation over time using wheel encoder data.
Designing closed-loop motion controllers, such as PID or Pure Pursuit, for trajectory tracking of differential drive robots.
Transitioning from kinematics to dynamics, exploring how forces, torques, mass, and inertia affect robot motion.
22.7K views757likes16:27@aleksandarhaberOriginal Release: 2023-10-28

This tutorial derives the kinematics equations for differential drive robots, showing how the robot's linear velocity (x_dot, y_dot) and angular velocity (theta_dot) can be predicted from the angular velocities of the left and right wheels using the equations: x_dot = (R/2)(ω_L + ω_R)cos(θ) - (R/s)(ω_L - ω_R)sin(θ), y_dot = (R/2)(ω_L + ω_R)sin(θ) + (R/s)(ω_L - ω_R)cos(θ), and theta_dot = (R/s)(ω_L - ω_R), where R is the wheel radius, s is the distance between wheel centers, and ω_L and ω_R are the angular velocities of the left and right wheels respectively.