Controlador lógico programável

Controlador lógico programável

CONTROLADOR LÓGICO PROGRAMÁVEL – CLP

A Automação Predial ou Residencial já é uma realidade nos dias de hoje. Com a sua história advinda das indústrias, vem sendo utilizadas ao longo de todas as cadeias de processos. A Automação Industrial não demorou muito a chegar em prédios até galgar as residências.

O dispositivo mais utilizado e que tornou possível este tipo de sistema foi o CLP (Controlador Lógico Programável). O CLP surgiu na década de 60. Ainda existem muitas empresas do ramo da indústria de automação que possuem pouca experiência com eles. A grande vantagem desse dispositivo esta na possibilidade de reprogramação sem necessidade de realizar modificações de hardware. Mais o que impulsionou a saída da automação das indústrias para os prédios e residências foi a popularização e o desenvolvimento dos computadores pessoais. De fato, atualmente o que se busca é a conectividade entre os diversos dispositivos que integram um sistema automatizado e os computadores pessoais.

O CLP começou a ser usado no ambiente industrial desde 1960 embora ainda existem muitas empresas do ramo da indústria de automação que possuem pouca experiência com eles. A grande vantagem dos controladores programáveis é a possibilidade de reprogramação, motivo pelo qual substituíram os tradicionais painéis de controle a relês. Esses painéis necessitavam de modificações na fiação cada vez que se mudava o projeto, o que muitas vezes era inviável, tornando-se mais barato simplesmente substituir todo painel por um novo. Os CLPs permitiram transferir as modificações de hardware em modificações no software.

A General Motors, em meados de 1969, surgiu com os primeiros controladores baseados numa especificação resumida a seguir:

  • Facilidade de programação;

  • Facilidade de manutenção com conceito plug-in;

  • Alta confiabilidade;

  • Dimensões menores que painéis de Relês, para redução de custos;

  • Envio de dados para processamento centralizado;

  • Preço competitivo;

  • Expansão em módulos;

  • Mínimo de 4000 palavras na memória.

A partir da década de 70, com a inclusão de microprocessadores dentro dos controladores, eles passaram a se chamar de Controladores Programáveis (CLPs), dez anos a frente na década de 80, suas funções foram aperfeiçoadas e passaram a utilizar a rede de comunicação de dados. (MORAIS e CASTRUCCI, 2001).

De acordo com (NATALE, 2004, p.11), o CLP “É um computador com as mesmas características conhecidas do computador pessoal, porém, [é utilizado] em uma aplicação dedicada [...]”. Segundo a ABNT (Associação Brasileira de Normas Técnicas), o CLP é um equipamento eletrônico digital com hardware e software compatíveis com aplicações industriais.

O NEMA (National Electrical Manufactures Association), considera um CLP um aparelho eletrônico digital que utiliza uma memória programável para armazenar internamente instruções e para implementar funções específicas, tais como lógica, seqüênciamento, temporização, contagem e aritmética, controlando, por meio de módulos de entradas e saídas, vários tipos de máquinas ou processos.

De forma geral, os controladores lógicos programáveis (CLPs) são equipamentos eletrônicos de última geração, utilizados em sistemas de automação flexível. Estes permitem desenvolver e alterar facilmente a lógica para acionamento das saídas em função das entradas. Desta forma, pode-se utilizar inúmeros pontos de entrada de sinal para controlar pontos de saída de sinal (cargas).

Funcionamento do CLP

O funcionamento de um CLP corresponde a três etapas distintas, as quais são: entradas, processamento e saídas. Essas etapas são ilustradas na figura 1 (SILVA FILHO, 2000). Com essa finalidade o CLP possui uma arquitetura bastante conhecida baseada em microcontroladores e microprocessadores.

Figura 1. Estrutura básica de funcionamento de um CLP

