esimonsite

Como simular con ROS2 un entorno de navegación

Puesta a punto de un simulador en ROS2 con gazebo

Instalar paquetes

Yo lo estoy instalando todo en ROS2 foxy , si usas otra distribución cambia foxy por tu distribución.

sudo apt install ros-foxy-gazebo-*
sudo apt install ros-foxy-navigation2
sudo apt install ros-foxy-nav2-bringup
sudo apt install ros-galactic-slam-toolbox

Para que sirve cada paquete

ros-foxy-gazebo-*:Gazebo es un simulador de robots 3D

ros-foxy-navigation2: Este paquete proporciona una arquitectura de navegación para robots móviles. Incluye diferentes componentes como el planificador de trayectorias, el sistema de localización y mapeo (SLAM)

ros-foxy-nav2-bringup: Este paquete es una configuración de lanzamiento predeterminada para iniciar los diferentes nodos y componentes del paquete ros-foxy-navigation2

ros-galactic-slam-toolbox: Este paquete proporciona diferentes herramientas y algoritmos para realizar la tarea de localización y mapeo simultáneos (SLAM) en un robot

Crear el workspace para turtlebot y lanzar el simulador

mkdir -p ~/turtlebot3_ws/src
cd turtlebot3_ws/src
git clone -b foxy-devel https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
cd ~/turtlebot3_ws && colcon build --symlink-install
source install/setup.bash
ros2 launch turtlebot3_gazebo empty_world.launch.py

Despues de lanzar el último comando deberías ser capaz de ver una ventana con gazebo y el robot en el medio.

“Robot”

Para lanzar el simulador en un mundo diferente:

export TURTLEBOT3_MODEL=waffle
ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py

ó

export TURTLEBOT3_MODEL=waffle_pi ros2 launch turtlebot3_gazebo turtlebot3_house.launch.py

Para mover el robot

ros2 run turtlebot3_teleop teleop_keyboard