Vai al contenuto
PLC Forum


Uso Di Timer O Contatori


Messaggi consigliati

Inserito:

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


Inserita:

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.

  • 3 months later...
Inserita:

Ciao

Se 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 compilarlo

Ciao Andrea

:rolleyes:

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 account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...