O hardware de um CLP é formado por 3 unidades distintas, as quais são: fonte de alimentação, CPU (Unidade Central de Processamento, e interfaces de entrada e saídas ou I/O), e interfaces de I/O. Cada unidade que compõe um CLP é responsável pelo seu funcionamento.

  • Fonte de Alimentação: A alimentação de energia do CLP utiliza uma fonte chaveada e uma única tensão de saída de 24 V. Esse valor já é utilizado com a finalidade de alimentar os módulos de entrada e saída de dados e a CPU ao mesmo tempo. Outra característica importante é que normalmente as máquinas industriais, funcionam com essa tensão por ser bem menos suscetível a ruídos. Outro ponto destacável, é que essa tensão já é compatível com o sistema de comunicação RS-232.

  • CPU: Segundo MORAES E CASTRUCCI (p.31, 2001), é “responsável pela execução do programa do usuário, atualização da memória de dados e memória-imagem das entradas e saídas”. Inicialmente com a 2ª geração de CLP (barramento de dados, endereço e controle), a CPU era constituída por um microcontrolador. A opção por microcontroladores baseava-se pelo custo-benefício, facilidade de manuseio, e também pela baixa complexidade dos softwares. Com exceção dos CLPs de pequeno porte, geralmente, os CLPs apresentam um microprocessador na forma de um CI (Circuito Integrado) dedicado.

  • Interfaces de I/O: As entradas e saídas de um CLP podem ser divididas em duas categorias: as analógicas e digitais. Na figura 2 são ilustrados estes dois modelos de interfaces I/O (DAHER, 2003).

Figura 2. Interfaces de I/O digitais e analógicas.

Existem diversos tipos de módulos de entrada e saída que se adaptam as necessidades do sistema a ser controlado. Os módulos de entrada e saídas são compostos de grupos de bits, associados em conjuntos de 8 bits (1 byte) ou conjuntos de 16 bits, de acordo com o tipo de CPU.

As entradas analógicas são referentes aos dispositivos que trabalham com grandezas analógicas, como por exemplo, temperatura, umidade relativa, pressão, entre outras. Para que a CPU trabalhe com esses valores analógicos é necessário que essas entradas sejam convertidas usando conversores A/D (analógico para digital).

Operacionalmente, a CPU lê os dados de entradas dos dispositivos de campo através dos módulos de entrada, e então executa, ou realiza os controles de programa que tinham sido armazenados na memória. Os programas normalmente são escritos na linguagem LADDER, a qual assemelha-se muito a um esquema elétrico baseado em relês. Os programas são colocados na memória da CPU em forma de operações lógicas, aritmáticas etc. Baseado nesses programas o CLP escreve ou atualiza o estado das saídas atuando nos dispositivos de campo (cargas). Este processo, conhecido como ciclo de operação, continua na mesma seqüência sem interrupções. A figura 3 ilustra o ciclo de operação de um CLP (SILVA FILHO, 2000).

Figura 3. Ciclo de processamento de um CLP.

Como foi visto, o CLP é formado por uma fonte de alimentação, uma CPU, e interfaces de I/O, porém pode-se considerá-lo como uma pequena caixa contendo centenas ou milhares de relês separados, tais como contadores, temporizadores e locais de armazenamento de dados, ver figura 4 (SILVA FILHO, 2000). Na verdade o que ocorre é que o CLP simula essas funcionalidades, utilizando os registradores internos da CPU,

Figura 4. Funcionalidades de um CLP.

Onde:

  • Relês de entrada (contatos): Conectados com o mundo externo. Existem fisicamente e recebem sinais de interruptores, sensores etc. Normalmente não são relês e sim transistores munidos de isolamento óptico. No caso do CLP TP-02 da WEG Automação, o símbolo na linguagem LADDER que representa este tipo de relé é a letra “X”;

  • Relês de utilidade interna (contatos): Não recebem sinais do mundo externo e não existem fisicamente. São relês simulados que permitem eliminar relês de entrada externos (físicos). Também há alguns relês especiais que servem para executar só uma tarefa, como relês de pulso, temporizadores etc. Outros são acionados somente uma vez durante o tempo no qual o CLP permanece ligado e tipicamente são usados para inicializar dados que foram armazenados. No caso do CLP TP-02 o símbolo na linguagem LADDER que representa este tipo de relê é a letra “C”;

  • Contadores: Estes não existem fisicamente. São contadores simulados e podem ser programados para contar pulsos. Normalmente, estes contadores podem contar para cima (incrementar), ou abaixo (decrementar), ou ambos. Considerando que são simulados, os contadores estão limitados na velocidade de contagem. Alguns fabricantes também incluem contadores de alta velocidade baseados em Hardware, podendo ser considerados como fisicamente existentes.

  • Temporizadores (Timers): Estes também não existem fisicamente. O mais comum é o tipo com “Retardo no Ligamento”. Outros incluem “Retardo no desligamento” e tipos retentivos e não-retentivos. Os incrementos variam de um mili-segundo até um segundo;

  • Relês de saída: Estes possuem conexão com o mundo externo e existem fisicamente. Enviam sinais de ON/OFF a solenóides, luzes, etc., podem ser transistores, Relês ou Triacs, dependendo do modelo de CLP. No caso do CLP TP-02, o símbolo na linguagem LADDER que representa este tipo de relé é a letra “Y”;

  • Armazenamento de dados: Normalmente há registros designados simplesmente para armazenar dados. Eles são usados como armazenamento temporário para manipulação matemática ou de dados. Podem ser usados quando houver ausência de energia no CLP.

