TOF
Bloco temporizador que aguarda um tempo de retardo para desligar. Quando a entrada IN ficar inativa (transição de descida), temporiza um tempo PT antes de desativar a saida Q.
Bloco
TOF
+-----+
IN---o|> |---Q
| |
PT----| |---ET
+-----+
Parâmetros
Nome |
Classe |
Tipo |
Dim. |
V. Ini. |
Descrição |
IN |
Entrada |
BOOL |
FALSE |
Entrada de habilitação da temporização |
|
PT |
Entrada |
TIME |
T#0ms |
Tempo de atraso para desligar |
|
Q |
Saída |
BOOL |
FALSE |
Saida de fim de temporização |
|
ET |
Saída |
TIME |
T#0ms |
Tempo transcorrido na temporização |
|
STATE |
Local |
INT |
0 |
Estado interno do bloco de temporização |
|
START_TIME |
Local |
TIME |
T#0ms |
Timestamp associado ao inicio da temporização |
|
PREV_IN |
Local |
BOOL |
FALSE |
Quando ocorre uma transição de descida na entrada IN o temporizador é ativado, iniciando a contagem do tempo de atraso programado em PT. Durante a contagem do tempo de atraso a saida Q permanece ativa, e o tempo corrente transcorrido é atualizado em ET.
Uma vez iniciada a contagem do tempo de atraso para desligar, a mesma pode ser interrompida se passarmos o estado da entrada IN para ativa.
Ao término da contagem do tempo de atraso, a saída Q fica inativa, e o tempo ET assumi o tempo total transcorrido, neste caso, o tempo de atraso programado no paramêtro de entrada “PT”. Nesta condição, se a entrada IN ficar ativa o tempo ET é zerado e a saída Q fica ativa.
Diagrama de Tempo
+--------+ +---+ +------------+
IN | | | | | |
--+ +-------+ +---+ +---------
t0 t1 t2 t3 t4 t5
+-----------+ +-------------------------+
Q | | | |
---+ + +---+ + + + +----
t0 t1 t1+PT t2 t3 t4 t5 t5+PT
t1+PT t2 t5+PT
PT +---+ +----
: / | + /
ET : / | /| /
: / | / | /
: / | / | /
0-+-------+ +---+ +------------+
t0 t1 t2 t3 t4 t5
Detalhes:
Nos tempos t1, t3 e t5 ocorre uma transição de descida da entrada “IN”, iniciando a contagem.
No tempo t4 a entrada “IN” fica ativa antes de atingir o tempo de atraso PT, provocando a interrupção da contegam do tempo.
Nos tempos t0, t2 e t4 ocorre uma transição de subida da entrada “IN”, resetando a contagem.
Nos tempos t1+PT e t5+PT ocorre o término da contagem, fazendo saida Q inativa.
Exemplo
Declaração de Variáveis
Nome |
Tipo |
Descrição |
|---|---|---|
inp_IN |
BOOL |
Entrada IN |
inp_PT |
TIME |
Entrada PT |
my_TOF |
TOF |
Instância do bloco TOF |
Código ST
(* Exemplo de ativação do bloco TOF dentro da POU *)
(* ... *)
inp_IN := true; (* parametro de entrada: Habilita temporizador *)
inp_PT := T#30s; (* parametro de entrada: Inicializa tempo de contagem *)
my_TOF(IN := inp_IN, PT := inp_PT); (* Ativação da instancia do bloco TOF *)
if (my_TOF.Q = FALSE) then (* testa se tempo expirou via saida Q do bloco TOF *)
(* trata tempo TOF expirado *)
(* ... *)
end_if;
(* ... *)