A real-time distributed software infrastructure for cooperating mobile autonomous robots

Cooperating mobile autonomous robots have been generating a growing interest in fields such as rescue, demining and security. These applications require a real time middleware and wireless communication protocol that can effecient and timely support the fusion of the distributed perception and the d...

ver descrição completa

Detalhes bibliográficos
Autor principal: Frederico Santos (author)
Outros Autores: Luís Almeida (author), Paulo Pedreiras (author), Luís Seabra Lopes (author)
Formato: book
Idioma:eng
Publicado em: 2009
Assuntos:
Texto completo:https://hdl.handle.net/10216/70043
País:Portugal
Oai:oai:repositorio-aberto.up.pt:10216/70043
Descrição
Resumo:Cooperating mobile autonomous robots have been generating a growing interest in fields such as rescue, demining and security. These applications require a real time middleware and wireless communication protocol that can effecient and timely support the fusion of the distributed perception and the development of coordinated behaviors. This paper proposes an affordable middleware, based on low-cost and open-source COTS technologies, which relies on a real-time database partially replicated in all team members, containing both local and remote state variables, in a distributed shared memory style. This provides seamless access to the complete team state, with fast non-blocking local operations. The remote data is updated autonomously in the background by a WiFi-based wireless communication protocol, at an adequate refresh rate. The software infrastruture is complemented with a task manager that provides scheduling and synchronization services to the application processes on top of the Linux operating system. Such infrastructure has been successfully used for four years in one RoboCup middle-size soccer team, and it has proved to be dependable in the presence of uncontrolled spurious traffic in the communication channel, using an adaptive technique to synchronizating the robots in the team and reconfiguring the communications dynamically and automatically according, to the number of currently active team members.