Banner publicitario de PCBWay
torres.electronico

TUTORIAL: Docker + NodeRED + Dasboard + LOGO8 SIEMENS (1era parte)

Ejemplo de como implementar DOCKER + NodeRED + Dashboard + LOGO8 de SIEMENS

Que podemos hacer con esos viejos microRELAY programables de Siemens, los LOGO8 que tenemos tirados por que nos quedaron obsoletos para nuestros proyectos diarios?
Bien, en mi caso particular tengo un LOGO 24RC con modulo de expancion de entradas y salidas digitales y dos entradas analógicas. Este lamentablemente no tiene puerto de ETHERNET, así que lo descarte y seguirá en su rincón juntando polvillo. El otro LOGO que tengo, es el 230RC que viene con 8 entradas digitales y 4 salidas digitales, mas un puerto de ETHERNET... Con este ultimo ya puedo jugar un poco mas y sacarle un poco mas de jugo.
En la primera parte de este mini tutorial, vamos a ver a modo breve y simplificado, como podemos emplear Docker, NodeRED, crear un dashboard y controlar/ver/forzar algunas cosas en el LOGO8 de Siemens.
En el primer ejemplo hice una lógica sencilla, pero en el próximo articulo, vamos a ver con mas detenimiento el tema del dashboard, y vamos a ver como sumar mqtt para que con un esp32 podamos tener entradas analógicas y adicionar un poco de inteligencia artificial, o mejor dicho, visión artificial con Python.... vamos con el video de esta 1er parte:


1_Para instalar Docker Compose en Windows, sigue estos pasos:

2_Una vez que la instalación haya finalizado, abre una ventana de línea de comandos (Command Prompt) o PowerShell, y ejecuta el siguiente comando para verificar que Docker Compose se haya instalado correctamente:


Código:
docker-compose --versión

Si el comando muestra la versión de Docker Compose instalada, Docker Compose está listo para su uso en tu sistema Windows.
DockerDesktop.png

3_ Descargar la imagen de Node-RED:

Si bien internamente desde docker en la seccion de paleta ("Manage palette") o simplemente en la casilla de buscador central podemos buscar las librerias/dependencias que requerimos, también podemos abrir el terminal y descarga la imagen oficial más reciente para asegurar compatibilidad con las funciones

Código:
docker pull nodered/node-red

docker_NodeRED.png

4_Crear un Volumen para Persistencia:

Para evitar perder tus flujos y configuraciones, o sea, tu trabajo / proyecto si el contenedor se borra, crea un volumen de datos:

Código:
docker volume create node_red_data

5_Ejecutar el Contenedor:

Usa el siguiente comando para iniciar Node-RED. Este mapea el puerto 1880 y conecta el volumen de datos

Código:
docker run -d -p 1880:1880 -v node_red_data:/data --name mynodered nodered/node-red

Donde:
  • -d: Ejecuta el contenedor en segundo plano (modo detached).
  • -p 1880:1880: Mapea el puerto del contenedor al de tu máquina.
  • -v node_red_data:/data: Persiste tus datos en el volumen creado.
  • --name mynodered: Asigna un nombre amigable al contenedor.

6_Acceder a Node-RED

Una vez ejecutado, abre tu navegador y entra en la siguiente dirección: http://localhost:1880

o en mi caso particular: http://127.0.0.1:1880/#flow/f6f2187d.f17ca8

docker_NodeRED_RUNproyecto.png

Siempre verifiquen que al ejecutar les indicará la dirección

El 1er EJEMPLO:

ProyectoLOGO_NodeRED.png

En el ejemplo que comparto, si bien hay muchas formas de poder tener control de entradas y salidas de nuestro LOGO8 de SIEMENS desde nuestro dashboard con Docker y NodeRED; Yo elegí la mas sencilla, que es escribir y leer los espacios de memoria "VM" (byte 0 hasta 849 y bit 0 hasta el 7)… Instaladas las dependencias, tal como lo muestro en las imágenes, nuestro siguiente paso es implementar los nodos funcionales "S7" que son:
  • S7 in (Lee datos que provienen de un PLC)
  • S7 out (Enviamos datos y sobrescribimos espacios de memorias determinados en un PLC)
Como no queremos interactuar directamente con los espacios de memoria que afectan a la salida directamente, vamos a implementar los registros VM del LOGO escribiendo DB1,0.0 para el pulsador "ON"("DB1", "Byte 0 al 849" . "Bit del 0 al 7"), y seguiremos el orden consecutivamente:
OFF DB1,0.1
PE DB1,0.2
IZQ DB1,0.3
DER DB1,0.4
KM1 DB1,0.5
KM2 DB1,0.6
KM3 DB1,0.7

variables_1.png

Recuerden que la configuración del byte y bit de cada nodo, tenemos que reproducirlo en nuestra función "Entrada de RED" y "Salida de RED" en nuestro programa del LOGO8 SIEMENS En la próxima edición, vamos hablar de como generar nuestros DASHBOARD cono Docker y NodeRED...
LOGO_NodeRED_1.png


LOGO_NodeRED_2.png


LOGO_NodeRED_4.png


Las dependencias que necesitamos son:

dependencias_2.png


Para instalarlas, nos dirigimos a la seccion "Administrar paleta" y en la barra de busqueda vamos a buscar las librerias que a continuación les muestro:

dependencias_1.png



dependencias_3.png


Les dejo unos links de referencias:

Código:
https://www.freecodecamp.org/news/the-docker-handbook/

https://www.thesmarthomebook.com/2021/04/14/basics-connecting-home-assistant-to-node-red/

https://www.youtube.com/watch?v=wi2b5ZcySuc

https://www.youtube.com/watch?v=sIvzWJ4ytok

https://www.youtube.com/watch?v=0c9TbB2IzAs

https://www.youtube.com/watch?v=8-o8Oo7CsMM

https://www.prometec.net/jugando-con-nodered-y-dashboard/ + https://www.youtube.com/watch?v=l3CTWBKJWR0

https://www.youtube.com/watch?v=O6SegqIr7V8
Atrás
Arriba