TP
Bloco temporizador de tempo ligado. Quando a entrada IN ficar ativa (transição de subida), temporiza um tempo PT, mantendo a saida Q ativa durante a temporização.
Bloco
TP
+-----+
IN----|> |---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 desejado para temporização |
|
Q |
Saída |
BOOL |
FALSE |
Saida de fim de temporização |
|
ET |
Saída |
TIME |
T#0ms |
Tempo transcorrido na temporização |
Quando ocorre uma transição de subida na entrada IN o temporizador é ativado, iniciando a contagem do tempo programado em PT. Durante a contagem do tempo a saida Q permanece ativa, e o tempo transcorrido é atualizado em ET.
Uma vez iniciada a contagem a mesma não pode ser interrompida. Deste modo, qualquer mudança de estado na entrada IN durante a contagem não tem efeito, não interrompendo a contagem corrente.
Ao término da contagem, a saída Q fica inativa, e o tempo ET assumi o tempo total transcorrido, neste caso, o tempo equivalente ao programado no paramêtro de entrada PT. Nesta condição, se a entrada IN ficar inativa o tempo ET é zerado.
Diagrama de Tempo
+--------+ +-+ +----------+ ++ ++
IN | | | | | | || ||
--+ +--------+ +--------+ +-----++-+++-----
t0 t1 t2 t3 t4 t5 t6 t7
+----+ +----+ +----+ +----+
Q | | | | | | | |
--+ +---+--------+ +-----+ +-----+-----+ +-----
t0 t0+PT t1 t2 t2+PT t4 t4+PT t5 t6 t6+PT
t0+PT t1 t2+PT t4+PT t5
PT +---+ + +-----+ +
: / | /| / | /|
ET : / | / | / | / |
: / | / | / | / |
: / | / | / | / |
0-+ +--------+ +-----+ +-----+ +------
t0 t1 t2 t4 t5 t6 t7
Detalhes:
Nos tempos t0, t2, t4 e t6 ocorre uma transição de subida da entrada “IN”, iniciando a contagem.
No tempo t3 ocorre uma transição de descida da entrada “IN”, mas o bloco já está com a contagem ativa, não interrompendo a contagem corrente.
Nos tempos t0+PT, t2+PT, t4+PT e t6+PT ocorre o término da contagem, fazendo saida “Q” inativa.
Nos tempos t1, t2+PT, t5 e t6+PT, já ocorreu o término da contagem, e como a entrada “IN” está inativa zera “ET”.
Exemplo
Declaração de Variáveis
Nome |
Tipo |
Descrição |
|---|---|---|
inp_IN |
BOOL |
Entrada IN |
inp_PT |
TIME |
Entrada PT |
my_TP |
TP |
Instância do bloco TP |
Código ST
(* Exemplo de ativação do bloco TP dentro da POU *)
(* ... *)
inp_IN := true; (* parametro de entrada: Habilita temporizador *)
inp_PT := T#30s; (* parametro de entrada: Inicializa tempo de contagem *)
my_TP(IN := inp_IN, PT := inp_PT); (* Ativação da instancia do bloco TP *)
if (inp_IN = TRUE) AND (my_TP.Q = FALSE) then (* testa se tempo expirou via saida Q do bloco TP *)
(* trata tempo TP expirado *)
(* ... *)
end_if;
(* ... *)