Programação

A lógica desenvolvida pelo CLP com os sinais de entrada para acionar as suas saídas é programável. É possível desenvolver lógicas combinatórias, lógicas seqüenciais e também uma composição das duas, o qual ocorre na maioria das vezes.

Como já mencionado na introdução as indústrias utilizavam painéis para desempenhar os mesmos papéis que realizam hoje as linguagens de programação, padronizadas pela norma IEC 1131-3, fazem. Segundo IEC – 1131-3 (MORAES E CASTRUCCI, 2001), ela classifica as linguagens de programação conforme a tabela 1:

Tabela 1– Norma IEC-1131-3.

Classes

Linguagens

Tabulares

Tabela Decisão

Textuais

IL (Lista de Instruções)

ST (Texto Estruturado)

Gráficas

LD (Diagrama de Relês)

FBD (Diagrama de Blocos de Funções)

SFC (Carta de Fluxo Seqüencial)

Conforme NATALE (2000, p.29), “Automatizar um sistema significa fazer uso de funções lógicas, representadas, por sua vez, por portas lógicas que podem ser implementadas, [...] fazendo uso de componentes, independentemente do nível de sua tecnologia [...].”.

O CLP TP-02 utiliza a linguajem LADDER ou LD conforme a norma IEC – 1131-3 acima. Segundo MORAES E CASTRUCCI (2001), A Linguagem Ladder ou como o autor cita “Linguagem de Diagrama de Contatos (LADDER Diagram)”, originou-se dos diagramas elétricos em LADDER (Escada), cuja origem provem da Lógica de Relês, ver tabela 2.

Tabela 2 – Instruções para a Linguagem Ladder

Instruções

Representação

Contato Normalmente Aberto

-| |-

Contato Normalmente Fechado

-|/|-

Bobina

-( )-

Bobina Inversa (acionada desenergizada)

-(|)-

Bobina Set

-(S)-

Bobina Reset

-(R)-

Bobina de Memorização (mantém o estado)

-(M)-

Bobina de Set da Memória

-(SM)-

Bobina de Reset da Memória

-(RM)-

Bobina de Detecção de Borda de Subida

-(P)-

Bobina de Detecção de Borda de Descida

-(N)-

Lógica Matemática e Binária

Segundo SILVA FILHO (2000a, p.9) “ [...] a lógica matemática visa facilitar as ambigüidades da linguagem natural, devido a sua natureza subjetiva e, portanto é uma ferramenta muito útil na lógica do raciocínio. Para evitar essas dificuldades, criou-se uma linguagem lógica artificial”.

Como a lógica binária possui apenas dois valores: ‘0’ e ‘1’. Com a utilização destes dois símbolos construímos a base numérica binária. Assim, foram criadas as portas lógicas, que são circuitos utilizados para combinar níveis lógicos digitais de formas específicas. A figura 5 ilustra a relação entre as portas lógicas básicas e a linguagem LADDER.

Figura 5. Representação das funções lógicas básicas.

A linguagem LADDER permite desenvolver lógicas combinacionais, seqüenciais ou ambas. Utiliza como operadores para estas lógicas: entradas, saídas, estados auxiliares e registros numéricos. A figura 6 ilustra os principais símbolos da programação.

Figura 6. Principais símbolos de programação.

