Page 22 - Designing Autonomous Mobile Robots : Inside the Mindo f an Intellegent Machine
P. 22
Measure Twice, Cut Once
L R
D
max
D
stop
Robot
Figure 1.1. Simple robot with two sonar sensors
As an example of how quickly a purely state-driven system can become unwieldy,
let’s look at a very primitive robot. In our example, the robot has two forward-
looking sonar detectors to provide collision avoidance, and it has two modes: “Off”
and “Drive.” We will assume it can only drive forward. To simplify the issue even
more, we will forget about navigation and assume we simply want it to keep moving.
Now let’s solve the problem with a discrete, single level, state-driven solution.
Single level simply means that there will be no states within states. We determine
that there are the following states:
L>Dmax
State and
Number Mode R>Dmax L<R R<L Behavior
1 OFF NC NC NC Turn motors off
2 FORWARD X Accelerate forward
3 FORWARD x Turn right while decelerating
4 FORWARD x Turn left while decelerating
Table 1.1. Simple states for robot of Figure 1.1
5

