Temporizadores - Timers

Previous  Top  Next



Os Temporizadores (ao lado dos Contadores - Counters, das Bobinas e Contatos de Relés e dos Comandos de Seqüência) são um dos principais componentes de um PLC, atuando como cronômetros no sistema, medindo o tempo de ocorrência dos eventos associados ao controle.

Há, na LCE, quatro tipos de temporizadores, que são mapeados, respectivamente, para as instruções IL TON
, TONR, TOF e TOFR: (Obs.: esta TOFR não é implementada no STEP 7)

   1. Temporiza (cond)
:

      quando
(cond) temporiza T0 3 s;

No exemplo acima, a variável doubleword T0 (
variável de temporização) marca, em ms
, o tempo (que pode vir na instrução em ms - milissegundos, s - segundos, min - minutos ou h - horas) decorrido desde o instante em que a condição cond tornou-se verdadeira pela última vez (ou desde que o fluxo de energia passou pela instrução pela primeira vez depois que o controle entrou no modo run, se cond já começou verdadeira). Se cond for falsa, T0 permanece em 0. Se cond tiver sido verdadeira e voltar a ser falsa, T0 volta a ficar em 0, desligando/resetando a variável bit (0/1 - liga/desliga) associada a T0.

Quando T0
atingir o valor do tempo preset, o segundo parâmetro (3 s, no exemplo acima), a variável bit associada a T0 será ligada (ou setada em 1 - verdadeiro), mas T0 continuará marcando o tempo, como se nada tivesse acontecido. Quando cond voltar a ser falsa, a variável bit T0 voltará ao seu estado original desligado (ou resetada em 0 - falso) e T0 será zerada, ficando congelada em zero, sem marcar mais o tempo, até que cond volte a ser verdadeira.

Diagrama de Funcionamento


       diagrama temporizador

Obs.: a forma com que se usa a variável T0
definirá se se trata da doubleword (comparações, atribuições ou operações matemáticas) ou bit (operações lógicas de bit), conforme exemplificado no diagrama abaixo, onde cond = I0.0:

         timerton

   2. Temporiza_acumula (cond):


      quando
(cond) temporiza_acumula T0 3 s;

Funciona como o anterior, com a diferença que quando cond voltar a ser falsa depois que a variável bit T0 for ligada, esta T0 não voltará ao seu estado original desligado e a doubleword T0 não será zerada, guardando o valor do tempo decorrido até este momento e recomeçando a temporização a partir desse valor quando cond voltar a ser verdadeira. Ou seja, ele acumula o tempo em que cond é verdadeira.

Para que a variável bit T0
volte ao seu estado original desligado, deve-se programar no controle um comando
reset ou desliga com T0 como parâmetro (reset T0; ou desliga T0;).

Diagrama de Funcionamento


       diagrama temporizador acumulado
   

   3. Temporiza (não cond):


      quando_não
(cond) temporiza T0 3 s;

No exemplo acima, quando cond passar de falsa para verdadeira a variável bit associada a T0 será ligada. A variável doubleword T0 marca o tempo decorrido desde o instante em que a condição cond passou de verdadeira para falsa pela última vez. Se cond voltar a ficar verdadeira, T0 volta a ficar em zero, mas a variável bit associada a T0 continuará ligada.

Quando T0
atingir o valor do tempo preset: o segundo parâmetro (10 s, no exemplo acima), a variável bit associada a T0 é desligada e em T0 o tempo marcado ficará congelado, mas quando cond passar de falsa para verdadeira a variável bit T0 voltará ao seu estado ligado e a variável doubleword T0 será zerada.

Diagrama de Funcionamento


      diagrama temporizador not


   
4. Temporiza_acumula (não cond):

      quando_não
(cond) temporiza_acumula T0 3 s;

Funciona como o anterior, com a diferença que quando cond voltar a ser verdadeira depois que a variável bit T0 for desligada, esta T0 não voltará a ficar ligada e a variável doubleword T0 não será zerada, guardando o valor do tempo decorrido até este momento e recomeçando a temporização a partir desse valor quando cond voltar a ser falsa. Ou seja, ele acumula o tempo em que cond é falsa.

Para que a variável bit T0
volte a ficar ligada, deve-se colocar no programa um comando
desliga com T0 como parâmetro (desliga T0; ou reset T0;), para voltar o temporizador ao seu estado inicial com T0 em zero e, então, quando cond passar de falsa para verdadeira, a variável bit associada a T0 será ligada.

Diagrama de Funcionamento


       diagrama temporizador acumulado not


Obs
. 1: a resposta à atuação das entradas pode demorar até um ciclo de scan, embora tal demora não esteja representada nos diagramas acima.

Obs
. 2: a variável de temporização deve ter, necessariamente, a forma Tn, onde n pode variar de 0 a 511.


Sinônimos
:    quando: when;
         
temporiza: temporize;
         
quando_não: when_not;
         
temporiza_acumula: temporize_accumulate