En grupos de 4, haced una aplicación en ROS 2 que haga que un robot patrulle a lo largo de al menos 4 waypoints.
- Debes usar Behavior Trees y Nav2.
- Debe navegar en el mundo de Gazebo que prefieras, que hayas mapeado previamente.
- El robot debe realizar alguna acción cuando llegue a un waypoint (mostrar mensaje, girar sobre sí mismo,...)
El robot debe funcionar en el robot Tiago simulado.
- Oriana Acosta
- Jaime Avilleira
- Almudena Moreno
- Carlota Vera
Ir a un número determinado de waypoints ubicados en el mapa haciendo uso de Nav2.
La solución del problema se plantea en este Behavior Tree:
Cuyo comportamiento es:
1. GetWayPoint
Obtiene las coordenadas del siguiente waypoint siempre que esté dentro del rango. Si ya ha ido a todos los waypoints definido, se dirige a la posición final. Devuelve 'failure' cuando ya ha alcanzado la posición final.
Los waypoints elegidos se pueden ver en la siguiente imagen:
2. Move
Recibe como input las coordenadas del siguiente waypoint y las pasa a Nav2. Espera el resultado de la navegación y cuando llega a la posición indicada, devuelve success. Mientras, devuelve running.
3. Patrol
Gira durante 15 segundos y mientras devuelve running. Una vez pasados estos segundos, devuelve success y vuelve a empezar el sequence.
Se han diseñado una serie de test que , entre otras tareas, comprueban si son correctos los waypoints que se van a buscar.