← a sala de CLP · CLP do zero · aula 03

O tempo que zera e a conta que não zera

O temporizador esquece tudo no instante em que a entrada abre. O contador lembra pra sempre, até alguém mandar esquecer. Os dois erros desta aula são o contrário um do outro.

começar

a receita, igual em toda aula

1 · o erro

O TON ligado direto no botão, e o contador sem reset.

2 · o porquê

Quando cada bloco conta, e quando ele zera.

3 · a correção

Uma memória antes do tempo, e uma linha de reset que solta.

4 · a prova

O simulador rodando, com o tempo e a conta dentro do bloco.

antes do erro

Três blocos que olham pro relógio e pra borda

Até aqui toda linha terminava numa bobina, que copia na hora o que chega nela. Os blocos desta aula são diferentes: eles têm memória por dentro. Nos nomes da norma IEC 61131-3, que quase todo fabricante segue:

No simulador, o TON, o TOF e o CTU ficam na última coluna, e o bit deles (T0, C0) vira contato em qualquer linha. O reset é uma bobina (R) numa linha própria, como no Allen-Bradley; no bloco da Siemens e da norma, o R é uma entrada do próprio contador. A ideia é a mesma.

E um detalhe do ciclo da aula 00: o tempo só anda de varredura em varredura. Com uma varredura de 10 ms, um TON de 5 s fecha entre 5,00 e 5,01 s. Pra segundos, não faz diferença; pra milissegundos, faz.

03a O temporizador ligado no botão

TON · entrada mantida × pulso · memória com selo

1 · o erro

Uma esteira comprida precisa avisar antes de partir: quem aperta o S1 faz a sirene H1 tocar por 5 s, e só depois a esteira K1 liga. É uma exigência da NR-12 pra máquina grande ou pra um conjunto que parte num comando só:

O acionamento e o desligamento simultâneo por um único comando de um conjunto de máquinas e equipamentos ou de máquinas e equipamentos de grande dimensão devem ser precedidos da emissão de sinal sonoro ou visual.

NR-12, item 12.4.10 · os 5 s são uma escolha desta aula: a norma não dá o tempo

Quem está começando põe o botão direto no temporizador:

linha 1   ──┤ ├ S1 I0.1 ─────────────────────[TON T0 5 s]
linha 2   ──┤ ├ S1 I0.1 ──┤/├ T0 ───────────────( ) H1 Q0.1
linha 3   ──┤ ├ T0 ──────┤ ├ S0 I0.0 ───────────( ) K1 Q0.0

O operador dá um toque no S1, como em qualquer botão de partida. A sirene dá um bipe e cala. A esteira não liga. Segurando o botão 5 s ela liga — e para no instante em que ele solta.

2 · o porquê

O TON só conta enquanto a linha dele está energizada. O botão de pulso fica fechado o tempo do dedo — uns 0,3 s — e abre:

tempo        0 s        0,3 s          5 s
S1           1          0              0
TON  IN      1          0              0
     ET      0,0 s  →   0,3 s  → zera  0,0 s
     Q (T0)  0          0              0      →  a esteira nunca liga

Não é defeito do temporizador: é pra isso que o TON serve. Ele responde a pergunta “a entrada ficou ligada o tempo todo por 5 s?”. Um sensor que precisa ver a peça parada 2 s antes de liberar a prensa quer exatamente isso. Um toque de botão, não.

3 · a correção

O toque vira uma memória com selo — o mesmo selo da aula 02, só que numa memória M em vez da bobina do motor. É a memória que fica ligada o tempo todo, e é ela que vai no temporizador:

linha 1   ──┬──┤ ├ S1 I0.1 ──┬──┤ ├ S0 I0.0 ────( ) M0.0   partida pedida
            └──┤ ├ M0.0 ─────┘
linha 2   ──┤ ├ M0.0 ────────────────────────[TON T0 5 s]
linha 3   ──┤ ├ M0.0 ──┤/├ T0 ───────────────( ) H1 Q0.1   sirene
linha 4   ──┤ ├ T0 ──────────────────────────( ) K1 Q0.0   esteira

M0.0 = S0 · (S1 + M0.0)

O S0 derruba a memória, o TON zera e a esteira para. E, como a memória é comum, numa falta de energia ela se perde: a esteira não volta sozinha — a aula N2 mostra por que isso importa.

Um cuidado: a sirene é aviso, não proteção. Ela não substitui a parada de emergência nem as proteções da esteira, que continuam valendo como na aula N1.

4 · a prova

No , dê um toque no S1 e olhe o bloco TON na linha 1: o tempo sobe um pouco e volta pra 0,0. Depois segure 5 s, e solte. No , um toque só: a sirene toca, o tempo anda sozinho até 5,0 e a esteira parte.

