Utilizando ROS en una máquina virtual

desarrollando robots en un ambiente seguro

Escrito por Davinson Castaño Cano el 19 de Marzo de 2021 · 4 mins de lectura

ROS es tal vez la plataforma de desarrollo en robótica más conocida en el mundo, y lo mejor de todo es que es una plataforma gratuita para el desarrollo de nuestros propios robots.

Para poder usar ROS de una forma segura, recomiendo instalarlo en una máquina virtual.

Instalando la máquina virtual

Mi máquina virtual preferida es VirtualBox, en el enlace anterior puedes descargar la última versión de esta.

Los pasos para su instalación son muy sencillos, solo descargas el ejecutable, y sigues los pasos del instalador.

Una vez ya tienes el VirtualBox instalado, tendremos que descargar una versión de Ubuntu. La versión de Ubuntu dependerá de la versión de ROS que vayamos a utilizar.

Eligiendo la versión de ROS

En este momento existen dos versiones para ROS. Cada una de ellas tiene diferentes entregas por ejemplo las últimas entregas para ROS 1 son:

Instalando la versión correcta de Ubuntu

En nuestro caso, instalaremos ROS Melodic Morenia, por lo que instalaremos dentro de la máquina virtual Ubuntu 18.04. Podemos seguir los pasos presentados en Vivaubuntu (tener presente de instalar la versión desktop y no server).

Instalando ROS

Para la instalación de ROS, deberemos estar dentro de nuestra máquina virtual con Ubuntu y seguir los pasos listados en la página de instalación de ROS Melodic Morenia.

Usando un TurtleBot3 dentro de ROS

Para poder usar el TurtleBot3 en ROS, debemos instalar todos los paquetes necesarios usando la terminal de Ubuntu.

Empecemos instalando algunas dependencias importantes en la terminal

sudo apt-get install \
  ros-melodic-joy \
  ros-melodic-teleop-twist-joy \
  ros-melodic-teleop-twist-keyboard \
  ros-melodic-laser-proc \
  ros-melodic-rgbd-launch \
  ros-melodic-depthimage-to-laserscan \
  ros-melodic-rosserial-arduino \
  ros-melodic-rosserial-python \
  ros-melodic-rosserial-server \
  ros-melodic-rosserial-client \
  ros-melodic-rosserial-msgs \
  ros-melodic-amcl \
  ros-melodic-map-server \
  ros-melodic-move-base \
  ros-melodic-urdf \
  ros-melodic-xacro \
  ros-melodic-compressed-image-transport \
  ros-melodic-rqt* \
  ros-melodic-gmapping \
  ros-melodic-navigation \
  ros-melodic-interactive-markers

Instalemos los paquetes principales del TurtleBot

sudo apt-get install ros-melodic-dynamixel-sdk \
  ros-melodic-turtlebot3-msgs \
  ros-melodic-turtlebot3

Guardemos la variable del TurtleBot en el bashrc

echo "export TURTLEBOT3_MODEL=burger" >> ~/.bashrc

Creamos el directorio en home /catkin_ws/src/ y ejecutamos los siguientes comandos en la terminal.

cd ~/catkin_ws/src/
git clone -b melodic-devel https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
cd ~/catkin_ws && catkin_make

Ahora solo queda iniciar el simulador desde el terminal:

cd ~/catkin_ws/ && source devel/setup.bash
export TURTLEBOT3_MODEL=burger
roslaunch turtlebot3_gazebo turtlebot3_world.launch

Para mover el robot en otro terminal escribir :

roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

en este terminal con ayuda de las teclas w,a,s,d,x podrás mover el robot en el simulador Gazebo.

Espero que haya sido de utilidad esta información, sumérgete en el mundo de la robótica y aprende un montón en el camino. Si logras usar ROS con éxito cuéntame por mis redes sociales que lo lograste… y si no tienes éxito por favor cuéntame que pasó para ayudarte a logralo, de antemano muchas gracias.