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.

advanced manipulationbehavior trees

Bin Picking

Combine inverse kinematics, perception, grasping, and collision checking into a bin-picking pipeline using behavior trees.

Introduction to Autonomous Robots

advanced manipulationcollision avoidance

Collision Avoidance

Use recognition output and a PyBullet collision world to choose feasible grasps in clutter.

Introduction to Autonomous Robots

intermediate autonomous drivingnavigation

Highway Driving

Drive a car on a highway avoiding other vehicles.

Robot Programming Challenges

advanced humanoidlocomotion

Humanoid Sprint

Make a humanoid robot run as fast as possible.

Robot Programming Challenges

intermediate manipulationinverse kinematics

Inverse Kinematics

Implement forward kinematics, inverse kinematics, MoveJ, MoveL, and a keep-out safety plane for a UR5e manipulator.

Introduction to Autonomous Robots

advanced controlPID

Inverted Pendulum Control

Balance an inverted pendulum on a cart using control algorithms.

Robot Programming Challenges

intermediate line followingcamera

Line Following with Camera

Program a robot to follow a line on the ground using camera.

Robotics Simulation Labs

beginner line followingground sensors

Line Following with Ground Sensors

Program a robot to follow a line on the ground using ground sensors.

Robotics Simulation Labs

intermediate line followinglocalization

Line Following with Localization

Program a robot to follow a line on the ground using localization.

Robotics Simulation Labs

advanced navigationodometry

Navigation Controller (Odometry + PID)

Navigate a robot to a target position using odometry-based localization and a PID controller.

Robotics Simulation Labs

beginner navigationsensors

Obstacle Avoidance

Navigate a robot around obstacles using sensor data.

Robot Programming Challenges

intermediate manipulationgrasping

Oriented Grasping

Translate object pose estimates into reachable grasp poses and execute a top-down grasp with the UR5e manipulator.

Introduction to Autonomous Robots

advanced manipulationarm

Pick & Place

Control a robot arm to pick up and place objects at target locations.

Robot Programming Challenges

intermediate navigationsensors

Pit Escape

Navigate a robot out of a pit using its sensors and wheels.

Robot Programming Challenges

beginner basicsmovement

Robot Programming

Learn the basics of robot programming and movement.

Robot Programming Challenges

intermediate manipulationgrasping

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

beginner path planningodometry

Square Path

Program a robot to follow a perfect square path.

Robot Programming Challenges

advanced trajectoryodometry

Trajectory Tracking Controller (Odometry + Kinematic Tracking)

Track a predefined trajectory using odometry-based localization and kinematic control.

Robotics Simulation Labs

intermediate computer visiontracking

Visual Tracking

Learn how to make a robot follow a colored object using computer vision.

intermediate navigationsensors

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.

Create a classroom