Para entendermos a estrutura da linguagem vamos adotar um exemplo bem simples: o acionamento de uma lâmpada L a partir de um botão Liga/Desliga. Na figura 7 temos o esquema elétrico tradicional, o programa e as ligações no CLP. Para entender o circuito com o CLP, pode-se observar o programa desenvolvido para acender a lâmpada L quando for acionado o botão B1.

Figura 7. Acionamento de uma lâmpada.

O botão B1, normalmente aberto, está ligado a entrada X1 e a lâmpada ligada à saída Y1. Ao acionarmos B1, X1 é acionado e a saída Y1 é energizada. Caso for desejado que a lâmpada apague quando for acionado B1, bastaria trocar o contato normalmente aberto por um contato normalmente fechado na programação do CLP, o qual seria representado pela função NOT.

Micro – CLP

Outra tendência de mercado atual é o uso do CLP para tarefas simples. Isto é, em aplicações nas quais é necessário automatizar um processo com poucos passos de programação, bem como com poucas entradas e saídas. Diversos fabricantes entraram nesse mercado através do lançamento de CLPs de pequeno porte, de programação simples e baixo custo. A figura 8 ilustra o Micro-CLP Clic, da WEG, o qual constitui um exemplo clássico desse equipamento.

Figura 8. Clic - Microcontrolador Programável.

Atualmente, existe uma forte tendência à utilização de pequenos controladores programáveis para controlar processos locais, os quais se comunicam com outros controladores e com Sistemas Supervisórios, formando uma rede de automação. Assim, é possível descentralizar o controle industrial, evitando que algum problema interrompa o funcionamento de toda a planta. Os sistemas supervisórios rodam em computadores tipo PC e permitem monitorar o estado de um processo, visualizando na tela do PC o estado das entradas, saídas, registradores, etc. Esemplos de programas supervisórios são o FIX (versões SCADA e MMI), InTouch, Genesis, entre outros.

Considerações de projeto

Para adequar um Controlador Lógico Programável (CLP) a um sistema ou a uma máquina é necessário verificar o número de pontos de entrada, o número de pontos de saída, a velocidade de processamento e os tipos de entradas e saídas (sensores e atuadores) necessários à aplicação.

De fato, os Controladores Lógicos Programáveis, como todas as ferramentas de automação, estão em constante desenvolvimento, no sentido da redução de custos, da dimensão física, do aumento da velocidade, da facilidade de comunicação, e também no aperfeiçoamento interfaces mais amigáveis.

A flexibilidade dos CLPs indica que, as alterações lógicas podem ocorrer com grande facilidade, sem que sejam necessárias alterações do Hardware ou inclusão de componentes eletrônicos ou elétricos. Esta é a principal característica dos sistemas de automação flexíveis e o que faz dos CLPs ferramentas de grande aplicação nas estruturas de automação.

Além da linguagem de contatos, existem outras formas de programação características de cada fabricante. Pode-se concluir então que os projetos de automação e controle envolvendo CLPs reduzem o trabalho de desenvolvimento de Hardware dos circuitos lógicos do acionamento, bem como os dispositivos e potência para acionamento de cargas e dos atuadores, uma vez que é possível escolher módulos de saída já prontos, adequados ao tipo de carga que se deseja acionar.

A utilização do CLP contempla, por conseguinte, alguns passos genéricos:

  • Definição da função lógica a ser programada;

  • Transformação desta função em programa assimilável pelo CLP;

  • Implementação física do controlador e de suas interfaces com o processo.

REDES INDUSTRIAIS

Cabe destacar que nas aplicações industriais ou prediais o que se busca é a conectividade entre os dispositivos do sistema. Isto pode ser constatado através de diversas topologias existentes. De fato a conexão entre os CLPs pode ser do tipo barramento, onde todos os equipamentos estão ligados à mesma linha física, ou tipo anel, onde a conexão entre os equipamentos é feita um a um. No caso de anel, o mesmo pode ser fechado (o último dispositivo liga no primeiro) ou aberto. Existem ainda outras topologias, não abordadas neste documento. A figura 9 ilustra a conexão entre o CLP e diversos dispositivos usando o barramento conhecido como Mestre-Escravo.

Figura 9. Barramento Mestre-Escravo usando o CLP TP02 (WEG).

