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.
45 lessons found
Foundations firstFoundations / 13 min read
Exponential and logarithm maps: turn a body twist into a pose
Exponentiate a constant planar body twist, calculate its coupled translation, and recover a chosen logarithm. Explore straight-motion limits, half-turn branch choices, and information lost in a full turn.
Foundations / 13 min read
Twists and screw axes: connect point velocities to rigid motion
Build a six-component twist from a screw axis, calculate point velocities, and compare exact helical motion with a tangent prediction. Separate pitch, accumulated displacement, current rate, and pure translation.
Foundations / 12 min read
Adjoint transformations: express a twist in another frame
Transform angular-first twists between body and space frames. Derive the origin-shift term, distinguish linear twist coordinates from point velocity, and check a planar example with an interactive adjoint matrix.
Foundations / 14 min read
Product of exponentials: build a robot arm’s forward kinematics
Build a two-joint arm's tool pose from fixed home screw axes and matrix exponentials. Check the result against geometry, inspect multiplication order, and connect space and body formulas.
Foundations / 14 min read
Wrenches: combine force, moment, and power across frames
Calculate a force's moment about a chosen origin, include a free couple, and transform a moment-first wrench between frames. Use a worked planar load to check the inverse-transpose rule and power invariance.
Foundations / 14 min read
Space and body Jacobians: map joint rates to rigid motion
Build space and body Jacobians from joint screw axes, recover the physical tool velocity, and compare their ranks with a position-only task. Explore a planar two-link arm and verify its derivatives in Python.
Foundations / 14 min read
Robot statics: turn tool loads into holding torques
Use virtual work and a Jacobian transpose to calculate a robot arm's joint loads. Distinguish external and holding torque, check space and body frames, and interpret zero-torque loads.
Foundations / 13 min read
Kinematic singularities: find the tip velocities an arm can produce
Use a two-link robot arm to distinguish exact rank loss from near-singular conditioning. Calculate the minimum-norm joint rates for a requested tip velocity and identify the component the arm cannot produce.
Foundations / 11 min read
Manipulability: read a robot’s velocity ellipse
Map a joint-rate budget into a robot’s possible tool velocities. Read the ellipse’s singular values, compare area with conditioning, and understand singular poses, units, and the limits of force duality.
Foundations / 14 min read
Numerical inverse kinematics: solve a tool position with local steps
Use a position Jacobian and damped least squares to refine a two-joint arm toward a target. Inspect accepted steps, compare starting guesses, and distinguish convergence, a stalled solve, and unreachable geometry.
Foundations / 14 min read
Differential inverse kinematics: turn a tip-velocity command into a joint step
Calculate damped joint rates for a robot tip-velocity command, measure the resulting speed and direction error, and compare an instantaneous prediction with one finite joint step.
Foundations / 12 min read
Kinematic redundancy: use the motion a task leaves free
Split a three-link arm’s joint rates into a primary solution and null-space motion. Check the exact projector, compare damping leakage, and measure why a finite step can move a tool with zero initial velocity.