Vai al contenuto

Visualizzazione ore di funzionamento ed allarmi su HMI

Home Forum Discussioni su problematiche generali Visualizzazione ore di funzionamento ed allarmi su HMI

Stai visualizzando 4 post - dal 1 a 4 (di 4 totali)
  • Autore
    Post
  • #35724
    Fabio Tonini
    Partecipante

    In un sistema SlimLine compact con HMI Weintek mi chiedono di:

    1) Visualizzare sul terminale le ore di funzionamento di 4 uscite diverse (elettrovalvole), con mantenimento dei valori allo spegnimento del sistema ed azzeramento dei valori tramite tasto.

    2) Gestione degli allarmi, reset e visualizzazione su HMI.

    Potete indicarmi quale è la soluzione migliore per procedere.

    #38701
    Sergio Bertana
    Amministratore del forum

    I modi in cui procedere sono molteplici, e sono dettati solo dalla fantasia del programmatore, credo che nel forum vi siano già spunti su cui basarsi ma volendo darti una traccia precisa, molto schematicamente ho realizzato un relè Passo/Passo di comando di una uscita logica.

    Se l’uscita è attiva viene eseguito un conteggio del tempo (In secondi) e il valore del tempo è visualizzato su di un pannello operatore. Come vedi dal programma (Screenshot) il comando Passo/Passo (Topic) opera sulla variabile Cmd che è definita RETAIN in questo modo il suo stato è mantenuto allo spegnimento.

    Per il conteggio del tempo viene utilizzata la variabile HourCount di tipo REAL allocata nella DB100.2048 che è un’area RETAIN ed è accessibile da terminale HMI via Modbus (Comando 3x address 41024). Inutile dire che per il reset del contaore basterà su comando eseguire un MOVE del valore 0 nella variabile HourCount.

    Nel programma del terminale per la visualizzazione del contaore utilizzo un oggetto di introduzione numerica a cui associo una funzione di scalatura che divide per 3600 (Topic). Naturalmente la visualizazione sarà espressa in ore con due o più cifre decimali che rappresentano i decimi di ora e non i minuti ed i secondi. Ti allego il progetto del programma SlimLine e terminale HMI per il download.

    La gestione degli allarmi è ampiamente trattata in questo topic.

    #38704
    Anonimo
    Inattivo

    Dovrei fare una modifica di programma sui due sistemi SlimLine di gestione stazione pompaggio. Mi hanno chiesto di fare un contatore per il funzionamento del PLC che gestisca una variabile acquisibile da Modbus che si incrtementi di una unità ogni secondo e che si resetti ogni qualvolta il PLC si spenga.

    Pensavo di inserire queste modifiche (Screenshot) che sembrano funzionare. Unico dubbio è: a quanto arriva il valore della variabile HMIVars.Tempo ?

    #38705
    Sergio Bertana
    Amministratore del forum

    La tua soluzione dimostra come vi siano diverse soluzioni allo stesso problema, tu per fare il contaore hai scomodato Timer e Counter. Sinceramente ti consiglio di utilizzare la soluzione vista nel post precedente, utilizzando una semplice operazione di somma con la base tempi di 1 secondo già fornita dal sistema operativo (Ecco lo screenshot).

    Se la struttura HMIVars è allocata come credo nella DB100 per essere accessibile da Modbus ma ad indirizzi inferiori al 2048, si trova in un’area che non è ritentiva, quindi alla accensione del sistema riparte da “0”. In merito al valore massimo conteggiabile devi fare riferimento al range indicato per ogni tipo di variabile (Vedi tabella).

    Come vedi se la variabile HMIVars.Tempo è di tipo UINT il suo valore massimo è 65535 quindi poco più di 18 ore poi si azzera e riparte a contare da “0”. Se è di tipo UDINT (Ti consiglio questo) il suo valore massimo è 4294967295 poco più di 136 anni. Naturalmente per leggere una variabile UDINT (32 bits) da Modbus dovrai leggere due registri a 16 bits consecutivi.

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