Prévia do material em texto
Tema: Linguagem Ladder Prof. Reinaldo Squillante Jr UNINOVE – Universidade Nove de Julho Sumário 1 – Introdução 1.1 – Vantagens da linguagem Ladder 1.2 – Desvantagens da linguagem Ladder 2 – Elementos do Diagrama Ladder 2.1 – Contatos 2.2 – Bobinas 3 – Diagrama de contatos em Ladder 3.1 – Fluxo reverso 3.2 – Repetição de contatos 3.3 – Repetição de uma mesma bobina 3.4 – Relés internos (bobina e contato) Sumário 4 – Conversão de Diagramas Elétricos em Diagrama Ladder 5 – Execução dos degraus no Diagrama Ladder 6- Circuitos de auto-retenção 6.1 – Contato “selo” 6.2 – Instruções SET e RESET 7- Detecção de eventos 8- Leitura das Entradas Referências bibliográficas LINGUAGEM LADDER 1 - INTRODUÇÃO Ladder foi a primeira linguagem que surgiu para a programação dos Controladores Lógicos Programáveis. Para que não ocorresse uma mudança de paradigma, ela foi desenvolvida, orientada pelos mesmos conceitos dos diagramas de comandos elétricos que utilizam contatos e bobinas. LINGUAGEM LADDER 1 - INTRODUÇÃO Vantagens • rápida adaptação do pessoal técnico devido à semelhança com os diagramas de comandos elétricos convencionais; • possibilidade de aproveitamento do raciocínio lógico na elaboração de um comando feito por relés; • fácil recomposição do diagrama original a partir do programa de aplicação; • fácil visualização dos estados das variáveis sobre o diagrama Ladder, permitindo uma rápida depuração e manutenção do programa. LINGUAGEM LADDER 1 - INTRODUÇÃO Vantagens • documentação fácil e clara; • símbolos padronizados e mundialmente aceitos pelos fabricantes e usuários; • técnica de programação mais difundida e aceita mundialmente. LINGUAGEM LADDER 1 - INTRODUÇÃO Desvantagens • sua utilização em programas extensos ou com lógicas mais complexas é bastante difícil de interpretar, depurar e dar manutenção; • programadores não familiarizados com a operação de relés tendem a ter dificuldades com essa linguagem; LINGUAGEM LADDER 2 – ELEMENTOS DO DIAGRAMA LADDER CONTATOS Figura 1: Símbolos para contatos utilizados por alguns fabricantes de CLPS (Franchi, 2008) LINGUAGEM LADDER 2 – ELEMENTOS DO DIAGRAMA LADDER BOBINAS Figura 2: Símbolos para bobinas utilizados por alguns fabricantes de CLPS (Franchi, 2008) LINGUAGEM LADDER 3 – DIAGRAMA DE CONTATOS EM LADDER A função principal de um programa em linguagem Ladder é controlar o acionamento de saídas, dependendo da combinação lógica dos contatos de entrada. Figura 3: Estrutura típica de uma linha de programa ou degrau em Ladder. (Franchi, 2008) LINGUAGEM LADDER 3 – DIAGRAMA DE CONTATOS EM LADDER O conjunto dos contatos que compõem um degrau pode ser conhecido como condição de entrada ou lógica de controle. As instruções de saída, tais como bobinas e blocos funcionais (temporizadores, contadores e outras funções), devem ser os últimos elementos à direita. Figura 4: Estrutura típica de uma linha de programa ou degrau em Ladder. (Franchi, 2008) LINGUAGEM LADDER 3 – DIAGRAMA DE CONTATOS EM LADDER Um degrau é verdadeiro, ou seja, energiza uma saída ou um bloco funcional, quando os contatos permitem um fluxo “virtual de corrente”, ou seja, existe uma continuidade entre a barra da esquerda e da direita. A continuidade ocorre quando há uma combinação de contatos fechados que permitem fluir uma corrente virtual até a bobina, que deve ser o último elemento da linha (ou degrau). Figura 5.1: Exemplo de um degrau em Ladder. (Franchi, 2008) Figura 5.2: Possíveis caminhos de continuidade para o diagrama da Figura 5.1. (Franchi, 2008) LINGUAGEM LADDER 3 – DIAGRAMA DE CONTATOS EM LADDER 3.1 – FLUXO REVERSO Quando relés eletromecânicos são utilizados para implementar uma lógica Ladder, o fluxo de energia pode ocorrer em qualquer sentido por meio dos contatos. Figura 6: Fluxo reverso no contato D. (Franchi, 2008) LINGUAGEM LADDER 3 – DIAGRAMA DE CONTATOS EM LADDER 3.1 – FLUXO REVERSO Entretanto, uma regra seguida por quase todos os fabricantes de CLPs é que o fluxo reverso (da direita para a esquerda) não é permitido, ou seja, de maneira diferente do que acontece nos circuitos elétricos reais. No caso do diagrama Ladder a “corrente virtual” deve fluir somente no sentido da barra esquerda para a barra direita. Figura 7: Circuito equivalente ao da Figura 6, redesenhado para evitar o fluxo reverso. (Franchi, 2008) LINGUAGEM LADDER 3 – DIAGRAMA DE CONTATOS EM LADDER 3.2 – REPETIÇÃO DE CONTATOS Nos relés eletromecânicos somente uma quantidade fixa e limitada está disponível. Nos programas em Ladder, uma bobina pode estar associada a vários contatos normalmente abertos (NA) e/ou vários contatos normalmente fechados (NF). Cada bobina e seus respectivos contatos possuem um único endereço de referência Figura 8: Repetição de contatos de uma bobina. (Franchi, 2008) LINGUAGEM LADDER 3 – DIAGRAMA DE CONTATOS EM LADDER 3.2 – REPETIÇÃO DE CONTATOS Em um CLP também é permitido o uso de múltiplos contatos de um dispositivo de entrada (sensor). No caso da figura 9, é possível repetir o contato I2 na forma de contato NA ou NF, tantas vezes quanto for necessário. Figura 9: Repetição de contatos de um dispositivo de entrada (sensor). (Franchi, 2008) LINGUAGEM LADDER 3 – DIAGRAMA DE CONTATOS EM LADDER 3.3 – REPETIÇÃO DE UMA MESMA BOBINA Embora alguns modelos de CLP permitam que uma mesma saída (bobina) seja repetida, é desaconselhável fazê-lo porque a repetição de uma saída em linhas diferentes vai tornar a lógica de programa muito confusa. Outro problema, é o estado final da saída relacionada com a bobina devido o fato do ciclo de scan do CLP. LINGUAGEM LADDER 3 – DIAGRAMA DE CONTATOS EM LADDER 3.4 – RELÉS INTERNOS (BOBINAS E CONTATOS) Relés internos nos CLPs são elementos utilizados para armazenamento temporário de dados (bits). Para efeito de programação, suas bobinas podem ser energizadas e desativadas por meio de sensores e seus contatos podem ser utilizados para ligar ou desligar saídas físicas. Figura 10: Exemplo de utilização de um relé auxiliar para ligar uma saída física. (Franchi, 2008) LINGUAGEM LADDER 4 – CONVERSÃO DE DIAGRAMAS ELETRICOS EM DIAGRAMA LADDER Normalmente, é muito simples transcrever um diagrama elétrico para um diagrama ladder. Basta transformar as colunas em linhas, conforme mostra a figura a seguir que é o caso de um simples partida direta. Figura 11.1: Diagrama elétrico de um comando para partida direta. (Franchi, 2008) Figura 11.2: Diagrama ladder de um comando para partida direta (Franchi, 2008). LINGUAGEM LADDER 4 – CONVERSÃO DE DIAGRAMAS ELETRICOS EM DIAGRAMA LADDER Neste caso específico, temos que tomar cuidado com o contato NF (comando: desliga) no programa em ladder. Figura 11.1: Diagrama elétrico de um comando para partida direta. (Franchi, 2008) Figura 11.2: Diagrama ladder de um comando para partida direta (Franchi, 2008). LINGUAGEM LADDER 4 – CONVERSÃO DE DIAGRAMAS ELETRICOS EM DIAGRAMA LADDER Outro exemplo: Contatos na VERTICAL Figura 12.1: Exemplo de circuito que utiliza contato em ponte (Franchi, 2008) Figura 12.2: Possível conversão (Franchi, 2008). LINGUAGEM LADDER 4 – CONVERSÃO DE DIAGRAMAS ELETRICOS EM DIAGRAMA LADDER Exercício: Converter o diagrama elétrico da Figura 13.1 em um diagrama ladder equivalente Figura 13.1: Diagrama elétrico (Franchi, 2008) Figura 13.2: Possíveis conversões (Franchi, 2008). LINGUAGEM LADDER 5 – EXECUÇÃODOS DEGRAUS DO DIAGRAMA LADDER Figura 14: Um programa em ladder é executado da esquerda para a direita e de cima para baixo. (Franchi, 2008) LINGUAGEM LADDER 5 – EXECUÇÃO DOS DEGRAUS DO DIAGRAMA LADDER Figura 15: A execução de uma linha (degrau) também é feita da esquerda para a direita e de cima para baixo (Franchi, 2008). LINGUAGEM LADDER 5 – EXECUÇÃO DOS DEGRAUS DO DIAGRAMA LADDER Figura 16: Diagrama de tempo da direita ilustra como é feita a leitura e processamento do diagrama apresentado à esquerda (Franchi, 2008). LINGUAGEM LADDER 6 – CIRCUITOS DE AUTO-RETENÇÃO 6.1 – CONTATOS “SELO” Problema: Pretende-se controlar o funcionamento de um motor por meio de dois botões de pressão A (NA) e B (NF). Quando A for pressionado, o motor deve ser ligado e assim permanecer até que o botão B seja pressionado, quando então o motor deve desligar. Figura 17: Partida direta de um motor utilizando contato de “selo” (Franchi, 2008). LINGUAGEM LADDER 6 – CIRCUITOS DE AUTO-RETENÇÃO 6.2 – INSTRUÇÕES SET e RESET Figura 17: Partida direta de um motor (ligado à saída Q1), utilizando bobinas set (S) e reset (R) (Franchi, 2008). LINGUAGEM LADDER 6 – CIRCUITOS DE AUTO-RETENÇÃO 6.2 – INSTRUÇÕES SET e RESET Figura 18: Símbolos IEC 61131-3 para as bobinas SET e RESET (Franchi, 2008). LINGUAGEM LADDER 6 – CIRCUITOS DE AUTO-RETENÇÃO 6.2 – INSTRUÇÕES SET e RESET Exemplo de aplicação: Um alarme contra incêndio possui três sensores, um em cada andar de um prédio. Se qualquer um deles for acionado, o alarme deve ser disparado e assim permanecer enquanto não for pressionado outro botão, localizado na central, que o faz silenciar. Desenvolver um diagrama ladder que obedeça este requisito. Figura 19: Alarme de incêndio com três sensores (ALM-1, ALM-2 e ALM-3) e um botão para silenciar o alarme (RST) (Franchi, 2008). LINGUAGEM LADDER 7 – DETECÇÃO DE EVENTOS Existem situações em que é necessário registrar o instante em que uma entrada (sensor) comuta de estado, e não o estado da entrada (sensor). Um evento pode ser definido como uma variável lógica que indica que o evento ocorreu (=1) ou não ocorreu (=0). Para detecção de eventos, normalmente é utilizada uma técnica conhecida como detecção de borda, ou seja, detectar o instante em que houve uma transição de um estado para o outro. Se o estado inicial era desligado e passou para ligado, a detecção desse evento é chamada de “detecção de borda de subida”. No caso contrário, ou seja, a transição do estado ligado para o desligado, a detecção desse evento é chamada de “detecção de borda de descida”. LINGUAGEM LADDER 7 – DETECÇÃO DE EVENTOS LINGUAGEM LADDER 7 – DETECÇÃO DE EVENTOS Figura 20: Contato detector de transição positiva (borda de subida) (Franchi, 2008). Figura 21: Bobina detectora de transição positiva (borda de subida) (Franchi, 2008). LINGUAGEM LADDER 7 – DETECÇÃO DE EVENTOS Figura 22: Detecção de impulsos em alguns CLPs (Franchi, 2008). LINGUAGEM LADDER 8 – LEITURA DAS ENTRADAS 0 1 LINGUAGEM LADDER 8 – LEITURA DAS ENTRADAS 1ª situação: PB1 aberto LINGUAGEM LADDER 8 – LEITURA DAS ENTRADAS 2ª situação: PB1 fechado LINGUAGEM LADDER 8 – LEITURA DAS ENTRADAS Utilização de chaves externas do tipo NF LINGUAGEM LADDER 8 – LEITURA DAS ENTRADAS Exemplo: Deseja-se controlar o acionamento de um motor (partida direta) utilizando uma botoeira do tipo NA para ligá-lo e uma botoeira do tipo NF para desligá-lo. Implemente este controle em linguagem Ladder. LINGUAGEM LADDER 8 – LEITURA DAS ENTRADAS Solução 1: Usando contato “selo” Solução 2: Usando bobinas de auto- retenção NA NF LINGUAGEM LADDER EXERCÍCIOS 1) Por questões de segurança, uma prensa só pode ser ligada se o operário pressionar simultaneamente dois botões separados 50 cm um do outro, ou seja, o operador deverá obrigatoriamente utilizar ambas as mãos, evitando que uma delas possa ser prensada acidentalmente. Considerando que: botão 1 da prensa %IX0.0 botão 2 da prensa %IX0.1 bobina de acionamento da prensa %QX1.0 Pede-se: a) A equação booleana que resolve este problema; b) O Diagrama em Ladder equivalente à equação booleana. LINGUAGEM LADDER EXERCÍCIOS 2) Uma lâmpada (L) deve ser ligada quando uma chave (A) estiver fechada e uma chave (B) estiver aberta. Pede-se: a) O circuito lógico combinacional que resolve este problema; e b) O diagrama em Ladder equivalente ao circuito lógico combinacional. LINGUAGEM LADDER EXERCÍCIOS 3) Um galpão dispõe de três chaves para desligar um alarme contra incêndios. Caso qualquer uma delas seja pressionada, deve-se desligar o alarme. Represente o diagrama Ladder correspondente. Considerar que os botões possuam contatos NA. 4) Uma bomba deve ser ligada se o sensor de nível baixo não estiver acionado, ou manualmente por um botão liga. Represente o diagrama Ladder correspondente. Considerar que o sensor possui um contato NA e o botão liga possua também um contato NA. LINGUAGEM LADDER EXERCÍCIOS Referência Bibliográfica Franchi, C.M.; Camargo, V.L.A. Controladores Lógico Programáveis – Sistemas Discretos, Editora Érica, 1ª edição, São Paulo, 2008.