Vai al contenuto
Vai all indice del manuale di programmazione

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.

// La precedente dichiarazione:

    OnDelay(IN:=OffDelay.Q, PT:=500); //On time delay

// Diventa:

    OnDelay(IN:=OffDelay.Q, PT:=T#500ms); //On time delay
Approfondimenti
  • In questo topic sono riportate informazioni sul formato TIME

Descrizione

IN (BOOL) Ingresso timer, attivandolo l’uscita Q si attiva immediatamente ed il tempo in uscita ET si azzera. Disattivandolo inizia il conteggio e dopo il tempo definito in PT, si disattiva l’uscita Q.

PT (TIME) Preset tempo, definisce il tempo di ritardo dalla disattivazione dell’ingresso IN alla disattivazione dell’uscita Q.

Q (BOOL) Uscita timer, si attiva su attivazione ingresso IN, e si disattiva dopo il tempo definito in PT dalla disattivazione dell’ingresso IN.

ET (TIME) Tempo timer, si azzera su attivazione ingresso IN ed inizia conteggio da disattivazione ingresso IN. Raggiunto tempo impostato in PT si arresta conteggio.

Immagine FB TOF

Esempi

Come utilizzare gli esempi.
Riportiamo un esempio che gestisce il lampeggio della variabile LPBlink, sono utilizzati 2 timers uno per determinare il tempo in cui la variabile è spenta (Settato ad 2 secondi) ed uno per determinare il tempo in cui la variabile è accesa (Settato a 500 mS).

LogicLab (Ptp115, LD_TOF)
PROGRAM LD_eTON
VAR
    LPBlink : BOOL; (* Blink lamp *)
    OffDelay : TON; (* Off time delay *)
    OnDelay : TOF; (* On time delay *)
END_VAR
Immagine programma LD_TOF
LogicLab (Ptp115, IL_TOF)
PROGRAM IL_TOF
VAR
    LPBlink : BOOL; (* Blink lamp *)
    OffDelay : TON; (* Off time delay *)
    OnDelay : TOF; (* On time delay *)
END_VAR

(* ************************************************************************** *)
(* PROGRAM "IL_eTOF"                                                          *)
(* ************************************************************************** *)
(* This program manages the blink of a variable.                              *)
(*  ------------------------------------------------------------------------- *)

    (* ---------------------------------------------------------------------- *)
    (* BLINK VARIABLE                                                         *)
    (* ---------------------------------------------------------------------- *)

    LDN LPBlink (* Blink lamp *)
    ST  OffDelay.IN

    LD  T#2s
    ST  OffDelay.PT (* Set the delay time *)
    CAL OffDelay (* Call the function block *)

    LD  OffDelay.Q
    ST  OnDelay.IN

    LD  T#500ms
    ST  OnDelay.PT (* Set the delay time *)
    CAL OnDelay (* Call the function block *)

    LD  OnDelay.Q
    ST  LPBlink (* Blink lamp *)

(* [End of file] *)
LogicLab (Ptp115, ST_TOF)
PROGRAM ST_TOF
VAR
    LPBlink : BOOL; (* Blink lamp *)
    OffDelay : TON; (* Off time delay *)
    OnDelay : TOF; (* On time delay *)
END_VAR

// *****************************************************************************
// PROGRAM "ST_TOF"
// *****************************************************************************
// This program manages the blink of a variable.
// -----------------------------------------------------------------------------

    // -------------------------------------------------------------------------
    // BLINK VARIABLE
    // -------------------------------------------------------------------------
    // Delay with variable Off.

    OffDelay(IN:=NOT(LPBlink), PT:=T#2s); //Off time delay
    OnDelay(IN:=OffDelay.Q, PT:=T#500ms); //On time delay
    LPBlink:=OnDelay.Q; //Blink lamp

// [End of file]
Was this article helpful?