Lab #1: Introduction to ROS

       Introduction

The main objective of this lab is to familiarize you with the Robot Operating System (ROS). This lab will serve as a building block for the upcoming lab assignments and projects. The lab should be completed individually. I recommend you take your time: if you breeze through it, the next few labs will be much harder.

Warning: this will be the most borning lab of the entire class. There's a ton of information in the assignment and you'll need to do your best to absorb it. Of course, you'll also be able to refer back to this information throughout the semester. But without this core knowledge of ROS, we wouldn't be able to do fun projects on the physical robots.

Objectives

Upon successful completion of this lab, you will be able to:

  1. Demonstrate knowledge of ROS nodes, messages, and services.
  2. Demonstrate knowledge of ROS tools.
Assignment
  1. If you are not familiar with Linux, read through the following for commonly used terminal commands: https://help.ubuntu.com/community/UsingTheTerminal
  2. Read the ROS/Introduction wiki: http://ros.org/wiki/ROS/Introduction
  3. Suggested: Read the following 2009 ICRA Workshop paper about ROS: http://pub1.willowgarage.com/~konolige/cs225B/docs/quigley-icra2009-ros.pdf
  4. Install ROS on your computer. I suggest you install the version called "fuerte." I suggest you follow the directions at this walkthrough: http://robohub.org/up-and-flying-with-the-ar-drone-and-ros-getting-started/. You can either install ROS directly on your computer if you have Linux, or you can download the 2.8 GB virtual machine image on this walkthrough and run everything in Virtual Box.
  5. Now that ROS is installed, complete the ROS tutorials (beginner level) at http://www.ros.org/wiki/ROS/Tutorials. Note that theses tutorials are for the most recent version of ROS; there are minor changes from the fuerte version.
  6. After finishing the beginner tutorials, answer the questions in the questionnaire in a new file and submit the answers via Angel. The answers must be in either plain text format, or in a .pdf file.
  7. Read through the Intermediate Level tutorials. There's nothing to hand in for this part, but there will likely be a quiz in class after the lab has been turned in.