Viatoji Posted July 8, 2009 Report Posted July 8, 2009 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 July 8, 2009 Report Posted July 8, 2009 (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 July 8, 2009 by max.riservo
Claudio Monti Posted July 8, 2009 Report Posted July 8, 2009 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.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now