CONTROLADOR LÓGICO PROGRAMAVEL
Controlador Lógico Programável ( Hardware ) Para aprendermos como funciona um CLP, é necessário uma análise de seus componentes básicos, utilizados por todos os CLPs disponíveis no mercado, independente de seu porte ou fabricante. Os componentes básicos são: Unidade Central de Processamento (CPU). Memória para dados e programas. Entradas. Saídas. Alimentação. Dispositivos de Comunicação. Dispositivos de Programação. 2
A figura a seguir apresenta um diagrama de blocos desses componentes. Cada uma dessas partes será analisada em detalhes mais para frente. 3
A Unidade Central de Processamento (CPU) É basicamente formada por um microprocessador e um sistema de memória, sendo o principal componente do CLP. A CPU adquire dados nas entradas, executa programa que contém a lógica de controle da aplicação (ou processo) e controla as saídas. Também é responsável por gerenciar a comunicação em rede e com dispositivos de programação. O que diferencia uma CPU de outra são, basicamente cinco fatores: Velocidade de execução do programa do usuário; Capacidade de memória; Linguagens de programação e blocos de funções de disponíveis.. Número máximo de pontos de entrada e saída. Portas de comunicação em rede. 4
Quanto mais rápida a CPU, mais rapidamente ela é capaz de executar o programa do usuário. Quanto maior (ou mais complexo) for o programa, maior a necessidade de CPUs mais rápidas para atender as demandas do processo. Um exemplo a família SIEMENS SIMATIC S7. No caso da família de CPUs S7 200, temos as CPUs 221, 222, 224. Quanto maior a numeração, mais rápida a CPU e maior a memória disponível para o armazenamento de programa. O que torna uma CPU mais rápida: Microprocessador Clock no qual esse opera Capacidade comunicação com dispositivos externos (portas e protocolos de comunicação em rede, por exemplo). 5
MEMÓRIA DE DADOS E PROGRAMA É um espaço físico onde dados são informações elétricas armazenadas nesses espaços. A CPU funciona exatamente como um computador: ela manipula os dados usando dígitos binários, os bits, sendo esses armazenados em pastilhas de silício, chamadas de memória; dados são conjuntos de níveis elétricos que representam um valor numérico capaz de ser processado pela CPU. A memória é responsável por armazenar o programa desenvolvido pelo usuário para controle da máquina e os dados necessários para a execução desse programa. 6
As CPUs armazenam dados em grupos de 8 ou 16 bits. Cada um desses grupos é chamado palavra. Um programa pode manipular palavras inteiras ou alguns bits de uma palavra. Cada palavra de dados possui uma localização física na memória da CPU, chamada de endereço ou registro. Cada elemento do programa do usuário é referenciado com um endereço para indicar onde se localizam os dados para aquele elemento. 7
ENTRADAS O CLP é capaz de monitorar o estado da máquina (controle de processo) sob controle, através dos dispositivos de entrada. Esses estão relacionados a elementos sensores que detectam a existência ou não de um determinado valor de uma determinada grandeza física. Em ambos os casos, os dispositivos de entrada, chamados normalmente de cartões de entrada, são responsáveis por receber uma informação proveniente de sensores instalados na máquina, trata-la e adequa-la à um sinal que possa ser armazenado na memória do CLP e consequentemente usado por esse na execução do programa do usuário. 8
ENTRADAS DIGITAIS Também chamadas discretas ou binárias, são responsáveis por receber informações referentes a dispositivos sensores que fornecem sinais do tipo Ligado / Desligado, Energizado / Desenergizado. Tais sinais tem nível de tensão de 24Vcc ou 120Vca para representar um estado energizado de um componente. Esse estado energizado significa, por exemplo, a presença de uma peça metálica na área de detecção de um sensor indutivo. Um nível de tensão de 0Vcc/Vca representa um estado desenergizado ou ausência de um peça metálica na área de detecção de um sensor indutivo. Os níveis de tensão que representam estado energizado ou desenergizado de uma entrada digital normalmente se encontram dentro de uma faixa de valores que serão entendidos pelo cartão como 0 ou 1. É importante notar que tais níveis de tensão para entradas digitais são fornecidos por fontes externas, não sendo fornecidos pelo CLP mas sim enviados ao CLP. 9
CARTÕES DE ENTRADA DIGITAL Apresentam diferentes números de pontos para conexão de sensores e outros dispositivos de entrada; normalmente existem cartões para 8, 16 e 32 pontos. É importante notar que os cartões tem tamanhos padrão para cada CPU. No caso de entradas digitais para correntes alternadas, essas são retificadas (transformadas em sinais contínuos) e depois condicionados aos níveis aceitos pelo CLP. 10
ENTRADAS ANALÓGICAS Entradas analógicas são utilizadas quando desejamos adquirir dados referentes a grandezas definidas em todos os instantes de tempo. Alguns exemplos típicos de grandeza analógica são: temperatura, pressão, vazão, velocidade etc... A medição de grandezas analógicas pelo CLP é um processo bem mais complexo que a detecção de estados discretos (binários). Inicialmente, elemento sensor (PT100) adquire o dado do campo (um valor de tensão correspondente a uma temperatura). Esse sinal é convertido num nível de tensão (0-10V) ou corrente (4-20mA) padrão industrial por um elemento chamado transmissor, sendo transmitido por fios ao cartão de entrada analógica do CLP. Uma vez no CLP o sinal é filtrado e seu nível de tensão ou corrente sofre um processo de conversão de sinal analógico para o digital correspondente, sendo essa informação digital armazenada na memória do CLP para ser utilizada pelo programa do usuário. 11
SAÍDAS O CLP é capaz de atuar na operação da máquina através dos dispositivos saída. Esses estão ligados a elementos atuadores que agem de forma a levar ou não a máquina de um determinado estado para outro. Em ambos os casos, os dispositivos de saída, chamados normalmente de cartões de saída, são responsáveis por receber uma informação proveniente da CPU, trata-la, e adequa-la à um sinal que possa ser enviado ao elemento atuador, colocado no campo. Saídas Digitais Uma vez executado o programa do usuário, uma série de ações podem tomadas em resposta ao estado atual da máquina. Tais ações são representadas na memória do CLP por estados lógicos 0 e 1 armazenados em posições de memória correspondentes a endereços de elementos de saída conectados a cartões de saída. Uma vez que tais estados lógicos foram gerados, eles são convertidos em ações de controle através da comutação de elementos internos ao cartão de saída, que podem ser relés, transistores ou triacs, que determinarão o estado dos dispositivos conectados aos cartões de saída. Da mesma forma que as entradas, as saídas também podem ser isoladas do campo através de barreiras óticas. 12
COMPONENTES DE SAÍDA Relés podem ser usados com alimentação alternada ou contínua. Os relés eletromagnéticos de CLPs tradicionais aceitam correntes de alguns ampéres através de seus terminais; são mais lentos que os dispositivos semicondutores (pois são elementos mecânicos), estando também sujeitos a desgaste em suas partes móveis e contatos. Transistores chaveiam corrente contínua (24V) e não tem partes móveis sujeitas a desgastes. São rápidos, reduzindo consideravelmente o tempo de resposta (tempo que o cartão leva para comutar seu estado de 0 para 1 ou de 1 para 0). Suportam, normalmente, correntes de no máximo 0,5 A através de seus terminais. Triacs chaveiam exclusivamente corrente alternada (120Vac e 220Vac) sem peças móveis. São rápidos e suportando cargas de no máximo 1,0A. 13
SAÍDAS ANALÓGICAS tem seu princípio de funcionamento parecido com o das entradas analógicas. Uma vez que um resultado, expresso na forma de uma palavra binária (que representa um número inteiro), foi gerado durante a execução do programa de aplicação, esse é armazenado em uma posição de memória correspondente ao endereço de uma saída analógica conectado ao elemento atuador. Tal palavra sofre um processo de conversão de sinal digital para analógico, sendo convertida num nível de corrente ou tensão padrão industrial (4-20mA ou 0-10V) e enviado ao elemento atuador, que pode ser uma válvula proporcional, um drive para controle de motor, etc... 14
Programação do Controlador Lógico Programável Programa é um conjunto de etapas que, numa seqüência lógica, que desempenham uma determinada função, que pode, por exemplo, ser o controle de uma máquina. Vamos considerar um exemplo: digamos que para o inicio de uma operação de estamparia de um capo de carro necessitamos saber as seguintes informações: 15
1) Preparação: Se a chapa de metal se encontra na prensa. Se a chapa se encontra na posição correta. Se o operador não esta com alguma parte do corpo sob o estampo, então existem as condições necessárias para descida. 2) Prensagem: Se os botões para a descida da prensa foram pressionados, então acionar estampo. Se a prensa desceu, então acender uma luz de indicação. 3) Término: Se a prensa subiu, então abrir a porta. Se a chapa prensada foi retirada, então aguardar uma nova chapa. Um programa para controlar a execução dessa prensa deve seguir todos os passos descritos, na seqüência apresentada, 16 para assegurar o resultado da prensagem.
Inicialmente o programa observaria o estado do sensor de presença de chapa, o sensor de chapa na posição correta e o sensor de segurança que indica que o operador não tem nenhuma parte do corpo sob o estampo. Com as três condições asseguradas e se o operador apertar o botão de descida do estampo, ocorreria a prensagem. A seguir um, sensor envia um sinal informando que o estampo baixou, o que automaticamente faz o estampo retornar a posição inicial. A porta da prensa é aberta e a chapa retirada. Tal programa é uma típica aplicação para o CLP. 17
Ciclo de Operação da CPU O CLP tem uma forma particular de trabalhar que caracteriza o seu funcionamento. O controlador opera executando uma seqüência de atividades definidas e controladas por um programa principal, chamado sistema operacional. Essa operação ocorre em ciclo, chamado de ciclo de varredura ( Scan ), que consiste basicamente na seguinte seqüência de operações: 1. Leitura das entradas externas. 2. Execução da lógica programada pelo usuário. 3. Atualização das saídas externas. Na fase de leitura das entradas, a cpu, obtém os estados dos dispositivos que estão conectados a ele e armazena estas informações na forma de 1 e 0, dependendo do estado obtido. A região de memória utilizada para armazenar estas informações é chamada de Tabela Imagem de Entrada TIE. A partir dessa fase, a CPU opera com estas informações durante todo o restante do ciclo, ou seja, enquanto o ciclo de operação não for encerrado, os dados da TIE não serão alterados. 18
As linguagens de programação que podem ser utilizadas no desenvolvimento do programa de aplicação são fatores de diferenciação entre CPUs. A norma IEC 1131 define e padroniza as vária linguagens de programação disponíveis, sendo elas: - Diagramas de contato ( LADDER ou LD); - Blocos de função ( Function Blocks ou FB); - Lista de instruções ( Instruction List ou IL); - Diagrama fluxo estruturado ( Structured Flow Chart ou SFC). É importante notar apesar de existir uma padronização estabelecida pela norma IEC 1131, estando ainda em fase de acomodamento pela maioria dos fabricantes. A realidade do mercado é que cada fabricante escolhe a linguagem na qual seu CLP será programado e desenvolve um dialeto da mesma para atender suas necessidades. 19
Introdução a Linguagem de Relés ( Ladder ) A linguagem de relés é uma forma gráfica de programação do controlador (descrever a lógica de controle do processo). Esta linguagem é utilizada para implementar programas de controle de máquinas e processos. Conforme o próprio nome sugere, as instruções básicas se originaram no diagrama eletromecânico de relés, cujo elemento principal de controle é o relé, especificamente sua bobina e seus contatos. Por ser uma linguagem utilizada por quase todos os fabricantes, é muito difundida, sendo chamada de Ladder (escada), diagrama de contatos ou linguagem de relés. Bobinas e contatos são símbolos utilizados nesta linguagem. 20
Instruções Básicas - são instruções provenientes dos antigos diagramas de lógica de relés. São responsáveis por implementar a lógica combinacional e seqüencial necessária para assegura que apenas com as condições necessárias atendidas, uma ação será gerada e executada. Todas manipulam apenas bits individuais. Contato Normal Aberto NA (Normaly Open, NO) (Entrada) A instrução NA testa o conteúdo do endereço ao qual foi endereçada, caso o conteúdo do endereço seja um estado lógico 1, a instrução é avaliada como verdadeira, resultando em continuidade lógica. Caso o conteúdo do endereço seja um estado lógico 0, a instrução é avaliada como falsa, resultando em descontinuidade lógica. -- ----------------------------------------------------------- Contato Normal Fechado NF (Normaly Cosed, NC) (Entrada) A instrução NF testa o conteúdo do endereço ao qual endereçada, caso o conteúdo do endereço seja um estado lógico 1, a instrução é avaliada como falsa, resultando em descontinuidade lógica. Caso o conteúdo do endereço seja um estado lógico 0, a instrução é avaliada como verdadeira, resultando em continuidade lógica. -- / ----------------------------------------------------------- 21
Energiza Saída (Output Energize, OTE) (Saída) A instrução de energiza saída observa o estado da linha na qual se encontra. Caso o estado da linha seja verdadeiro (continuidade lógica) o endereço ao qual a instrução OTE se refere recebe nível lógico 1. Caso a linha na qual a instrução OTE se encontra seja avaliada como falsa (descontinuidade lógica) o endereço ao qual a instrução OTE se refere recebe nível lógico 0. -- -------------------------------------------------------( )--- 22
Saída Retentiva (SET - RESET, S - R) (Saída) Instruções retentivas são aquelas que mantém o seu estado mesmo quando a linha na qual se encontram se torna falsa ou quando a energia é desligada do CLP. As instruções de saída retentiva Set (S) e Reset (R ) ocorrem na maioria das vezes aos pares, referindo-se a um mesmo endereço de memória (bit endereço). Quando a linha na qual se encontra uma instrução de saída Set (S) se torna verdadeira, o endereço ao qual a instrução se refere recebe um nível lógico 1, mantendo esse nível mesmo após a linha na qual se encontra se tornar falsa. O estado do bit ao qual a instrução S se refere só é alterado, retornado ao nível lógico 0, quando uma outra linha de programa contendo uma instrução Reset (R ) referindo se ao mesmo endereço, se torna verdadeira. -- ----------------------------------------------------( S )--- -------------------------------------------------------( R )--- 23
Disparo na Transição Positiva (Positive Transition, P ) (Entrada) A instrução de disparo na transição positiva, P, permite que as instruções de saída da linha na qual se encontra a instrução P assumam nível lógico 1 por um ciclo de programa ( scan ) quando as condições da linha produzem continuidade lógica, sofrendo a linha uma transição de estado lógico falso para verdadeiro (F -> V). As saídas retornam ao nível lógico 0 no ciclo seguinte, mesmo que as demais condições presentes na linha na qual se encontram P permaneçam verdadeiras (mantenham a continuidade lógica). Apenas na próxima transição de falso para verdadeiro (F -> V) sofrida pela linha é que as saídas colocadas na linha voltarão a ser alteradas. Essa instrução não é endereçada. -- --------------- P ------------------------------( )--- 24
Texto Fontes: Departamento de Engenharia Elétrica - UNITAU Prof. Marcelo Pinheiro Werneck, Imagens GOOGLE.