Para conectar TIA Portal o directamente un Siemens 1200 o un relé lógico LOGO con un microcontrolador como el Esp32 vamos a usar Node RED.
Node-RED es una plataforma de programación visual de código abierto basada en Node.js creada en IBM en 2013. Permite la creación de flujos de trabajo entre hardware y servicios de muy distintos tipos.
Es altamente modular y ofrece una interfaz intuitiva para usuarios sin experiencia en programación, facilitando la integración de dispositivos y servicios en proyectos de Internet de las cosas.
Instalación paso por paso #
- Descarga Node.js en nodejs.org

- Instala Node.js
- Abre node.js command prompt:

- Pega y ejecuta dando a Enter, el siguiente comando:
npm install -g –unsafe-perm node-red

Abrir de Node Red #
- Para abrirlo, tras la instalación, primero abre node.js command prompt:

y ejecuta el comando node-red, escribiéndolo en la consola y dando a Enter:

Node red se ejecuta en un navegador. Tras ejecutar el comando anterior, en la pantalla aparecerá la IP en la que se localiza Node red, que por lo general es 127.0.0.1:1880


Librería de trabajo con Siemens desde Node Red #
Para comunicar Node red con los PLCs Siemens y el Siemens LOGO, hay que instalar la librería node-red-controb-s7 y a continuación, conviene instalar un flujo de Node red que facilita el acceso a las entradas, salidas y marcas de LOGO.
En primer lugar vamos a Manage palettes:

Y ahí a la pestaña Install para buscar S7. Al realizar la búsqueda aparecerán diferentes resultados.

Hay que instalar el que estamos buscando que es node-red-controb-s7:

Configuración para trabajo con Siemens LOGO #
Ahora vamos a cargar el flujo (configuración automática) de reconocimiento de entradas, salidas y marcas del Siemens Logo que permite trabajar de forma mas rápida y sencilla. Esto se puede hacer manual, pero ahorra tiempo cargar la configuración ya elaborada. Vamos a mostrar cómo se realiza, pero puedes copiar el código al final de esta explicación. Para localizarlo, vamos a la página oficial de Node red:

Y dentro de esta, al apartado flows:

Buscamos logo

Y seleccionamos el flujo que trae ya vinculadas las áreas de memoria que asigna LOGO a cada entrada, salida y marca propia.

Copiamos el código que viene en la parte final de la página. Cuidado de no traducir al español la página, si no, traduce el código y lo invalida.

Ahora volvemos a Node Red y le damos a importar:

Y pegamos el código anterior:

Y tras esto, damos a importar:

Automáticamente se crea una pestaña nueva con la funcionalidad de acceso a las variables de LOGO.

Si ahora accedemos a los nodos para trabajar con LOGO que se instalaron al principio, vemos que ya traen una configuración realizada. Para ello, hay que sacar un nodo y hacer doble clic sobre él:



Vemos que en el desplegable ya aparecen las entradas, salidas y marcas:

Configuración LOGO Soft Conford #
Primero vamos a ver los datos de conexión de Logo, que se pueden consultar en el propio dispositivo o de diferentes maneras en el software. Si le damos a cargar un programa, por ejemplo, podemos descubrir todos estos datos:


Los datos, vemos que son para este ejemplo:
192.168.1.13
255.255.255.0
192.168.1.1
Tras esto, vamos a Herramientas / conexión Ehternet:

Introduzco los datos anteriores:

Y creo la conexión con S7:

Con botón derecho:

Y tras hacer doble clic en conexión1 , realizamos la configuración indicada a continuación.

TSAP (Transport Service Access Point) es un parámetro de configuración de la conexión. El otro equipo al que se conecte (en este caso Node red), debe tener los mismos parámetros pero justo al revés. Por ejemplo:
LOGO | Node red |
TSAP servidor 02.00 | TSAP servidor 01.00 |
TSAP cliente 01.00 | TSAP cliente 02.00 |
Para finalizar solo queda cargar el programa en LOGO.
Recursos para facilitar el trabajo #
Para trabajar con node red dejamos recursos que pueden ser útiles:
- Transformar estados booleanos en 1 y 0:
if (msg.payload) {
msg.payload = “1”;
} else {
msg.payload = “0”;
}
return msg;