Passa al contenuto principale

TOF – Timer Off

Descrizione​

Questo blocco funzione esegue la temporizzazione sulla disattivazione, attivando l'ingresso IN l'uscita Q si attiva immediatamente ed il tempo in uscita ET si azzera. Disattivando l'ingresso IN inizia il conteggio e dopo il tempo definito PT, si disattiva l'uscita Q.

Sulla uscita ET viene ritornato il tempo trascorso dalla disattivazione dell'ingresso.

Se ingresso IN si disattiva per un tempo inferiore al tempo impostato in PT non si disattiva uscita Q.

FB TOF timing diagram

Sostituisce eTOF

Gli oggetti obsoleti sono inseriti nella libreria eLLabObsoleteLib fare riferimento al relativo manuale ed al manuale programmazione in formato pdf.

Sostituisce il FB eTOF modificando il tipo di PT ed ET da UDINT a TIME.

Parametri​

ParametroTipoDescrizione
INBOOLIngresso del timer. Quando viene attivato, l'uscita Q si attiva immediatamente e ET viene azzerato. Quando viene disattivato, inizia il conteggio.
PTTIMETempo preimpostato. Definisce il ritardo tra la disattivazione di IN e la disattivazione di Q.
QBOOLUscita del timer. Si attiva con IN e si disattiva dopo il tempo impostato in PT dalla disattivazione di IN.
ETTIMETempo trascorso dalla disattivazione di IN. Si azzera quando IN viene attivato e il conteggio si arresta al raggiungimento di PT.

Schema del blocco funzione TOF

Compatibilità e sostituzione di eTOF​

Il blocco funzione TOF sostituisce il precedente blocco eTOF, modificando il tipo dei parametri PT ed ET da UDINT a TIME.

Esempio di conversione​

La precedente dichiarazione:

OnDelay(IN := OffDelay.Q, PT := 500); // Ritardo di attivazione

diventa:

OnDelay(IN := OffDelay.Q, PT := T#500ms); // Ritardo di attivazione

Gli oggetti obsoleti sono disponibili nella libreria eLLabObsoleteLib – Oggetti obsoleti.

Per ulteriori informazioni, consulta i manuali:

Approfondimenti​

Esempi​

Per informazioni su come utilizzare gli esempi, consulta la guida Come utilizzare gli esempi.

L'esempio seguente gestisce il lampeggio della variabile LPBlink utilizzando due timer:

  • OffDelay: determina il tempo durante il quale la variabile rimane spenta, impostato a 2 secondi.
  • OnDelay: determina il tempo durante il quale la variabile rimane accesa, impostato a 500 ms.

LogicLab – LD_TOF​

Progetto: Ptp115

Programma LD_TOF

LogicLab – IL_TOF​

Progetto: Ptp115

Dichiarazione delle variabili​

PROGRAM IL_TOF
VAR
LPBlink : BOOL; (* Blink lamp *)
OffDelay : TON; (* Off time delay *)
OnDelay : TOF; (* On time delay *)
END_VAR

Implementazione​

(* BLINK VARIABLE *)

LDN LPBlink
ST OffDelay.IN

LD T#2s
ST OffDelay.PT
CAL OffDelay

LD OffDelay.Q
ST OnDelay.IN

LD T#500ms
ST OnDelay.PT
CAL OnDelay

LD OnDelay.Q
ST LPBlink
LogicLab – ST_TOF (Ptp115)
PROGRAM ST_TOF
VAR
LPBlink : BOOL; (* Blink lamp *)
OffDelay : TON; (* Off time delay *)
OnDelay : TOF; (* On time delay *)
END_VAR

// BLINK VARIABLE

// Ritardo con variabile spenta.
OffDelay(IN := NOT(LPBlink), PT := T#2s);

// Ritardo con variabile accesa.
OnDelay(IN := OffDelay.Q, PT := T#500ms);

// Aggiorna la variabile di lampeggio.
LPBlink := OnDelay.Q;