8
971 Anais do XIX Congresso Brasileiro de Automática, CBA 2012. ISBN: 978-85-8001-069-5 SIMULAÇÃO GRÁFICA DE UMA CÉLULA VIRTUAL USANDO UM CLP SIMULADO FELIPE NUNES, MARCELO DA S. HOUNSELL LAboratory for Research on Visual Applications (LARVA), Depto. De Ciência da Computação (DCC), Universidade do Estado de Santa Catarina (UDESC). Rua Paulo Malschitzki, S/N - Campus Universitário Prof. Avelino Marcante - Bairro Zona Industrial Norte - Joinville-SC - Brasil. CEP 89219-710. E-mails: [email protected], [email protected] NAZARENO DE O. P ACHECO Grupo de Integração da Manufatura (GRIMA), Depto De Engenharia Mecânica (DEM), Universidade Federal de Santa Catarina (UFSC). Caixa Postal 476 - Campus Universitário – Trindade, Florianópolis/ SC - 88040-900 E-mail: [email protected] ANDRÉ B. LEAL Grupo de Automação, Robótica e Sistemas (GARS), Depto. De Engenharia Elétrica (DEE), Universidade do Estado de Santa Catarina (UDESC). E-mail: [email protected] Abstract - A Flexible Manufacturing System (FMS) would be difficult to automate without a Programmable Logic Controller (PLC). This work performed a literature review and found some PLC simulators and their features. A few simulators allow viewing a manufacturing cell in 3D in order to help analyze the control logic. This study developed an open source freeware simulator, called PLC4u, implemented in Java, used to interpret "Instructions List" which is the standardized text version of the well-known Ladder language (visual interface programming). PLC4u can control a separate but compatible module, called Plant, which implements a 3D manufacturing cell comprised of two robots, a conveyor, a rotary table and two sensors. This manufacturing cell produces/receives discrete events that are mapped to the inputs/outputs of the PLC simulator, through which the whole dynamics and functioning of the manufacturing cell can be visualized. Keywords - Programmable Logic Controller, Flexible Manufacturing System, 3D Simulator. Resumo - Um Sistema Flexível de Manufatura (FMS) seria difícil de automatizar sem um Controlador Lógico Programável (CLP). Este trabalho realizou uma revisão da literatura e encontrou alguns simuladores de CLPs e suas características. Só alguns poucos simuladores permitem a visualização de um modelo de célula de manufatura em 3D para auxiliar na análise da lógica de controle. Este trabalho desenvolveu um simulador de código aberto freeware, chamado PLC4u, implementado na linguagem Java, usado para interpretar a “Instructions List” que é a versão textual normatizada da popular linguagem Ladder (programação via interface visual). PLC4u pode controlar um módulo separado mas compatível, denominado Módulo Planta, que implementa uma célula de manufatura 3D composta por dois robôs, uma esteira, uma mesa giratória e dois sensores. Esta célula de manufatura produz/recebe eventos discretos que são mapeados às entradas/saídas do CLP simulado, através do qual pode ser observada toda a dinâmica de funcionamento da célula. Palavras-chave - Controlador Lógico Programável, Sistema Flexível de Manufatura, Simulador 3D. 1 Introdução Os avanços tecnológicos nos últimos anos resultaram no desenvolvimento da programação lógica e um consequente desenvolvimento dos Controladores Lógicos Programáveis (CLPs), empregados nas indústrias. O uso de simuladores possui um custo menor se comparado à aquisição de todos os equipamentos físicos para reproduzir um ambiente fabril. Outras vantagens de um simulador incluem: não possui custo operacional e de manutenção, tem maior disponibilidade, não requer muito espaço físico e ainda possui boa interatividade, se pode fazer incontáveis teste, sem se preocupar com os erros, como exemplo um robô colidir com outro, danificando os equipamentos. Assim um simulador é uma alternativa viável, visto que se pode simular todo um ambiente físico e o próprio CLP. Alguns simuladores disponíveis, não possuem ambiente de visualização. Dos que possuem, a maioria é 2D e/ou limitados e/ou inflexíveis, e normalmente são simuladores pagos e proprietários. Por isso, foi desenvolvido um simulador de CLP, denominado PLC4u (Programmable Logic Controller for yoU), onde o usuário pode verificar sua execução em um ambiente gráfico 3D, bem como a própria simulação do CLP. Junto ao PLC4u, o usuário pode integrar uma célula de manufatura virtual 3D, para que ao iniciar o processo de

CBA_2012_SIMULAÇÃO GRÁFICA DE UMA CÉLULA VIRTUAL USANDO UM CLP SIMULADO

Embed Size (px)

Citation preview

Page 1: CBA_2012_SIMULAÇÃO GRÁFICA DE UMA CÉLULA VIRTUAL USANDO UM CLP SIMULADO

