Exemplo de lógica sequencial
Neste post será mostrado outro exemplo de programaçao de PLC, mas utilizando agora a lógica sequencial, que é aquela em que a(s) saída(s) dependem do estado atual das entradas e também do valor anterior da(s) saída(s).
Tomaremos como base um sistema de acionamento de um motor elétrico, mostrado na Figura 1.
Este sistema simples, deverá funcionar da seguinte maneira:
O motor será ligado se o botão ON for pressionado, ou seja, ON=1.
O motor será desligado se o botão OFF for pressionado, ou seja, OFF=1.
Se nenhum dos dois botões estiver pressionado (ou seja, ON=0 e OFF=0), o motor manterá o seu estado anterior, ou seja, se estava desligado, continua desligado e se estava ligado, continua ligado.
Caso os botões ON e OFF sejam pressionados simultaneamente, ou seja ON=OFF=1, o motor deve permanecer desligado.
No exemplo mostrado na Figura 1, temos uma situação interessante: E se o operador pressionar os botões ON e OFF simultaneamente? No exemplo, o estado do motor será nessa situação será desligado, mas dependendo da aplicação, poderia ser o contrário. Veremos em outros posts mais adiante exemplos com esta situação.
O sistema apresentado no exemplo poderia ser automatizado através de um circuito elétrico, conforme mostrado na Figura 2.

Os componentes S1 e S2 são botões de comando NA (Normalmente Aberto) e NF (Normalmente Fechado), respectivamente, e recebem os estímulos externos do operador.
Observam-se também alguns elementos nomeados de K1, que é um contator. No circuito de controle, aparece a bobina do contator K1 e um contato auxiliar, que nesse caso, é chamado de “contato de selo”. No circuito de força, aparecem os contatos de potência de K1, que são utilizados para energizar o motor. Um exemplo de contator é mostrado na Figura 3.

(Fonte: www.geocities.com/SiliconValley/Park/6834/contator.gif)
Bem, para resolver este problema com um PLC (é claro que este exemplo é uma situação hipotética, pois usar um PLC para acionar apenas um motor certamente é uma solução não vantajosa financeiramente), mostraremos duas soluções: uma com uma lógica similar à mostrada no circuito elétrico e uma outra usando recursos próprios de um PLC.
Solução 01
A primeira solução nada mais é do que a transcrição do circuito elétrico para a linguagem do PLC, conforme pode ser observado na Figura 4.

Situação 01.1
Considerando que a chave S1 foi pressionada, o resultado é o acionamento do motor através de K1 (Ver figura 5).

Em seguida, simulando o desligamento da chave S1, ou seja, S1=0 e S2=0, o resultado é que o motor continua ligado (ver Figura 6).

Prosseguindo, se a chave S2 for acionada, o motor é desligado, conforme mostra a simulação na Figura 7.

Novamente, simularemos S1=S2=0, porém, diferentemente da Situação 02, o motor ficará desligado, pois este era o estado anterior (ver Figura 8).

Por último, simularemos S1=S2=1. Neste caso, devido à concepção da lógica, tem-se como resultado que o motor fica desligado, conforme mostra a Figura 9.
Figura 9 – Simulação de S1=S2=1
A segunda solução utiliza as funções Set e Reset, que são próprias de programação em PLCs. Estas funções funcionam da seguinte maneira: Se uma linha da lógica possui uma bobina tipo S e fica verdadeira, o elemento associado à bobina S é acionado (=1) e permanece nesse estado mesmo se a linha dessa bobina ficar falsa. Para desligar este elemento, é necessário que uma bobina R associada a este elemento fique verdadeira.
A lógica desenvolvida é mostrada na Figura 10. Observe que A chave liga (S1) está associada à bobina S (Set=liga) e que a chave desliga (S2) está associada à bobina R (Reset=desliga). Observe também que o motor está associado às duas bobinas (S e R).
Vejamos as situações de simulação:
Situação 02.1
De maneira similar à solução 1, simulamos inicialmente a chave S1 pressionada, conforme mostra a Figura 10.

Situação 02.2
Quando o botão S1 é desligado, a saída K1 (Motor) é mantida ligada, mesmo com as linhas de S1 e S2 falsas, pois as bobinas S e R são retentivas (Armazenam o último estado), conforme mostra a Figura 11.

Ao pressionar o botão S2, K1 é desenergizado. Observe que as duas bobinas aparecem desligadas, mesmo com a linha de S2 verdadeira, conforme Figura 12.
Figura 14 – Simulação de S1=S2=1
O arquivo com este programa para o CoDeSys V3 (disponível no site da 3s-software) está disponível na Solução 01 ou Solução 02.
Um abraço e até o próximo post!
Obrigado pelos toques, valeu!>Fabrício Godoy
Ola amigo gostaria de saber se você entende de programar utilizando o software codesys, tenho um computador industrial aqui e ele se comunica com este programa, e eu não estou conseguindo fazer a comunicação.
meu email: automation.bol@bol.com.br
No site http://www.sibratec.ind.br tem apostilas e exemplos de programação de CLPs com a utilização de GRAFCET. A técnica de GRAFCET é muito interessante porque ela é intuitiva. Creio que se o CLP suporta esse tipo de programação, o trabalho fica bem mais fácil.