Instalación de Node-RED en Raspberry Pi: un editor visual para su hogar inteligente

¿Quiere pasar más tiempo construyendo el sistema de automatización del hogar perfecto y menos tiempo escribiendo código repetitivo? Quizás tenga poca (o ninguna) experiencia en codificación, pero aún sueña con crear proyectos poderosos de Internet de las cosas (IoT).

Si no puede, o no quiere, pasar horas escribiendo código, ¡hay un montón de software que puede hacer el trabajo duro por usted! Aquí, nos enfocamos en Nodo-RED, un editor visual basado en flujo que puede proporcionar el código que necesita para impulsar sus proyectos de IoT. Con Node-RED, puede conectar dispositivos inteligentes, API, servicios en línea y más, con solo arrastrar y soltar.

En este tutorial, aprenderá cómo configurar Node-RED en su Raspberry Pi y acceder a su editor visual a través de su navegador web. Una vez que tenga acceso a este editor, verá exactamente cómo utilizar Node-RED para crear potentes flujos de trabajo de automatización del hogar creando un flujo de depuración simple que puede implementar y probar en su Raspberry Pi.

Cómo utilizar Node-RED en proyectos de hogares inteligentes

Node-RED tiene una biblioteca de nodos listos para usar que cubren una variedad de funcionalidades. Puede utilizar estos nodos para crear flujos de trabajo de automatización del hogar completos. Simplemente tome los nodos que desea usar, colóquelos en el lienzo Node-RED y conecte sus nodos para formar un flujo de trabajo completo.

Algunos de estos nodos son sencillos, por ejemplo, los nodos de depuración, mientras que otros son más complejos. Algunos de los nodos más avanzados incluso le permiten interactuar con los pines GPIO (entrada / salida de propósito general) que se encuentran a lo largo del borde superior de su Raspberry Pi.

Lo que necesitarás

Para completar este tutorial, necesitará:

  • Raspberry Pi que ejecuta Raspbian. Si aún no lo tiene, agarra la última versión y flashearlo en una tarjeta SD usando Autor de aguafuertes.
  • Cable de alimentación compatible con su Raspberry Pi
  • Teclado externo y una forma de conectarlo a su Raspberry Pi
  • Cable HDMI o micro HDMI, según su modelo de Raspberry Pi
  • Monitor externo
  • Ethernet o conexión a Wi-Fi

Raspbian: busca la última versión

Para comenzar, asegúrese de estar ejecutando la última versión de Raspbian:

  • Conecte todos sus periféricos a la Raspberry Pi.
  • Conecte su Raspberry Pi a una fuente de alimentación; debería arrancar automáticamente.
  • Si es la primera vez que arranca Raspbian, deberá completar el cuadro de diálogo de configuración estándar y conectarse a su red Wi-Fi si no está utilizando un cable Ethernet.
Conecte su Raspberry Pi a su red Wi-Fi.

Una vez que su Raspberry Pi se haya iniciado, haga clic en el icono “Terminal” en la barra de herramientas y ejecute los siguientes comandos en la ventana Terminal:

Si Raspbian instala alguna actualización, entonces deberá reiniciar su Raspberry Pi con el siguiente comando:

Una vez que su Raspberry Pi se haya reiniciado, estará listo para pasar a la siguiente etapa.

Instalación de Node-RED, Node.js y npm

A continuación, debe instalar el build-essential paquete, que se utiliza para compilar e instalar varios complementos de Node-RED:

Para instalar el paquete Node-RED, la versión actual de Node.js y npm también se está instalando en el siguiente comando. Además de build-essential, npm se utiliza para instalar módulos Node-RED adicionales:

Raspbian ahora descargará e instalará Node-RED, npm y Node.js

Esta descarga puede tardar un poco, ¡así que quizás quieras tomar un café!

Lanzar Node-RED

Ahora puede iniciar Node-RED. Es posible iniciar Node-RED como un servicio (usando el sudo systemctl start nodered comando), pero si inicia Node-RED directamente, le permite acceder a él a través de la Terminal.

Para iniciar Node-RED sin iniciarlo como un servicio, ejecute el siguiente comando:

Ahora puede verificar el estado de Node-RED:

Las últimas líneas de la salida del Terminal deberían confirmar que Node-RED se está ejecutando correctamente.

Node-RED se ejecuta silenciosamente en segundo plano, por lo que es posible que desee que se inicie automáticamente, especialmente si se encuentra utilizando Node-RED de forma regular. Para iniciar Node-RED en el arranque, ejecute el siguiente comando:

La Terminal debe confirmar que ha creado un atajo de enlace simbólico para Node-RED.

Si cambia de opinión y desea evitar que Node-RED se inicie automáticamente, ejecute el siguiente comando de Terminal:

No se requiere código: acceder al editor visual de Node-RED

Ahora que Node-RED está en funcionamiento en su Raspberry Pi, puede usarlo para crear flujos de trabajo de automatización del hogar con solo arrastrar y soltar.

Para acceder al editor Node-RED, necesita la dirección IP de su Raspberry Pi. Puede recuperar esta información ejecutando el siguiente comando de Terminal:

Inicie el navegador predeterminado en su Raspberry Pi e ingrese la siguiente URL, asegurándose de reemplazar “dirección IP” con la dirección IP única de su Raspberry Pi: http: //[IP-ADDRESS]: 1880

