Implementación de una arquitectura de control híbrida para robots autónomos

-

Documents
240 pages
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus

Description


La robótica es un campo de la informática que se encuentra muy de moda actualmente. Aunque los medios de comunicación nos muestran unos avances realmente impresionantes, la verdad es que es un terreno en el que no se ha profundizado demasiado, y en el que es complicado solucionar problemas que aparentemente son muy básicos. Este proyecto aborda el tema de la navegación básica de robots móviles autónomos, en concreto de un robot Pioneer 3-DX. Se trata de diseñar e implementar una arquitectura haciendo uso del paradigma híbrido de la robótica, que une los paradigmas deliberativo y reactivo, para asentar las bases de un marco de trabajo que permita dotar de comportamientos inteligentes a estos robots móviles. El diseño de la arquitectura busca la creación de este marco, que sea lo más modular, extensible e independiente de las aplicaciones cliente, para poder incorporar nuevas funcionalidades y convertirse en un proyecto de investigación que se alargue y utilice en el futuro, no limitándose a resolver únicamente el problema planteado inicialmente. __________________________________________________________________________________________________________________
Nowadays, one of the most famous and interesting fields in technological sciences is robotics. Mass media show incredible advances on this field. However, that doesn’t adjust to reality. This is a field which has not been deepened, and it’s very difficult to solve problems that they look relatively easy. This project deals with the problem of basic navigation in autonomous mobile robots, specifically a Pioneer 3-DX robot. The objective of the project is designing and developing a robot architecture, by using the hybrid paradigm in robotics. This architecture shall combine deliberative and reactive paradigms in order to establish a framework which allows providing mobile robots with intelligent behaviours. The hybrid architecture designed must create this framework, being as modular, extensible and client-application independent as possible, in order to provide new functionalities and become a researching project into the future, so it doesn’t just confine to solve the initial problem of basic navigation.
Ingeniería en Informática

Sujets

Informations

Publié par
Publié le 01 juillet 2011
Nombre de visites sur la page 127
Langue Español
Signaler un problème




Departamento de Informática




PROYECTO FIN DE CARRERA




IMPLEMENTACIÓN DE UNA
ARQUITECTURA DE
CONTROL HÍBRIDA PARA
ROBOTS AUTÓNOMOS










Autor: José Luis Díaz Cebrián


Tutor: Agapito Ledezma Espino



Leganés, julio de 2011









II
AGRADECIMIENTOS



A mis padres y a mi hermana por su apoyo durante
todos estos años. Por estar ahí en los
momentos difíciles, comprenderme y no presionarme
cuando eso era lo último que necesitaba.

A mi tutor, Agapito Ledezma, por ofrecerme un proyecto
tan interesante y completo para poner fin a
mi formación académica, así como por su ayuda
y comprensión.

A Isaac Ruiz, por su experiencia y su
ayuda con el robot. Espero que nos volvamos
a ver pronto.

A todos los compañeros de carrera con los
que he trabajado codo con codo en alguna práctica
o trabajo. Especialmente a Carmen y Alfredo.

Y, por supuesto, gracias a mis amigos por todo lo vivido
durante estos años. Por aguantarme, apoyarme y estar en lo bueno
y en lo malo. Ángel Luis Torres, Gemma Zarza, Juan María Egido,
Marta Poveda y Rubén Fernández. Muchísimas gracias.


III
RESUMEN



La robótica es un campo de la informática que se encuentra muy de moda
actualmente. Aunque los medios de comunicación nos muestran unos avances realmente
impresionantes, la verdad es que es un terreno en el que no se ha profundizado
demasiado, y en el que es complicado solucionar problemas que aparentemente son muy
básicos.

Este proyecto aborda el tema de la navegación básica de robots móviles
autónomos, en concreto de un robot Pioneer 3-DX. Se trata de diseñar e implementar
una arquitectura haciendo uso del paradigma híbrido de la robótica, que une los
paradigmas deliberativo y reactivo, para asentar las bases de un marco de trabajo que
permita dotar de comportamientos inteligentes a estos robots móviles.

El diseño de la arquitectura busca la creación de este marco, que sea lo más
modular, extensible e independiente de las aplicaciones cliente, para poder incorporar
nuevas funcionalidades y convertirse en un proyecto de investigación que se alargue y
utilice en el futuro, no limitándose a resolver únicamente el problema planteado
inicialmente.



IV
ABSTRACT



Nowadays, one of the most famous and interesting fields in technological
sciences is robotics. Mass media show incredible advances on this field. However, that
doesn’t adjust to reality. This is a field which has not been deepened, and it’s very
difficult to solve problems that they look relatively easy.

This project deals with the problem of basic navigation in autonomous mobile
robots, specifically a Pioneer 3-DX robot. The objective of the project is designing and
developing a robot architecture, by using the hybrid paradigm in robotics. This
architecture shall combine deliberative and reactive paradigms in order to establish a
framework which allows providing mobile robots with intelligent behaviours.

The hybrid architecture designed must create this framework, being as modular,
extensible and client-application independent as possible, in order to provide new
functionalities and become a researching project into the future, so it doesn’t just
confine to solve the initial problem of basic navigation.



V
ÍNDICE GENERAL

AGRADECIMIENTOS...................................................................................................III
RESUMEN ..................................................................................................................... IV
ABSTRACT .....................................................................................................................V
ÍNDICE GENERAL....................................................................................................... VI
ÍNDICE DE TABLAS..................................................................................................VIII
ÍNDICE DE FIGURAS ....................................................................................................X
1. Introducción y objetivos ...........................................................................................- 1 -
1.1. Introducción.......................................................................................................- 2 -
1.2. Objetivos............................................................................................................- 3 -
1.3. Fases del Desarrollo ..........................................................................................- 5 -
1.4. Medios Empleados ............................................................................................- 7 -
1.5. Estructura de la Memoria ..................................................................................- 7 -
1.6. Glosario de Términos y Acrónimos...................................................................- 9 -
2. Estado del Arte .......................................................................................................- 13 -
2.1. Introducción a la Robótica...............................................................................- 14 -
2.2. Paradigmas ......................................................................................................- 15 -
2.2.1. Paradigma deliberativo.............................................................................- 15 -
2.2.2. Paradigma reactivo ...................................................................................- 19 -
2.2.3. Paradigma híbrido ....................................................................................- 23 -
2.3. Arquitecturas Híbridas.....................................................................................- 25 -
2.3.1. Organizativas............................................................................................- 26 -
2.3.2. Basadas en jerarquías de estados..............................................................- 30 -
2.3.3. Orientadas a modelos ...............................................................................- 33 -
2.3.4. Organizadas en niveles .............................................................................- 36 -
2.3.5. Comparativa .............................................................................................- 43 -
2.4. Plataformas Software para Robótica ...............................................................- 45 -
2.5. Proyectos .........................................................................................................- 48 -
2.5.1. Proyecto PROTEUS .................................................................................- 48 -
2.5.2. ROS.org ....................................................................................................- 54 -
2.5.3. GOSTAI ...................................................................................................- 55 -
3. Implementación de la Arquitectura 3T para el Control del P3-DX........................- 58 -
3.1. Hardware y Software Utilizado .......................................................................- 59 -
3.1.1. Robot Pioneer 3-DX .................................................................................- 59 -
3.1.2. Simulador Webots ....................................................................................- 63 -
3.1.3. ARIA ........................................................................................................- 65 -
3.1.4. Otras herramientas....................................................................................- 67 -
3.2. Requisitos de usuario.......................................................................................- 68 -
3.3. Diseño de la Arquitectura................................................................................- 72 -
3.3.1. Diseño arquitectónico...............................................................................- 73 -
3.3.2. Diseño detallado .......................................................................................- 78 -
3.4. Funcionamiento de la Arquitectura .................................................................- 87 -
3.4.1. Funcionalidad general ..............................................................................- 88 -
3.4.2. Habilidades implementadas......................................................................- 93 -
4. Experimentación y Resultados ...............................................................................- 98 -
4.1. Pruebas del Sistema.........................................................................................- 99 -
4.2. Diferencias entre el Simulador y el Entorno Real .........................................- 123 -
5. Conclusiones y Líneas Futuras.............................................................................- 127 -
VI
6. Referencias ...........................................................................................................- 132 -
ANEXO A: Manual de Usuario................................................................................- 137 -
ANEXO B: Presupuesto ...........................................................................................- 169 -
ANEXO C: Diagramas de Diseño............................................................................- 171 -
ANEXO D: Tablas de Componentes........................................................................- 185 -
ANEXO E: Tablas de Clases....................................................................................- 192 -
ANEXO F: Librerías de Elementos de la Arquitectura............................................- 218 -
ANEXO G: Proyecto ROSETTA.............................................................................- 226 -



VII
ÍNDICE DE TABLAS

