From Introduction to Robotics (CS460)
Jump to: navigation, search

RoboClean: Robot Cleaner

In this project, you will design and implement your own cleaner robot to the commercially available cleaner robots such as iRobot Roomba and Samsung NaviBot Robotic Vacuum Cleaner. You will design and implement your intelligent controller to turn your Tutrlebot robot into a robot cleaner. Two videos that demonstrates how the robot vacuum cleaner works.

The objective of this project is to program robot controllers for Turtlebot to make it work as a robot vacuum cleaner. You will develop two controllers: (1) one controller where the robot cleans without using a map (reactive behaviour) based on collected sensor data, (2) one controller where the robot cleans and navigates using a map of the environment (map-based navigation).

Learning outcomes

At the completion of this project, the student will be able to:

  • control the robot navigation without using a map (reactive behavior)
  • control the robot navigation using a map (map-based behavior)
  • understand the difference between reactive navigation and map-based navigation


The project will be evaluated out of 30 points.

Submission and deadline

The project is group-wise. Each group should have exactly two or three students. Each student will be evaluated individually based on his contributions to the project. The deadline for project submission is December 18, 2013.
The submission of the project must be done through Moodle.

ROS version

This project is designed to be developed using ROS Hydro version with roscpp package (using C++). You must have ROS Hydro installed and properly configured in your computer machine. Your machine must run Linux Ubuntu 12.04 or Ubuntu 12.10.
For any query, ask your instructors.