It is crucial to validate the proposed navigation algorithm in a simulation environment before using existing robots (Pioneer and Nubot robot). Using simulation tests helps in saving time, where the experiment’s workspace can be reinitialized very quickly just by restarting the simulation program. In contrast, in the real world, each time the robot must be returned to its initial point and connected to its charger when the power of its batteries becomes low. Furthermore, any fault in the robot’s hardware may lake a long time to fix. On other hand during the simulation tests, the navigation algorithm code can be safely tested without any concern about damaging the robot hardware or causing harm to any individual or another object within its workspace.
For this project, Player/Stage has been chosen to validate the navigation algorithm for the following main reasons :
1. Player/Stage was already installed in the Pioneer and Nubot On-board PCs. Using different software will consume a lot of time to install, especially for the Nubot robot which is not supported by other software.
2. It is free and very easy to learn, as simple commands are used to read the sensor data and control the motor speed. Furthermore, a lot of documents about the programming
CHAPTER 3. PROPOSED CONTROL ARCHITECTURE
in Player/Sage can be found on the internet.
3. It is very simple to prepare the simulation environment and to configure the sensor drivers inside the algorithm code.
In this project, simulation experiments are designed to show that each function block in the proposed control system is able to successfully implement its task. On other hand, the laser range finder will be configured as the real Hokuyo scanning laser, in this case the same code can be implemented on the physical robot without any modification.
The long path planning algorithm is tested using a predefined map with a known starting point; for successful long path planning, the robot must easily reach its goal without using the obstacle avoidance behaviour. Next, the ability of the localization system to estimate the real position of the robot is validated by choosing an unknown starting point of the long path planning, where the robot can only reach its goal if the localization system is activated. The wall extraction algorithm is tested to define the surrounding wall using a predefine map and laser data.
The reactive model is first tested to avoid static obstacles and then to avoid dynamic obsta- cles in both free space and indoor environments.The importance of the unobserved obstacle
avoidance, and follow the leader behaviours is explained by comparing the collision results
when these behaviours are inactive and active. A simulation experiment will be designed to show that the stop emergence behaviour will be automatically activated to save the robot and other objects when there is not enough space and time to avoid collision. Another simulation test will be designed to show that the map updating and long path planning algorithms can solve the problem of trapping in local minima. For the human avoidance behaviour, the hu- man gait will be modelled in Player/Stage and then human tracking and avoidance algorithms will be tested before applying the navigation algorithm within a physical robot.
3.4
Summary
This chapter introduced a general explanation about the proposed control architecture and the hardware used in this project. The functions of the deliberative model were chosen to pro- duce a long term path, estimate the absolute location of the robot, define the blind spots and
CHAPTER 3. PROPOSED CONTROL ARCHITECTURE
update the map when the robot is trapped in a local minima. On other hand, the behaviours of the reactive model were chosen to minimize the collision risks with static and dynamic obstacles including humans, also to ease the robot task in cluttered environments and to stop the robot during emergency situations. For this project, Player/stage has been chosen to vali- date the navigation algorithm because it is free, easy , simple and no need for writing a new communication protocol for the Nubot robot.
Chapter 4
Deliberative Model
This chapter explains more the deliberative level. The deliberative level includes four models namely: global path planning, localization, map updating and wall extraction. Simulation tests using the Player/Stage platform showed that the localization system provides a robust estimation of the robot position, likewise the path planning algorithm can establish an optimal and safe path between the goal and the current location of the robot, and the wall extraction algorithm is able to determine the positions of walls around the mobile robot. However, an simulation test in the next chapter explains how the map updating function helps to avoid a local minima.
4.1
Importance of the Deliberative Model
Producing safe and successful navigation is considered to be a key challenge for a mobile robot. Imagine that some people want to go to a train station, although they know the location of the train station they cannot go there if they do not know their current location. Similarly for a mobile robot, the first challenge to find its goal is to estimate its current position, which requires a robust localization system.
The second challenge for the mobile robot is to plan a safe and optimal path from its current location to its goal. Car drivers, for example, may navigate using a map-based GPS as well as landmarks. Likewise, the mobile robot must have a long-term path planning system to create subgoals between its current position and its goal.
CHAPTER 4. DELIBERATIVE MODEL
The third challenge to produce safe navigation is that during navigation in an indoor environ- ment, the robot will have to navigate among many walls which represent long static obstacles, and at the end of each wall there could be an open door from which an unobserved moving obstacle may suddenly appear in its path. Hence, it is crucial for the robot to find walls in the surrounding space in order to detect open doors and corridor crossings, and then to execute suitable actions to minimize the collision risk with unobserved dynamic obstacles.
The fourth challenge to produce successful navigation is that when any change in the robot workspace blocks the planned path the robot will be trapped, therefore the map must be updated and then the long path planning algorithm is applied to find new path to the target.