Cómo desarrollar un proyecto con Raspberry Pi o Arduino fácilmente y (casi) sin programar

Con la Raspberry Pi, Arduino o chips como los NodeMCU, ESP8266 o ESP32 se pueden hacer proyectos muy chulos, por muy poco dinero y con un esfuerzo que depende tanto de la magnitud del proyecto como de las herramientas usadas. Está claro que programar no es para todo el mundo, así que vamos a ver opciones que permitan realizar algún desarrollo de forma sencilla.

Y la verdad es que tenemos algunas muy interesantes. Podemos desarrollar proyectos de forma rápida, simple y casi sin escribir una línea de código. O, en el mejor de los casos, escribir muy poquitas.

Node-RED, Scratch, Blynk, ... opciones, opciones, opciones

Aunque hemos metido muchas plataformas en el mismo cesto, la Raspberry Pi, Arduino y otros elementos en los que podemos hacer nuestras aplicaciones son dispositivos diferentes. Todas tienen sus ventajas y sus inconvenientes, que van desde el precio a la forma en la que podemos desarrollar nuestras aplicaciones.

La Raspberry Pi es un ordenador con mayúsculas y con sistema operativo, mientras que el resto de elementos mencionados son dispositivos programables y que pueden ejecutar una única tarea.

Pero aunque sólo puedan ejecutar un programa eso los hace muy grandes, ya que por muy poquito dinero tenemos unos elementos que cuentan con Wi-Fi, Bluetooth, un montón de entradas y salidas programables y opciones que permiten automatizar o desarrollar aplicaciones muy interesantes.

Algunos de los entornos que vamos a ver en esta entrada de repaso sirven para varias plataformas, el resto servirán sólo para una de ellas.

Node-RED, una plataforma visual y ampliable

Node-RED es una herramienta de desarrollo atípica. En ella podemos conectar de forma gráfica dispositivos hardware, APIs y servicios online como puede ser twitter o el correo electrónico.

Toda la programación, si es que se puede llamar así a conectar entradas y salidas, se realiza en un navegador web. Como ventaja está el poder agregar más librerías, servicios y herramientas, o conectar IFTTT como entrada o salida de eventos.

Node-RED es gratuito y podremos conectar dispositivos como la Raspberry Pi o Arduino. Incluso viene pre-instalado con Raspbian para hacer que todo sea mucho más sencillo. En la web tenéis numerosos tutoriales para aprender a utilizarlo.

Más información | Node-RED

Scratch, aprendiendo a programar y más

Scratch es un viejo conocido y seguro que lo has visto alguna vez si has instalado Raspbian en la Raspberry Pi.

A partir de la versión 2.0 es posible controlar los pines del puerto GPIO de la Raspberry Pi con Scratch 2.0 e incluso interactuar con la cámara de la Raspberry Pi.

Scratch se basa en elementos gráficos que podemos ir arrastrando y soltando en la aplicación. Por si fuera poco, hay la friolera de 25.221.811 proyectos a día de hoy para buscar inspiración en su web. Probablemente lo que quieras hacer, o algo parecido, lo tendrás prácticamente programado en su extensa biblioteca.

Si lo que queremos es programar arduino en Scratch, también podremos hacerlo gracias a una modificación llamada Scratch for Arduino o S4A.

Más información | Scratch

Blynk, hacer aplicaciones en tu móvil no puede ser más sencillo

A la hora de hacer una aplicación con hardware puede que al principio no le demos mucha importancia a la usabilidad del proyecto. Si queremos visualizar la información o bien controlar nuestro proyecto desde el móvil, una buena alternativa es Blynk.

Blynk es una app disponible para iOS y Android. También lleva un conjunto de librerías disponibles para Arduino y Raspberry Pi y numerosos dispositivos hardware. Si quieres hacer una aplicación para móvil, la buena noticia es que prácticamente no tienes que tocar el código ni programar. Sólo configurar la red Wi-Fi y meter el código único de ese proyecto que sirve como clave de acceso. En el caso de Arduino, con compilar y conectar un programa sencillo nos sirve.

Más ventajas, podremos incluso instalarlo en la Raspberry Pi y tener un servidor local de Blynk privado, que funciona de fábula y que nos permite hacer desarrollos complejos y de forma gratuita. Y también utilizar la Raspberry Pi como dispositivo a controlar desde el móvil si instalamos un cliente de Blynk en la misma.

Si queremos hacerlo en su nube debemos pagar según los elementos que incluyamos en el proyecto, por lo que se me antoja mejor opción la que he comentado anteriormente.

Más información | Blynk

Cayenne, otra herramienta de desarrollo

Al igual que Blynk, Cayenne pone el énfasis en el aspecto visual de nuestra aplicación, permitiéndonos realizar Dashboards para visualizar la información tanto en Web como en dispositivos móviles. También está disponible para iOS y Android.

Cayenne permite añadir y controlar sensores, actuadores y otros aspectos de nuestro proyecto que estén conectados a ordenadores, microcontroladores etc. También tenemos widgets que visualizan el estado y las posibles acciones a realizar con cada dispositivo.

Cayenne facilita el proceso de cómo conectar los sensores y actuadores, ofreciendo incluso instrucciones. También facilita el acceso a los puertos GPIO y a la programación por medio de reglas "si ocurre esto haz esto otro" pero dentro de la aplicación.

Más información | Cayenne

Herramientas de desarrollo, solas o en compañía de otros

En esta entrada hemos visto algunas herramientas de desarrollo para hacer nuestros proyectos. Evidentemente hay más, como el entorno de programación Arduino por el que tendremos que pasar (casi) obligatoriamente al menos una vez en algunos casos (como Blynk) para compilar y subir el sketch (que es como se llama el código del proyecto en Arduino).

Hace un par de días también vimos esta aplicación de QNAP que nos simplificará mucho la vida al contar con** Node-RED y Dashboard**, MQTT, HTTP, COAP, como protocolos y el NAS para almacenar toda la información que queramos.

Las opciones que hemos enumerado agilizan mucho el proyecto y además le pueden dar un aspecto mucho más profesional. ¿Lo mejor? Que podemos combinar varias de ellas para ganar en posibilidades. Así, podemos instalar en Node-Red las librerías de Blynk para desarrollar toda la lógica de la aplicación en el primero, y enfocar el desarrollo de la aplicación móvil con el segundo.

Un truco. En casa tengo instalado Node-RED en el NAS de QNAP y tengo una Raspberry Pi con Blynk como servidor. La ventaja es que puedes definir la misma Raspberry Pi en Blynk como dispositivo. Ahora puedes crear en Blynk una aplicación desde tu móvil, incluso si no estás controlando directamente la Raspberry Pi. Así, puedes utilizar aplicaciones con MQTT u otros protocolos desde una bonita interfaz como es la de Blynk.

En Xataka Smarthome | Ahora programar y aprender con tu Raspberry Pi es más fácil que nunca gracias a su nuevo entorno

Ver todos los comentarios en https://www.xatakahome.com

VER 2 Comentarios

Portada de Xataka Smart Home