Vai al contenuto
PLC Forum


Scambio Dati Plc<->Server


Messaggi consigliati

Inserito:

Ciao a tutti apro questa discussione per avere uno scambio di idee sul modo migliore di creare uno scambio dati tra un PLC e un Server.

-Mi viene chiesto da un cliente di creare un architettura di una rete TCP/IP dove ho diversi tipi di PLC tutti Siemens S7-300 e S7-1200 con porta ethernet dove non ho bisogno di eseguire scambio dati tra loro ma che tutti possono inviare e ricevere dati da un PLR che funge da database.

Vorrei sapere se qualcuno a già fatto qualcosa del genere e come è meglio procedere

Grazie

Giuseppe


Inserita:

Vorrei sapere se qualcuno a già fatto qualcosa del genere

Scambio dati via Ethernet fra PLC S7 con un server (PC) che contiene ricette e/o storico di produzione è un'attività che facciamo quotidianamente.

Non ho capito che cos'è il PLR :o se è un refuso ed intendevi un PLC mi sembra poco capiente per utilizzarlo come database, a meno che i dati non siano davvero pochi, tipo ricetta corrente, richiesta di lavorabilità ecc..

Spiega meglio l'architettura e cosa vuoi trasferire, esistono decine di soluzioni collaudate per lo scambio dati ;)

Inserita:

Mi spiego meglio, quello che devo fare e un passaggio dati tra i vari PLC e un PC che serve per archiviare tutti i dati di produzione, allarme, valori analogici.

Un altra cosa che volevo sapere è se sul PC per leggere i dati avevo bisogno di librerie Siemens dedicate o se il protocollo TCP/IP è standard.

Ringrazio per i suggerimenti

Inserita:

Salve

Da quello che ho capito devi leggere dati dai vari PLC per poi archiviarli in un tuo Database per vedere gli andamenti di produzione , se così potrai usare librerie tipo libnodave o snap7 per leggere i dati poi te li gestirai come vuoi .

Io ho usato un applicazione simile per leggere dati da vari supervisori SCADA e poi archiviarli in un DB Oracle , con gestione rindondanza e tutto.

A mio avviso usando le librerie menzionate prima , puoi creare un servizio sul server o più servizi che ti faccianol'archiviazione , dei dati tali e quali , dipende ogni quanto devi campionare le misure e ogni quanto archiviarle , la cosa può diventare pesante e occupare molto posto nel DB.

di quante variabili e tipo di variabili parliamo ?

Inserita:

Hai centrato l'argomento quello che devo fare è esattamente questo.

Io pero non volevo andare a leggere le variabili direttamente con il PC ma preferisco che sia il PLC in base a degli eventi che definirò andare a scrivere i dati.

Questa è la parte che mi rimane un po' più difficile da capire, ossia che funzioni e con che modalità inviare i dati.

Ciao

Gianmario Pedrani
Inserita:

Il problema di inserire un plc che faccia da master ed raccolga i dati dei vari plc sulla rete, e dato dal fatto delle limitazioni di collegamento.

quello che posso suggerirti, è di utilizzare la snap7 come libreria, questo però presuppone l'utilizzo di un pc

Inserita: (modificato)

Quindi, se non ho capito male, vuoi usare una logica completamente PUSH.

Ogni PLC in base ad un evento manda i dati al PLC Master, il quale a sua volta li spedisce al server.

Intanto, come dice giustamente Gianmario, ci sono problemi di risorse di comunicazione che non è altro che il numero delle connessioni massime che un PLC (nel tuo caso il master) può accettare in ingresso.

Questo dipende dalla CPU utilizzata (se è di tipo PN cioè con l'Ethernet a bordo) o dal processore di comunicazione (CP-343), in genere non vai oltre 8 a meno di non aggiungere altri moduli.

Dal PLC master al PC non hai problemi di risorse.

Se non vuoi leggere le variabili del PLC devi usare direttamente TCP/IP e mandare dei telegrammi contenenti i dati che a te interessano. Lato PC ovviamente devi avere un server TCP/IP in ascolto.

Per fare tutto ciò non hai bisogno di nessuna libreria Siemens, ma se vuoi indicazioni più precise (le FB/FC da usare nel PLC) devi dirci i modelli delle CPU. (non basta S7-300).

Le modalità dei trigger, ovvero come scatenare gli eventi le devi decidere proprio tu.

Ma il software dei PLC devi scriverlo tu ?

La logica push, in genere ha senso quando ci sono centinaia di PLC che devono mandare dati ad altissima frequenza verso un server (un PC almeno di tipo Workstation), cioè quando un polling, in logica PULL, non garantisce i tempi richiesti.

Sei certo di averne proprio bisogno ?

Dacci qualche numero (quanti PLC, quanti dati, tempo ciclo delle macchine) magari ti evitiamo il bagno di dolore che ti stai preparando ;)

Ciao

Modificato: da dan64100

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