bit61 Posted February 29, 2012 Report Share Posted February 29, 2012 Ciao a tutti,dovrei realizzare un contaore su PLC siemens S7 1200 CPU 1214C che immagazzina il tempo di funzionamento dell'uscita "Q0.0" (che comanda un pompa) nell'arco delle 24 ore e al cambio del giorno invia il tempo di funzionamento in un file sul pc e si resetta per il giorno successivo.RingraziandoVi anticipatamente del vostro prezioso contributo vi auguro un buon lavoro Link to comment Share on other sites More sharing options...
Lucky67 Posted March 1, 2012 Report Share Posted March 1, 2012 (edited) Cos'è una richiesta di offerta? :devlish: Edited March 1, 2012 by Lucky67 Link to comment Share on other sites More sharing options...
Livio Orsini Posted March 1, 2012 Report Share Posted March 1, 2012 Esplicita meglio la tua richiesta di aiuto. Link to comment Share on other sites More sharing options...
bit61 Posted March 1, 2012 Author Report Share Posted March 1, 2012 Grazie Livio, vediamo se riesco a spiegarmi meglionell'impianto in questione mi chiedono di contare il tempo di funzionamento di una pompa e di visualizzare la variabile sul pc che fa da supervisione e creare un file storico giornaliero. Link to comment Share on other sites More sharing options...
batta Posted March 2, 2012 Report Share Posted March 2, 2012 nell'impianto in questione mi chiedono di contare il tempo di funzionamento di una pompa e di visualizzare la variabile sul pc che fa da supervisione e creare un file storico giornaliero.Questo si era quasi capito anche dal primo post.Quello che invece non si capisce è in cosa hai bisogno di aiuto: nel creare il contaore nel PLC, nell'inviare e resettare il dato al cambio del giorno o nello storicizzare il dato una volta che questo è nel PC?E, se il problema è la storicizzazione del dato, dovresti almeno farci sapere che sistema stai usando, non credi? Link to comment Share on other sites More sharing options...
bit61 Posted March 2, 2012 Author Report Share Posted March 2, 2012 Hai ragione,quello di cui ho bisogno è creare il contaore nel plc e nell'inviare il dato al cambio del giornoGrazie 1000 Link to comment Share on other sites More sharing options...
Livio Orsini Posted March 2, 2012 Report Share Posted March 2, 2012 Cioè in pratica (quasi) tutto il lavoro. per il contaore, proprio per gestione pompe, se fai una ricerca nelle sezioni S7-200 e S7-300 trovi molte soluzioni.Quella più comune consiste nel leggere l'orologio di sistema all'avvio della pompa, memorizzandone il valore; allo spegnimento della stessa si rilegge l'orologio e per diferenza si calcola il tempo di funzionamento, tempo che andrà sommato alla variabile associata alla pompa.Per l'invio al cambio del giorno, se si presume che l'impiato lavori 24/24, si deve decidere quale tolleranza sia ammessa ed usare questo valore per interrogare l'orologio di sistema. Si può però fare le cose un poco più sofisticate e risparmiare molte interogazioni. Però qnche questo dipende dal tuo grado di confidenza con il PLC e dalle specifiche della macchian. Link to comment Share on other sites More sharing options...
batta Posted March 2, 2012 Report Share Posted March 2, 2012 Si può seguire anche un'altra strada.Nella configurazione hardware imposti l'indirizzo del byte dei merker di clock.Nel programma rilevi il fronte di salita del merker con frequenza 1 Hz (Mxxx.5).Il risultato lo appoggi ad un merker che sarà alto per una scansione ogni secondo.Utilizzi questo merker per incrementare un contatore su una DINT se l'uscita è alta.Otterrai così, con pochissime e semplici istruzioni, un contasecondi di funzionamento.Con una DINT puoi contare secondi per oltre 68 anni (il doppio se la consideri come UDINT).Rimane poi il problema della registrazione e reinizializzazione del dato alla mezzanotte.Questo lo puoi fare da PC (se è sempre acceso), o da PLC.Per farlo da PLC dovrai, ovviamente, gestire l'orologio di sistema del PLC stesso.Per prima cosa, dovrai assicurarti che l'orologio di sistema sia impostato correttamente, ed eventualmente correggerlo.Per fare questo puoi utilizzare le istruzioni RD_SYS_T (oppure RD_LOC_T) per leggere data e ora di sistema, e WR_SYS_T per l'impostazione.Il dato da utilizzare con queste funzioni è in formato DTL.Se dichiari una variabile in formato DTL automaticamente viene creata la struttura di 12 byte contenente anno, mese, giorno, giorno della settimana, ora, minuto, secondo, nanosecondi.Con un'interrogazione ciclica dell'orologio di sistema (potrebbe essere una volta al minuto), estrai dalla variabile il giorno (Var_DTL.DAY).Lo confronti col giorno dell'ultima registrazione e, se è diverso, memorizzi il valore corrente del contaore in una variabile che il PC andrà a registrare su file, azzeri il contaore e aggiorni il giorno dell'ultima registrazione per il successivo controllo.E' più complicato a dirsi che a farsi. Link to comment Share on other sites More sharing options...
bit61 Posted March 5, 2012 Author Report Share Posted March 5, 2012 Grazie Batta, la parte del contaore fatta e funzionante, ora devo solo far si che mi trasferisca il dato nel PC Link to comment Share on other sites More sharing options...
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