como-usar-node-red-en-raspberry-pi

Qué es y cómo usar Node-RED en Raspberry Pi

  • 4 min

¿Qué es Node-RED?

Node-RED es una herramienta de desarrollo basada en flujos que permite conectar dispositivos y servicios de forma visual mediante un navegador web.

Creado originalmente por IBM, Node-RED está diseñado para facilitar la integración de servicios de IoT y automatización mediante una interfaz gráfica de arrastrar y soltar.

Node-RED permite crear nuestros “programas” mediante flujos de trabajo visuales a través una interfaz gráfica muy sencilla. Esto facilita la integración de diferentes servicios y dispositivos sin necesidad de escribir código extensivo.

rednode-example

Características principales de Node-RED,

  • Interfaz visual: Utiliza una interfaz gráfica basada en navegador para diseñar flujos de trabajo.
  • Arrastrar y soltar: Permite arrastrar nodos y conectarlos para definir la lógica del flujo.
  • Integración: Soporta una amplia variedad de protocolos y servicios, como HTTP, MQTT, y más.
  • Extensible: Ofrece una amplia gama de nodos para diferentes propósitos y permite la creación de nodos personalizados.

Para más información y recursos sobre Node-RED, puedes visitar la documentación oficial de Node-RED.

Instalación de Node-RED en Raspberry Pi

Para instalar Node-RED en nuestra Raspberry Pi, seguimos estos pasos. Como siempre, primero es recomendable actualizar los paquetes existentes en el sistema

sudo apt update sudo apt upgrade

Luego, instalamos Node-RED utilizando el script de instalación oficial proporcionado por el proyecto. Ejecutamos el siguiente comando para descargar e instalar Node-RED:

bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)

Este script se encargará de instalar Node.js (si no está ya instalado) y Node-RED en nuestra Raspberry Pi.

Para que Node-RED se inicie automáticamente al arrancar la Raspberry Pi, ejecutamos el siguiente comando:

sudo systemctl enable nodered.service

Finalmente, podemos iniciar Node-RED con el siguiente comando:

node-red

Uso Básico de Node-RED

Una vez instalado, puedes acceder a la interfaz de usuario de Node-RED desde un navegador web en la dirección http://<IP-de-tu-Raspberry-Pi>:1880. Aquí es donde construirás tus flujos de trabajo.

rednone-web-interface

Para crear un flujo de trabajo en node-red, simplemente arrastramos los nodos que queremos utilizar desde la paleta de nodos en la izquierda de la pantalla y los conectamos entre sí.

Luego, podemos configurar cada nodo para que se adapte a nuestras necesidades específicas. Para ello hacemos click sobre él, y en la paleta de la derecha nos aparecerán las opciones disponibles.

Por ejemplo, si queremos leer el valor de un sensor y publicarlo en una red social, podríamos arrastrar un nodo de sensor, un nodo de publicación en redes sociales y conectarlos entre sí.

Luego, configuraríamos el nodo de sensor para leer el sensor específico que estemos utilizando y el nodo de publicación en redes sociales para conectarnos a nuestra cuenta de Twitter o Facebook.

Finalmente, una vez que hayamos creado nuestro flujo de trabajo podemos desplegarlo (ejecutarlo). Para ello hacemos clic en el botón “Deploy” para implementarlo y empezar a procesar datos.

También podemos acceder a los datos procesados y visualizarlos en gráficos y tablas utilizando los nodos de visualización disponibles en la paleta de nodos.

Ejemplo de Flujo de Trabajo

Vamos a crear un flujo simple que inyecte un mensaje y lo muestre en la consola de depuración:

rednode-1

Este flujo simplemente usa un nodo Inject para generar un texto que enviamos a Debug para visualizarlo. Por defecto, si no cambiamos la configuración, el modo Inject simplemente genera un Timestamp (la hora actual).

Ahora le damos encendemos la pestaña de Debug y le damos al botón de “Deploy” para desplegar el flujo. Cuando activemos el nodo “TimeStamp” (pulsando en el cuadradito azul que tiene a la izquierda) veremos que el mensaje aparece en la pestaña de Debug.

rednode-2

Integración de dispositivos

Node-RED es está muy bien integrado con Raspberry PI ya puede acceder directamente a sus GPIO para realizar lecturas o generar salidas.

Para ello antes deberemos instalar la biblioteca de arboles de nodos Raspberry Pi GPIO para controlar los pines GPIO de la Raspberry Pi:

  • Abre el menú de nodos y busca “node-red-node-pi-gpio”
  • Haz clic en “Instalar” para añadir este nodo a tu instancia de Node-RED

Una vez instalado.

Ahora, cuando envíes un mensaje desde el nodo “Inject”, el pin GPIO 17 cambiará de estado, encendiendo o apagando un LED conectado a él.