Vai al contenuto
PLC Forum


M241 e S7-300 via Ethernet


Andrea Venturini

Messaggi consigliati

Andrea Venturini

Buon pomeriggio a tutti

 

Ho cercato un po' in lungo e in largo , ma nulla da fare. Spiego il mio problema : devo scambiare semplicemente dei valori tra un M241 ( TM241CEC24T) e una S7-300 Siemens ( 314-2 PN/DP) via Ethernet ( chi mi ha commissionato la cosa vuole proprio questo protocollo ). Si può fare? E' necessario montare ulteriore HW perché la cosa sia fattibile? E , se si , come devo fare?

 

So che sembra una banalità , ma non son riuscito a trovare nulla da nessuna parte che potesse aiutarmi.

Grazie in anticipo a chi mi risponderà.

 

Link al commento
Condividi su altri siti


Non è una banalità,  chi ti ha dato questo incarico è stato piuttosto superficiale.


In ethernet si possono scambiare volumi di dati, ma non il comando industriale come quello di un plc. Lo scambio in Ethernet non analizza i tempi di risposta, mentre il comando di un plc li deve analizzare.
Se un plc si collega in ethernet  all'interno dei dati scambiati in Ethernet c'è un altro protocollo, quello che tra l'altro sorveglia i tempi di attuazione. Questo secondo protocollo non è standard e varia a seconda del costruttore. Non si può banalmente collegare due plc in Ethernet ignorando il resto.
Per fare un esempio banale via ethernet puoi scambiare un file tra due PC ma se mandi via ethernet un file DWG di Autocad ad un computer che non ha Autocad il destinatario non lo apre.
Devi trovare un protocollo comune che via ethernet permetta la cosa, non è semplice né economica perché Schneider e Siemens si boicottano a vicenda.
Se i tempi di risposta non sono critici un modo è usare un pannello che possa collegarsi con i due plc e che permetta di programmare lo scambio dati
Un altro è usare il protocollo CanOpen di schneider. Per il 300 esiste una scheda o un gateway esterno  "Systeme Helmholz's CAN bus". La scheda per il 300 viene fornita con dei blocchi FB che, però, occupano molta memoria, ci vuole una 315 almeno.
 

Link al commento
Condividi su altri siti

Andrea Venturini

Ciao rguaresc , intanto grazie per la risposta , molto chiara soprattutto.

Si in effetti il tutto è stato buttato li con superficialità , con la convinzione che sarebbe stato facile quando non lo è. Io stavo pensando a una scheda Profibus aggiuntiva lato Schneider per poi poter individuare delle aree di scambio con cui poter interagire con Siemens.

Per quanto riguarda il CAN avevo anche trovato una scheda per ET200s costruita da terze parti per Siemens ( si tratta solo di trovare la soluzione migliore ).

Non potendo cambiare la CPU , e questo putroppo non dipende da me , quale può essere la soluzione migliore? Alla fine devo solo leggere dei parametri dal M241.

Mi affido agli esperti :)

Link al commento
Condividi su altri siti

Opterei per il profibus, mi sembra meno complicato. Dovrebbe essere master il 300 e slave lo Schneider. Il CAN si usa quando è richiesta una reazione assai veloce.

 

 

Link al commento
Condividi su altri siti

Il problema nel far comunicare il mondo Schneider con il mondo Siemens risiede nel trovare il protocollo supportato da entrambi (possibilmente in modo nativo senza ricorrere a dispositivi di terze parti).

La CPU M241 supporta nativamente la porta Ethernet con il protocollo ModBus TCP/IP, la porta seriale (RS485) con protocollo ASCII / Modbus RTU e il bus CANOPEN.

Tralasciando il bus CANOPEN dovrebbe essere abbastanza semplice gestire la comunicazione utilizzando Modbus TCP/IP oppure RTU a patto che siano supportati da Siemens.

Non conosco il mondo Siemens ma so che sicuramente alcune CPU supportato il Modbus RTU (quindi RS485) magari quelle dotate di porta Ethernet potrebbero anche supportare il Modbus TCP/IP (attenzione a non confondere Ethernet+Modbus TCP/IP con Ethernet+Ethernet/IP).

Supponendo che sia possibile utilizzare il Modbus TCP/IP si può abbastanza facilmente far fare il lavoro di trasmissione al M241 utilizzando una trasmissione ciclica (i.e. ogni 100 ms) : il Siemens si ritroverebbe semplicemente l' area dati già compilata (ovviamente occorre gestire un contatore dei messaggi trasmessi per permette al Siemens di accorgersi di eventuali mancanze di trasmissione). Oppure si può implementare la richiesta di lettura sul Siemens (sempre ogni 100 mS) ed analizzare direttamente il rapporto di trasmissione.

ll profibus è un protocollo più complesso rispetto al Modbus TCP/IP (e anche più robusto ma anche più costoso) però non è molto digerito da Schneider (solo ultimamente sembra funzionare decentemente ma non so dirti se su M241 sia implementato / ben funzionante). Io personalmente non tenterei questa strada.

Dovendo tentare un approccio diverso rispetto al Modbus (sia esso TCP/IP che RTU) io tenterei con Ethernet/IP : però non credo sia supportato dal M241 (sicuramente è supportato dal M580 con un bella spesa).

Link al commento
Condividi su altri siti

Il Modbus TCP/IP per le cpu Siemens PN lo si deve acquistare a caro prezzo (licenza) e occupa memoria.
Peggio ancora per EtherNet/IP, risorsa comune per Rockwell e per questo osteggiata da siemens.

 

In pratica i tre grandi gruppi Siemens, Rockwell, Schneider agiscono per ostacolare l'interscambio e fidelizzare i clienti affinché restino nel gruppo.

 

Link al commento
Condividi su altri siti

Mi pare che anche i più riottosi stiano comunque accettando l' esistenza di altri costruttori : S7-1214

Questa CPU Siemens (che potrebbe essere reperibile in qualche kit) supporta il Modbus (e credo, vista la presenza della porta ethernet, che sia il Modbus TCP/IP) : se puoi passare a questa CPU potresti cavartela con una cifra sopportabile (resta da valutare cosa vuol dire passare da un PLC S300 a un S1200 .....)

Altra alternativa (già proposta da rguaresc) : usa un pannello operatore che fa da ponte tra i 2 plc.

Link al commento
Condividi su altri siti

Andrea Venturini

Grazie a tutti per le vostre idee / consigli :) valuterò insieme a chi mi ha commissionato la cosa , ma penso che si andrà sulla scheda CAN Open per ET200s in modo da eliminare completamente Schneider e uniformare la cosa. Comunque la discussione è stata davvero utile! 

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...