Nas redes Mestre-Escravo, a comunicação é feita com consulta do Mestre para o Escravo e resposta do Escravo para o Mestre. O Mestre percorre todo o barramento em um ciclo consultando seus escravos (ZEILMANN, 2002).

A conexão entre CLPs usualmente usa os padrões de tensão RS232, RS422 e RS485. O padrão RS232 permite a comunicação com o PC, porém não é adequado na comunicação multiponto entre vários CLPs, contudo existem novos padrões advindos do RS232, chamado E3C no qual é possível conectar até 256 estações. Os padrões RS422 e RS485 são os mais utilizados, alem de possibilitar maior taxa de comunicação e alcance. Por isso esses padrões trazem oportunidades onde a conectividade e sinergia entre os CLPs e os PCs seja real, trazendo inúmeras inovações e idéias para sistemas de gerenciamento de dispositivos remotos, por exemplo. A figura 10 ilustra a conexão entre o PC e diversos CLPS usando o barramento Mestre-Escravo. O PC desenvolve a função de Mestre.

Figura 10. Barramento Mestre-Escravo comandado pelo PC.

PROTOCOLOS

  • TP02 (proprietário)

  • MOdbus

SOFTWARE SUPERVISÓRIO

Com o surgimento do PC, segundo SEIXAS FILHO (2000,p.1) “ [...] sumiram as mesas de controle e o PC passou a reinar como a plataforma preferida de supervisão e operação [...]. Os softwares SCADA apareceram em diversos tamanhos, [...] com diversos repertórios de funcionalidades.

Os softwares SCADA são chamados de sistemas supervisórios. Tem por objetivo ilustrar o comportamento de um processo através de figuras e gráficos, tornando-se assim, uma interface objetiva entre um operador e o processo.

Segundo OGATA (1997), o software supervisório deve ser visto como o conjunto de programas gerados e configurados no software básico de supervisão, implementando as estratégias de controle e supervisão com telas gráficas de interface homem-máquina (IHM) que facilitam a visualização do contexto atual, a aquisição e tratamento de dados do processo e a gerência de relatórios e alarmes.

A padronização dos canais de comunicação entre os CLPs e outros equipamentos inteligentes de automação tem adquirido grande importância, em vista da tendência de integração total dos níveis hierárquicos de automação, verificada após a introdução da filosofia CIM (Computer Integrated Manufacturing). Para propiciar esta interatividade surgiram vários protocolos de comunicação, tais como: BITBUS, PROFIBUS, ETHERNET, etc. Muitos fabricantes oferecem redes proprietárias para esta finalidade, porém, a tendência dominante á a de utilizar os diversos sistemas propostos para a padronização de redes para chão de fábrica.

Elipse SCADA

Neste projeto será utilizado o software ELIPSE/SCADA para monitorar o funcionamento dos CLPs e o estado das cargas. O objetivo será o de projetar na tela de supervisão uma interface de fácil compreensão e que seja amigável ao usuário, facilitando a monitoração do sistema e a mudança dos parâmetros (tempo de desligamento, por exemplo).

Comunicação

 Existem várias maneiras de se trocar informações com qualquer equipamento de aquisição de dados, tais como PLC's (Controladores Lógicos Programáveis), DAC's (Cartões de Aquisição de Dados), RTU's (Unidades Remotas), servidores OPC, controladores e outros tipos de equipamentos.

A forma mais comum e eficiente de se obter comunicação com equipamentos são as DLL’s (Dynamic Link Libraries). As DLLs ão os chamados drivers de comunicação, que são módulos com processamento independente (threads), responsáveis pela comunicação com um equipamento em específico.

No Elipse SCADA não há limitações lógicas de números de equipamentos ou drivers de comunicação, sendo que uma mesma aplicação pode conter vários tipos de conexões, através de portas seriais ou redes específicas.

Além disso, os drivers desenvolvidos pela Elipse Software provém comunicação via linha discada ou rádio-modem com qualquer PLC de mercado que possua interface serial RS232/RS485, com tratamento automático da conexão, o que o torna ideal para aplicações de telemetria e acesso remoto, ver figura 11. Caso o equipamento remoto possua capacidade de discagem, nossos drivers também estão prontos a receber ligações, a fim de ser informado sobre eventos específicos como uma ocorrência de alarme.

