Lab 6: Sensing and Obstacle Avoidance

Lead TAs: William M. Dahlmeier, Mike Shoupe
Demo Times
Checkpoint Grading sheet
Grading sheet


Mission Statement:

The goal of this lab is to utilize sensory information about an unknown space in order to successfully navigate and reach a goal.

Details:

The world for this lab will consist of two of the boards used for the previous assignment laid end to end. As before, the starting position will be given beforehand. However, the location and number of obstacles will not be revealed. All obstacles will be static and grid aligned. They may, however, form concave as well as convex groups, and it may be necessary to move away from the goal in order to navigate the maze to it. There will be no outer walls on the world, but an object may touch the edge. The exact location of the goal will also be unknown. You do know that the goal lies somewhere in the six squares band between the two boards (3 squares at the end of each board). There will be no obstacles in this space. The goal will be the light bulb from lab 1, which may or may not be grid aligned. The robot will be required to stop when some part comes in contact with the bulb. As usual you have 10 minutes to complete this lab. This will be strictly enforced regardless of whether you've managed three runs, with the exception that runs in progress will be allowed to complete (either through failure or success). At demo time, hand in the questions in part 2 of "Getting Started".


This assignment will take the form of a race with one robot starting on each half of the world. To ensure fairness, the two halves will be identical, as shown in the above example. If a robot is prevented from completing the course by interference from its competitor during a close race, then it will be either restarted in the end zone without competition at a location of the TA's choice, or the student may redo the course from the start. The races will be conducted in a best two of three format, or one student may default. For the class wide competition, the single best time will be used. Times will be measured in seconds. In case of a tie, all top teams will be granted the bonus points.

WARNINGS:

This is a difficult lab. DO NOT PUT THIS ONE OFF. There is a very good reason that you have been given two weeks. As a guideline, you should be able to navigate to the end zone using the Sharp IR sensors by the end of the first week. We realize that this lab coincides with the midterm, and in light of this, the waypoint will not require this. However, it will be to your extreme advantage to have basic sensor based navigation down as soon as possible.

Since this lab is in a race format, you will be expected to have your robot prepared and ready to go when your session starts. If you are not ready, the other team may begin without you.

Testing can be difficult and time consuming, and you may end up spending many hours tweaking your program. However, please keep in mind that testing is also battery draining and that you will want your batteries fully trickle charged in time for the race. This takes some time, but it can make the difference between a good grade and embarrassing failure as your robot sputters, slows down, and grinds to a halt.
Trust us on this one.

Notes:

In order to complete this task, a variety of sensors should be used. You may need to construct some of your own. Sharp IR sensors will be provided for ranging information. We strongly recommend that you test your sensors to determine their limitations before developing your planner.

ir sensor
You may also be able to use your wavefront planner in a modified format. This may prove both easier and faster than bug2 or other algorithms you may come across.

Remember: this is a race-- we expect to see fast robots acting intelligently. You should be
aiming for a time around 4 minutes in order to be competitive.

have fun and good luck!

Getting Started:

1. Equip the robot from lab 5 with a Sharp IR optical range sensor.

2. Investigate detection properties of the distance sensor by doing the following:

3. Investigate motion planning with obstacles by doing the following:


Tips:

Hints (read this if you are stuck, or once you think your design works):

Although you are not required to maintain a set distance from obstacles, it may prove to your advantage to check that there is some padding on either side of the robot before it goes forward in (i.e. it may not be enough to just check for the end of an obstacle and then immediately drive forward as your robot may become stuck on the edge of an obstacle). Alternatively, a small robot could squeeze through a narrow space without issue. There may be other solitions to this as well.

A special mount to sweep the sensor may speed your robot by eliminating extraneous turning. This can be powered by the small red motor.

IR data is noisy and has problems with reflection (as you will discover). In the past, some students have found it helpful to repeatedly poll the sensor and either average the data out, or take the last of a series of values. Certainly, there is plenty of room for creative solutions to these problems, including the integration of other sensor data (bump sensors, light sensors, encoder information, etc).

Scoring:
Waypoint (week 1)

Scoring:
Race day (week 2)

Power Point Presentation


http://www.generalrobotics.org/labs/lab06
Rowe
(c) 1999-2005: Howie Choset, Carnegie Mellon