Jump to content
PLC Forum


Memorizzazione Dati Da Plc


Recommended Posts

Posted

Buonasera,

siamo due studenti di ingegneria,stiamo da poco,lavorando su un PLC Tsx Premium.

Dobbiamo memorizzare dati provenienti da dei sensori collegati al PLC e visualizzarli,sia i valori in tempo reale,sia quelli "storici". Sapete in che modo possiamo tener memoria dei dati "passati",inviandoli periodicamente al PC,in modo da non occupare tutta la memoria del PLC(campioni ogni min e teoricamente attivo 24h/24h)?

Abbiamo realizzato il programma di acquisizione dei valori in ingresso in Ladder,avevamo pensato di utilizzare l'esportazione su file,ma ciò è possibile solo con Plc in STOP,cosa del tutto inefficiente per la nostra applicazione.

Grazie in anticipo e complimenti per il forum,che già ci è stato di aiuto.


max.riservo
Posted (edited)

Utilizzate l' indirizzamento indiretto delle word, definendo la word iniziale, la word che farà da indice ed al raggiungimento del valore massimo dell' indice, ritorno dell i' indice a zero.

Esempio semplice :

IF %S0 OR %S1 OR %S13 THEN
     %MW98 := 99 (*n° max. elementi di tabella = 100*)
    %MW99 :=0;    (*Indice*)
END_IF;

IF RE(%S6) THEN
    (*ACQ OGNI MINUTO*)
    %MW100[%MW99] := %IW1.0;
    %MW99 := %MW99 + 1;
    IF %MW99 > %MW98 THEN
         %MW99 := 0;
    END_IF;
END_IF;

Esempio scritto al volo ..... (se non ricordo male %S6 è il bit di sistema 500ms ON e 500 ms OFF)

Con l' indirizzamento indiretto, punti alla word della base a cui sommi il contenuto della word che fa da indice (i.e %MW99 = 20 --> %MW100[%MW99] ---> accedi alla word %MW120).

Edited by max.riservo
Claudio Monti
Posted

Che premium hai? puoi postare il codice?

Se ha una scheda ethernet puoi accedere all'area di memoria attraverso ModbusTCP/IP.

Io solitamente memorizzo i valori nell'area di memoria usando un indice (come spiegato precedentemente da max.riservo) cosi' da poter tenere nella memoria del PLC un bel numero di campionamenti (se hai problemi di connessione non perdi i dati).

All'inizio della tabella scrivo data e ora di inizio campionamento, il PC che si collega si copia i dati e li ricontrolla per aver la certezza di congruenza, poi mi alza un bit che mi dice che la lettura e' OK, dopodiche' il PLC azzera tutta la tabella e ri-iniza da capo scrivendo la nuova data e ora.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...