0% found this document useful (0 votes)
20 views

Optional Programming Assignment 4o

This document provides instructions for an optional programming assignment to program a robot to avoid obstacles. It describes implementing a controller with three parts: 1) transforming IR distance measurements to points in the robot's reference frame, 2) transforming points to the world's reference frame, and 3) computing a vector pointing away from obstacles to steer the robot. The submission will be graded on transforming IR distances to world points and avoiding collisions for 60 seconds in simulation.

Uploaded by

jcvoscrib
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views

Optional Programming Assignment 4o

This document provides instructions for an optional programming assignment to program a robot to avoid obstacles. It describes implementing a controller with three parts: 1) transforming IR distance measurements to points in the robot's reference frame, 2) transforming points to the world's reference frame, and 3) computing a vector pointing away from obstacles to steer the robot. The submission will be graded on transforming IR distances to world points and avoiding collisions for 60 seconds in simulation.

Uploaded by

jcvoscrib
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

Optional Programming Assignment 4: Instructions

Help

Start by downloading the robot simulator and updated manual for this week:
1. simiam-coursera-week-4.zip (Updated: 2014-02-09)
2. manual-coursera-sp14.pdf (Updated: 2014-02-09)
This week you will be implementing the different parts of a controller that steers the robot successfully
away from obstacles to avoid a collision. This is known as the avoid-obstacles behavior. The IR
sensors allow us to measure the distance to obstacles in the environment, but we need to compute the
points in the world to which these distances correspond. You will be implementing the following
strategy for obstacle avoidance:
1. Transform the IR distances to points in the world.
2. Compute a vector to each point from the robot, u1 , u2 , , u9 .
3. Weigh each vector according to their importance, 1 u1 , 2 u2 , , 9 u9 . For example, the
front and side sensors are typically more important for obstacle avoidance while moving forward.
4. Sum the weighted vectors to form a single vector, uo = 1 u1 + + 9 u9 .
5. Use this vector to compute a heading and steer the robot to this heading.
This strategy will steer the robot in a direction with the most free space (i.e., it is a direction *away*
from obstacles). For this strategy to work, you will need to implement three parts of an avoid-obstacles
controller:
1. Transform the IR distance (which you converted from the raw IR values in Week 2) measured by
each sensor to a point in the reference frame of the robot.
2. Transform the point in the robot's reference frame to the world's reference frame.
3. Use the set of transformed points to compute a vector that points away from the obstacle. The
robot will steer in the direction of this vector and successfully avoid the obstacle.
Please make sure read the "Week 4" section in the manual for directions on where to add your code in
the robot simulator and some additional help.

Submission
This week's automatic grader will test:
1. From IR distances to points in the World: Are the IR distances interpreted as points in the sensor's
coordinate frame correctly transformed to the world coordinate frame?
2. Avoiding obstacles for 60 seconds: Can the robot roam around the world without collisions for 60
seconds?
Run the submit script (from the simulator package) in MATLAB to submit your solutions.

You might also like