Compartir dades entre 2 PLC S7 mitjançant ethernet

Una opció molt interessant quan treballem amb diversos PLC de Siemens és poder compartir dades mitjançant la xarxa ethernet del propi PLC, Siemens ens ofereix la possibilitat de crear enllaços de comunicació aprofitant la xarxa i així poder Compartir dades entre 2 PLC S7 mitjançant ethernet.

En el següent exemple s’utilitza dos PLC S7 315 2DP PN, encara que també es pot realitzar amb altres PLC de Siemens o Vipa que tinguin el port de ethernet integrat, o també una targeta de ethernet

En primer lloc tenim que crear un enllaç en el PLC mestre, aquest PLC serà l’encarregat de llegir i escriure les dades en el PLC esclau, suposem que tenim les següents adreces IP

  • IP PLC Mestre: 192.168.10.20
  • IP PLC Esclau: 192.168.10.120

Configuració de l’enllaç del PLC

Obrim el programa NetPro i seleccionem la CPU del PLC mestre:

enlace-netpro-plc

Nou enllaç amb el netpro

Seleccionem enllaç no especificat i tipus d’enllaç S7:

enlace-no-especificado

Insereix nou enllaç

En acceptar l’enllaç obrim les propietats, aquí hem d’especificar la IP del PLC client, en el nostre cas serà la 192.168.10.120, definim el ID de l’enllaç, en aquest cas la 1, aquest ID serà el que després utilitzarem en el programa de Step 7, després fem clic en direccions:

propiedades-del-enlace

Propietats del enllaç

En direccions definim el bastidor i slot, normalment 0 i 2 i en recurs d’enllaç seleccionem en local el 10 i en l’interlocutor seleccionem el 3:

detalle-direcciones-enlace-s7

Acceptem tots els canvis i transferim la nova configuració al PLC mestre.
Amb això fet ja hauríem de tenir l’enllaç entre els 2 PLC,  provem de connectar els 2 PLC en la mateixa xarxa i en obrir en línia des del Netpro veurem com l’enllaç està funcionant correctament.

Programa de lectura y escriptura de dades

En primer lloc hem de copiar els FB de comunicació en el nostre projecte de Step 7 i transferir-los al PLC, els FB de comunicació que utilitzarem són el “PUT” Write Data to a Remote CPU i el “GET” Read Data From a Remote CPU, el FB14 i el FB15 del nostre exemple.

Lectura de dades del PLC client

Mitjançant el FB de lectura “GET” realitzem una lectura seqüencial de les dades del client, en aquest cas hem posat un clock de 1 dècima de segon, però es podria augmentar el temps de cicle depenent de la quantitat de dades a llegir:

lectura-datos-get

En aquest exemple es llegeixen les dades del DB300 a partir de la posició 200 amb una quantitat de 150 bytes, i es transfereixen al plc del mestre també al DB300 a partir de la posició 200. Es pot veure com el ID de l’enllaç és el 1 que anteriorment hem definit en la configuració de maquinari

Escriptura de dades del PLC client

Mitjançant el FB d’escriptura “PUT” realitzem una escriptura seqüencial de les dades del client, en aquest cas hem posat un clock de 1 dècima de segon, però es podria augmentar el temps de cicle depenent de la quantitat de dades a escriure:

escritura-datos-put

En aquest exemple s’escriuen les dades del DB300 a partir de la posició 0 amb una quantitat de 150 bytes, aquestes dades es transfereixen al PLC client també al DB300 a partir de la posició 0. Es pot veure com el ID de l’enllaç és l’1 que anteriorment hem definit en la configuració de maquinari

Leave a Reply