Vai al contenuto
PLC Forum


Comunicazione Ethernetip Tra M258


Stef U.

Messaggi consigliati

Ciao a tutti,

sto affrontando una nuova problematica e avrei bisogno di una "spintarella" per iniziare a fare qualche esperimento.

Vorrei far comunicare 3 M258 (TM258LF42DT) tramite EthernetIP. Si tratta di semplici BOOL, niente di "complicato".

La struttura del sistema è questa:

- 2 PLC sono di due macchine identiche, che devono essere alimentate dalla terza macchina

- 1 PLC è montato a bordo dell'alimentatore a monte delle due. Questo deve conoscere lo stato di alcune variabili BOOL presenti sui primi due PLC (per conoscere stato macchina, se ci sono erorri, se ha bisogno di essere alimentata, ecc).

Mi sono munito di due PLC identici a quelli che poi effettivamente utilizzerò per simulare in laboratorio il sistema (quindi ora ne ho a disposizione solo due anzichè 3, uno simula una macchina, l'altro il caricatore).

Come configurazione Hardware credo di essere abbastanza ferrato, dovrei essere riuscito a impostare la connessione.

Ora mi blocco per quanto riguarda lo scambio di variabili. Non ho la minima idea di quali blocchi funzione (se esistono dei blocchi funzione) utilizzare per fare ciò che voglio.

Ora chiedo a voi: è possibile fare quello che mi sono messo in testa? Se si, qualcuno sarebbe così gentile da darmi qualche spunto per studiare e iniziare a "giocare"? Non trovo quasi niente, tutte le guide di schneider parlano di modbusTCP e mai di EthernetIP (e magari già questo è un segnale che sto percorrendo la strada sbagliata?)

Spero di aver chiarito il meglio possibile la situazione e di non aver detto fesserie, in caso contrario sarò ben disponibile a fornirvi informazioni aggiuntive.

Grazie in anticipo a tutti,

ciao.

Link al commento
Condividi su altri siti


ciao,

se metti tutti i programmi dei tre plc in un unico progetto

potresti usare gli oggetti "trasmettitore e ricevitore delle variaili di rete"

sono come dei GVL dove però ci metti le variabili che devono essere scambiate sulla rete,

per ogni plc, in ricezione e trasmissione.

lo scambio una volta configurato avviene in maniera automatica,

ci sono poi delle funzioni per la verifica della comunicazione ed eventuale genrazione di errori.

cerca nell'. di Somchine : "Configurazione dello scambio di variabili di rete "

0b0a335dc96b49546f6e6bbc272ce981.png

qualche volta le ho usate e non sono male

ciao da Valvolina

Link al commento
Condividi su altri siti

Ciao Valvolina,

ti ringrazio per la rapidissima risposta.

sono come dei GVL dove però ci metti le variabili che devono essere scambiate sulla rete,

per ogni plc, in ricezione e trasmissione.

lo scambio una volta configurato avviene in maniera automatica,

ci sono poi delle funzioni per la verifica della comunicazione ed eventuale genrazione di errori.

Quella che mi proponi sembra essere un'ottima soluzione.

Che versione utilizzi di SoMachine?

Perchè le due voci "elenco delle variabili di rete" non le trovo nel mio menù, ma sono comunque riuscito a arrivarci tramite la guida in linea.

Ora tempo permettendo farò qualche test e ti aggiornerò.

Ti ringrazio ancora, mi sembrava una cosa impossibile e invece c'era una soluzione bella che pronta! :thumb_yello:

Buon weekend ;)

Link al commento
Condividi su altri siti

ciao

con Somachine sono aggiornato alla versione V4.1 SP1.2, penso sia l'ultima disponibile.

Questo scambio con le variabili di rete era era comunque già disponibile con la v3XXX.

nella guida in linea in fondo alla sezione "Configurazione dello scambio di variabili di rete ",

c'è anche un esempio software.

eventualmente ti posso mandare un piccolo esempio se mi dai una mail

Per partire : io ho fatto un progetto vuoto, poi nel progetto ho aggiunto due plc

e le voci sono disponibili come dall'immagine che ti ho messo.

In alternativa potresti usare la comunicazione modbus tcp, con i blocchi read_var e write_war

ecco un piccolo esempio

9cf9301f77aca526bf852ff7aed3ccd6.png

dove "indirizzo_CI" è un blocco funzione di tipo ADDM

serve a creare l'indirizzo del plc da cui vuoi leggere le variabili

mentre "read_plc_CI" è un blocco di tipo READ_VAR

che nell'esempio va a leggere le variabili di tipo MW partendo dall'indirizzo 80 (%mw80) per venti variabili consecutive

la stringa Addr:= '3{172.17.1.60}0', del blocco ADDM significa : 3 è il numero della porta ethernet del plc TM258,

172.17.1.60 è l'indirizzo del plc da cui devi leggere

0 invece è la unit id del plc che va bene per i TM258

La prima strada secondo me è piu semplice, con la soluzione modbus tcp devi lavorare un pò più di software,

per gestire dei cicli di lettura e scrittura delle variabili.

Nel primo caso la gestione una volta configurata è automatica.

Fammi sapere come posso aiutarti.

saluti Valvolina

Modificato: da valvolina
Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...