This thesis focuses on the development of a system in which a team of heterogeneous mobile robots can cooperate to perform a wide range of tasks. In order that a group of heterogeneous robots can cooperate among them, one of the most important parts to develop is the creation of an architecture which gives support for the cooperation. This architecture is developed by means of embedding agents and interfacing agent code with native low-level code. It also addresses the implementation of resource sharing among the whole group of robots, that is, the robots can borrow capabilities from each-other.
In order to validate this architecture, some cooperative applications have been implemented. The first one is an application where a group of robots must cooperate in order to safely navigate through an unknown environment. One robot with camera calculates the optical flow values from the images, and from these values calculates the “time to contact” values. This information is shared among the team so that any robot can navigate without colliding with the obstacles.
The second cooperative application consists of enabling the team of heterogeneous robots to create a certain formation and navigate maintaining this formation. The application consists of two parts or stages. The first one is the creation of the formation, where a robot with the camera can detect where the rest of the robots are in the environment and indicates to them which is their initial position in the formation. In the second stage the robots must be able to navigate through an environment following the path that the robot with the laser indicates. Due to the odometry errors of the robots, the camera of one of the robots is used so that robots which lose their correct position in the formation can re-align themselves.
Finally, in an attempt to facilitate access to the robots of the team and to the information that their accessories provide, a system for the teleoperation of the team has been implemented. This system can be used for teaching robotics or to facilitate the tasks of programming and debugging in the research tasks.
[Formation] [Architecture] [Opctical flow]
Cooperative formations of robots: Test with four-robot diamond formation using visual repositioning General architecture diagram and middleware layer of the Acromovi architecture Cooperative guidance application using Optical Flow: Strategy followed in the case that the two robot cannot pass by the same side