971

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

SIMULAÇÃO GRÁFICA DE UMA CÉLULA VIRTUAL USANDO UM C LP SIMULADO

FELIPE NUNES, MARCELO DA S. HOUNSELL

LAboratory for Research on Visual Applications (LARVA), Depto. De Ciência da Computação (DCC), Universidade do Estado de Santa Catarina (UDESC).

Rua Paulo Malschitzki, S/N - Campus Universitário Prof. Avelino Marcante - Bairro Zona Industrial Norte - Joinville-SC - Brasil. CEP 89219-710.

E-mails: [email protected], [email protected]

NAZARENO DE O. PACHECO

Grupo de Integração da Manufatura (GRIMA), Depto De Engenharia Mecânica (DEM), Universidade Federal de Santa Catarina (UFSC).

Caixa Postal 476 - Campus Universitário – Trindade, Florianópolis/ SC - 88040-900 E-mail: [email protected]

ANDRÉ B. LEAL

Grupo de Automação, Robótica e Sistemas (GARS), Depto. De Engenharia Elétrica (DEE), Universidade do Estado de Santa Catarina (UDESC).

E-mail: [email protected]

Abstract - A Flexible Manufacturing System (FMS) would be difficult to automate without a Programmable Logic Controller (PLC). This work performed a literature review and found some PLC simulators and their features. A few simulators allow viewing a manufacturing cell in 3D in order to help analyze the control logic. This study developed an open source freeware simulator, called PLC4u, implemented in Java, used to interpret "Instructions List" which is the standardized text version of the well-known Ladder language (visual interface programming). PLC4u can control a separate but compatible module, called Plant, which implements a 3D manufacturing cell comprised of two robots, a conveyor, a rotary table and two sensors. This manufacturing cell produces/receives discrete events that are mapped to the inputs/outputs of the PLC simulator, through which the whole dynamics and functioning of the manufacturing cell can be visualized.

Keywords - Programmable Logic Controller, Flexible Manufacturing System, 3D Simulator.

Resumo - Um Sistema Flexível de Manufatura (FMS) seria difícil de automatizar sem um Controlador Lógico Programável (CLP). Este trabalho realizou uma revisão da literatura e encontrou alguns simuladores de CLPs e suas características. Só alguns poucos simuladores permitem a visualização de um modelo de célula de manufatura em 3D para auxiliar na análise da lógica de controle. Este trabalho desenvolveu um simulador de código aberto freeware, chamado PLC4u, implementado na linguagem Java, usado para interpretar a “Instructions List” que é a versão textual normatizada da popular linguagem Ladder (programação via interface visual). PLC4u pode controlar um módulo separado mas compatível, denominado Módulo Planta, que implementa uma célula de manufatura 3D composta por dois robôs, uma esteira, uma mesa giratória e dois sensores. Esta célula de manufatura produz/recebe eventos discretos que são mapeados às entradas/saídas do CLP simulado, através do qual pode ser observada toda a dinâmica de funcionamento da célula.

Palavras-chave - Controlador Lógico Programável, Sistema Flexível de Manufatura, Simulador 3D.

1 Introdução

Os avanços tecnológicos nos últimos anos resultaram no desenvolvimento da programação lógica e um consequente desenvolvimento dos Controladores Lógicos Programáveis (CLPs), empregados nas indústrias. O uso de simuladores possui um custo menor se comparado à aquisição de todos os equipamentos físicos para reproduzir um ambiente fabril. Outras vantagens de um simulador incluem: não possui custo operacional e de manutenção, tem maior disponibilidade, não requer muito espaço físico e ainda possui boa interatividade, se pode fazer incontáveis teste, sem se preocupar com os erros, como exemplo um robô

colidir com outro, danificando os equipamentos. Assim um simulador é uma alternativa viável, visto que se pode simular todo um ambiente físico e o próprio CLP. Alguns simuladores disponíveis, não possuem ambiente de visualização. Dos que possuem, a maioria é 2D e/ou limitados e/ou inflexíveis, e normalmente são simuladores pagos e proprietários. Por isso, foi desenvolvido um simulador de CLP, denominado PLC4u (Programmable Logic Controller for yoU), onde o usuário pode verificar sua execução em um ambiente gráfico 3D, bem como a própria simulação do CLP. Junto ao PLC4u, o usuário pode integrar uma célula de manufatura virtual 3D, para que ao iniciar o processo de

Page 2: CBA_2012_SIMULAÇÃO GRÁFICA DE UMA CÉLULA VIRTUAL USANDO UM CLP SIMULADO

972

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

simulação, o usuário verifique as ações em 3D que o CLP provocou nos equipamentos (como movimentos, ligar e desligar, dentre outros). Este artigo está dividido da seguinte forma: O Capítulo 2 apresenta algumas definições sobre CLP. No Capítulo 3 são realizadas análises de simuladores de CLP. No capítulo 4 é descrito o simulador PLC4u, e a sua divisão em módulos. O capítulo 5 traz a discussão com os testes realizados. E por fim, o capítulo 6 traz as conclusões acerca deste trabalho.

2 Controladores Lógicos Programáveis

O Controlador Lógico Programável (CLP)

surgiu em meados do século XX, por volta da década de 70, na indústria automobilística, criado por Richard Morley (OLIVEIRA, 1993). Desde então, passou a ser utilizado no controle dos processos industriais, devido às vantagens como sua facilidade de configuração/programação, flexibilidade, confiabilidade e ainda, a sua escalabilidade em agregar novos equipamentos, dentre outros (opus citatum). O CLP é semelhante a um microcomputador, tendo em vista que possui hardware e software, que são necessários para a execução. O CLP possui um micro controlador/processador que utiliza uma memória programável onde são armazenadas as instruções para que, em seguida, sejam processadas as funções lógicas e aritméticas, a fim de controlar as máquinas e processos em um sistema de automação. O CLP possui ainda sistemas de entrada e saída que fazem a conexão física com os equipamentos do chão de fábrica (BOLTON, 2006). Um exemplo prático do ciclo de execução do CLP pode ser visto na Figura 1, onde o CLP recebe os sinais de entrada (chaves B0 e B1) que são conectadas às entradas do CLP.

Figura 1: Exemplo de implementação da lógica de programação

em um CLP (SILVEIRA, 1999). De acordo com a lógica de programação, o CLP gera os sinais de saída para o dispositivo, que neste caso é uma lâmpada (L0), concluindo o ciclo de processamento. Na Figura 1, ainda pode ser vista a maneira como é feita a conexão das entradas e saídas do CLP com o equipamento a ser controlado. Qualquer alteração desejada nesta lógica é realizada por meio de alterações no programa, permanecendo as mesmas conexões de entrada e saída com o CLP.

2.1 Linguagens de Programação do CLP

A norma IEC 61131-3 especifica cinco linguagens de programação para CLP (GEORGINI, 2007). Essas linguagens variam do nível mais alto para o nível mais baixo e são disponibilizadas para serem utilizadas de acordo com cada aplicação. Essas linguagens são (IEC, 2003):

• LD - Ladder Diagram ou Diagrama Ladder; • FBD - Function Block Diagram ou

Diagrama de Blocos de Funções; • IL - Instructions List ou Lista de Instruções; • ST - Structured Text ou Texto Estruturado; • SFC - Sequential Function Chart ou

Diagramas de Funções Sequenciais.

A adoção da norma IEC 61131-3 pela indústria é influenciada pela crescente complexidade do software de controle e, pelas exigências de automatização industrial com maquinários de alta tecnologia. O tempo de criação e o custo de mão de obra e manutenção têm impacto em projetos de controle que podem ser melhorados usando a IEC 61131-3, que especifica a sintaxe e semântica utilizada nas linguagens de programação do CLP. 2.2 X3D

O X3D é um padrão aberto para conteúdos 3D que utiliza sintaxe no padrão XML (Extensible Markup Language) (WEB3D, 2011). É uma linguagem simples e flexível, que pode ser integrada a outras linguagens, como a linguagem Java que foi utilizada na implementação do PLC4u e também para extensão de funcionalidades que o X3D não possui. O X3D pode ser considerado como a terceira geração do VRML (Virtual Reality Modeling Language), sendo a migração da tecnologia VRML para X3D menos trabalhosa com vantagens de ter mais funcionalidades que VRML e ter novos recursos gráficos (BRUTZMAN, 2007).

O X3D tem uma única API (Application Programming Interface) robusta e o mecanismo de componentes do X3D permite a desenvolvedores implementar suas próprias extensões de acordo com um rigoroso conjunto de regras.

3 Análise de Simuladores de CLP Existentes

Existem disponíveis vários simuladores de CLP, mas poucos são os que permitem visualizar a célula como os apresentados a seguir: O ITS PLC (www.realgames.pt) tem foco na apresentação gráfica e na simulação de plantas fabris e oferece versão gratuita mas, a versão profissional é paga, requer um CLP físico para permitir uma simulação, requer um hardware conversor especial (vendido pela própria empresa), as plantas fabris são pré-determinadas e é de código fechado.

Page 3: CBA_2012_SIMULAÇÃO GRÁFICA DE UMA CÉLULA VIRTUAL USANDO UM CLP SIMULADO

973

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

