Open Roberta: Programando el Arduino UNO

En un artículo anterior les comentaba sobre Open Roberta, un entorno de programación en bloques que permite programar y simular distintos modelos de robots de una forma muy sencilla y gratuita. Pero también podemos utilizarlo para programar nuestros propios robots o proyectos construidos con Arduino. En este artículo les voy a mostrar como programar un Arduino UNO.

Open Roberta es un entorno de programación que, detrás de su aparente simpleza esconde una multitud de sorpresas. El lenguaje de programación de bloques denominado “NEPO”, un derivado de Blockly cuenta con numerosos comandos que permiten realizar programas sencillos pero a la vez también abordar problemas mas complejos. Para los educadores es una herramienta muy valiosa ya que permite trabajar conceptos básicos de programación con niños que recién se inician pero también ir aumentando la complejidad para adaptarlo a otros grupos mas avanzados.

Los programas diseñados en NEPO pueden ser simulados, en una variedad de escenarios que admiten cierto grado de modificación o descargados a una variedad de robots y plataformas que se amplía constantemente, incluyendo distintos robots como Lego EV3, NXT y WeDo, mBot o NAO, entre otros, y placas como micro:Bit, Calliope, Arduino UNO, Mega, Nano y UNO Wifi.

Programando el Arduino UNO

Además de un navegador que nos permita acceder a Open Roberta, un Arduino UNO y el cable de programación, vamos a necesitar otro elemento que hace de conexión entre el entorno de Open Roberta y la placa, el programa “Open Roberta Connector” que deberemos descargar desde su repositorio, según el sistema operativo (Windows, Linux o Mac OS) e instalar en nuestra computadora siguiendo las instrucciones del caso.

Open Roberta Connector en el escritorio de Windows

Ahora conectamos nuestro Arduino UNO a un puerto USB de la computadora y abrimos “Open Roberta Connector”. Si todo funciona correctamente, el programa detectará la placa después de algunos segundos.

La placa Arduino UNO detectada

Si esto no ocurre, tenemos algún problema con el cable de conexión, la placa o el puerto USB. Conviene desconectar y volver a conectar y revisar las conexiones.

Una vez que la placa es detectada, debemos apretar el botón “Connect” para realizar la conexión con el servidor de Open Roberta, luego de lo cual se nos suministrará un código o “token” que debemos copiar al portapapeles (podemos seleccionarlo y apretar Ctrl+C o apretar el botón al lado del token).

Placa Arduino conectada

Ahora podemos abrir Open Roberta y elegir NEPO4Arduino para escribir nuestro programa

Seleccionar Nepo4Arduino

Luego, debemos elegir el modelo concreto de placa Arduino a utilizar (en nuestro caso seleccionamos la UNO).

Placas Arduino soportadas

Una vez seleccionada la placa se abre el editor de bloques donde podemos escribir el programa. Podemos ver que tenemos los bloques de Control del flujo de programa, Lógica, Matemáticas, Textos y Variables como en otros robots y que lo que mas cambia son los bloques de Acción y Sensores, que dependen del hardware particular del Arduino UNO.

Blink con Open Roberta

Vamos a hacer el típico programa “blink” que hace parpadear un led, en este caso el led que tiene incluido el UNO, para no tener que hacer conexiones adicionales. Los bloques serían los siguientes:

Bloques del programa “Blink”

Para poder descargar el programa al Arduino debemos conectar Open Roberta con la placa, así que vamos al menú principal y seleccionamos la opcion “Robots” y luego “Conectar”

Conexión entre OR y la placa

Al hacer esto, se nos solicitará el token que en un paso anterior nos suministro el programa “Connect”

Ingresar el token

Una vez hecho esto pulsamos sobre el ícono para hacer correr el programa, lo que hará que el programa se descargue al Arduino y después de unos segundos comience a funcionar.

El programa en el Arduino:

El programa funcionando

Algo a destacar es que el programa que hicimos en bloques es “traducido” al código de Arduino, compilado y grabado en la placa de una manera bastante simple y transparente. No es necesario grabar ningún firmware especial en el Arduino y el código queda en la placa funcionando aunque cerremos Open Roberta o alimentemos el Arduino con otra fuente que no sea la PC.

En próximos artículos iré desarrollando mas el potencial de Open Roberta para programar nuestros proyectos con Arduino.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

A %d blogueros les gusta esto: