El presente TFG aborda la programación en C++ y Python de un robot Hunter 2.0 de modelo Ackermann, con el objetivo de desarrollar capacidades de navegación autónoma y reactiva en diversos entornos exteriores. El sistema se integra con un sensor hokuyo para la adquisición de datos de su entorno.
Dentro de los objetivos de este proyecto se encuentra el diseño e implementación de un modelo virtual que simule el movimiento del robot real a través del programa gráfico Coppelia Robotics. Durante el desarrollo de este proyecto, este modelo ha sido usado para realizar pruebas con algoritmos diseñados en el ámbito de la navegación autónoma. Estos algoritmos fueron programados en ROS2.
Entre estos se encuentra el uso del stack de navegación Nav2, el cual cumple como un sistema global de planificación y seguimiento de trayectorias que se actualizan en tiempo real. Adicionalmente, se diseñó un algoritmo de aparcamiento en línea, el cual incluye un análisis del entorno con el fin de encontrar un puesto libre y los movimientos relacionados con la maniobra de aparcamiento.
Finalmente, con el fin de comprobar la eficiencia de estos códigos, se han realizado diferentes experiencias en distintos ambientes que pongan a prueba los algoritmos y las trayectorias diseñadas por nav2. Para esto, se han creado escenarios de simulación y usado habitaciones y pasillos en la E.T.S.I Informática para crear mapas con distintos obstáculos o dimensiones que simulen aparcamientos, en los que se ha estudiado la navegación y autonomía del robot.