Tabla 1: Comparativa de arquitecturas.......................................................................- 44 -
Tabla 2: Requisito REQ-01 ........................................................................................- 69 -
Tabla 3: Requisito REQ-02 ........................................................................................- 69 -
Tabla 4: Requisito REQ-03 ........................................................................................- 69 -
Tabla 5: Requisito REQ-04 ........................................................................................- 69 -
Tabla 6: Requisito REQ-05 ........................................................................................- 70 -
Tabla 7: Requisito REQ-06 ........................................................................................- 70 -
Tabla 8: Requisito REQ-07 ........................................................................................- 70 -
Tabla 9: Requisito REQ-08 ........................................................................................- 70 -
Tabla 10: Requisito REQ-09 ......................................................................................- 70 -
Tabla 11: Requisito REQ-10 ......................................................................................- 71 -
Tabla 12: Requisito REQ-11 ......................................................................................- 71 -
Tabla 13: Requisito REQ-12 ......................................................................................- 71 -
Tabla 14: Requisito REQ-13 ......................................................................................- 71 -
Tabla 15: Requisito REQ-14 ......................................................................................- 71 -
Tabla 16: Requisito REQ-15 ......................................................................................- 72 -
Tabla 17: Requisito REQ-16 ......................................................................................- 72 -
Tabla 18: Requisito REQ-17 ......................................................................................- 72 -
Tabla 19: Componente CO-01..................................................................................- 186 -
Tabla 20: Componente CO-02..................................................................................- 186 -
Tabla 21: Componente CO-03..................................................................................- 187 -
Tabla 22: Componente CO-04..................................................................................- 187 -
Tabla 23: Componente CO-05..................................................................................- 188 -
Tabla 24: Componente CO-06..................................................................................- 188 -
Tabla 25: Componente CO-07..................................................................................- 189 -
Tabla 26: Componente CO-08..................................................................................- 189 -
Tabla 27: Componente CO-09..................................................................................- 190 -
Tabla 28: Componente CO-10..................................................................................- 190 -
Tabla 29: Componente CO-11..................................................................................- 191 -
Tabla 30: Clase CL-01..............................................................................................- 193 -
Tabla 31: Clase CL-02..............................................................................................- 193 -
Tabla 32: Clase CL-03..............................................................................................- 194 -
Tabla 33: Clase CL-04..............................................................................................- 194 -
Tabla 34: Clase CL-05..............................................................................................- 194 -
Tabla 35: Clase CL-06..............................................................................................- 195 -
Tabla 36: Clase CL-07..............................................................................................- 195 -
Tabla 37: Clase CL-08..............................................................................................- 195 -
Tabla 38: Clase CL-09..............................................................................................- 196 -
Tabla 39: Clase CL-10..............................................................................................- 196 -
Tabla 40: Clase CL-11..............................................................................................- 197 -
Tabla 41: Clase CL-12..............................................................................................- 198 -
Tabla 42: Clase CL-13..............................................................................................- 198 -
Tabla 43: Clase CL-14..............................................................................................- 199 -
Tabla 44: Clase CL-15..............................................................................................- 199 -
Tabla 45: Clase CL-16..............................................................................................- 200 -
Tabla 46: Clase CL-17..............................................................................................- 200 -
Tabla 47: Clase CL-18..............................................................................................- 201 -
VIII
Tabla 48: Clase CL-19..............................................................................................- 201 -
Tabla 49: Clase CL-20..............................................................................................- 202 -
Tabla 50: Clase CL-21..............................................................................................- 202 -
Tabla 51: Clase CL-22..............................................................................................- 203 -
Tabla 52: Clase CL-23..............................................................................................- 203 -
Tabla 53: Clase CL-24..............................................................................................- 204 -
Tabla 54: Clase CL-25..............................................................................................- 204 -
Tabla 55: Clase CL-26..............................................................................................- 205 -
Tabla 56: Clase CL-27..............................................................................................- 206 -
Tabla 57: Clase CL-28..............................................................................................- 206 -
Tabla 58: Clase CL-29..............................................................................................- 207 -
Tabla 59: Clase CL-30..............................................................................................- 208 -
Tabla 60: Clase CL-31..............................................................................................- 208 -
Tabla 61: Clase CL-32..............................................................................................- 209 -
Tabla 62: Clase CL-27..............................................................................................- 209 -
Tabla 34: Clase CL-34..............................................................................................- 210 -
Tabla 64: Clase CL-35..............................................................................................- 211 -
Tabla 65: Clase CL-36..............................................................................................- 212 -
Tabla 66: Clase CL-37..............................................................................................- 212 -
Tabla 67: Clase CL-38..............................................................................................- 213 -
Tabla 68: Clase CL-39..............................................................................................- 213 -
Tabla 69: Clase CL-40..............................................................................................- 214 -
Tabla 70: Clase CL-41..............................................................................................- 214 -
Tabla 71: Clase CL-42..............................................................................................- 215 -
Tabla 72: Clase CL-43..............................................................................................- 215 -
Tabla 73: Clase CL-44..............................................................................................- 216 -
Tabla 74: Clase CL-45..............................................................................................- 216 -
Tabla 75: Clase CL-46..............................................................................................- 216 -
Tabla 76: Clase CL-47..............................................................................................- 217 -
Tabla 77: Habilidades de navegación.......................................................................- 220 -
Tabla 78: Habilidades de visión ...............................................................................- 220 -
Tabla 79: Librería de RAPs......................................................................................- 221 -
Tabla 80: Librería de tareas......................................................................................- 222 -
Tabla 81: Librería de metas......................................................................................- 223 -
Tabla 82: Librería de elementos del planificador.....................................................- 223 -
Tabla 83: Librería de predicados del planificador....................................................- 224 -
Tabla 84: Librería de acciones del planificador .......................................................- 225 -






