¿Buscas un curso de ROS y robótica? Con nuestra formación podrás iniciarte en la programación de robots de forma sencilla.
Este curso de programación robótica te permitirá adquirir los conocimientos básicos de ROS, el lenguaje de programación de robots.
El tutor de la formación comenzará realizando una primera introducción a ROS a modo de presentación de esta tecnología, explicando qué es, para qué se utiliza, sus características principales y qué herramientas se emplean.
Una vez realizada esta primera toma de contacto con la programación ROS, el curso continuará con la preparación del entorno de trabajo. Durante esta parte podrás aprender a instalar el software de virtualización para trabajar con máquinas virtuales, en esta caso VMware Workstation Player, con el que trabajaremos durante el resto del curso.
Después pasaremos a detallar cómo realizar la instalación de Ubuntu sobre una máquina virtual, paso a paso y de forma guiada, además de configurar la misma una vez tengamos la instalación hecha. A continuación realizaremos la instalación de ROS sobre Ubuntu, en nuestro caso la versión Indigo de ROS, además de crear un primer espacio de trabajo.
Tras realizar la instalación de ROS, pasaremos a ver los diferentes entornos de desarrollos o IDEs que podemos emplear. Durante el curso emplearemos conjuntamente el editor de texto Gedit y el entorno de desarrollo Qt Creator, para el desarrollo de los nodos de ROS en C++, y el entorno de desarrollo Spyder para desarrollar los nodos de ROS en Python.
Teniendo ya el entorno de trabajo preparado, pasamos a la parte más teórica del curso, comenzando por los principios básicos de ROS. Durante este bloque aprenderás a navegar por el sistema de ficheros, a crear y compilar paquetes, y además entenderás el concepto de nodo, cómo implementarlos, sus ventajas y el concepto de patrón publicador-suscriptor.
Dentro de este primer bloque pasamos a una parte práctica, en la que te mostraremos paso a paso el desarrollo de una aplicación publicador-suscriptor, creando primero un publicador simple y después un suscriptor simple. Este desarrollo lo haremos en dos fases, en una primera haremos el desarrollo en Python, y en una segunda lo haremos en C++.
Para acabar esta primera sección dedicada a las bases de ROS, detallaremos cómo ejecutar ROS en múltiples máquinas, es decir, ejecutar las aplicaciones de forma distribuida en varios ordenadores conectados en la misma red.
Pasamos después al segundo bloque teórico, en el que iras adquiriendo los conocimientos sobre la visión por computación. Este bloque lo componen varias lecciones dedicadas al desarrollo de nuestro propio driver de cámara con OpenCV, y después a manejar nuestra webcam con ROS, realizando esa programación tanto con Python como con C++.
Completaríamos esta sección del curso hablando sobre el uso de argumentos en ROS, para que comprendas qué son, cómo se crean y veas algunos ejemplos reales de para qué sirven. Seguidamente entraremos a detallar también el concepto de launch files, explicando qué son, sus ventajas, sus posibilidades de uso y cómo crearlos.
Para acabar la segunda sección de la formación podrás aprender a enviar video a tu navegador web a través de video streaming, de una forma teórica y práctica. Finalmente tienes una introducción al concepto de object tracking de forma básica y ejemplos de tres algoritmos de tracking.
La tercera parte teórica del curso se centra en el text-to-speech, desarrollando cómo utilizar ROS para la reproducción de audio, instalando el paquete correspondiente y las diferentes voces existentes. Después explicaremos el concepto de servicio en ROS, para poder desarrollar a continuación un servicio para reproducir voz desde texto, lo que haremos tanto en C++ como en Python.
El siguiente apartado trata sobre el reconocimiento de voz, dónde te explicamos de forma detallada cómo realizar este proceso con ROS, tanto en inglés como en otros idiomas. En esta lección también entraremos a ver los logs, un concepto importante que te detallaremos a fondo para que tengas claro qué son y qué niveles de logs existen.
En la parte práctica de esta sección verás cómo crear una aplicación para poder controlar nuestro ordenador con la voz, aplicación que crearemos tanto en C++ como en Python, detallando el proceso paso a paso.
Los dos bloques finales del curso los destinamos a realizar una introducción al movimiento de robots diferenciales, dónde aprenderás qué son y cómo se mueven. A lo largo de estas lecciones vas a aprender a manejar Turtleslim, un simulador 2D de robots diferenciales. También aprenderás a utilizar los bagfiles, los ficheros en los que grabar en disco nuestros experimentos con robots, realizando un desarrollo práctico de un iterador de bagfiles.
En el segundo bloque de la formación sobre movimiento de robots diferenciales aprenderás a mover el robot hacia un punto, empleando un controlador PID, explicando previamente qué es y cuáles son sus características, a través de la función GoTo.
Además podrás conocer cómo utilizar la API Actionlib para ejecutar tareas robóticas o acciones, que son tareas más complejas y de larga duración, además de ver cómo ejecutar la función GoTo mediante Actionlib. Y para acabar te proponemos un ejercicio para que desarrolles tu propio controlador GoTo, con su resolución para que te asegures que lo has hecho de una forma correcta.
De esta forma acaba este curso de introducción a ROS (Robot Operating System), que te permitirá obtener amplios conocimientos teóricos además de prácticos de una forma guiada y a tu ritmo.
Entra de lleno en el mundo de la robótica con este curso programación ROS y fórmate en una tecnología con mucho futuro, sobre todo en la creación de software destinado al sector de la ingeniería.