Vai al contenuto
PLC Forum


Modbus: Master Vs Slave


lale_x86

Messaggi consigliati

Ciao, sono uno sviluppatore di SW e mi stato chiesto di realizzare un programma che si interfacci con PLC (su cui ho pochissima esperienza).

Ho trovato librerie e documentazione necessari ma mi chiedevo chi debba essere il master e chi lo slave.

A) Per "monitorare" il PLC a intervalli regolari di tempo acquisendo valori di parametri o di stato immagino la soluzione più indicata sia PLC=Slave e PC=Master.

B) Ma nel mio caso la macchina esegue delle misurazioni quando viene richiesto dall'operatore che la utilizza e il PC deve funzionare da "log" di queste misurazioni. Il PC non sa quando queste misurazioni avverranno e non deve perderne nessuna; è vero che potre fare da PC il polling ogni pochi secondi ma forse conviene, in questo caso, che sia il PLC a prendere l'iniziativa e quindi usare PLC=Master e PC=Slave? Anche perchè in questo modo il PLC sa se la "scrittura" dei dati sul PC è andata a buon fine oppure no (es. cade la connessione). Oppure dovrei dovrei continuare con il PC come master e PLC come slave ed usare dei bit di abilitazione che indichino al PLC che il PC ha "catturato" i dati? Anche perchè nonostante l'attività principale del PC è fare da "logger" sarebbe comunque utile acquisire anche altri dati sullo stato della macchina.

Spero di essere stato chiaro...ma soprattutto spero che qualcuno chiarisca a me le idee.

Grazie

Alessandro

Link al commento
Condividi su altri siti


io la vedo in modo moltoooo semplice.......

Il PLC oppure i PLC eseguono il campionamento e mantegnono il dato/i dati in memoria, il pc in polling li recupera in questo modo posso archiviare dati provenienti da più PLC.

Un altro sistema MOLTo più semplice , PLC+Hmi low cost dotato di opc CLIENT oppure che archivia lui i valori e tu semplicemente li vai a leggere.

Link al commento
Condividi su altri siti

Ciao Veronica,

si infatti una possibilità era quella di far salvare i dati al PLC in memoria e leggerli (in polling) con il PC ma devo implementare una logica ( giusto un paio di bit di abilitazione) che dicano al PC quando ho un nuovo dato e, viceversa al PLC, quando il PC ha ritirato il dato in memoria e può acquisirne altri. Giusto?

La soluzione HMI low cost che salva i dati e io li leggo da PC non so bene in cosa consiste essendo nuovo al mondo PLC. Ma l'HMI me li salverebbe in un file di testo, DB Access o SqlServer ? e dove?

Grazie ancora

Alessandro

Link al commento
Condividi su altri siti

dipende dal tipo di Hmi che scegli, alcuni te li salvano in memoria (interna o esterna ) in formato txt, altri possono generare una querry verso DB, oppure tramitie OPC puoi leggere il vettore dati.

Link al commento
Condividi su altri siti

So che è un XV400 di Moeller/EATON...non so se permette queries verso DB. Proverò ad informarmi.

Se uso il PLC come slave sei d'accordo che devo usare dei bit per "sincronizzare" PC-PLC?

Scusate le domande forse banali ma vorrei capire come si fa di solito in questi casi.

Grazie

Link al commento
Condividi su altri siti

Aggiungo....

Chiaramente la soluzione HMI che scrive direttamente su DB sarebbe la più easy lato PC.

Ma nel caso OPC Client che vantaggi ci sono rispetto a Modbus? Lato PC entrambi mi danno la solita (circa) funzionalità leggere alcuni dati nel PLC...magari in numero o modalità diverse...no?

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