O PLCStudio (PARK et al. 2008) oferece uma simulação gráfica 3D de plantas fabris (ver Figura 2) juntamente com o funcionamento do CLP para a validação visual do programa CLP mas este é derivado de um modelo a Eventos Discretos que representa todo o processo e que modela também os equipamentos da célula. O trabalho entretanto não descreve como o programa CLP é gerado, processo este que é passível de vários problemas como descrito em (LEAL, CRUZ e HOUNSELL, 2012).

Figura 2: Célula de Soldagem (PARK et al., 2008).

Kuehn (2006) apresentou um trabalho com foco na simulação de ambiente fabril que inclui várias células de manufatura automáticas e robotizadas com todo um estudo de produção e layout. A simulação como um todo é baseada em modelos a Eventos Discretos e, a nível de célula, tem-se um gerador automático de programa CLP mas, para chegar neste estágio, é necessário todo o modelamento da célula também em Eventos Discretos e da especificação de todo um conjunto extra de informações de planejamento de processos e parâmetros para que o programa CLP seja gerado. Isto torna esta abordagem bastante laboriosa apesar de poder levar a possíveis otimizações globais. O SimuPLC (Simulador de Controlador Lógico Programável) (BARBOSA, 2011) é um software desenvolvido na linguagem C++, que reproduz os conceitos fundamentais dos CLPs. O SimuPLC é um software gratuito e está disponível na web, foi construído com finalidade didática para ajudar no estudo de CLP e seu ambiente é ilustrado para facilitar o aprendizado. Este simulador conta ainda com auxílio de plantas virtuais prontas, dentre elas, a planta que simula robôs cooperativos, como mostrado na Figura 3. Porém, as plantas virtuais não possuem uma sincronia com suas respectivas entradas, dificultando a simulação, e as planta virtual são em 2D e não possuem seu código aberto.

Figura 3: Robô manipulador do SimuPLC (BARBOSA, 2011). O simulador Logix Pro é a combinação do simulador ProSim com um editor/emulador de CLP que emula o CLP Allen Bradley (SIMPSON, 2011). É um software proprietário e fechado, construído para fins didáticos, disponível pelo preço de US$ 30,00. Utiliza fundamentos da linguagem de programação Ladder, que após sua programação, simula o processo com o auxílio do simulador ProSim, como mostra a Figura 4.

Figura 4: Exemplo de Planta virtual 2D (SIMPSON, 2011).

O LogixPro possui ainda oito plantas virtuais 2D pré-definidas, que simulam processos industriais, onde é possível visualizar o CLP atuando sobre elementos de chão de fábrica. 3.1 Limitações dos Ambientes Analisados

Analisando os simuladores apresentados, pode-se perceber que são poucos os que apresentam a visualização de uma célula ou processo de manufatura, muitos dos que o fazem utilizam apenas plantas virtuais 2D em sua simulação, raros são os que mostram a célula em 3D. Estes, são de código fechado e não possuem mapeamento para relacionar as entradas e saídas com os equipamentos (uma etapa delicada e trabalhosa numa instalação real). Além disso, as plantas apresentadas são prontas e não é dito como alterá-las ou construir outras. Outros trabalhos requerem um modelamento amplo

Page 4: CBA_2012_SIMULAÇÃO GRÁFICA DE UMA CÉLULA VIRTUAL USANDO UM CLP SIMULADO

974

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

de todo o conjunto fabril sem detalhar como a programação de CLP se integra neste processo. Portanto, um simulador aberto, gratuito e que possuí uma planta virtual 3D flexível e que permite melhor interação com programas CLP é um avanço em relação aos simuladores apresentados.

4 Descrição do Simulador PLC4u O processo a ser controlado pelo simulador

PLC4u consiste de uma célula de manufatura virtual 3D, onde uma possível configuração utilizada da célula é mostrada na Figura 5, composta por dois robôs, de uma estação teste, um sensor de presença, uma esteira transportadora e uma área de depósito para peças rejeitadas e outra área de depósito de peças prontas.

Figura 5: Inicializando a célula.

Se comparado ao trabalho de (SILVA, 2008), o PLC4u representa uma atualização tecnológica (da linguagem VRML para a nova X3D), alteração de forma de descrição da lógica de controle (de sistemas a Eventos Discretos com autômatos para a linguagem textual Instructions List aderente à norma 61131-3 e assemelhada ao popular Diagrama LADDER), uma reestruturação (de código monolítico para modular) e nova arquitetura (de ambiente web para stand-alone). Os equipamentos da célula serão ligados virtualmente às interfaces de entrada e saída do PLC4u, onde também são ligados os sensores e atuadores utilizados no controle da célula. As execuções das tarefas dos robôs serão também controladas pelo simulador PLC4u, que comanda todos os elementos que compõe a célula de manufatura virtual 3D. O PLC4u utiliza apenas sinais digitais, pois a célula de manufatura utiliza apenas sinais booleanos (ligado/desligado), em seu controle. O simulador PLC4u possibilita ao usuário simular os principais conceitos fundamentais do CLP, visto que executar operações lógicas e manipulação de dados. Esse simulador disponibilizará ao usuário a programação

de uma lógica análoga ao chão de fábrica a ser controlado, possibilitando ainda a interação com uma célula de manufatura virtual 3D. 4.1 Módulo Lógico

O módulo Lógico trata o programa utilizado no

controle da célula virtual, conforme mostrado na Figura 6. Nesse módulo as instruções booleanas, passarão pelo processo de tratamento léxico e sintático. Caso as instruções não possuam nenhum erro, inicia-se o ciclo de processamento, onde são lidas as entradas, que são processadas juntas com as instruções, e por fim resultando nas saídas.

Figura 6: Módulo Lógico.

A linguagem de programação de CLP utilizada no PLC4u, foi a IL (Instructions List) por ser a versão textual da linguagem largamente difundida do Diagrama Ladder, o que permite que se realize análises léxica e sintática, por ser textual. Ao iniciar o processo de simulação, deve-se entrar com uma programação utilizando IL no editor de texto, e em seguida deverá ser acionado o botão play na interface do CLP. Ao acionar o botão play, a programação contida no editor é enviada ao interpretador para serem feitos os tratamentos léxicos e sintáticos e o tratamento dos arquivos de entrada e saída que contém os sinais digitais. Esse tratamento se faz necessário, para padronizar os arquivos utilizados na simulação. Após o tratamento, e se não houver nenhum erro inicia-se o ciclo de processamento do CLP, os sinais, contidos nos arquivos de entrada, simulam os sinais aplicados às entradas de um CLP físico e a cada ciclo (varredura) todos esses sinais são lidos. Ao término do ciclo de varredura, os resultados são transferidos para um arquivo de saída, simulando desta maneira, a atribuição dos sinais aos terminais de saída de um CLP físico. 4.2 Módulo Planta

O módulo Planta é responsável pela simulação de uma célula de manufatura 3D, que consiste numa configuração onde as máquinas são dispostas de modo a simular as etapas do processo em um chão de fábrica, com o intuito de contemplar um ciclo de

Page 5: CBA_2012_SIMULAÇÃO GRÁFICA DE UMA CÉLULA VIRTUAL USANDO UM CLP SIMULADO

975

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

produção de uma peça ou produto dentro de uma restrita área de trabalho. Todos os modelos 3D foram desenvolvidos em X3D e o encadeamento de ações e Java. A célula de manufatura fica responsável por executar os eventos na cena de acordo com a saída do CLP e por fornecer os sinais de entrada ao CLP. Esses eventos podem ser controláveis ou não controláveis (CURZEL, 2008). Um evento controlável é aquele relacionado às saídas do CLP. Já os eventos não controláveis, são aqueles relacionados às entradas do CLP, uma vez que dependem do estado dos equipamentos da célula o qual o programa não tem controle. Ao iniciar o processo de simulação da célula, o primeiro passo é abrir efetuar o mapeamento, que relaciona entradas e saídas do CLP aos eventos não controláveis e controláveis respectivamente (ver tela de pop-up em destaque no lado direito da Figura 6). Este mapeamento será detalhado adiante. O segundo passo é abrir a tela de configurações e entrar com o número de peças a ser inserida na cena gráfica (como mostrado na Figura 6), e acionar o botão RUN, inicializando a célula. Como não existe nenhuma peça em frente ao sensor de presença, a planta manda a primeira entrada a ser processada pelo CLP, vindo do evento não controlável que indica que o sensor está desligado. Quanto mais peças forem inseridas na cena, maior é o tempo de execução devido à necessidade de atuação dos equipamentos manipuladores sobre todas as peças. Após a inicialização, a planta fica aguardando o sinal de saída do CLP onde, após receber os sinais de saída, executa sua ação na cena gráfica realizando um evento, como por exemplo, ligar a esteira. A visualização dos eventos na cena pode ser vista de qualquer ângulo, uma vez que a navegação pela cena 3D é completamente livre. Entretanto posições padronizadas de visualização podem ser alcançadas, pois na parte inferior da Figura 9 existe um menu, componente do Player Xj3D, que permitirá a escolha de vistas pré-definidas e a forma de interação com o ambiente 3D e, abaixo deste, uma barra de status, responsável por dar um feedback ao usuário. A célula é controlada pelo CLP, que envia os sinais de saída, habilitando o controle dos eventos na cena, exercendo controle sobre equipamentos da cena gráfica. O módulo Planta realiza a verificação do arquivo de saída do CLP que contém os sinais digitais. Quando o arquivo de saída for alterado, a planta executará uma ação, onde ao iniciar o processo de simulação, será a planta quem fornecerá o primeiro arquivo de entrada a ser trato junto com a lógica de programação. Isso foi arbitrado, pois o CLP necessita dessas entradas. O módulo Planta realiza a leitura do arquivo de saída (OUT.TXT) e efetua o relacionamento com os eventos controláveis para que estes sejam executados na cena, sendo que esses eventos pertencem a uma determinada classe, que é

responsável pela sua execução na cena gráfica. Já os eventos não controláveis gerados na cena geram o arquivo de entrada (IN.TXT) para o CLP. Como padrão de eventos (controláveis e não controláveis) adotado pela Planta, utilizou-se os eventos apresentados na Tabela 1, ou seja, mesma descrição de eventos utilizada na lógica de controle discreto da célula de manufatura real (CURZEL, 2008).

Tabela 1: Eventos dos Dispositivos da Célula

Fonte: (CURZEL, 2008).

4.2.1 Mapeamento

O módulo da Planta como mostrado no destaque ‘C’ da Figura 7, é composto por dois robôs, uma esteira, uma mesa giratória e por sensores de presença e fotoelétrico. Antes de começar um processo de simulação, é necessário fazer o mapeamento das entradas e saídas do CLP, ligando os eventos da célula de manufatura a uma determinada entrada ou saída. Isto é feito através do processo de mapeamento, como esquematizado no destaque ‘B’ da Figura 7.

Figura 7: Mapeamento das entradas e saídas do CLP.

Os eventos não controláveis são ligados às entradas do CLP, pois quando eles forem realizados pela Planta, irão gerar uma nova entrada, em uma

Page 6: CBA_2012_SIMULAÇÃO GRÁFICA DE UMA CÉLULA VIRTUAL USANDO UM CLP SIMULADO

976

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

determinada porta a qual esse evento foi relacionado. Os eventos controláveis são ligados à saída do CLP, pois são eles que mandam uma ordem de ação à Planta (ver destaque ‘B’ da Figura 7), lembrando que esses sinais de entrada e saídas estão relacionados aos eventos internos realizados na cena. Esse processo de mapeamento simula uma conexão física de um CLP a um determinado equipamento comandado por ele, como se uma saída fosse ligada a um equipamento de planta por um fio elétrico. Os eventos disponíveis no mapeamento estão descritos na Tabela 1, onde os eventos disponíveis para as entradas são: S_liga, S_desl, F_giro, F_rb1, T_OK, T_NOK, F_rb2. Já os eventos disponíveis para as saídas são: E_liga, E_desl, I_giro, I_teste, T_M, T_R, T_S. Esses mapeamentos devem ser feitos na tela de mapeamento (destaque ‘B’ da Figura 7) onde esses eventos mapeados é que são responsáveis pela atribuição de uma ação a um determinado elemento da planta, como por exemplo, ligar e desligar a esteira. Ao mapear um evento a uma determinada entrada do CLP, este evento fica responsável por gerar o sinal de entrada para o CLP, como por exemplo, ao relacionar a porta de entrada I0 ao evento F_rb1 (fim da operação do robô 1), quando ocorrer esse evento, será escrito um novo arquivo de entrada para o CLP, onde será atribuído o sinal lógico 1 à entrada I0. Vale lembrar que o mapeamento das entradas não é fixo, podendo ser alterado a qualquer momento para representar diferentes ligações. Esse mapeamento também é realizado na saída do CLP, como por exemplo, relacionando a porta de saída Q0 ao evento T_M (início de operação do robô 1), onde a planta ao realizar a leitura do arquivo de saída e verificar que o sinal lógico de QO for 1, a planta irá executar o evento que inicia a rotina do robô. O uso do mapeamento além de determinar qual evento está relacionado com uma determinada entrada ou saída, tem também a função de evitar duplicação de envio de sinais em uma mesma porta de entrada por dois ou mais eventos, ou que duas ou mais saídas gerem o mesmo evento. Como exemplo de duplicação a ser evitada, seriam os eventos F_rb1 e F_rb2 relacionados ao robô 1 e robô 2, gerem sinais a porta I0. Com o mapeamento isso é controlado para não ocorrer.

5 Testes e Resultados

Foram feitos testes do CLP junto com a Planta, de modo a contemplar todos os dois módulos do simulador, onde o CLP trata a lógica de programação e Planta executará os eventos seguindo as ordens do CLP. Os testes realizados estão descritos a seguir. A primeira rotina foi a da esteira, como mostrada na Figura 8, onde criou-se uma rotina onde o PLC4u lê o sinal entrada I0 e atribuiu esse sinal na saída Q0.