Figura 11. Rede de comunicação.

OPC

 

O Elipse SCADA suporta conexões com quaisquer servidores OPC (Ole for Process Control), possibilitando a conectividade com diversos equipamentos que suportam este serviço. A tecnologia OPC implementa um mecanismo que provém dados de algum dispositivo para uma base de dados configurada em um servidor OPC, permitindo que qualquer aplicação cliente tenha acesso a mesma base de dados.

 

Interface Gráfica

 

A criação de interface para o usuário é feita de maneira simples e rápida. Estão disponíveis recursos como animações, displays, gráficos de tendência de vários tipos (linhas, área, barras, XY), botões, etc, que são ligados diretamente com as variáveis de campo (Tags). Também podem ser utilizados desenhos de qualquer editor gráfico. Além disso, o Elipse SCADA conta com uma biblioteca gráfica de desenhos mais utilizados, de modo a facilitar a criação de sinóticos. O usuário pode escolher entre utilizar o mouse, teclado ou touchscreen para acessar as telas de supervisão.

Lógicas (Scripts)

 

A fim de adicionar flexibilidade e poder realizar tarefas mais complexas, o usuário pode lançar mão de uma linguagem de programação interativa, que utiliza a maioria dos recursos de linguagens de alto nível como o Visual Basic ou Visual C++. A linguagem utilizada, chamada Elipse Basic, permite definir lógicas ou criar sequências de atitudes através de funções específicas.

Os Scripts são orientados a eventos, sendo que serão executados mediante a especificação de um acontecimento, como o pressionar de uma tecla, a mudança de uma variável ou ainda a cada intervalo regular de tempo, dentre outros eventos.

 

Históricos - Registro de dados

 

São estruturas responsáveis pelo registro dos dados de processo, para posterior análise. Os Históricos podem ser processos contínuos ou bateladas, guardando dados a intervalos de tempo fixos ou por eventos, definidos pelo usuário. A ferramenta de análise histórica pode ser utilizada para uma visualização mais sofisticada dos dados, permitindo zoom e filtro de dados, ver figura 12.

Figura 12.Ferramenta de análise histórica.

Conexão em rede (Cliente-Servidor)

 

O Elipse SCADA fornece soluções para conexão com outras aplicações via qualquer meio físico, seja uma Intranet (via protocolos TCP/IP ou IPX/SPX), Internet, ou ainda Linha Discada (Dial-Up Networking) e Linha Privada, além de satélites e links de rádio. O método utilizado baseia-se no conceito de Aplicações Remotas, onde os dados de uma aplicação qualquer (Servidor) são acessados por um Cliente, que poderá realizar a leitura e escrita de qualquer parâmetro. A estrutura de sockets permite que pelo mesmo canal trafeguem dados on-line e também transferências de arquivos de dados e imagens.

 

Banco de Dados

 

A integração do Elipse com qualquer base de dados é muito simples através de recursos ODBC (Open DataBase Connectivity). Wizards o auxiliarão no processo de conexão ou criação de uma base de dados qualquer, dentre elas SQL Server, Access, Oracle e DBase. A partir daí o Elipse SCADA oferece uma série de funções para a manipulação da base de dados, tais como adicionar, deletar e modificar registros, fazer consultas etc.

Ferramentas do Elipse

Elipse Watcher: Software para monitoração de sistemas de vídeo com recursos de captura, registro e transmissão digital de imagens em tempo real. Suporta diversos padrões, inclusive MPEG, possibilitando a visualização em janelas com tamanho e qualidade definidas pelo usuário. Permite a criação de um banco de dados de imagens com busca por período ou evento e transmissão de imagens em tempo real para estações remotas via TCP/IP ou linha discada.

Elipse Web: Sistema para supervisão de processos através da Intranet e Internet. Utilizando um browser comercial (Internet Explorer, por exemplo) é possível conectar-se a uma estação de supervisão remota, recebendo dados em tempo real (através de JAVA Applets). Com este recurso é possível acessar o processo de qualquer lugar do mundo.

Telas do supervisório

A modo de exemplo, a figura 13 ilustra a tela criada com um software SCADA simulando o controle de nível de um tanque.

Figura 13. Controle do nível de um tanque executado pelo ELIPSE SCADA.

Comentários