The Robotics Primer Workbook
Developed by  USC, iRobot® and Microsoft® Robotics Studio
Categories: Exercise | Player Exercise | Command Module Exercise

Navigation:Exercise4-Room Coverage

Setup

In this exercise, we will discuss how to write a controller to make a robot effectively clean a room of arbitray size. Using cardboard, we can create just such a room. Then by adding the parameters of this room, to the client.xml file, write a program to plan a path around the room "covering" open area. Then write a program to execute that path.


Part 1

Knowing the dimensions of a room, for example a rectangular room 5'x9', write a program to plan and execute a path where the robot can cover the region. Pretend that you are writing a controller for the robot to vacuum a room, how would you plan a path to do such a task?

How does this perform on a room of varying size?

Part 2

Another way to do this task is to design a generic plan contingent on topological features. Rather than plan an exact path with goals and waypoints, design a set of rules so that the robot will cover an area of arbitrary size. For example:

1. Wander until a corner is seen.
2. Wall follow until the next corner is reached.
3. Turn 90 degrees
4. Move over by one diameter of the robot.
5. Turn another 90 degrees
6. Move forward until a wall is seen
7. Turn the other way 90 degrees
8. Go to step 4

How does this perform on a room of varying size?

Retrieved from "http://roboticsprimer.sourceforge.net/workbook/Navigation:Exercise4-Room_Coverage"

This page has been accessed 860 times. This page was last modified 00:41, 4 April 2007. Content is available under GNU Free Documentation License 1.2.


Browse
Main Page
Glossary
Sections
Prerequisites
Introduction
Robot Components
Locomotion
Sensors
Feedback Control
Deliberative Control
Reactive Control
Hybrid Control
Behavior-based Control
Emergent Behavior
Navigation
Group Robotics
Learning


Log in / create account