Para relacionar essa saída à esteira, foi necessário fazer o mapeamento, relacionando a saída Q0 aos eventos E_liga e E_desl. Ao atribuir-se nível lógico 1 a entrada I0, isso fez com que fosse atribuído nível lógico 1 à saída Q0, fazendo com que a esteira executasse sua rotina de movimentar a peça, e ao modificar esse sinal de entrada para nível lógico 0, a saída passou a ter também nível lógico 0, fazendo com que a esteira parasse de movimentar a peça .

Figura 8: Rotina da esteira.

A segunda rotina testada foi a do Robô 1, como mostrado na Figura 9, onde se criou uma rotina onde o PLC4u lê o sinal da entrada I1 e atribuiu esse sinal à saída Q1.

Figura 9: Rotina do robô 1.

Para relacionar essa saída ao robô 1, foi necessário fazer também o mapeamento, relacionando a saída Q1 ao evento T_M. Ao atribuir-se nível lógico 1 à entrada I1, isso fez com que fosse atribuído nível lógico 1 à saída Q1, fazendo com que o robô 1 executasse a operação, como se tivesse pegando a peça sobre a esteira e a colocando sobre a mesa giratória. Como o fim de operação do robô 1 é um evento não controlável, o CLP envia o sinal para que o robô 1 inicie sua rotina, porém não consegue ordenar que ele pare. A última rotina testada foi a do robô 2, como mostrado na Figura 10, onde se criou uma rotina onde o PLC4u lê o sinal da entrada I3 e atribuiu esse sinal à saída Q3. O robô 2 pode executar duas operações, sendo a rotina de transporte de peça boa e o da peça ruim. Para relacionar uma rotina do robô 2 a saída, foi necessário fazer também o mapeamento. O evento T_R é relacionado à saída Q3. Essa rotina faz com que o robô 2 faça o transporte de peça ruim. Como o fim de operação do robô 2 também é um evento não controlável, o CLP envia o sinal para que o robô 2 inicie uma determinada rotina, porém não consegue ordenar que ele pare.

Page 7: CBA_2012_SIMULAÇÃO GRÁFICA DE UMA CÉLULA VIRTUAL USANDO UM CLP SIMULADO

977

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

Figura 10: Rotina do robô 2.

Por fim foram feitos testes executando o controle dos eventos na cena, como mostra a Figura 11, que mostra uma parte da Lista de Instruções utilizada no controle da planta virtual 3D como um todo conforme descrito a seguir: No início da simulação foram inseridas peças na cena, que em seguida inicia a ligação do motor da esteira transportando as peças até o robô 1. Assim, quando uma peça é detectada pelo sensor de presença posicionado no final da esteira, esta deve ser desligada e o robô 1 deve levar a peça até a mesa giratória. O robô 1 coloca a peça na mesa giratória e volta à sua posição inicial, gerando então um sinal para o CLP informando o final de sua operação. A mesa dá um giro de 180º levando a peça até a posição onde será efetuado um teste pelo sensor fotoelétrico que indicará se a mesma está boa ou ruim. Ao final do teste o robô 2 fará o transporte para o local adequado das peças boas ou peças ruins (CURZEL, 2008).

Figura 11: Parte da Lista de Instruções utilizada no controle da

planta virtual.

6 Conclusões

Os ambientes industriais estão cada vez mais repletos de máquinas variadas e em maior quantidade ao mesmo tempo em que é exigida uma maior coordenação e velocidade das operações. O Controlador Lógico Programável (CLP) é um dos equipamentos responsáveis por muito do controle do que ocorre na planta fabril. Entender a importância e a repercussão do que e programado no CLP no ambiente fabril pode ficar mais fácil se for usado um simulador de CLP associado a um chão de fábrica virtual 3D.

Neste trabalho foi realizado um levantamento de simuladores de CLP, onde foi possível identificar algumas lacunas, como:

• Ausência do uso de planta virtual 3D reconfigurável;

• Falta de um simulador de CLP de código aberto e gratuito;

• Carência de uso da versão textual do Diagrama Ladder, a Instructions List.

O PLC4u pode ser utilizado como ferramenta de auxílio na aprendizagem (educação e/ou treinamento) sobre automação industrial. Foram criados programas para realizar o controle de uma célula de manufatura, dispostos de modo a simular as etapas do processo industrial. As principais características do PLC4u, são:

• O desenvolvimento modular permite que outras formas de geração de controle da planta (arquivo IN.txt e OUT.txt), possam ser desenvolvidas sem alterar o módulo de visualização da planta virtual 3D;

• A interface do PLC4u dispõe de vários controles que permitem a execução de programas de controle de forma a facilitar o desenvolvimento e aprendizagem;

