dario.bu Inserito: 12 dicembre 2008 Segnala Inserito: 12 dicembre 2008 Ciao a tutti ho bisogno di un aiuto.Volevo sapere come fare per controllare per quanto tempo un ingresso mi sta a ON oppure ad OFF.Tutte le volte che lo stato del mio ingresso cambia, il timer ri-inizia a contare dal preset...quindi non è sufficiente.Immagino debba usare delle aree di memoria e dei ADD o MOV..non me ne intendo un grachè.Io devo fare una somma di quante ore e minuti,mettiamo nell'arco di due giorni,il mio ingresso sta ad ON o OFF.Vi ringrazio se potreste farmi qualche esempio.Grazie per la collaborazione
batta Inserita: 12 dicembre 2008 Segnala Inserita: 12 dicembre 2008 Per una cosa del genere il modo più semplice è creare un flag alto per una scansione una volta al secondo.Per la generazione di questo flag quasi tutte le cpu mettono a disposizione qualcosa.Se lavori con S7-300/400, per esempio, potresti utilizzare i merker di clock e rilevare il fronte di salita del merker con clock di 1 secondo; oppure potresti configurare OB35 a 1 secondo e gestire il tutto in OB35 (o in un FC richiamato in OB35).Una volta generato questo flag, quando è alto controlli lo stato dell'ingresso. Se è alto anche l'ingresso, incrementi una variabile.Se ti basta il conteggio in secondi, devi solo decidere se utilizzare una variabile INT o DINT, secondo il valore massimo che potrà raggiungere.Se vuoi la divisione in ore e minuti, puoi seguire due strade:1) Ogni volta che la variabile "Secondi" supera il valore 59, azeri la variabile "Secondi" ed incrementi di 1 la variabile "Minuti". Lo stesso fai con le variabili "Minuti" e "ore".2) Gestisci un conteggio solo in secondi (con una DINT ne hai per circa 68 anni) e dai secondi ricavi ore e minuti, usando le istruzioni /D (divisione con doppi interi) e MOD (resto della divisione).A mio avviso, il secondo metodo è solo alla prima apparenza più complicato, ma in realtà è più semplice.
Andrea_Aset Inserita: 19 marzo 2009 Segnala Inserita: 19 marzo 2009 CiaoSe vuoi ti posso inviare un contaore che ho creato io.E un fb scritto in scl che crea un db di istanza..Lo devi mettere nella cartella delle sorgenti e poi compilarloCiao Andrea
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora