Vai al contenuto

Registrazione di dati storici da variabili PLC

Home Forum Terminali operatore (Weintek) Registrazione di dati storici da variabili PLC

Stai visualizzando 15 post - dal 1 a 15 (di 15 totali)
  • Autore
    Post
  • #34970
    Paolo
    Partecipante

    Stò utilizzando un vostro terminale MT6070i, ora avrei la necessità di effettuare la registrazione di dati storici letti da variabili PLC, desideravo sapere come è possibile.

    #36658
    Sergio Bertana
    Amministratore del forum

    Per registrare i dati occorre utilizzare l’oggetto Registrazione dati, vedi foto.

    Tramite questo oggetto è possibile definire tante tabelle di registrazione, per ogni tabella occorre definire:

    Descrizione della tabella dati.
    Il tipo di storicizzazione, se a tempo od a trigger.
    L’indirizzo di inizio lettura delle variabili da storicizzare.
    Il numero massimo di dati da registrare.
    Il nome del file storico e dove il file verrà memorizzato.

    Nel formato dati come visibile nella figura occorre definire tutte le variabili da salvare partendo dall’indirizzo definito. Per ogni variabile occorre definirne anche il tipo.

    #37119
    Paolo
    Partecipante

    Usando l’oggetto registrazione ho notato che le registrazioni possono essere attivate su “base tempo” o su “base trigger”; in quest’ultimo caso devo leggere la variabile su PLC (SlimLine) che attiva la registrazione.

    Volevo sapere (se c’è) qual’è il tempo minimo per il quale devo attivare tale variabile o se posso avere dal terminale la conferma che il dato sia stato letto (ad esempio per azzerare la variabile registrata dopo la lettura).

    #37120
    Sergio Bertana
    Amministratore del forum

    L’oggetto registrazione dati (Data Sampling) permette di effettuare la registrazione si su base tempi che su evento trigger, in questo caso è possibile comandare da PLC la lettura dei dati da salvare nella registrazione. Occorre definire una variabile BOOL nell’area PLC a cui il terminale si connette per effettuare il trigger, si possono definire tre tipi di trigger.

    [OFF->ON] This will trigger data sampling when the status of assigned address changes from OFF to ON.
    [ON->OFF] This will trigger data sampling when the status of assigned address changes from ON to OFF.
    [ON<->OFF] Trigger data sampling when the status of assigned address is changed.

    Non c’è un tempo minimo definito per la gestione del trigger, occorre lasciare al terminale il tempo per acquisire il cambiamento di stato della variabile. Normalmente il terminale esegue la lettura delle variabili molto velocemente e quindi tempi di variazione superiori al secondo sono sicuramente sufficenti. Non vi è un feedback verso il PLC per confermare l’avvenuta acquisizione del trigger da parte del terminale.

    #37121
    Sergio Bertana
    Amministratore del forum

    Aggiungo una nota, se l’esigenza è di visualizzare un trend grafico con dati acquisiti in un ben preciso istante è possibile tramite l’oggetto Data Block Display creare nel PLC una tabella di valori e poi trasferirli tutti contemporaneamente nel terminale e visualizzarli in forma di trend grafico (Vedi post).

    #38162
    Sergio Bertana
    Amministratore del forum

    Ricevo da un cliente la richiesta per effettuare la registrazione di dati storici da trigger PLC, il cliente utilizza un nostro sistema SlimLine. Vista la sua difficoltà nell’ottenere il risultato desiderato ho realizzato un semplice programma dimostrativo.

    Il programma SlimLine (Stampa) acquisisce un valore di tensione e quando il valore si discosta più di 0.2 Volts dal valore precedente per un tempo viene gestita la storicizzazione sul terminale di 3 variabili (Numero evento, Valore tensione, Errore lettura). Per esemplificare tutte le possibilità del’oggetto Registrazione dati sul terminale, ho utilizzato variabili di diverso formato UINT e REAL e per allinearle ho inserito uno spazio Dummy tra di  loro.

    Il programma sul pannello (Screenshot) visualizza il valore in tensione acquisito e la tabella con i dati storici memorizzati. Attenzione per aggiornare la visualizzazione bisogna uscire e poi rientrare nella pagina di visualizzazione. Per facilitare la definizione degli indirizzi delle variabili sullo SlimLine da parte del terminale ho creato il file Tags.csv (Editabile con un comune editor) e tutte le variabili sono riferite alla loro definizione di Tag.

    Per evitare il problema del tempo minimo di attivazione del segnale di trigger ho definito sul terminale un trigger di tipo OFF<−>ON, in questo modo ad ogni variazione del livello del segnale si ha la memorizzazione del dato, Download programmi SlimLine e HMI.

    #38165
    Anonimo
    Inattivo

    Ciao a tutti, sto utilizzando la funzione di registrazione dati per registrare alcune variabili di processo. Il sistema funziona correttamente ma ho notato scaricando i dati che ogni giorno i record salvati terminano qualche ora prima dello spegnimento della linea di produzione.

    Dalla documentazione vedo che il pannello salva i dati quando si raggiungono almeno i 4kb, quindi l’ipotesi è che venga tolta l’alimentazione prima che vengano salvati i dati e quindi vanno persi. Qualcuno sa se esiste una funzionalità da attivare per fare in modo che vengano salvati i dati ad ogni poweroff ?

    #38166
    Sergio Bertana
    Amministratore del forum

    E’ possibile attivando il bit LB 9034 forzare il salvataggio dei dati, quindi puoi ad esempio nella Common Windows inserire un oggetto Imposta Bit periodo con un tempo a tuo piacere che setta ad 1 il bit LB 9034 forzando così il salvataggio. In questo modo allo spegnimento impianto avresti scoperto solo il tempo dall’ultimo salvataggio.

    #38167
    Anonimo
    Inattivo

    Si è la soluzione a cui avevo pensato inizialmente, però anche forzando un salvataggio ogni minuto in solo un anno supererei le 200000 scritture, un pò tante per la flash. Non mi resta che legarla ad un evento esterno e fare in modo che l’alimentazione del pannello resti su per uno o due secondi dopo tale evento.

    #38168
    Anonimo
    Inattivo

    Sì, l’utilizzo della LB 9034, inizialmente mi sembrava una soluzione ma anche facendo salvataggi periodici ogni due minuti mi ritroverei nel giro di un anno a eseguire più di 100000 scritture, che per una flash è già un numero critico.

    #38169
    Sergio Bertana
    Amministratore del forum

    Ho clienti che hanno utilizzato la tecnica dell’attivazione del bit di comando memorizzazione già da qualche anno e tutto stà funzionando senza problemi. Nel calcolo del numero di cicli di scrittura devi tenere conto che il file storico aumenta di dimensione ad ogni scrittura e cambia ad ogni giorno quindi non vai sempre a scrivere sulle stesse celle di memoria FLASH.

    Per il calcolo del numero di cicli devi rifarti alla scrittura sulla stessa cella, se non vi sono dati da scrivere tu comandi la scrittura ma il terminale non scrive nulla. E se per esempio sovrascrivi i dati ogni 30 giorni (Giorni di preservazione impostato a 30) avrai la riscrittura delle  stesse celle ogni 30 giorni e non ogni minuto.

    #38609
    Roberto
    Partecipante

    Ho scaricato e installato la nuova versione di EBpro v5.00.01, trovando da subito una grossa limitazione per la mia applicazione, la quale mi ha costretto a ritornare alla vecchia cara V04.10.06

    Praticamente la registrazione dati (Nell’oggetto Data Sampling Object) viene limitata a file con estensione .dtl a soli 4Mb anche se la registrazione avviene su porta USB (indipendentemente dalla dimensione della periferica collegata alla porta). Praticamente nella finestra principale dell’Data Sempling Object, una volta inseriti i primi Data Record, viene visualizzato un messaggio con asterisco, dove viene indicato proprio il limite massimo di 4Mb.

    I file fino ad ora utilizzati dalle mie registrazioni dati sono di circa 14Mb (file giornalieri). Sa se esiste una forzatura (impostazione) per la nuova versione in modo da ovviare a questo grande vincolo ?

    #38610
    Sergio Bertana
    Amministratore del forum

    Hai messo il dito in una piaga mai rimarginata, anche nella versione precedente vi era il limite dei 4Mb ma era un limite che appariva solo sul manuale ed il terminale solitamente non legge i manuali.

    Nella versione attuale è stata aggiunta la possibilità di definire a piacere il nome del file di log e anche di poter suddividere il log in frazioni di giorno, quindi fare anche più di un log al giorno. Con queste modifiche Weintek ha anche visualizzato il limite di 4Mb sul file *.dtl (Screenshot).

    Ora la domanda è i 14 Mb che tu citi sono la dimensione del file *.dtl oppure del file *.csv ricavato dal file *dtl con l’oggetto backup dati ? Perchè il file *dtl è un file compresso e può essere che da 4Mb se ne ottengano oltre 14Mb in *.csv.

    Non ne ho la certezza, ma può essere che la registrazione dati funzioni anche con file maggiori di 4Mb, così come faceva prima, l’avvertimento è stato messo per sicurezza ma ancora una volta non viene controllato.

    Ti ricordo che ora con  la nuova versione puoi dividere la registrazione giornaliera in più files riducendo la dimensione del singolo file ai 4Mb del limite.

    #38613
    Roberto
    Partecipante

    Praticamente quando ho effettuato il download del progetto al pannello HMI con la nuova versione, il file giornaliero .dtl era a circa 6Mb e con la nuova versione ha bloccato la scrittura delle variabili nel file log.

    L’idea è quella di registrare le variabili principali (circa 60) su di un file log ad ogni secondo per poi essere utilizzato come file storico in caso sia necessario effettuare un troubleshoting a seguito di un problema.

    Avere il file giornaliero spezzettato di certo aiuta a bypassare il limite dei 4Mb, ma può diventare un ostacolo in caso di dover analizzare i dati raccolti.

    #38621
    Sergio Bertana
    Amministratore del forum

    Nelle vacanze Weintek ha fatto i compiti mi ha fornito una nuova versione del firmware da trasferire sul terminale per bypassare il limite del 4Mb. Ti invio in privato il file gui.e30 da sostituire all’analogo file presente nella cartella di installazione di EasyBuilderPro “..EBprofirmware”. Poi dovrai eseguire il download del tuo progetto sul terminale attivando il tick di  upgrade del firmware.

Stai visualizzando 15 post - dal 1 a 15 (di 15 totali)
  • Devi essere connesso per rispondere a questo topic.