IX
ÍNDICE DE FIGURAS

Figura 1: Diagrama de planificación Gantt del proyecto .............................................- 6 -
Figura 2: Elementos básicos de un robot....................................................................- 15 -
Figura 3: Secuencia de operación del paradigma deliberativo...................................- 16 -
Figura 4: Arquitectura JPL.................................. .......................................................- 17 -
Figura 5: Arquitectura NASREM...............................................................................- 18 -
Figura 6: Secuencia de operación básica del paradigma reactivo ..............................- 19 -
Figura 7: Secuencia de operación compleja del paradigma reactivo..........................- 20 -
Figura 8: Vehículos de Braintenberg..........................................................................- 21 -
Figura 9: Arquitectura Subsumption.................... ......................................................- 22 -
Figura 10: Esquema básico del paradigma híbrido ....................................................- 23 -
Figura 11: Secuencia de operación compleja del paradigma híbrido (a) ...................- 24 -
Figura 12: Secuencia de operación compleja del paradigma híbrido (b) ...................- 25 -
Figura 13: Arquitectura AuRA...................................................................................- 27 -
Figura 14: Arquitectura SFX.................... ..................................................................- 28 -
Figura 15: Arquitectura HILARE...............................................................................- 29 -
Figura 16: Arquitectura 3T.........................................................................................- 31 -
Figura 17: Arquitectura ATLANTIS..........................................................................- 33 -
Figura 18: Arquitectura Saphira................. ................................................................- 34 -
Figura 19: Arquitectura TCA............... ......................................................................- 35 -
Figura 20: Arquitectura GLAIR............ .....................................................................- 37 -
Figura 21: Arquitectura BERRA................ ................................................................- 38 -
Figura 22: Arquitectura Sharp................ ....................................................................- 40 -
Figura 23: Arquitectura SSS.......................................................................................- 41 -
Figura 24: Payton's Architecture............ ....................................................................- 42 -
Figura 25: Flujo de trabajo de PROTEUS..................................................................- 50 -
Figura 26: Bloque de trabajo de róbotica en PROTEUS............................................- 51 -
Figura 27: Imagen tomada del simulador MORSE ....................................................- 52 -
Figura 28: Captura del simulador CycabTK...............................................................- 53 -
Figura 29: Cyber Car ..................................................................................................- 54 -
Figura 30: Robot Pioneer 3-DX de Mobile Robots....................................................- 60 -
Figura 31: Dimensiones del robot Pioneer 3-DX .......................................................- 60 -
Figura 32: Panel de control del Pioneer 3-DX ...........................................................- 61 -
Figura 33: Disposición de los sensores de ultrasonidos .............................................- 62 -
Figura 34: Disposición de los parachoques ................................................................- 63 -
Figura 35: Interfaz gráfica de Webots ........................................................................- 64 -
Figura 36: Arquitectura de ARIA...............................................................................- 66 -
Figura 37: Diseño arquitectónico completo................................................................- 74 -
Figura 38: Subsistema Infraestructura........................................................................- 74 -
Figura 39: Subsistema Controlador ............................................................................- 75 -
Figura 40: Subsistema Secuenciador..........................................................................- 76 -
Figura 41: Subsistema Planificador............................................................................- 77 -
Figura 42: Clases del subsistema Infraestructura .......................................................- 79 -
Figura 43: Diseño detallado del subsistema Infraestructura.......................................- 80 -
Figura 44: Clases del subsistema Controlador ...........................................................- 81 -
Figura 45: Diseño detallado del subsistema Controlador...........................................- 82 -
Figura 46: Clases del subsistema Secuenciador .........................................................- 83 -
Figura 47: Diseño detallado del subsistema Secuenciador.........................................- 84 -
X