The projects for this course will introduce you to some of the
practical aspects of robotics.
More specifically we will work through a graduated series of projects
that use the Player/Stage suite, and sometimes we'll run these
programs on real robots.
I'll provide computers with all the necessary software installed. If
you want to set up your own machine (either to bring to class or to
work on the projects at home), then here are some instructions.
We'll start with a simple simulated robot running in a simple environment.
The first project is to write a controller for a Roomba robot, both
simulated as here:
and for the real robot (as we will see, they differ somewhat).
The second project explores the joys of navigating a robot that is
restricted to dead-reckoning navigation when we do this in simulation.
The third project looks at what you can do when the robot knows where
it is, and has more sophisticated sensors than a Roomba usually has at
For the fourth project we went back to the setup for project 1 and looked at
how hard it is to do dead-reckoning navigation on a real robot.
This is especially hard on the Roomba
For the fifth project we looked at getting the simulated Roomba to localize
using data from the laser rangefinder
This is always tricky. How do you know when the robot has figured out
where it is? There's nobody to tell you "now it knows!".
Project VI built on Project V, working towards getting the robot to
Navigation like this is what the whole course was building towards.