15-494/694 Cognitive Robotics: Lab 6

I. Software Update and Initial Setup

At the beginning of every lab you should update your copy of vex-aim-tools. To do this on Linux or Windows:
$ cd vex-aim-tools
$ git pull

II. Path Planning

The vex-aim-tools package now offers simple wavefront and RRT path planners that allow you to send the robot to an object while avoiding obstacles.

  1. Download Lab6a.fsm to your Cognitive Robotics folder and read it.
  2. Compile Lab6a using genfsm.
  3. Run the program by typing "simple_cli Lab6a".
  4. Position an orange barrel where the robot can see it. This is your target object.
  5. Position a blue barrel between the robot and the orange barrel. You may have to offset it slightly so that both barrels are visible.
  6. Type "tm" in simple_cli to proceed.
  7. How are the objects represented in the wavefront display? Take a screenshot.
  8. How is the generated path shown in the path viewer display? Take a screenshot.
  9. See if you can force a more circuitous path by adding additional blue barrels or AprilTags as obstacles. Take a screenshot.

III. Path Planning Away From the Origin

  1. Set up a more complex obstacle field using barrels and AprilTags.
  2. Run Lab6a but don't type "tm" yet.
  3. Type "show particle_viewer" to bring up the particle viewer so you can use it to drive the robot around.
  4. Drive the robot so it can observe all the obstacles you've set up and build a complete world map. Make sure the orange barrel is present as well.
  5. Now type "tm" to invoke the path planner and take a screenshot of the reults.

IV. Path Planning Failure

  1. Set up the orange barrel so that it's surrounded by obstacles and cannot be reached without the robot colliding with one of them.
  2. Run Lab6a. What result do you get? Document with a screenshot.

V. RRT Path Planning

  1. Download Lab6b.fsm to your Cognitive Robotics folder and read it.
  2. This program works like Lab6a, using the orange barrel as a goal. The difference is that it uses the RRT-connect path planner. You can see the two trees (green and blue) in the path_viewer window, along with the recovered, smoothed path (red).
  3. Arrange some objects to form obstacles for the path planner, run it, and take a screenshot of the results.

Homework

Finish the Nim problem from Lab 6.

What to Hand In

Hand in a zip file containing the following:
  1. A PDF file (not DOCX or RTF) with your narrative describing the experimentation you did in parts II through V.
  2. Your solution to the homework problem (Nim).
If you did parts II to V with a team mate, list that person's name in your handin.

Back to the Cognitive Robotics main page


Dave Touretzky