Mecanismos de cooperación en robots como agentes móviles

  1. González de Rivera, Guillermo
Dirigida por:
  1. Javier Garrido Salas Director/a

Universidad de defensa: Universidad Autónoma de Madrid

Fecha de defensa: 14 de noviembre de 2011

Tribunal:
  1. Eduardo I. Boemo Scalvinoni Presidente/a
  2. Eloy Anguiano Rey Secretario/a
  3. Guillermo Botella Juan Vocal
  4. Eduardo Torre Arnanz Vocal
  5. Juan-Carlos Pérez-Cortés Vocal
  6. Antonio García Ríos Vocal
  7. Jesús Bobadilla Vocal

Tipo: Tesis

Resumen

En la actualidad, construir robots es una tarea complicada que requiere especialistas en múltiples disciplinas, como hardware, software, física y mecánica. Al mismo tiempo, hay mucha investigación realizada por ingenieros software relacionados con la robótica, en campos como la Inteligencia Artificial, trabajo distribuido o sistemas colaborativos. Normalmente, prueban sus ideas con simuladores. El objetivo principal de este trabajo ha sido diseñar un sistema para controlar de forma sencilla un robot genérico con un conjunto específico de sensores y actuadores conectados. El sistema diseñado permite trabajar sobre entornos inteligentes, centrándose en problemas concretos de la aplicación de usuario, ocultando lo demás. Se ha diseñado e implementado un conjunto de reglas, estructuras y protocolos, con flexibilidad y sencillez, denominado GdRBot, que permiten a un usuario no especializado el montaje y control de un conjunto de robots, adaptado a sus necesidades, en el que probar los algoritmos diseñados. Con esto, se facilita al usuario la capacidad de crear una gran variedad de aplicaciones, permitiendo al mismo tiempo reutilizar cualquiera de los elementos empleados en aplicaciones precedentes. La arquitectura software de GdRBot está especialmente diseñada con el objetivo de facilitar la tarea a usuarios sin interés en el diseño de hardware y sin conocimiento de los sistemas de comunicación. La arquitectura está formada por tres tipos de componentes: clientes, servidores y elementos de red que pueden ser ejecutados en diferentes plataformas hardware. El servidor está instalado en los robots y los clientes pueden instalarse en el propio robot o en cualquier tipo de sistema ordenador. El servidor es el encargado de realizar la gestión sobre el hardware y el cliente hace uso de ese hardware para lograr una tarea. El cliente realiza solicitudes y supervisa los servidores a través de llamadas XML-RPC que se transmiten por medio de los elementos de una red TCP/IP. La arquitectura hardware que se puede diseñar y controlar desde el sistema GdRBot permite la construcción de un conjunto de robots móviles equipados con sensores y Mecanismos de cooperación en robots como Agentes Móviles Página 10 de 241 actuadores así como un conjunto de mecanismos de comunicación entre ellos, lo cual les permite interaccionar a modo de agentes para llevar a cabo tareas colaborativas, sin importar el medio físico sobre el que realizan la comunicación entre ellos. También se ha definido un elemento hardware, denominado Servidor Sensorial, cuyo objetivo es reducir la carga de trabajo en el procesador central, resolviendo los accesos de bajo nivel a los diferentes sensores y actuadores que se puedan conectar a la plataforma. Se conecta al procesador central a través de un puerto de comunicaciones (serie, USB, etc) y tiene instalado un pequeño sistema operativo propio que básicamente es un servidor de comandos. Como parte de esta tesis, y para validar su funcionamiento, se ha desarrollado un Servidor Sensorial propio, al que se ha denominado GP_Bot. Éste está formado a su vez por tres partes, la tarjeta GP_Bot que es una placa de desarrollo de propósito general basada en un micro-controlador de 8 bits, la tarjeta GP_Ifaz diseñada para actuar como interfaz entre la tarjeta GP_Bot y cierto tipo de sensores y actuadores y la tarjeta GP_Mon utilizada para la carga y depuración de programas en el micro-controlador, forzando la entrada del micro-controlador en el modo monitor. Para el usuario final, el sistema es transparente tanto en el hardware como en el software que conforman el agente robot que se quiere controlar. Tan sólo ¿ve¿ un conjunto de funciones de alto nivel que puede llamar desde su aplicación y que realizan las tareas correspondientes en el robot. El sistema diseñado no depende de ninguna plataforma ni elemento hardware específico, por lo que se puede garantizar su longevidad en el futuro. Gracias a la generalidad de las especificaciones de diseño, se facilita la portabilidad de una determinada aplicación a otra arquitectura diferente. Como prueba de estas capacidades, en este trabajo se han implementado cuatro arquitecturas hardware dispares entre sí y se han realizado distintos experimentos para su caracterización, basadas todas en el sistema GdRBot. Como prueba de funcionalidad del sistema, se ha probado aplicando distintos algoritmos para tareas de posicionamiento, navegación y procesado de imágenes, desarrollando en su caso, como parte de este trabajo, aquellos drivers que han sido necesarios.