Herramientas de desarrollo de robots programables (A3C32C2D02)

Herramientas de desarrollo de robots programables

Los robots programables han ganado un gran protagonismo en los últimos años, gracias a su capacidad para automatizar tareas y mejorar la eficiencia en diferentes ámbitos, como la industria, la educación o el hogar. Diseñar y programar robots no es tarea fácil, ya que requiere de conocimientos especializados en diferentes áreas, como electrónica, mecánica o informática.

Sin embargo, existen diversas herramientas y plataformas que facilitan este proceso y permiten a cualquier persona, independientemente de su nivel de experiencia, desarrollar robots de manera sencilla y rápida.

La principal herramienta sobre la que se trabaja son las denominadas placas programables, como Arduino o Raspberry Pi. Estas placas son pequeños dispositivos que cuentan con un microprocesador de bajo consumo conectado a diferentes componentes, como módulos de memoria RAM, conexión para almacenamiento de datos a través de una tarjeta de memoria, componentes de entrada-salida (puertos USB, puertos Ethernet, módulos Wi-Fi y Bluetooth, pines de conexión GPIO, etc.) e incluso pequeñas tarjetas gráficas o procesadores de imagen. Estas placas pueden conectarse a diferentes sensores y actuadores y controlar su funcionamiento a través de programas escritos en diferentes lenguajes de programación.

Una vez se tiene la placa programable deseada, otra herramienta fundamental es el lenguaje de programación. Algunos de los lenguajes más populares son C, C++, Python y Java. Estos lenguajes permiten escribir código que indique al robot cómo debe funcionar y cómo debe interactuar con el mundo exterior. Cada placa soportará un conjunto diferente de lenguajes de programación:

  • Por ejemplo, las placas Arduino utilizan un lenguaje de programación propio basado en C++ y denominado Arduino. No obstante, existen herramientas de programación que permiten el uso de otros lenguajes alternativos como por ejemplo C, C# o Python, que posteriormente se convierten en Arduino antes de ser enviados a la placa.

  • Por su parte, la placa Raspberry Pi dispone de un sistema operativo propio basado en Linux denominado Raspbian. Por ello, la placa soporta numerosos lenguajes de programación como C, C++, Python, Java, Ruby, Perl, etc.

Saber más

Aunque Raspbian es el sistema operativo más conocido y utilizado para Raspberry Pi, existen otra gran variedad de sistemas operativos compatibles. Por ejemplo: Windows 10 IoT Core, Ubuntu Core/Desktop/ Server, Raspbian, OSMC, Kali Linux, etc

Además de los lenguajes de programación, existen diferentes aplicaciones de desarrollo y simuladores que permiten diseñar y simular el comportamiento de los robots antes de construirlos. Estas herramientas complementan a los lenguajes de programación incrementando sus posibilidades y añaden capacidades de simulación. Los simuladores son especialmente útiles para probar diferentes escenarios en un entorno virtual y optimizar el funcionamiento del robot sin tener que esperar a construirlo físicamente y probarlo en el mundo real. Gracias a estas aplicaciones se logra evitar daños o errores durante el desarrollo del robot, los cuales pueden ser muy costosos, ya que conllevaría volver a la etapa de diseño, programación y construcción del robot.

Saber más

Un simulador sencillo y gratuito para Arduino es SimulIDE, disponible en: simulide.com. Este simulador está disponible para Windows, MacOS y Linux.

El diseño y la programación de robots requieren de una alta combinación de conocimientos y habilidades específicos, pero gracias a la aparición de ciertas herramientas de desarrollo para un público general, cualquier persona puede aprender a crear su propio robot programable. Además, algunas de estas herramientas permiten programar los robots sin necesidad de escribir código o saber programar. Por ejemplo, para Arduino existe la herramienta ArduBlock.

ArduBlock es una herramienta que permite programar en Arduino utilizando bloques gráficos, como si de piezas de puzles se tratara.

Esta herramienta permite elaborar pequeños programas sin necesidad de tener experiencia previa en programación. Actualmente, esta herramienta se encuentra accesible en: ardublock.ru/en. La Figura 1 muestra un ejemplo de un proyecto elaborado en ArduBlock.

ArduBlock
Fotorresistores

Figura 1: Ejemplo de un proyecto en ArduBlock para gestionar un servomotor que sigue la trayectoria del sol mediante el uso de dos fotorresistores. Fuente: ardublock.ru

Saber más

Scratch es una herramienta de programación mediante bloques desarrollada por el MIT y orientada a la iniciación a la programación. Esta herramienta está enfocada principalmente en la programación de videojuegos. Existe una modificación de Scratch denominada S4A (s4a.cat), la cual permite programar en Arduino utilizando el lenguaje Scratch.

También existen los denominados kits de desarrollo o de robotización, que son pequeños kits comerciales que incluyen todos los componentes necesarios para construir y programar un robot. Algunos kits incluyen las propias placas programables, un amplio conjunto de sensores y actuadores y todo el cableado necesario, así como herramientas de programación específicas. Estos kits suelen venir con guías y tutoriales que facilitan el proceso de montaje y programación.

La propia web del proyecto Arduino ofrece un kit de iniciación denominado Arduino Starter Kit (e.digitall.org.es/arduino). No obstante, existen multitud de kits para Arduino en múltiples tiendas de electrónica. Desde kits para niños, como kits para entusiastas de la tecnología o gente que quiere iniciarse. También hay una gran variedad de kits para Raspberry Pi, algunos de los cuales  permiten construir tu propio ordenador personal. Por ejemplo, el Raspberry Pi 400 Personal Computer Kit (e.digitall.org.es/raspberry).

Saber más

Otra herramienta importante son los foros y comunidades en línea, donde se pueden encontrar tutoriales, ejemplos y consejos de otros usuarios que también estén interesados en el desarrollo de robots. Estas comunidades suelen ser una fuente inagotable de inspiración y aprendizaje.

En resumen, existen diferentes herramientas y paradigmas que facilitan el desarrollo de robots programables. Desde los lenguajes de programación de propósito general aplicados a la programación de estas placas, las aplicaciones de desarrollo, los simuladores y los kits de desarrollo. Cada uno de estos enfoques tiene sus propias ventajas y desventajas, y es importante elegir la herramienta adecuada en función de las necesidades del proyecto.