Gerenciador de uma Célula Flexível de Manufatura Antonio Valerio Netto ' Arthur José V. Porto! Departamento de Engenharia Mecânica - SEM Universidade de São Paulo - USP/EESC - Campus São Carlos Av. Dr. Carlos Botelho, 1465 Vila Pureza 13560-250 São Carlos SP - Brasil lavnett o@ s c.usp.br 2 a j v p o r t o @s c . u s p . b r Abstract: !his paper describe a proposal of a software management of a flexible manufacturing cell developed in language C, which control at the same time four cell's components. The communication among the microcomputer management and the too components of cell is based at a type star data architecture, RS232-C standard that utilize specific protocol to each your equipments. Resumo: Este artigo descreve uma proposta de um software gerenciador de uma célula flexível de manufatura desenvolvido em linguagem C, que controla simultaneamente quatro componentes de uma célula. A comunicação entre o microcomputador gerenciador e os demais componentes da célula é baseada numa arquitetura de comunicação de dados tipo estrela, padrão RS232-C que utiliza protoco los específicos para cada um dos equipamentos. Introdução A automação industrial iniciou-se com o desenvolvimento, dentro das empresas de manufatura, das chamadas ilhas de automação. Estas ilhas são subsistemas que apresentam a automação de alguns processos organizacionais ou produtivos que, a principio, não possuíam características de interfaceamento ou comunicação com outros subsistemas para a exploração mais racional das novas tecnologias de automação . [Politano, (1993)] Uma das novas tecnologias de automação existentes hoje é chamada de FMS (Flexible Manufacturing System). Existem várias definições na literatura [Fine, (1989) ; Kochan , (1986); Kunzle, (1990) ; Lepikson, (1990.)] sobre sistemas flexíveis de manufatura; de um modo geral , trata-se de um sistema que conecta estações de trabalho automatizadas com um sistema de manipulação e armazenamento de materiais. Tem como objetivo fornecer uma capacidade de produção automatizada em multiestágios para uma maior variedade de peças, que são tradicionalmente feitas em uma linha de transferência não flexível, altamente automatizada. Estes sistemas fornecem flexibilidade devido a possibilidade das operações i serem executadas em diferentes estações de trabalho e o fluxo de peças entre as estações poder ser variado de acordo com o controle da produção, via software. Em função da complexidade do processo de fabricação , no FMS pode-se segmentar as etapas de processamento em algumas sub-etapas: diversos FMC's (Flexible Manufacturing Cell) se completam em sua respectiva especialidade, para fornecer a peça processada. [Lepikson, (1990)] De uma forma geral, uma célula flexível de manufatura pode ser definida como um grupo de recursos de manufatura, consistindo de máquinas e estações de trabalho que são organizados e programados como uma entidade para aceitar peças discretas, submontagens e materiais. A célula adiciona valor através do processamento criando um novo produto identificável como sua saída. As células podem ser automatizadas, semi-automatizadas, operadas manualmente, ou uma combinação de todos os três tipos. [Politano, (1993)] O departamento de Engenharia Mecânica da EESCIUSP, do campus de São Carlos, vêm desenvolvendo um plano para capacitação tecnológica nesta área. Uma das atividades de pesquisa é o uso de uma célula flexível de manufatura, constituída por quatro componentes, que é empregada na produção de peças individuais. Ela é extremamente versátil quanto a mudanças de peças; uma vez disparado o processo de 178 fabricação, ela realiza todas as operações necessárias, sendo que, para alterar o tipo da peça, basta alterar a programação de seus elementos. Espera-se que através da simulação desta célula flexível, possa-se demonstrar e pesquisar o processo de informação entre seus componentes. movimentação de material aleatório, pouca ou média quantidade de carga, com múltiplos pontos de parada. [Morandin Jr., (1994)] . O magazine automatizado é um sistema de armazenagem de material para processos de fabricação. Ele é constituído de nichos onde o material é armazenado sem a intervenção humana, com operações de carga/descarga controlados por computador. Suas Descrição da célula flexível de manufatura vantagens estão na possibilidade do controle A célula flexível de manufatura é composta por um computacional do material em processo; situação e centro de usinagem controlado por CN, um localização on-line do material (peças, ferramentas, manipulador mecânico (robô), um veículo autopalletsy nos subsistemas do FMS. Permite a redução de guiado (AGV) e um magazine automatizado, todos inventários, eliminação do manuseio repetitivo de controlados por um microcomputador gerenciador materiais, aumento da produtividade, aumento da da célula (MGC) que por sua vez, se comunica com segurança e redução das perdas por danificação e erros o restante da Fábrica Integrada Modelo (FIM), . de localização. utilizando uma rede local, padrão ethemet. [Valerio No projeto da célula flexível de manufatura, foi Netto, (1995)] implementado um sistema automatizado de armazeO centro de usinagem citado é uma máquina namento e entrega de paIlets chamado AR/RS . ferramenta CNC para a usinagem de peças O sistema AR/RS é basicamente formado por prismáticas. Possui uma mesa para fixar peças com estantes de armazenamento, ao longo das quais move-se capacidade de rotacionar em giros de 90 graus e uma máquina de carga/descarga automatizada (máquina dispositivos para permitir a automatização das de CID) . Esta máquina de CID normalmente é um operações de carga, descarga e usinagem da peça. elevador, no qual é fixado um carro de transferência, e A operação de abertura/fechamento da porta é através da elevação/abaixamento deste carro, é realizada por um pistão pneumático fixado na porta selecionada uma linha de armazenamento. Após o do centro de usinagem . Este pistão é acionado por posicionamento na localidade desejada, o carro de uma eletro-válvula controlada pelo MGC. Esta transferência se encarregará de : coletar/armazenar o mesma eletro-válvula é responsável também pelo pallet. O armazenamento/entrega de materiais é feito dispositivo de fixação da peça instalado sobre a numa região denominada estação de entrada/saída, mesa do centro de usinagem. O manipulador mecânico é basicamente um localizada no extremo das estantes de armazenamento. Através da implementação de um controle robô reprogramável e muItifuncional que possui computadorizado, o sistema opera automaticamente, seis graus de liberdade e foi projetado para sendo necessário apenas a troca de dados entre o movimentar materiais, peças, ferramentas ou computador controlador do magazine e o MGC. dispositivos especiais através de movimentos Este sistema apresenta como características programáveis, que executam tarefas variadas. principais: operação automatizada, capacidade de [Morandin Jr., (1994)] Sua função básica é armazenamento de pallets nos dois lados do corredor, realizar carga/descarga de peças paIletizadas entre o flexibilidade de disposição das localidades veículo auto-guiado (AGV) e o centro de usinagem (compartimentos) de armazenamento, modularidade , O veículo auto-guiado (AGV) é um sistema de compatibilidade com o dispositivo de transferência de carga, transporte e descarga, controlado por um microcomputador de bordo, sem a presença de um cargas utilizado no manipulador e integração ao sistema operador. Ele é equipado para seguir uma guia de manipulação de materiais. [Tronco, (1992)] Na figura I é mostrado o layout da célula de flexível, a qual pode ser facilmente modificada ou manufatura flexível (FMC) desenvolvida no expandida. [Gunsser, (1988)] Sua função é Departamento de Eng. Mecânica da EESC/USP. transportar ferramentas e/ou pallets de peças desde os locais de armazenagem até os .locais de trabalho ou vice e versa, seguindo trajetórias Funcionamento e monitoramento gráfico dos preestabelecidas com base na otimização do layout componentes da célula de trabalho do chão de fábrica . Dentro do ambiente da célula, o controle, Na célula foi utilizado um AGV do tipo sequenciamento e sincronismo de operações dos transportador de carga unitária devido a ele permitir elementos componentes do sistema de manipulação de carregar, sobre si mesmo, cargas simples ou materiais (AGV, Magazine Automatizado e múltiplas, sendo usualmente bidirecional, isto é, Manipulador) e da estação de processamento (Centro de pode trafegar em direções opostas ao longo da guia. Usinagem) é realizado pelo MGC (Microcomputador Sua maior aplicação está em áreas onde há Gerenciador da Célula). 179 REDE L0 ::...cC :..cA-=L = -._ I -_ MICROCOMPUTADOR CERENCIADOR DA CÉLULA __1_ l-i - :! I ! mTITIfJ) MAGAZINE AUTOMÁTICO .t.... : L'd INTERFACES MULTlSERIAL E PARALELA * I iI I R , f\', \ I A.G.v. .} CENTRO DE Figura 1 - Célula de Manufatura Flexível do LAMAFE . [Morandin Jr., (1994)] Este processo é realizado seguindo uma sequencia padrão de trabalho ; apenas um dos componente é acionado de cada vez . Quando ocorrer uma liberação de uma ordem de fabricação, o MGC envia o programa de usinagem (programa CN) para o centro de Usinagem, em segu ida é acionado o magazine automatizado para buscar uma peça bruta na estante porta pallets, esta peça será depositada sobre o AGV, utilizando-se para isto, a máquina de carga/descarga. O AGV por sua vez, levará a peça até as proximidades do manipulador, o qual irá retirá-Ia da plataforma do veículo e colocá-Ia na mesa de fixação do centro de usinagem . Posteriormente é acionado o dispositivo de fixação da peça na mesa (cilindro pneumático) e fechada a porta de segurança, permitindo assim a execução do programa de usinagem. Tão logo a peça esteja pronta, o movimento inverso será feito, até a armazenagem . Com relação' a este armazenamento foi padronizado que a peça usinada retome para o mesmo nicho de que foi retirada anteriormente. Todo este procedimento possui um monitoramento gráfico realizado pelo MGC. No canto superior esquerdo (figura 2) é possível saber qual dos componente da célula está em funcionamento no momento, para isto basta observar qual deles está com a marcaç ão A (Ativado), setada; no caso do exemplo da figura 2, o magazine automatizado é o que está em atividade . Pode-se saber também a localização do AGV, se ele está perto do magazine ou do centro de usinagem, através das marcações próximas a estes componentes (no caso do exemplo, ele está perto do magazine). A marcação AI (Alerta), se estiver setada, indica a existência de algum problema no componente da célula correspondente. No canto inferior esquerdo é possível fazer essa mesma visualização, porém em forma de porcentagem de utilização da máquina . Existe também um relógio marcando o horário de início de cada processo. No canto superior direito existe a visualização do número da ordem de fabricação da peça a ser usinada, e o código da unidade desta peça. Esses dados são passados como parâmetros no início da execução do programa principal. Existe também a sinal ização do status da peça: E (Espera) indica que a peça está esperando para ser usinada, D (Desenvolvimento) significa que esta peça está sendo usinada no momento e L (Liberada) indica que a peça finalizou sua usinagem e está liberada. Este quadro, na verdade é um histórico das dez últimas peças produzidas no sistema. No canto inferior direito existe um quadro que servirá também para armazenar o histórico das dez últimas peças supervisionadas, marcando quanto tempo cada uma levou para ser usinada. Unidade de controle Para a realização da integração dos componentes da célula foi adotada uma arquitetura de comunicação cuja topologia segue a configuração estrela, isto é, uma rede com um único computador man ipulando a comunicação com o resto do sistema. 180 AO A1 111 . . 0.0 .......... ro d. Ord .. F.t3r. 001 002 • AD AI C. St;.tus CoeSiva d. lJnld_ 00897 00987 E D L o O O O AO A1 O O O O O O O O O O O O O O O O O O O O O O O O 'l. de ut;i- 1izacao 100 90 ao 70 60 :S0 40 30 20 10 O D O "aquin. _"a9.z1n. _AGU _Rabo inicio 03:22:32 _ceU Figura 2 - Monitoramento gráfico do sistema. [Politano, (1993)] .Cada componente foi conectado a unidade de controle através de uma ligação ponto-a-ponto. Este tipo de transmissão de dados é a técnica mais conhecida e usada em aplicações de chão de fábrica quando se deseja fazer transmissão serial assíncrona entre uma estação de transmissão e recepção. [Politano, (1993)] Neste tipo de transmissão um byte (geralmente um caracter ASCII) pode ser enviado e recebido de modo assíncrono. Um start bit é gerado pelo transmissor no início de cada cadeia seguido pelos bits que codificam o caracter ASCII e um ou mais stop bits. O sincronismo do receptor é iniciado pelo stop bit e serve como referência de temporização para que cada bit possa ter seu nível lógico identificado. Esta técnica está incorporada no padrão RS232-C definida pela ElA (Electronic Industrial Association). [Gaylord, (1987)] O software controlador executado no MGC (Microcomputador Gerenciador da Célula) foi dividido em dois módulos: controle e comunicação. O módulo de controle da célula corresponde a um algoritmo de controle, que utiliza estruturas de dados em forma de tabelas. As tabelas contêm as especificações da estratégia de controle da célula. Foram também desenvolvidos programas de edição para manipular os dados das tabelas. As principais tabelas usadas pelo algoritmo de controle são: tabelas de estados, de eventos, de estados atuais, de próximos estados e de comandos. A tabela de estados contém todos os estados previstos em que cada componente pode se encontrar, e a cada estado está associada uma lista de eventos . A tabela de eventos contém todos os eventos possíveis de ocorrerem na célula . Cada evento pode possuir uma condição associada, isto é, o evento ocorre dependendo da condição do estado associado à transição . Ocorrido o evento, o próximo estado é ativado e o comando de alto nível associado a este estado (ação que deve ocorrer) é enviado ao componente da célula. A tabela de estados atuais representa os estados correntes dos componentes da célula . Cada componente possui um registro onde está indicado o seu estado atual, um flag que indica se o estado possui ou não um comando de alto nível associado e o status deste comando . A tabela de próximos estados apresenta a mesma estrutura da tabela de estados atuais . Ela é preenchida de acordo com a execução dos comandos associados aos estados contidos na tabela de estados atuais. Após a execução de todos os comandos associados a tabela de estados atuais, esta é substitu ída pela tabela de próximos estados. Por fim a tabela de comandos contém os comandos de alto nível associados aos estados de cada componente da célula. No módulo de controle foi implementado um algoritmo orientado para busca em tabelas, porque é basicamente nas tabelas de estados e eventos que está representada a especificação lógica do controle da célula. A seqüência dessas buscas é feita a partir de uma condição inicial do sistema (estados default) que está representada nas tabelas de estados atuais. O algoritmo usa a tabela de estados atuais para enviar os comandos de alto nível associados ao módulo de comunicação. Esses comandos são traduzidos pelo módulo de comunicação para então serem enviados na forma de comandos específicos para os componentes. O status de comando executado é indicativo que um dos eventos associados ao estado atual ocorreu. O algoritmo 181 então realiza uma busca na tabela de estados para listar os possíveis eventos. De posse da lista, o algoritmo seleciona um evento que satisfaça na tabela de eventos, uma condição verdadeira para que o evento tenha ocorrido. Uma vez o even to determinado, o próximo estado e o próximo comando ficam determinados . O algoritmo modifica a tabela de estados atuais e uma nova configuração do estado é estabelecida para cada componente. O módulo de controle da célula será ativado a partir do momento que exista uma ordem de fabricação a ser executada e o setup (tempo de preparação) da célula já tenha sido realizado. Após a ordem ter sido executada, o sistema deverá voltar à condição inicial a espera de uma nova ordem. No modelo especificado, as condições iniciais e finais na realização da ordem de fabricação são preestabelecidas. No estado inicial do modelo, assume-se que já exista uma peça sendo usinada e no estado final considera-se que haja uma peça usinada no centro de usinagem . As condições iniciais e finais para a fabricação de uma ordem serão tratados no algoritmo de controle como cond ições de inicialização, para a entrada da primeira peça , e final ização, para a saída da última peça da ordem (lote). O módulo de comunicação é o responsável pela decodificação dos comandos enviados pelo módulo de controle, transformando-os em fram es apropriados para a transmissão de dados para cada componente da célula. O módulo foi estruturado funcionalmente em quatro sub-módulos: interface de comandos, tradutor, protocolo de comandos e protocolo de comunicação. Os três últimos são específicos para cada componente enquanto que a interface de comandos é comum para todos. Esta interface de comandos é responsável por receber o comando ' enviado pelo módulo de controle e selecionar através de uma lista de comandos cadastrados, o sub-módulo de tradução que será responsável pela interpretação e tratamento do comando. O tradutor contém a rotina e a base de dados com as informações necessanas para a decodificação e tratamento do comando. Esta base de dados possui a ,seqüência de comandos específicos para a operação de cada componente da célula. . O protocolo de comandos contém uma lista de formatos de dados (telegrama) para cada comando. Assim ; o tradutor selecionará o comando ou a cadeia de comandos que deverão ser utilizadas pelo protocolo de comunicação. Este protocolo de comunicação determina o procedimento de transmissão e recepção de dados, gerenciando o trânsito deles pelo me io físico . Neste protocolo reside a rotina que estabelece o acordo sobre o processamento de troca de dados com um componente específico da célula. O meio físico utilizado para a comun icação de dados entre MGC e os demais componentes da célula é constituído por uma placa multiserial padrão RS232-C e duas interfaces paralelas. Uma paralela (Porta A) é responsável pelo controle do manipulador; através dela pode-se selecionar o programa que o robô vai executar, enviar seu start (inicio da execução do movimento) e posteriormente determinar a sua parada (slop). A outra interface (Porta B) controla o ciclo de start do centro de usinagem , o abrir e fechar da porta pneumática de segurança e o acionamento do dispositivo de fixação da peça dentro da máquina. Com relação as seriais, uma (COMI) esta sendo utilizada para a descarga do programa CN no centro de usinagem , outra (COM2) está sendo utilizada para o controle do magazine automatizado e uma terceira serial (COM3) faz o controle do AGV . Sobre o controle do magazine automatizado é importante frisar que ele possui um microcomputador onde se encontra um programa que controla os movimentos da máquina de carga/descarga (busca e recuperação da peça) , isto é, o MGC através da comunicação serial transmite os comandos para este microcomputador, e este posteriormente decodifica-os e os envia para máquina de carga/descarga executar os movimentos requisitados . Movimentos como por exemplo, o de localizar e pegar o pallet que está numa determinada coordenada x e y; levar este pallet até a posição de embarque; embarcar/desembarcar o pallet do AGV e recolher o carro de transferência para posição de repouso . [Tronco, (1992)] Com relação a troca de informações entre o AGV e o MGC, ela é realizada através do modo contínuo, para garantir a passagem de parâmetros em qualquer instante , se necessário ou desejado. Para esse modo de comunicação, a técnica escolhida foi a comunicação por R ádio-Frequência. Dois níveis na comunicação deverão ser destacados: o nível físico, onde serão especificados o padrão elétrico e o meio físico de comunicação; e o nível lógico, onde serão apresentados o protocolo lógico e os dados ou informações a serem trocados. Ao nível físico , serão utilizados dois conjuntos modulares/demodulares de RF, um sendo conectado à interface serial (RS232-C) do microcomputador controlador de bordo do AGV e o outro à interface serial (COM3) do MGC. Ao nível lógico, as informações trocadas serão sobre : o destino do AGV , tipo de carga, permissão para tráfego, parada de emergência (ocasionada por exemplo por colisão do veículo com algum obstáculo ou por solicitação do MGC), estação atingida, presença ou ausência de carga sobre a plataforma de trabalho e identificação de eventuais defeitos (emergência por 182 colisão, emergência por solicitação através do botão de stop do AGV ou escape da guia de referência) . [Morandin Jr., (1994)] inteiro, prejudicando assim toda a célula, já que é a partir ,/ do MGC que são enviados todos os comandos de acionamento do sistema. Conclusões Referências A divisão em dois módulos principais do software de controle localizado no MGC, permite suportar , com a mínima alteração, modificações na compos ição da célula . Por exemplo, a substituição de um novo componente por um existente que execute as mesmas funções não implicará na modificação da especificação de controle já estabelecida. Algumas mudanças poderão ocorrer a nível do módulo de comunicação, para atender aos requisitos do protocolo de comunicação específico do fabricante. Outra vantagem nesta divisão é que cada módulo poderá funcionar em estações distintas, dependendo da aplicação. A divisão poderá ocorrer quando o tempo de resposta do software de controle se tomar crítico para algum componente da célula, em função do aumento de complexidade do controle, das análises que requerem um tempo computacional maior e também quando o tratamento da transmissão de dados requerer uma maior solicitação de tempo da CPU. Através do uso do sistema pode-se identificar questões de ordem técnicas , só possíveis através da prática da execução do mesmo . Problemas como : tempos de controle, protocolos de comunicação (velocidade de comunicação e características dos frames), velocidade de processamento dos equipamentos, características eletrônicas e mecânicas do hardware (principalmente do AGV e do Magazine Automatizado) e sobretudo, problemas relacionado ao sistema computacional de controle do MGC. Foi comprovado também através dos testes práticos que não existe a necessidade, de se desenvolver mecanismos de detecção de erro na comunicação de dados . Isto se deve, por se tratar de uma distância pequena entre o MGC e os demais componentes da célula e também os dados que são transmitidos, são frames já conhecidos . pela recepção . Se não chegar nenhum comando conhecido, o componente não executará nenhuma das rotinas e assim não há perigo de uma interpretação errônea de comandos por parte do controlador do mesmo. Não obtendo o retomo de êxito do comando enviado, o MGC, assim que o time-out é acionado, envia novamente o comando para o controlador. Segue-se esta seqüência até que a resposta do comando seja positiva. Com relação a topologia em estrela é importante frisar que esta configuração tem a desvantagem de ter um único ponto, o computador central (MGC), pode falhar e desabilitar o sistema Fine, C. H. Strategic manufacturing - dinamic new directions for the 1990 's, Dow-Jones Irwin; Homewood , IIIiois, USA, pg. 257-274, 1989. Gaylord , 1. Factory information systems, New York, Marcel Dekker, 1987. Gunsser, P. An automated guided vehicle systems supplier 's view of fully integrated flexible manufacturing systems, Proc. 7th Intema-tional Conference on Flexible Manufacturing System, 1988. Kochan, D. CAM - developments in computer integrated manufacturing, Springer- Verlag, Berlin Heidelberg, 1986. Kunzle, L. A . Controle de sistemas flexíveis de manufatura especificação dos níveis de equipamento e de estação de trabalho. Curitiba, 1990, Dissertação (Mestrado), CEFET-PR. Lepikson, H. A. Padronização e interação das unidades de fabricação, inspeção e manipulação de uma célula flexível de manufatura, Florianópolis, 1990, Dissertação (Mestrado), Universidade Federal de Santa Catar ina - UFSC. Morandin Jr., O. Projeto e Sonstrução de um veículo auto-guiado para siste,,\as flexíveis de manufatura. São Carlos, Julho, 1994, 123 Pp., Dissertação (Mestrado), Escola de Engenharia de São Carlos EESC, Universidade de São Paulo - USP. Politano, P. R. Especificação e Implementação de uma unidade de controle para célula flexível de manufatura. São Carlos, Agosto, 1993, 130 Pp., Dissertação (Mestrado), Escola de Engenharia de São Carlos - EESC, Universidade de São Paulo USP. Tronco, M. L. Estudo, projeto e construção de um sistema automatizado de coleta e armazenamento de 'pallets '. São Carlos, Novembro, 1992, 266 Pp., Dissertação (Mestrado), Escola de Engenharia de São Carlos - EESC, Universidade de São Paulo USP. Valerio Netto, A. Comunicação de dados entre um controlador de uma célula flexível de manufatura e um veículo auto-guiado. Anais do III SIMPÓSIO DE INICIAÇÃO CIENTÍFICA DA UNIVERSIDADE DE SÃO ·PAULO - USPIEESC, v.2, Pp. 232, São Carlos, Dezembro, 1995. 183