Learning library
Understand how a robot works.
Build working knowledge of robotics and machine learning through examples you can change, calculations you can check, and data you can inspect.
Search for a specific concept, or follow a short path from an idea to its application.
148 lessons to explore
Foundations firstFoundations / 12 min read
Omnidirectional drives: move sideways with three omniwheels
Derive the wheel speeds for a three-wheel Kiwi drive. Command forward, sideways, and turning motion, preserve direction when motors saturate, and integrate the resulting world path.
Foundations / 14 min read
Instantaneous center of rotation: find the center from a planar velocity
Calculate a planar rigid body's instantaneous center of rotation from its linear and angular velocity. Check point velocities, move the reporting reference, and distinguish turning, translation, and rest.
Foundations / 12 min read
Skid steering: why turning requires wheel slip
Derive why four fixed wheels must scrub sideways during a turn. Compare a chosen effective-track model with differential-drive odometry, calculate contact slip speeds, and distinguish equivalent side rotation centers from the body's turning center.
Foundations / 13 min read
Robot dynamics: separate the torques that move an arm
Explore robot dynamics through a two-link arm's torque budget. Separate inertia, velocity coupling, gravity, and friction, then check holding torque, link mass, and mechanical power.
Foundations / 16 min read
Inverse dynamics: calculate the torque a robot’s motion needs
Calculate joint torque from a robot arm’s pose, velocity, and requested acceleration. Account for gravity, coupling, friction, and a known tip force, then see how actuator limits change the resulting acceleration.
Foundations / 14 min read
Forward dynamics: predict an arm’s motion from joint torques
Solve a robot arm’s joint accelerations from torque, configuration, and velocity. Replay gravity release and compensation with RK4, then check energy balance and step-size error.
Foundations / 14 min read
Dynamic parameter identification: learn a joint model from motion
Fit dynamic parameters from a rotating joint's motion and torque data. Recover inertia, gravity mass moment, and damping, then test excitation, noise, and held-out predictions.
Foundations / 12 min read
Friction models: torque during motion and at rest
Compare Coulomb, viscous, and Stribeck friction in a robot joint. Calculate resisting torque and power loss during motion, check static holding at zero speed, and see where friction compensation needs a better model.
Foundations / 15 min read
Actuator dynamics: from motor voltage to joint torque
Explore actuator dynamics with a DC motor’s current rise, back EMF, and geared load. Compare finite inductance with a reduced model, calculate reflected rotor inertia, and check torque, steady speed, and energy balance.
Foundations / 14 min read
Joint flexibility: model the twist between motor and load
Explore joint flexibility with two rotary inertias joined by a spring and damper. Calculate transmitted torque, loaded deflection, elastic oscillation, and energy loss, then compare motor and load motion.
Foundations / 13 min read
Model uncertainty: bound a robot joint’s acceleration
Turn uncertain inertia, damping, and disturbance torque into an acceleration range. Compare a nominal command with an actual model, handle negative acceleration correctly, and understand the assumptions behind a worst-case bound.
Foundations / 14 min read
Feedback control: measure speed and correct the error
Explore feedback control with a robot joint speed model. Compare proportional correction with feedforward alone, calculate steady error, and test disturbances, sensor bias, and torque limits.