Lesson catalog
Robotics lessons you can run in your browser.
Each lesson explains an algorithm and opens a ready-made Webots simulation: edit the controller, run it, watch the robot. Nothing to install.
Bin Picking
Combine inverse kinematics, perception, grasping, and collision checking into a bin-picking pipeline using behavior trees.
Introduction to Autonomous Robots
Collision Avoidance
Use recognition output and a PyBullet collision world to choose feasible grasps in clutter.
Introduction to Autonomous Robots
Highway Driving
Drive a car on a highway avoiding other vehicles.
Robot Programming Challenges
Humanoid Sprint
Make a humanoid robot run as fast as possible.
Robot Programming Challenges
Inverse Kinematics
Implement forward kinematics, inverse kinematics, MoveJ, MoveL, and a keep-out safety plane for a UR5e manipulator.
Introduction to Autonomous Robots
Inverted Pendulum Control
Balance an inverted pendulum on a cart using control algorithms.
Robot Programming Challenges
Line Following with Camera
Program a robot to follow a line on the ground using camera.
Robotics Simulation Labs
Line Following with Ground Sensors
Program a robot to follow a line on the ground using ground sensors.
Robotics Simulation Labs
Line Following with Localization
Program a robot to follow a line on the ground using localization.
Robotics Simulation Labs
Navigation Controller (Odometry + PID)
Navigate a robot to a target position using odometry-based localization and a PID controller.
Robotics Simulation Labs
Obstacle Avoidance
Navigate a robot around obstacles using sensor data.
Robot Programming Challenges
Oriented Grasping
Translate object pose estimates into reachable grasp poses and execute a top-down grasp with the UR5e manipulator.
Introduction to Autonomous Robots
Pick & Place
Control a robot arm to pick up and place objects at target locations.
Robot Programming Challenges
Pit Escape
Navigate a robot out of a pit using its sensors and wheels.
Robot Programming Challenges
Robot Programming
Learn the basics of robot programming and movement.
Robot Programming Challenges
Simple Grasping
Use depth sensing and point-cloud processing to detect cans on a conveyor belt as a precursor to grasping.
Introduction to Autonomous Robots
Square Path
Program a robot to follow a perfect square path.
Robot Programming Challenges
Trajectory Tracking Controller (Odometry + Kinematic Tracking)
Track a predefined trajectory using odometry-based localization and kinematic control.
Robotics Simulation Labs
Visual Tracking
Learn how to make a robot follow a colored object using computer vision.
Wall Following
Navigate a robot to follow a wall using distance sensors.
Robot Programming Challenges
Teaching robotics? Use these lessons as assignments.
Create a class, pick lessons, invite your students with a link, and see their submissions.