Por ejemplo, si su dirección IP era “192.168.1.56”, entonces usaría la siguiente URL: http://192.168.1.56:1800

El editor Node-RED debería aparecer ahora en su navegador web.

Explorando el editor de IoT de Node-RED

El editor de Node-RED se divide en las siguientes secciones:

Nodo-RED's editor visual se divide en cuatro secciones principales.
  • La barra de herramientas. Contiene el botón “Implementar”, el menú principal y el menú de usuario, si la autenticación de usuario está habilitada.
  • La paleta. Esta área contiene todos los nodos que están instalados y disponibles para su uso. Si selecciona un nodo, la pestaña “Información” mostrará más información sobre ese nodo específico.
  • Fluir. Este es el lienzo donde soltará todos sus nodos y creará conexiones entre ellos. Si está trabajando con varios flujos, se mostrarán como una fila de pestañas en la parte superior del espacio de trabajo. Puede acercar y alejar utilizando los controles en la parte inferior derecha del área de trabajo.

El editor Node-RED también cuenta con una barra lateral, que muestra diferentes paneles según el contenido que esté seleccionado actualmente:

  • Información. Esto muestra información sobre el nodo seleccionado, incluido un resumen de sus propiedades. Si no se selecciona nada, el panel “Información” mostrará una descripción del flujo actual.
  • Depurar. Esto muestra los mensajes que se pasan a los nodos de depuración dentro de su flujo, junto con los mensajes del tiempo de ejecución, cuando estén disponibles. De forma predeterminada, el panel Depurar muestra todos los mensajes que se le pasan, aunque puede filtrar esta salida, si es necesario.
  • Config. Este panel muestra una lista de todos los nodos de configuración, junto con su tipo, etiqueta y cuántos flujos de trabajo utilizan este nodo en particular.
  • Datos de contexto. Esto muestra el contenido del almacén de datos de contexto, lo que le permite compartir información entre nodos sin usar los mensajes que pasan por un flujo de trabajo. Para obtener más información sobre el contexto, consulte el documentos oficiales de Node-RED.

Automatización con Node-RED: creando su primer flujo de trabajo

Ahora que tiene una descripción general de alto nivel del editor Node-RED, puede crear un flujo de depuración simple para implementar y probar su Raspberry Pi.

Para comenzar, arrastre un nodo “Inyectar” de la paleta y suéltelo en el área de trabajo.

Arrastre un nodo de la paleta y suéltelo en el espacio de trabajo Node-RED.

A continuación, arrastre un nodo “Depurar” y suéltelo en el espacio de trabajo.

Estos dos nodos deben conectarse juntos. Pase el cursor sobre uno de los controladores del nodo hasta que se vuelva naranja y luego arrástrelo para que aparezca una línea. Arrastre esta línea hasta el segundo nodo y suéltela: estos dos nodos ahora deberían estar conectados.

Cree un flujo de trabajo conectando sus dos nodos Node-RED juntos

Puede editar cualquier nodo haciendo doble clic en él. Para verificar que su flujo de trabajo de depuración se esté ejecutando correctamente, cree una “carga útil” de texto que el flujo de trabajo entregará al panel “Depuración” de Node-RED.

Haga doble clic en el nodo “Inyectar”, que abre un nuevo panel “Editar nodo de inyección”. Puede realizar varios cambios en este panel. Este ejemplo abre el menú desplegable “Carga útil” y selecciona “Cadena”.

Dejar's dan a nuestro flujo de trabajo Node-RED una carga útil: yo'm usando una cadena.

Ingrese el texto “¡Hola, mundo!” y luego haga clic en “Listo” para guardar los cambios.

Una vez completado el flujo de trabajo, puede habilitarlo haciendo clic en el botón rojo grande “Implementar”.

Active su flujo de trabajo Node-RED, haciendo clic en el botón "Implementar".

Ejecute su flujo de trabajo de depuración

Para poner su flujo a prueba, abra el panel “Depurar” (haciendo clic en el pequeño icono de error en la barra de herramientas).

Pase el cursor sobre el nodo “Hola, mundo” y haga clic en la casilla de verificación que lo acompaña.

Ejecute su flujo de trabajo de depuración, seleccionando su casilla de verificación adjunta.

Si el flujo se ejecuta correctamente, la carga útil de “Hola, mundo” aparecerá en el panel de depuración.

Si su flujo de trabajo Node-RED se ejecutó correctamente, la carga útil aparecerá en la barra lateral "Depurar".

Si bien este es un flujo de trabajo simple, demuestra cómo puede crear nodos y conectarlos para formar un flujo de trabajo funcional. Puede usar el mismo proceso para crear todo tipo de flujos de trabajo complejos y avanzados: simplemente siga tomando nodos de la paleta, agregándolos al espacio de trabajo y conectándolos hasta que obtenga el resultado deseado.

Además de Node-RED, también puede convertir su Raspberry Pi en una puerta de enlace Edge para administrar los datos de sus dispositivos IoT o iniciar proyectos de Raspberry Pi con Cayenne.

Obtenga más información sobre otros proyectos de Raspberry Pi aquí.

¿Es útil este artículo?

¡Ayúdanos a correr la voz!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *