Ir al contenido principal

Tutorial NodeMCU (II): ArduinoBlocks

ArduinoBlocks es un entorno de desarrollo para placas Arduino y similares que emplea el paradigma de programación por bloques. Ha sido creado por Juanjo López, profesor en el Colegio Salesianos Juan XXIII de Alcoy, Alicante. Es un entorno de desarrollo online que se ejecuta en el navegador, por lo que no necesitamos instalar ningún tipo de programa en el equipo para empezar a programar (aunque sí para grabar el programa en los dispositivos, como veremos más adelante). Todos nuestros proyectos están en la nube, por lo que podemos acceder a ellos desde cualquier lugar y compartirlos con otros usuarios.

En realidad, el entorno ArduinoBlocks lo que hace es traducir los bloques de nuestro programa al propio código C++ empleado por el IDE Arduino, de forma que el compilador se comporta igual que si hubiésemos desarrollado el código directamente en C++. El propio IDE nos permite visualizar en tiempo real el código C++ autogenerado, lo que puede resultar útil para aprender a programar en C++, identificando cómo se ha traducido a este lenguaje cada bloque de nuestro diseño.

Para comenzar a usar esta herramienta nos dirigimos al sitio web  http://www.arduinoblocks.com. Antes de empezar es necesario crear una cuenta. Aunque podemos emplear cualquier dirección de correo, el desarrollador recomienda usar una cuenta de Gmail para evitar posibles problemas con los filtros antispam.

ArduinoBlocks Connector

A pesar de ser ArduinoBlocks un IDE online que se ejecuta en el navegador, para subir el programa a la placa es necesario instalar en el equipo el programa ArduinoBlocks Connector. Podemos descargar el programa desde el apartado Recursos del entorno ArduinoBlocks. Existen versiones para los sistemas más populares, como Windows, Ubuntu y MacOS (incluso también hay una versión para Raspberry Pi). El programa ArduinoBlocks Connector deberá estar ejecutándose en el equipo cada vez que deseemos subir un nuevo programa a la placa o emplear la consola.

Comunicación por el puerto serie

El puerto serie es un estándar de comunicación omnipresente en los sistemas microprogramables desde hace décadas. Como su nombre indica, es un medio de comunicación serie, lo que significa que los bits de información se envían por un único canal de manera consecutiva. Este tipo de comunicación tiene la ventaja de solo necesitar un cable, lo que simplifica notablemente la conexión entre equipos. En concreto el puerto serie emplea dos cables: Uno para transmitir (TX) y otro para recibir (RX). La forma de conectar dos sistemas empleando este tipo de interfaz, es mediante lo que se conoce como conexión cruzada, consistente en conectar la señal TX de un equipo a la RX del otro y viceversa, de tal forma que lo que envía un equipo por TX es recibido por el otro equipo en RX. El puerto serie emplea conexión asíncrona, lo que significa que no existe una señal de reloj. En este tipo de sistemas, el sincronismo se realiza estableciendo una velocidad de transmisión fija e idéntica en ambos terminales. Existen muchos otros estándares que también emplean la conexión serie, como I2C, USB, SATA, etc.

Como no podría ser de otra forma, las placas Arduino y NodeMCU incorporan un puerto serie para comunicarse con ciertos periféricos, como módulos bluetooth, o con el ordenador. Podemos acceder al puerto serie del chip ESP8266 mediante los pines etiquetados como TX y RX, que a su vez también están conectados al USB que empleamos para conectar la placa al ordenador. La comunicación serie con el ordenador se usa para subir los programas a la placa, pero también puede emplearse para otros fines, como enviar al ordenador información, controlar el sistema desde el PC, o depurar programas.

Consola de ArduinoBlocks

Tanto el IDE Arduino como ArduinoBlocks incluyen una herramienta para llevar a cabo la comunicación serie con la placa. En ArduinoBlocks podemos encontrarlo en la esquina superior derecha de la interfaz, en la opción >_Consola.

  

Comentarios

Entradas populares de este blog

Prácticas con FluidSIM

FluidSim es una herramienta de simulación para la obtención de los conocimientos básicos de la neumática y de la hidráulica.

Crucigrama: materiales metálicos

¿Te atreves a contestar este crucigrama sobre los materiales metálicos?

Crucigrama: estructuras

¿Te atreves a contestar este crucigrama sobre el tema de las estructuras visto en clase?