1 DESENVOLVIMENTO DE UM ROBÔ MANIPULADOR INDUSTRIAL Carlos Henrique Gonçalves Campbell Camila Lobo Coutinho Jediael Pinto Júnior Associação Educacional Dom Bosco 1. Objetivo do Trabalho Desenvolvimento de um braço robô manipulador de peças para otimização de linhas de produção. 2. Introdução Desde a instalação do primeiro robô industrial em 1961, o uso de robôs industriais vem crescendo rapidamente em todo o mundo. Os robôs são manipuladores reprogramáveis e multifuncionais, projetados para manipular materiais, peças, ferramentas ou dispositivos especializados por meio de movimentos variáveis programados para a realização de tarefas diversas. Com respeito à estrutura, um robô é um sistema mecânico, de geometria variada, composto por corpos rígidos, articulados entre si, destinado a sustentar e posicionar ou orientar a ferramenta terminal, que, dotado de garra mecânica ou ferramenta especializada, fica em contato direto com o processo. A mobilidade do manipulador é resultado de uma série de movimentos elementares, independentes entre si, denominados graus de liberdade do robô. O braço do robô executa movimentos no espaço, transferindo objetos e ferramentas de um ponto para outro, orientado pelo controlador e informado sobre o ambiente por sensores. Há um atuador na extremidade do braço, usado na execução de suas tarefas. O braço do robô é composto de uma série de vínculos e juntas, sendo a junta que conecta dois vínculos e com isso permite o movimento relativo entre eles. Todo robô possui uma base fixa e o primeiro vínculo está preso a ela. A mobilidade de um robô depende do número de vínculos e articulações que possui. Atualmente as linhas de montagem adotam uma seqüência pré-estabelecida de 2 etapas para fabricação de um produto, sendo difícil se ajustar a diferentes tipos de demanda. Com a integração do robô ao ciclo produtivo, tornaremos as linhas de processo mais flexíveis no que se refere à programabilidade e adaptabilidade à diferentes tipos de produtos. 2.1. Vantagens e desvantagens dos sistemas robóticos Dentre as vantagens do sistema robótico no desenvolvimento do projeto da planta de produção podemos citar a simplificação do sistema mecânico, redução do tempo e custo do desenvolvimento, facilidade de introduzir modificações e novas “capacidades” e flexibilidade para receber futuras modificações ou novas funcionalidades. Quanto ao desenvolvimento do produto as vantagens são a flexibilidade de operação (programabilidade), inteligência (capacidade para sensoriamento e processamento das informações, se adaptando a diferentes condições de operação), automonitoramento e prevenção de acidentes, autodiagnóstico em caso de falhas, redução do custo de manutenção e elevado grau de precisão e confiabilidade. Outras vantagens do sistema robótico seriam o aumento da produtividade, melhoria e consistência na qualidade final do produto, redução da demanda de mão-de-obra especializada, contabilidade do processo, facilidade de programação, operação em ambientes hostis e perigosos ao homem e a realização de tarefas desagradáveis e repetitivas. Poucas desvantagens do sistema robótico podem ser citadas como, por exemplo, o custo inicial alto, sendo este amortizado durante seu tempo de uso, e a limitação do robô em relação à capacidade de aprendizado, memória, decisão e movimentos em relação ao ser humano. 3. Conceitos básicos para desenvolvimento do sistema robótico 3.1. Graus de Liberdade O número de graus de liberdade está associado ao número de articulações (juntas) em um braço robótico. O braço a ser desenvolvido neste projeto terá entre três e seis graus de liberdade. 3.2. Tipos de Juntas As juntas são eixos que permitem ao robô se mover para várias posições. O movimento da junta pode ser linear ou rotacional. 3 A junta que utilizaremos será a rotativa, devido a geometria do robô. Essas juntas possibilitam movimentos de rotação entre dois vínculos unidos por uma dobradiça comum, com uma parte podendo se mover num movimento cadenciado em relação à outra. 3.3. Geometria do Robô Os diferentes graus de liberdade de um robô podem ser encontrados em várias combinações, denominadas geometria do robô, que podem ser rotacionais e lineares, dependendo da aplicação. Foi escolhida a geometria de revolução devido os movimentos do robô se assemelharem aos de um braço humano e sua área de atuação ser maior que a de qualquer outro tipo de robô. Seus robôs possuem três juntas de revolução. Suas principais desvantagens são: baixa rigidez mecânica e controle bem complexo devido às três juntas de revolução e às variações no momento de carga e inércia. 3.4. Sensores Dispositivos que convertem grandezas físicas em sinais elétricos, permitindo ao robô obter informações sobre o seu próprio comportamento e sobre seu ambiente de atuação. Os Sensores internos (proprioceptivos) fornecem informações sobre a estrutura interna e o estado do próprio robô, como posição, velocidade linear, inclinação da estrutura, forças e torques sobre a estrutura. Os Sensores externos (exteroceptivos) fornecem informações do ambiente que o circunda, sendo utilizados para verificação de objetos e / ou pessoas, luminosidade, fumaça, temperatura do ambiente. Como sensores utilizamos chaves fim de curso para indicar ao controle que as articulações estão na posição básica. 3.5. Atuadores Dispositivos que convertem algum tipo de energia em movimento mecânico permitindo ao robô mover-se e / ou atuar sobre ambiente. Através da consideração das funções a serem exercidas pelo robô e dos recursos disponíveis, foi escolhido o acionamento elétrico por servomotor, pois apresenta como vantagens precisão no controle de posição em robôs, fonte de energia acessível, custo relativamente baixo, e como desvantagens podemos citar a impossibilidade de manter um momento constante nas mudanças de velocidade de rotação e o risco de danos caso o torque do motor seja insuficiente para mover a carga. 3.6. Programação de robôs industriais Uma das principais vantagens na utilização de robôs é sua flexibilidade efetiva de 4 programação e capacidade de realizar tarefas, sua habilidade para se adaptar a novas linhas de produção e sua grande faixa de movimentos. O método de programação será por caminho controlado (controlled path) onde a partir de um percurso definido pela posição do órgão terminal, todo o controle das juntas é feito pelo uso da modelagem cinemática inversa. 3.7. Níveis de programação do robô Será ao nível de manipulador, pois serão programadas somente a posição e a orientação do órgão terminal e o sistema se encarrega de obter, pelo modelo geométrico inverso, as posições de cada junta. 3.8. Modelagem Cinemática Inversa O método que consiste em obter a posição angular de cada junta do robô para uma dada posição e orientação do elemento terminal (garra) no plano cartesiano. Entre os vários métodos para a modelagem cinemática inversa de robôs industriais escolhemos o método geométrico, devido a sua facilidade de aplicação em relação aos outros métodos. 3.9. Geração de Trajetórias É modelo matemático que a partir de uma variável independente, como tempo, é possível obter-se a evolução da posição, da velocidade e da aceleração do elemento terminal do robô executando assim uma determinada trajetória. 4. Controle do Braço Manipulador A fig. 1 mostra a tela desenvolvida para o controle e visualização de dados on-line do braço robô manipulador: Fig. 1 – IHM de Controle do Robô 5 O controle do braço manipulador é dividido em blocos, conforme fig. 2: Fig. 2 – Diagramas em Blocos do Controle do Robô • Parâmetros de uma Posição Inicial a uma Posição Final Este bloco define os valores da posição inicial e final da trajetória que será executada pelo robô, e são informadas ao programa de controle, no caso o Visual Basic, pelo usuário ou através de um programa dedicado que calcule esses pontos de acordo com as variações do processo. • Tempo Desejado para o Trajeto O usuário ou um programa dedicado também informará o tempo desejado ao programa de controle para o robô efetuar o trajeto. 6 • Comprimento dos Braços do Robô São as informações referentes às medidas dos braços do robô, informadas ao programa pelo usuário. • Tipo de Trajeto Geométrico Neste bloco, será informada pelo usuário ou por um programa dedicado, a equação do tipo de trajeto geométrico desejado. São exemplos de trajeto: semicírculos, retas, parábolas, curvas exponenciais, sendo muitas vezes esse trajeto composto da combinação de diferentes modelos geométricos, como uma reta seguida de uma parábola. • Gerador de Trajetória A trajetória é a descrição da posição, velocidade e aceleração para cada articulação ao longo do tempo. O gerador de trajetória, que neste projeto é um algoritmo no programa Visual Basic, tem a função de gerar as entradas de referência ao movimento (set points), que são os pontos Xd, Yd e Zd, de acordo com os parâmetros de entrada fornecidos ao programa do robô. Esses pontos são gerados a cada instante, através de uma função polinomial que faz a interpolação da trajetória desejada, e são enviados para o bloco da Cinemática Inversa. A função polinomial cúbica é a responsável pela interpolação: S (t ) = At 3 + Bt 2 + Ct + D Eq. 1 onde S=0 é o início trajetória e S=1 é seu fim. Suas derivadas são dadas pelas equações: d S (t ) = 3 At 2 + 2 Bt + C dt d2 S (t ) = 6 At + 2 B dt 2 Eq. 2 Eq. 3 onde os coeficientes A, B, C e D são calculados de acordo com os parâmetros de entrada. Os pontos Xd, Yd e Zd, cujos índices d significam desejados, são dados por: Xd (t ) = Xi + ( Xf − Xi) × S (t ) Eq. 4 Yd (t ) = Yi + (Yf − Yi) × S (t ) Eq. 5 Zd (t ) = Zi + ( Zf − Zi) × S (t ) Eq. 6 7 ou seja: Pd (t ) = Pi + ( Pf − Pi ) × S (t ) Eq. 7 onde Xi, Yi e Zi são os pontos iniciais da trajetória, e Xf, Yf e Zf são os pontos finais da mesma. • Cinemática Inversa Como visto acima, o gerador de trajetória irá gerar a cada instante os pontos Xd, Yd e Zd a serem alcançados. Porém, para se controlar o robô, é necessário determinar os ângulos Gd, φ1d e @d das juntas (respectivamente giro, braço 1 e braço 2) a serem alcançados, onde o índice d significa desejado, e então enviá-los à placa de acionamento dos motores. A figura a seguir mostra os ângulos do robô: Fig. 3 – Ângulos das juntas do robô. A cinemática inversa, desenvolvida neste projeto em Visual Basic, se encarrega de calcular os ângulos desejados (Gd, φ1d e @d) a cada instante, uma vez conhecidos os pontos Xd, Yd, Zd e o comprimento dos braços do robô. Após calculados esses ângulos, o programa Visual Basic converte o valor de cada ângulo em um sinal digital (byte) que é enviado à placa de acionamento dos motores através da comunicação serial. • Placa de Acionamento dos Motores A placa de acionamento dos servomotores, possui além de outros componentes, o 8 microprocessador PIC 16184A, que recebe os set points de cada ângulo das juntas através da comunicação serial. O microprocessador PIC tem a função de transformar os bytes recebidos em pulsos de largura variável, para então enviar estes pulsos aos servomotores. Este microprocessador possui 8 saídas independentes para servomotores, ou seja, pode-se controlar até 8 servomotores. Como o braço manipulador desenvolvido neste projeto possui três graus de liberdade, usaremos três servomotores, ou seja, três saídas de controle do PIC 16184A. • Controle das Juntas Os servomotores receberão os pulsos enviados pela placa de acionamento e irão girar seu eixo de acordo com a largura destes pulsos. 5. Conclusão Os robôs são manipuladores reprogramáveis e multifuncionais. Integrando o robô às linhas de produção, conseguimos torná-las mais flexíveis em relação a programabilidade e adaptabilidade, podendo se ajustar a diferentes tipos de produtos. Foi desenvolvido um braço robô manipulador com dispositivos elétrico/eletrônicos, demonstrando as diversas fases de sua montagem, desde o estudo das características do processo, as funções a serem executadas, aspectos construtivos, a especificação das peças, sistemas de controle e retroação, aplicações dos componentes elétricos e eletrônicos à robótica, elaboração de modelos matemáticos para acionamento dos braços articulados até o desenvolvimento de hardware e software de controle e supervisão. 6. Bibliografia Rosário, João Maurício, “Princípios de mecatrônica”, Prentice Hall, 2005. Pazos, Fernando, “Automação de sistemas e robótica”. Axcel Books, 2002. http://claymore.engineer.gvsu.edu/~jackh/eod/mechatron.html, acessado no dia 16/05/2005. Molina, Renato, “Introdução à dinâmica e ao controle de manipuladores robóticos”, curso de engenharia de controle e automação da PUC-RS, 2005. Frid, Sandra A., “Curso de robótica industrial – mecatrônica”, Curso de pósgraduação Mecatrônica UFRJ, 1997.