We are now able to summarize all the main features that have emerged from
the problem analysis.
Robot software architecture . The robot architecture should be highly
configurable and should allow the robot customization to have a variety of
sensors and actuators.
Environment representation . The simulator should maintain two different
descriptions of the surrounding environment: a 2D geometric map of
the simulated environment and the robot's internal representation as
Robot control . The onboard controller coordinates the robot's devices
concurrently. The remote controller is a sequential program that sends
commands to the onboard controller and receives sensor information.
The communication between onboard and remote controllers is message-
Three main functionalities need to be tested carefully.
The interaction between the robot and the simulated environment. The
test consists of placing the robot in various positions with regard to the
simulated environment and verifying the distances to the surrounding
objects measured by the sensors. Some objects should not be visible by
The concurrent execution of the robot's activities. The test consists in
sending sequences of commands to the onboard controller and verifying
the correct behaviour of sensors and actuators.
The construction of the occupancy map. The test consists of comparing
the result of an exploration session with the geometric representation of
the simulated environment.
Architecture and planning
The system architecture is made up of five main components as described in
Figure 10.7. The remote controller builds the occupancy map using the
sensor data of the robot that interacts with the simulated environment. The
graphical user interface paints the occupancy map and the simulated envi-
ronment in two separate windows. The robot shape is visualized within the
The development process of the work cell simulator is organized in three
phases that produce three prototypes.
Prototype 1: Simulated environment . This consists of a graphical appli-
cation that exemplifies the robot
environment interaction. It defines the