En este artículo, analizaremos otra forma de comunicación entre dos PLC, ya sea que estén en el mismo proyecto o en dos proyectos de PLC diferentes. En este artículo, hablaremos sobre el comando PUT en un PLC Siemens, que se puede utilizar para enviar o enviar datos desde un PLC a un segundo PLC.
¿Qué es el comando PUT?
En general, el comando PUT es un bloque de función integrado en TIA Portal que se utiliza exclusivamente para las CPU de la familia S7 para enviar datos desde un PLC local a un PLC asociado remoto.
Al utilizar el comando PUT, tendría dos PLC, donde necesito enviar datos desde un PLC llamado local a otro PLC llamado asociado.
Se deben realizar algunas configuraciones en el PLC asociado para permitir que el otro PLC pueda acceder a él. Además de una conexión Profinet entre los PLC.
Crearemos un proyecto de muestra para mostrar cómo utilizar el comando PUT.
Comando PUT en un PLC Siemens
Supongamos un proyecto de ejemplo en el que tenemos dos PLC en el mismo proyecto, PLC_1 que actuará como el PLC local y PLC_2 que es el PLC asociado.
Queremos escribir un entero del PLC local al PLC asociado.
Proyecto de PLC de ejemplo
Primero, creemos un nuevo proyecto y agreguemos los dos PLC. Vea la imagen 1.
imagen 1. Agregue los PLC locales y asociados.
Lo que necesito ahora es configurar el PLC_2, el que recibirá los datos, para que pueda recibirlos. Y el PLC_1 se usará con el comando PUT.
Lo primero que necesito hacer es permitir el acceso del comando PUT al PLC_2 que recibirá los datos. Vea la imagen 2.
imagen 2. Permitir el acceso del comando PUT.
Como se puede ver en la imagen, permitimos que el comando PUT acceda al PLC_2 desde las Propiedades del PLC_2, en la opción Protección y Seguridad, hacemos clic en
“Permitir acceso con comunicación PUT/GET desde el socio remoto”
Ahora, tengo permitido poner datos desde cualquier socio remoto al PLC_2 usando el comando PUT.
Lo segundo es preparar un espacio o memoria en el PLC_2 para los datos que se pondrán en él. Supondremos que queremos PONER un valor entero en ese PLC, así que prepararé una memoria de acuerdo a eso. Ver imagen 3.
imagen 3. Preparar área para recibir datos.
Y eso es todo; esta es toda la configuración que necesitas preparar desde el lado del PLC_2 para poder recibir datos a través del comando PUT.
A continuación, configuramos los datos que se envían desde el PLC_1. Crearemos un bloque de datos para almacenar los datos enviados a PLC_2 y dentro de este bloque de datos, definiremos una etiqueta de número entero para PUT en PLC_2. Ver imagen 4.
imagen 4. Creamos un bloque de datos para almacenar los datos enviados.
Definimos una etiqueta de número entero “SendMeToPLC_2” que queremos enviar a PLC_2. Ver imagen 5.
imagen 5. Definimos los datos que se enviarán.
Tenga en cuenta que, para PLC_1, no necesitamos permitir el acceso con la opción de comando PUT. Activamos esta función en el PLC que recibirá los datos, no en el PLC que los enviará.
Ahora, usemos el comando PUT en nuestra programación, en el OB1 principal arrastraremos y soltaremos el FB del comando PUT. Ver imagen 6.
imagen 6. Agregue el comando PUT al OB1.
Tenga en cuenta que el comando PUT se encuentra en la carpeta de comunicación S7, ya que es una función exclusiva para los PLC de la familia S7, ya que implica cuestiones de seguridad. Recuerde que en la imagen 2, cuando permitimos el uso del comando PUT, estaba en el atributo Seguridad y protección de las propiedades del PLC, ya que está relacionado con la seguridad y la protección del PLC.
El comando PUT es esencialmente un bloque de funciones, por lo que al agregarlo a mi lógica, se me solicitará que cree una instancia de datos. Consulte la imagen 7.
imagen 7. Cree una instancia de datos para el comando PUT.
Después de presionar Aceptar, el comando PUT ahora se agrega a la lógica de su PLC. Consulte la imagen 8.
imagen 8. Comando PUT
Después de agregar el comando PUT, ahora debemos configurarlo; tenemos dos parámetros para configurar para el comando PUT.
- Conexión entre PLCs
- El bloque que será PUT de PLC_1 a PLC_2
Para ir a la vista de configuración del comando PUT, presione el pequeño ícono azul que se muestra en la última imagen.
En el parámetro de conexión, establecerá la comunicación entre los PLCs local (PLC_1) y socio (PLC_2). Vea la imagen 9.
imagen 9. Parámetro de conexión.
Como puede ver, el PLC local está configurado en PLC_1, que es el PLC donde se usa el comando PUT. El lado del socio aún está vacío y es allí donde debemos asignar PLC_2.
Si hace clic en la lista desplegable, tendrá dos opciones para un socio. Vea la imagen 10.
imagen 10. Conexión del socio
El socio es el PLC que recibirá los datos; Verá que tiene dos opciones para seleccionar:
- PLC_2 [CPU 1516-3 PN/DP]
- Sin especificar
Como ambos PLC están en el mismo proyecto, cuando elijo la opción PLC_2, todos los parámetros de conexión se completarán automáticamente. Vea la imagen 11.
imagen 11. PLC_2 como socio
Por otro lado, si el PLC asociado es de un proyecto diferente, entonces elegiré la opción Sin especificar, y en ese caso, tendré que completar algunos datos como la dirección IP del PLC asociado. Ver imagen 12.
imagen 12. Socio no especificado
Como puedes ver, en ese caso, necesito completar algunos datos, como la dirección IP y también necesito agregar una subred para PLC_1.
Para agregar una subred para PLC_1 iremos a las propiedades Profinet del PLC_1 y seleccionaremos la opción agregar subred. Ver imagen 13.
imagen 13. Agregar subred.
Una vez hecho esto, se realizará la configuración de los parámetros de conexión. Consulte la imagen 14.
El nombre de la conexión debe ser único para cada comando PUT que realice. TIA Portal le asignará automáticamente un nuevo nombre, pero quizás sea mejor que asigne un nombre más apropiado para la conexión en su proyecto. Aquí lo dejamos como está.
imagen 14. Se realizó la configuración de los parámetros de conexión
El siguiente paso en la configuración del comando PUT es la configuración de los parámetros del bloque.
En estos parámetros especificamos el disparador para el comando PUT, es decir, qué señal iniciará la acción del comando PUT. Y también qué datos se colocarán desde el PLC_1 y dónde se almacenarán en el PLC_2. Consulte la imagen 15.
imagen 15. Configuración de los parámetros del bloque
Para la señal de solicitud de inicio (REQ), hemos definido una etiqueta de entrada (SendData %I0.0). Y como mencionamos antes, ya hemos definido la etiqueta que se enviará al PLC_2 y dónde se almacenará dentro del PLC.
Al completar la configuración de los parámetros del bloque, se concluirá la configuración del comando PUT. Ver imagen 16.
imagen 16. Llamada de un comando PUT
Por lo tanto, en resumen, cuando se activa la señal REQ, los datos en SD_1 se enviarán a ADDR_1.