a sirene antes da partida vem do item 12.4.10 e dos sinais de aviso do 12.12.6 da NR-12; o TON ligado no botão é tropeço clássico, montado para esta aula. Eu ainda não tenho um CLP físico: a prova roda no simulador do site.

03b O contador que não volta a zero

CTU · borda de subida · reset por nível

1 · o erro

No fim da esteira, as peças caem numa caixa. O sensor B1 vê cada peça cair; com 5 na caixa, a esteira K1 para e acende H1, “caixa cheia”. O sensor B2 diz se tem caixa no lugar.

linha 1   ──┤ ├ B1 I0.0 ─────────────────────[CTU C0 5]
linha 2   ──┤ ├ B2 I0.1 ──┤/├ C0 ────────────( ) K1 Q0.0
linha 3   ──┤ ├ C0 ──────────────────────────( ) H1 Q0.1

A primeira caixa enche direitinho. O operador tira a caixa cheia e põe uma vazia. A esteira não volta, e o H1 continua dizendo “caixa cheia”.

Aí vem a primeira ideia de conserto: zerar o contador “quando a caixa nova chega”.

linha 2   ──┤ ├ B2 I0.1 ─────────────────────( R ) C0

Agora a esteira volta — e não para mais. A conta fica em zero, e a caixa transborda.

2 · o porquê

São dois erros, um de cada lado:

  • sem reseto contador não zera sozinho ao chegar no PV. A conta fica em 5 (e continua subindo, se cair mais peça), o bit C0 fica em 1, e o contato ┤/├ C0 da esteira fica aberto pra sempre.
  • reset presoo contador conta a borda da entrada; o reset age pelo nível. O B2 fica em 1 o tempo todo em que a caixa está no lugar, então a linha 2 zera o contador em toda varredura. A peça cai, a conta vai a 1 na linha 1, e a linha 2 apaga antes de chegar no borne — a regra da aula 00, de novo. No bloco CTU da norma é igual: enquanto o R está em 1, ele manda.
reset preso, com a caixa no lugar

  fase 1    foto:  B1 = 1 (a peça caiu) · B2 = 1
  linha 1   subida do B1  →  C0 conta 1
  linha 2   B2 = 1        →  reset: C0 volta a 0
  fase 3    K1 = 1 · H1 = 0      e assim a cada peça, até transbordar
3 · a correção

O reset tem que soltar enquanto se conta. O momento certo de zerar é quando a caixa sai: sem caixa, não tem o que contar, e o reset preso ali não atrapalha ninguém.

linha 1   ──┤ ├ B1 I0.0 ─────────────────────[CTU C0 5]
linha 2   ──┤/├ B2 I0.1 ─────────────────────( R ) C0     zera sem caixa
linha 3   ──┤ ├ B2 I0.1 ──┤/├ C0 ────────────( ) K1 Q0.0
linha 4   ──┤ ├ C0 ──────────────────────────( ) H1 Q0.1

Outro jeito comum é um botão “caixa trocada” no reset. Funciona igual, desde que seja de pulso: um botão com trava faria o mesmo estrago do B2.

4 · a prova

Ponha a caixa no lugar (B2) e toque o B1 cinco vezes, olhando a conta dentro do bloco CTU. Tire a caixa e ponha de novo. No a esteira não volta; no a conta nem sai do zero; no a caixa enche, para, e recomeça. Em passo a passo, no ②, dá pra ver a conta ir a 1 na linha 1 e voltar a 0 na linha 2.

os dois erros do contador são tropeços clássicos, montados para esta aula. Eu ainda não tenho um CLP físico: a prova roda no simulador do site.

sua vez

O ventilador que fica mais um pouco

Um motor grande tem ventilação separada: o ventilador K2 liga junto com o motor e continua girando 5 s depois que o motor para, pra tirar o calor que ficou. A partida com selo já está pronta. Toque em ✎ editar o programa e complete as duas linhas: o site confere o seu programa em oito situações, com o tempo passando.

uma dica, se travar

“Liga na hora, desliga depois” é o TOF. A entrada dele pergunta pelo motor: um contato NA do Q0.0. E o bit do temporizador, T0, liga a bobina do K2 na linha de baixo. Se usar TON, o ventilador vai esperar 5 s pra ligar — o contrário.

para levar

O TON só conta com a entrada ligada o tempo todo: um toque de botão vira memória com selo antes de ir pro temporizador. O contador conta bordas e não zera sozinho — o reset é uma linha, e ela precisa soltar enquanto se conta.

CLP do zero · aula 03 · simulado no navegador — ainda sem CLP físico