Per ogni Datalog descritto lâutente deve dichiarare una variabile di controllo, nel programma PLC, con nome âDATALOG_nameâ (sostituendo ânameâ con il nome del datalog. Ad esempio: DATALOG_LOG_1).Queste variabili di controllo sono di tipo GS_DATALOG_PAR, una struttura dati con i seguenti campi:ENABLE: bool. Consente di attivare/disattivare il logging (true / false). Lâattivazione avviene sul fronte di salita ed il suo controllo avviene una volta al secondo. L’attivazione avverrĂ al successivo istante di campionamento in secondi. La disattivazione avviene sul fronte di discesa al successivo istante di campionamento. Nel caso di DataLogging non circolare e buffer full il campionamento verrĂ automaticamente arrestato, anche con segnale di ENABLE âtrueâ.
Questo flag può essere messo a FALSE dal sistema, in caso di errore. Ă quindi sconsigliato mantenerlo continuamente a TRUE allâinterno del programma 1131.CLEAR: bool. Consente di azzerare completamente il buffer di logging. L’azzeramento avverrĂ al successivo campionamento. Il flag viene abbassato ad azzeramento avvenuto. Ă importante non mantenere alto questo flag altrimenti il campionamento verrĂ continuamente azzerato. Lâazzeramento fisico del file su disco avverrĂ in un tempo successivo, al termine del quale verrĂ alzato il bit 12 di STATUS.
Se enable = false la richiesta rimane pendente fino a che il datalog non viene avviato di nuovo.COPY: byte. Consente di attivare una copia del file storico. Viene creato un nuovo file contenente i valori del file storico in esecuzione e nome file âDATALOG_PREFIXnamelog_DATE_TIME.copâ.
Il âPREFIXâ è una stringa specificata tramite il campo âPREFIXâ di questa struttura.
La copia viene âpresa in caricoâ ed eseguita dal gestore del file system (attivato ogni minuto). Ă una maschera di bit:b0: COPY FULL. Consente di eseguire automaticamente una copia del file di storico quando raggiunge lo status di FULL. La copia fisica avviene alla successiva esecuzione del gestore file system (attivato ogni minuto). Il bit non viene mai azzerato automaticamente. Al termine della copia fisica (salvataggio su file), viene alzato il bit 11 di STATUS.b1: COPY NOW. Esegue una copia immediata indipendentemente dal livello di riempimento del buffer (o per buffer circolari). Il valore viene azzerato quando l’operazione è stata presa in carico (b7 = 1). La copia fisica avviene alla successiva esecuzione del gestore file system (attivato ogni minuto) ma i dati che verranno salvati saranno quelli âfotografatiâ all’istante in cui viene rilevato il flag di COPY. Al termine della copia fisica, viene alzato il bit 11 di STATUS. Se il flag viene alzato con ENABLE = true, la copia verrĂ presa in carico al prossimo campionamento (il cui valore entrerĂ anchâesso nella copia).
Nota: se dopo la presa in carico della copia (b7 = 1) si alza di nuovo questo bit (b1 o b2), la richiesta non verrĂ accodata ma ignorata.b2: COPY & CLEAR. Come b1 ma i dati del Datalog vengono azzerati dopo la copia ed il successivo campionamento (dopo il quello del copy) ripartirĂ da offset zero. Il valore viene azzerato quando l’operazione è stata presa in carico (b7 = 1).
Se enable = false la richiesta rimane pendente fino a che il datalog non viene avviato di nuovo.b3: riservato per usi futurib4+b5: seleziona la destinazione per la creazione del file COP.
Destinazione
b5
b4
/ata0a/export/[GROUP]
0
0
/usbkey/export/[GROUP]
0
1
/usbkey/1/export/[GROUP]
1
0
/sdcard/export/[GROUP]
1
1
b7: COPY DONE. Viene alzato quando il comando di copia è stato preso in carico. Questo avviene normalmente in modo sincrono al tempo di campionamento. Quando la copia viene effettivamente eseguita (scrittura del file) viene alzato il b11 di STATUS e azzerato questo bit.
Non è usato durante le richieste di COPY FULL.PREFIX: prefisso da utilizzare per lâesportazione dei file COP tramite il campo âCOPYâGROUP: cartella di raggruppamento da utilizzare per lâesportazione dei file COP tramite il campo âCOPYâ allâinterno del disco selezionato tramite i bit b4+b5 (ata0a, USB o SDCard). Se questo campo è vuoto (stringa vuota) il file COP verrĂ creato nella cartella â/exportâ, altrimenti verrĂ creata una nuova sottocartella (se non esiste) â/export/[GROUP]â (con [GROUP] = valore di questa stringa). Se piĂš COP utilizzano lo stesso valore risulteranno raggruppati nella stessa cartella. Si consiglia di creare la stringa âGROUPâ utilizzando anche data ed ora. Esempio: âPRODUCTION123_2015-05-28_08-50â.INFO1, INFO2, INFO3: stringhe generiche che verranno esportate nel file CSV e COP, come contenuto delle prime 3 righe. Possono risultare utili per personalizzare meglio la descrizione del Datalog (oltre al nome variabile, giĂ inserito in automatico).SIZE: dimensione a design time del datalog. Contiene il numero massimo di elementi memorizzabili (griglia Datalogs di GF_ProjectVX, colonna âBuffer size (num)â.COUNTER: dint. Viene incrementato ad ogni campionamento effettuato. Facendo la copia di questo valore è possibile controllare l’istante esatto del campionamento. Nota: nei Datalog circolari questo contatore viene continuamente incrementato, mentre nei Datalog standard, quando FULL, il conteggio si ferma.
Vengono conteggiati anche i record “Start” e “Stop” successivi ad un “Enable := True” ed un “Enable := False”.STATUS: word. Contiene una maschera di bit codice corrispondente all’eventuale errore riscontrato:b0: se TRUE = tutto OKb1: preallarme di 5 minuti. Il sistema non è ancora riuscito a salvare i dati su discob2: allarme di CPU overload. Il sistema non è riuscito a salvare i dati su disco per 10 minuti consecutivi. Il campionamento viene fermato automaticamente (enable = 0).b3: buffer full. In caso di campionamento non circolare indica che il buffer è pieno. Il campionamento viene fermato automaticamente (enable = 0).b4: config error. I file di campionamento preesistenti non corrispondono alla configurazione specificata nel file INI. I file di campionamento vengono cancellati e ricreati.b5: errore nell’apertura o creazione file di buffer su discob6: errore nel file CFG (ini file)b7: label da campionare non trovata nel programma PLCb8: label del trigger non trovata nel programma PLCb9: riservato (struttura dati di interfaccia non trovata nel programma PLC)b10: disk fullb11: alzato al termine effettivo dellâoperazione di COPY, quando il file è stato generato fisicamente. Questo flag va azzerato a cura dellâutenteb12: alzato al termine effettivo dellâoperazione di CLEAR, quando il file è stato azzerato fisicamente. Questo flag va azzerato a cura dellâutenteb13: riservato per uso internob14: errore nella creazione del file COP. Probabilmente a causa del path errato âGROUPâ, oppure perchĂŠ la destinazione (USB o SD Card) non è presente o accessibile in scrittura.COMMA: dint. Permette di controllare la posizione virgola del dato, qualora visualizzato sulle pagine (DatalogGrid e DatalogExport). 0 = virgola automatica, -1 = nessun decimale, 1..4 = numero di decimaliMINY, MAXY: real. Limiti di visualizzazione grafica di questo datalog, utilizzati come default sul componente DatalogGraph.RES_MINY, RES_MAXY: real. Limiti di visualizzazione grafica attuale, utilizzati e modificati automaticamente dalle pagine quando si effettuano operazioni di ZOOM sul componente DatalogGraph. Vengono impostati al valore di MINY e MAXY quando si preme il pulsante refresh verticale.