Modbus/TCP se introdujo para aprovechar las infraestructuras LAN actuales. A su vez, aumentó el número de unidades que podían conectarse a la misma red.
Este sistema engloba los bloques de datos de solicitud y respuesta del Modbus RTU en un bloque TCP transmitido a través de redes estándar de Ethernet.
El puerto estándar para Modbus TCP es el 502, pero el número de puerto a menudo puede reasignarse si se desea.
La versión TCP sigue el modelo de referencia de Red OSI. Por otro lado, define las capas de presentación y aplicación en el modelo OSI.
Este tipo de comunicación esta basada en cliente-servidor, donde el cliente es el encargado gestionar la comunicación con los diferentes servidores.
¿ Por qué utilizar el modbus TCP?
Porque es un protocolo soportado por muchos fabricantes , el cual nos permite realizar intercambios de información de una forma sencilla.
¿ Como hacemos esta comunicación con los autómatas de Siemens?
Mediante las librerías gratuitas que incorporan los PLCs que pueden trabajar como cliente y como servidor
Lo normal, en este tipo de comunicaciones, el que el PLC sea el encargado de gestionar la comunicación, con lo que utilizaremos la función de cliente.
Donde reside toda la configuración de la comunicación es en el siguiente bloque de datos:
Que es lo que indicamos, contra que equipo nos queremos comunicar, que somos nosotros quienes vamos a establecer la comunicación y el puerto el cual vamos a utilizar.
Después, como en cualquier comunicación modbus, debemos de indicar que direcciones queremos leer o escribir:
Si queremos hacer lectura de datos:
O escritura:
¿Cómo quedaría configurada la función de cliente?
MB_MODE: indicamos si queremos leer o escribir
MB_DATA_ADDR: dirección la cual queremos leer, en este caso los holding registers
MB_DATA_LEN: cantidad de datos a leer, estos deben de ser consecutivos y el servidor no debe de tener huecos, en el caso de no ser consecutivos, nos daría error la función
MB_DATA_PTR: Bloque de datos o zona de memoria donde voy a guardar la información leída, en el caso que estemos realizando una escritura, es donde residen los datos a transmitir.
CONNECT: bloque de datos donde hemos realizado la configuración de nuestra comunicación modbus.
¿Se puede comunicar con distintos equipos a la vez?
Si, en el caso de que queramos comunicar con distintos equipos, la precaución que debemos de tener es cambiar el puerto que utilizaremos en la función. Debemos de tener en cuenta que hay puertos que no pueden ser utilizados, ya que están reservados para protocolos de siemens como los siguientes: 20, 21, 25, 80, 102, 123, 5001, 34962, 34963 and 34964.
La limitación de enlaces que se pueden lanzar con un equipo, dependerá de la cantidad de enlaces S7 que nos permita cada tipo de PLC.
Enlaces de interés:
https://support.industry.siemens.com/cs/pe/es/view/34010717
https://support.industry.siemens.com/cs/pe/es/view/75330636
https://support.industry.siemens.com/cs/pe/es/view/109762425
https://support.industry.siemens.com/cs/pe/es/view/83130159
Lo sentimos, no hay comentarios todavía.