Implementación y comparativa de algoritmos de control y planificación local para robots móviles utilizando ROS

Padilla Ericksen, Adriana María (2017). Implementación y comparativa de algoritmos de control y planificación local para robots móviles utilizando ROS. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. Industriales (UPM).

Description

Title: Implementación y comparativa de algoritmos de control y planificación local para robots móviles utilizando ROS
Author/s:
  • Padilla Ericksen, Adriana María
Contributor/s:
  • Puente Yusty, Paloma de la
Item Type: Final Project
Degree: Grado en Ingeniería en Tecnologías Industriales
Date: September 2017
Subjects:
Faculty: E.T.S.I. Industriales (UPM)
Department: Automática, Ingeniería Eléctrica y Electrónica e Informática Industrial
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (9MB) | Preview

Abstract

La complejidad de la navegación autónoma de un robot móvil depende en gran medida de la información que éste tenga del entorno y de la naturaleza de dicho entorno. Así, en un espacio controlado del que se posea un mapa que corresponde perfectamente con la realidad, la creación de una trayectoria óptima y su seguimiento son tareas que habitualmente presentan un riesgo limitado. Sin embargo, en el mundo real la mayoría de los entornos son dinámicos, debiendo un robot ser capaz de reaccionar ante las variaciones del medio que lo rodea, con mucha más incertidumbre. En este contexto surge la necesidad del desarrollo de algoritmos de navegación que permitan a robots móviles desplazarse dentro de estos entornos dinámicos. A lo largo de las últimas décadas el interés por este tipo de algoritmo ha ido en aumento, dando lugar a la aparición de diversos métodos de evasión de obstáculos y planificación local de trayectoria. En el Robot Operating System (ROS), un entorno de código abierto para el desarrollo de aplicaciones robóticas, existen algunos algoritmos de evasión de obstáculos ya implementados. La ventaja principal de desarrollar código para ROS es que es actualmente la plataforma de desarrollo de aplicaciones para robots más usada en el mundo, haciendo el código accesible a una gran comunidad. Con todo lo anterior, el propósito de este trabajo ha sido el de añadir a la librería de ROS dos algoritmos de planificación de trayectoria local. Se ha realizado, además, una comparación de los algoritmos, tanto en simulación como en entorno real, para analizar las ventajas y desventajas de cada uno en diferentes escenarios y para diferentes necesidades. Como paso inicial en el desarrollo de este trabajo, ha sido necesaria una formación previa de familiarización con ROS, tanto al nivel convenciones y librerías como al nivel de sistema de archivos. Además, se han estudiado las herramientas proporcionadas por ROS para el desarrollo de plugins, o clases dinámicamente cargables, que permiten extender o modificar el comportamiento de una aplicación sin necesidad de tener el código fuente de la aplicación. Esto ha permitido desarrollar cada uno de los algoritmos como plugin para reemplazar fácilmente al planificador de trayectoria local por defecto. Una vez conocidas las herramientas y comprendido el sistema, se ha implementado un controlador de seguimiento de trayectoria global. Este código ha servido como base de los posteriores algoritmos de evasión, ya que el robot debe seguir la trayectoria global hasta el momento en que encuentra un obstáculo inesperado, en el que pasará a seguir al planificador local. Tras la creación del plugin de seguimiento de trayectoria, se ha realizado el desarrollo de los dos algoritmos de evasión de obstáculos elegidos: el “Bubble Rebound Algorithm” y el algoritmo “Divide and Conquer”. Durante el desarrollo del primero ha surgido la necesidad de resolver algunos problemas de funcionamiento. Sin embargo, para el algoritmo “Divide and Conquer”, puesto que se trata de un algoritmo que cubre las distintas posibilidades de obstáculos a evadir, no han surgido cuestiones a resolver a la hora de su implementación. Finalmente, se ha pasado a la etapa de pruebas. Para la comparación de algoritmos se han elegido como métricas de análisis la longitud y duración de la trayectoria, el tiempo computacional, el número de colisiones y las fluctuaciones de las velocidades lineal y angular. El estudio de los datos recogidos ha permitido determinar los puntos fuertes y débiles de cada algoritmo en diferentes entornos de movimiento.

More information

Item ID: 48146
DC Identifier: http://oa.upm.es/48146/
OAI Identifier: oai:oa.upm.es:48146
Deposited by: Biblioteca ETSI Industriales
Deposited on: 17 Oct 2017 06:28
Last Modified: 17 Oct 2017 06:28
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM