Table of Contents

Turtlebot: Learning Adventures


Assumptions: This series of turtlebot exercises presumes that not only is the turtlebot new to you, but the Robot Operating System (ROS) as well. It does assume that there is some familiarity with linux, or that you can figure out the linux commands you need as you go (hopefully that is the case!).

Philosophy: Based on the assumptions above, the philosophy underlying the tutorials is that they should be somewhat informative regarding ROS, the turtlebot interface, how to be able to command and control the turtlebot yourself. Furthermore, rather than provide actual solutions, this set of learning adventures provides some tips on what to do and follows it up with questions. If you can find the answer to the question(s), then you've resolved that particular module. Since this is through a class project or some guided inquiry activity with me, I will provide feedback if you've missed some of the details in your answers.

Companion Code: All of the companion code for the Turtlebot Adventures can be found on github. You should probably learn a little bit about git in order to proceed.

Modules/Adventures


The following series of learning modules should get you up to speed with the turtlebot, its sensors, and its actuators, and finally with its control.

Module Set 0: Turtlebot Basics

  1. Connection and Teleoperation
  2. Argh! How do I know what's up! Basic ROS commands.

Module Set 1: Learning to (Feedback) Control the Turtlebot

  1. Moving the turtlebot.
  2. Sensing the turtlebot.
  3. Wandering with the turtlebot.
  4. Sensing the world.

Module Set 2: More Advanced Sensing

  1. TBD
  2. TBD

Module Set 3: Mapping the World

  1. TBD
  2. TBD

Module Set 4: Navigating the World

  1. TBD
  2. TBD

Tutorials


The Adventures above emphasize more the low-level aspects of working with the Turtlebot, and are but one way to become familiar with ROS and mobile robotics. An alternative would be to take a more systems level perspective, where one learns about different packages and how they work; usually with the intent to modify and integrate them to achieve some targeted outcome. These tutorials have some overlap with the beginning Adventures, but then diverge from there.

One thing to note is that ROS is evolving. These links may point to an earlier version of ROS versus the current version. In that case, just update the ROS version names with the appropriate ones. If there is no equivalent tutorial, then it is most likely part of another tutorial now, or the functionality may not longer exist.

Tutorial Set 1: Turtlebot Basics

  1. Bringup : Launching the minimal Turtlebot interface.

Tutorial Set 2: Robotics Packages


Main