• O módulo Planta 3D é livre de associação de quantos e quaisquer sinais de eventos internos à célula, além da livre navegação pelo ambiente durante a execução do programa de controle;

Com a utilização do PLC4u é possível visualizar um ambiente contendo equipamentos como por exemplos robôs, esteira, dentre outros, e com uso do simulador de CLP interagir com esses elementos sem se preocupar com os possíveis erros que possam ocorrer, e com os riscos de manuseio desses equipamentos em laboratório ou até mesmo em um chão de fábrica. Sendo assim, podem ser listadas algumas vantagens ao utilizar PLC4u, como por exemplo:

• Reproduz virtualmente uma célula de manufatura, semelhante a uma real (CURZEL, 2008) e dessa forma permite “experimentar” os efeitos de uma determinada programação do simulador de

Page 8: CBA_2012_SIMULAÇÃO GRÁFICA DE UMA CÉLULA VIRTUAL USANDO UM CLP SIMULADO

978

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

CLP, sem que a situação real esteja de fato ocorrendo;

• Permite “errar ao aprender” sem sofrer as consequências danosas de um erro real, podendo ser utilizado não apenas para treinamento, mas também para o ensino regular. Lembrando ainda que leva a economia de tempo e dinheiro, pois não é preciso ter laboratórios.

Ao final deste trabalho, foi desenvolvida uma estratégia de simulação de um CLP junto com uma célula de manufatura virtual 3D. Sua implementação usou como base a norma IEC 61131-3, de modo a simular algumas características e conceitos fundamentais dos CLPs, visto que o simulador executa operações lógicas para o controle de um sistema de automação. Trabalhos futuros incluem o desenvolvimento de um editor gráfico Ladder integrado, bem como um editor gráfico 3D para facilitar a criação de novos layouts fabris.

Agradecimentos

Os autores gostariam de agradecer ao professor Roberto Silvio Ubertino Rosso Jr., pelas sugestões ao longo do desenvolvimento deste trabalho.

Referências

Barbosa, A. L. (2008) SimuPLC. Versão 4.1.0. Disponível em: <http://www.andrebarbosa.eti.br/SimuPLC_Principal.htm>, acessado em: 19 nov. de 2011.

Bolton, W. (2006) Programmable Logic Controllers. Burlington, MA: Elsevier, 4ª ed. p.p 3-15.

Brutzman, D. & Daly, L. (2007) X3D: Extensible 3D for Web Authors. Morgan Kaufmann Publishers – Elsevier.

Curzel, J. L. (2008) Síntese e Implementação de Controle Supervisório em uma Célula Flexível de Manufatura Didática. Dissertação (mestrado). Joinville, SC: UDESC.

Georgini, M. (2007). Automação Aplicada.Editora Érica. São Paulo. p.p. 48-106.

IEC: International Electrotechnical Commission. (2003). International standard IEC 61131-3, Programmable Controllers, Part 3: Programming Languages. Geneva, 2nd edition.

Kuehn, W. (2006) "Digital Factory: Integration of Simulation Enhancing the Product and Production Process Towards Operative Control and Optimization. Intl. J. of Simulation 7(7): 27-39. Também disponível em http://ducati.doc.ntu.ac.uk/uksim/journal/Vol-7/No-7/Paper3.pdf acessado em 11/07/2012.

Leal, A. B.; Cruz, D. L. L.; Hounsell, M. S. (2012) "PLC-based Implementation of Local Modular

Supervisory Control for Manufacturing Systems". In: Faieza Abdul Aziz. (Org.). Manufacturing System (ISBN 979-953-307-493-0). Rijeka (Croacia): InTech, p. 1-24

Oliveira, J. C. P.. (1993). Controlador Lógico Programável. São Paulo, Makron Books. p.p. 30-100.

Park, S.C.; Park, C. M.; Wang, G.-N.; Kwak, J.; Yeo, S. (2008) "PLCStudio: Simulation Based PLC code Verification". In: Winter Simulation Conference, IEEE, pp. 222-228. Também disponível em http://www.informs-sim.org/wsc08papers/024.pdf, acessado em 11/07/2012.

Silva, E. L.. (2008) Simulador de uma Célula de Manufatura Reconfigurável Virtual. Trabalho de Conclusão de Curso - Ciência da Computação. Joinville, SC: UDESC.

Simpson, B. (2011). The LogixPro Simulator. Disponível em: <http://www.thelearningpit.com/plc/psim/psim.html>, acessado em: 19 nov.

Silveira, P. R.; Santos, W. E. (1999). Automação e Controle Discreto. 1º ed. São Paulo:Érica, p.p.100-160.

Web3d Consortium. (2011). X3D Frequently Asked Questions. Disponível em: <http://www.web3d.org/about/faq/>, acessado em: 19 nov.