Introduction

The goal of this lab is to gain experience using the Python actionlib interface to the ROS navigation system.

Steps

  1. Log into the student account on a lab machine.
  2. Execute the following script to in order to update the student account's .bashrc file: init_student.sh.
  3. Complete steps 2-3 from the Packaging Lab in order to set up your repository. The repository name should be "random_nav".
  4. Download and unzip the file random_nav.zip. Copy the contents of the unzipped folder into your newly created "random_nav" project.
  5. Execute catkin_make in your workspace directory.
  6. If you want to complete the lab on a Turtlebot, plug in both USB cables and execute:
    roslaunch random_nav turtlebot.launch
    
  7. If you want to complete the lab in gazebo, execute:
    roslaunch random_nav simulator.launch
    
  8. Open the file random_nav.py and complete the node according to the included comments.

Going Further

If you finish the steps above, try modifying random nav so that it selects a single random destination, navigates to that goal, then returns to the robots starting location. Accomplishing this will require you to use the tf system to determine the robot's initial location in the map coordinate frame. You can then store this location to use as the final navigation destination.

Submitting

There is nothing to submit for this lab. I'll check your work by accessing your Mercurial repository on stu. If you worked with a partner, make sure that all member's names are recorded in the finished Python file.