PREFÁCIO José Reinaldo Silva
Até bem pouco tempo atrás, os robôs, particularmente os manipuladores, vinham sendo vistos como o último e mais elevado estágio da utilização de objetos (transformados) da natureza para estender a capacidade de realização do ser humano. O caráter de estágio avançado sendo era dado não apenas pelo grau de autonomia mas também pela observância das características do seu próprio criador. Recentemente porém o “charme” destes artefatos - notadamente o aspecto humanóide passou a dar lugar a ponderações de custo/benefício sobre sua utilização, principalmente na última fase de racionalização da produção industrial. Entretanto, estes questionamentos, se bem que pertinentes e até oportunos, enfrentam também uma realidade de internacionalização da produção onde se exige um grau de repetitividade e precisão muito maiores do que se praticava anteriormente. O que se pode esperar desta discussão (deixando de lado neste momento os seus aspectos político-econômicos) é sem dúvida uma maior clareza na utilização de insumos e da automação em geral no processo industrial, em especial da robótica. Certamente já é reconhecido que as características dos robôs devem ser orientadas pela ergonomia da função que este deve exercer, mesmo que (e talvez especialmente nestes casos) estas os levem para longe das características “humanas”. Também já é quase consenso que a uma boa programação – envolvendo aí a integração do robô com os demais artefatos do processo de fabricação - é a base para o uso racional e mais proveitoso dos robôs na fase de globalização. Portanto a tendência atual (no que diz respeito a Automação Industrial) é extrair dos robôs, através da programação e interação com sistemas de supervisão, uma maior flexibilidade de ação no ambiente de produção – o que vai além do que a sua reconhecida capacidade de repetição com precisão pode oferecer. Este debate globalizante encontra o Brasil, neste final de século, com menos de duas mil unidades instaladas (em 1997), mas com um crescimento vertiginoso nos últimos anos, principalmente nas montadoras de automóveis, na base de 500% da base instalada. Ao lado deste crescimento fantástico (que certamente busca o uso convencional da robótica) surge, no Brasil, um novo cliente para os fabricantes de robô, vindo da média empresa, em busca de um valor agregado para seu produto que seja reconhecido internacionalmente. Este novo cliente tem novas necessidades e exigências, ainda não plenamente atendidas pelo mercado, principalmente por falta de pessoal treinado e capacidade para além da programação reflexa, criar e implementar novas soluções. Podemos portanto prever um gargalo na implantação de robôs no país, dado que não existem hoje mais que 30 cursos superiores com disciplinas de robótica, e praticamente não existem cursos de treinamento voltados ao mercado 1, além dos cursos de programação e treinamento de usuários fornecidos pelos fabricantes (quando as unidades são vendidas). Isto é sem dúvida insuficiente, principalmente para atender à nova demanda a que nos referimos nos parágrafos anteriores. 1
Os SENAIS parecem ser a única exceção.
Este fato é preocupante, já que o crescimento surpreendente da base instalada e o surgimento da nova clientela baseada na pequena e média empresa (o cliente do futuro) demandarão profissionais treinados em diversos níveis, variando desde o engenheiro de sistemas e o projetista até o programador/supervisor do sistema. Este processo certamente envolve uma disseminação e até uma vulgarização do uso dos robôs. É ainda mais alarmante que até ano 2000 nenhuma proposta tenha aparecido para tratar este problema. Principalmente se levarmos em conta que, para a pequena e média empresa que se apresenta como um cliente importante (dado o seu número) soluções individualizadas são inviáveis pelo custo que estas implicam. Assim, a entrada destas empresas no mercado comprador de robôs parece vir acompanhado de muita confusão e exigências não atendidas. Pensando neste problema, e tendo como sua principal função a assistência à pequena e média empresa a Sub-rede de Automação da Manufatura do RECOPE, financiada pela FINEP, resolveu propor a vários agentes com potencialidade para atacar este problema, em particular ao SENAI, uma parceria para lançar o que certamente é o primeiro livro de robótica preocupado não somente com a parte conceitual mas com o uso prático dos robôs, consubstanciado por exercícios feitos em simuladores e filmes com exemplos de aplicações. O livro pretende ser um instrumento auto-contido, que pode ser aplicado em cursos convencionais de graduação em Mecatrônica, Engenharia Mecânica ou Engenharia Elétrica, assim como em cursos de treinamento de nível técnico ou superior de curta duração. Esta larga faixa de audiência é de fato um desafio para os autores e para a Sub-Rede de Automação da Manufatura, que foi obrigada a reunir uma equipe de 17 doutores abrangendo os mais diversos aspectos da utilização de robôs, desde a conceituação e modelagem, até a aplicação e aos aspectos de impacto econômico e social. Acrescente-se este time a participação do Prof. Jack Owen (University of Cranfield, UK), um dos criadores do simulador (de mercado) que acompanha o livro. A Sub-Rede de Automação da Manufatura, composta hoje por 20 instituições de pesquisa e ensino espalhadas por dez estados da união mais o Distrito Federal, envolvendo o trabalho de 84 pesquisadores da área de Automação, nos temas de Modelagem e Gestão, Design de Sistemas e Chão de Fábrica é também parte da rede européia ICIMS-NOE (Intelligent Control and Integrated Manufacturing Systems-Network of Excellence). O leitor atento poderá depreender das páginas deste livro muito da experiência acadêmica e prática destes pesquisadores e algo do trabalho pioneiro que estes vêm – mesmo antes da criação da sub-rede – desenvolvendo, diretamente na área de robótica ou indiretamente ligado a esta.
Prof. Dr. José Reinaldo Silva Coordenador Nacional da Manet Manufacturing Automation Network
PRÓLOGO Vitor Ferreira Romano
I - AUDIÊNCIA O livro "Robótica Industrial: Aplicação na Indústria de Manufatura e de Processos" é estruturado de forma a servir como um guia prático sobre robótica industrial a empresários, executivos e profissionais liberais que tenham alguma formação técnica e desejam se atualizar ou obter maiores conhecimentos sobre o tema. O material exposto neste livro é suficientemente abrangente para ser utilizado como texto básico para cursos de formação em Universidades (graduação, pós-graduação e extensão), no sistema SENAI e escolas técnicas.
II - ORGANIZAÇÃO DO LIVRO Os capítulos foram separados em três partes visando uma melhor organização dos assuntos abordados no livro. A primeira parte denominada "Fundamentos Elementares" contém os sete capítulos iniciais que propiciam ao leitor as informações necessárias para uma completa noção do que é a ciência robótica. Na segunda parte, "Robótica Aplicada", estão localizados os capítulos que relacionam-se mais diretamente a situações típicas de robótica aplicada em atividades de manufatura. Finalmente na parte denominada "Complementos", o leitor terá acesso às potencialidades de uso de robôs nas mais diversas áreas e a uma abordagem consistente sobre temas econômicos e sociais. Há um glossário dos termos técnicos mais comuns empregados no setor de robótica. As definições estão de acordo com as normas internacionais. Um disco compacto – CD (Compact Disk) é parte integrante do livro. Nele são encontrados programas de simulação de robôs, filmes, fotos e informações adicionais sobre a robótica. Os resumos dos conteúdos de cada capítulo são mostrados a seguir. PARTE 1 – FUNDAMENTOS ELEMENTARES CAPÍTULO 1: INTRODUÇÃO À ROBÓTICA INDUSTRIAL Este capítulo visa introduzir ao leitor os conceitos básicos sobre a robótica industrial. Inicialmente é apresentado um resumo sobre o desenvolvimento dos robôs dentro de um contexto histórico. A seguir são discutidos aspectos relativos a sistemas robóticos como algumas definições de robô, os componentes necessários para que um robô seja construído, seus principais tipos e configurações. Os componentes que promovem a interação entre o robô industrial e o meio a ser trabalhado, como garras mecânicas e ferramentas especiais também são
analisados. Finalizando, são apresentadas informações sobre a evolução histórica do número de robôs industriais instalados no Brasil e alguns exemplos de aplicações. CAPÍTULO 2: MODELAGEM E CONTROLE DE ROBÔS O capítulo dois é essencialmente voltado para mostrar os fundamentos teóricos que envolvem os sistemas robóticos. Os conceitos aqui apresentados fornecem a capacitação básica para a modelagem matemática de quaisquer configuração de robô, a partir de suas informações dimensionais. Os modelos de cinemática direta, cinemática inversa e dinâmica são abordados de maneira clara e objetiva, assim como os aspectos relacionados ao controle de robôs. No anexo do capítulo dois encontram-se diversos exemplos práticos de modelagem cinemática de robôs existentes no mercado e noções de simulação. CAPÍTULO 3: INTEGRAÇÃO DE SINAIS E DADOS Este capítulo trata da integração de robôs industriais no âmbito de sistemas de automação industrial. O capítulo divide-se da seguinte forma: na seção 3.2 são definidos os conceitos básicos sobre sinais, modos de comunicação e outros tópicos fundamentais para a compreensão dos desafios tecnológicos encontrados na integração de robôs industriais em sistemas de automação industrial. Na seção 3.3 os principais protocolos para comunicação em plantas robotizadas são apresentados, assim como suas vantagens e desvantagens. A seção 3.4 enfoca as principais tecnologias para interconexão entre os dispositivos sensores e atuadores de robôs industriais e a seção 3.5 discute aspectos referentes à incorporação de robôs industriais no contexto de integração vertical de sistemas de automação, onde informações provenientes do chamado chãode-fábrica são disponibilizadas para sistemas gerenciais de planejamento e controle de produção. Este capítulo trata da integração de robôs industriais no âmbito de sistemas de automação industrial. São definidos os conceitos básicos sobre sinais, modos de comunicação e outros tópicos fundamentais para a compreensão dos desafios tecnológicos encontrados na integração de robôs industriais em sistemas de automação industrial. A seguir os principais protocolos para comunicação em plantas robotizadas são apresentados, assim como suas vantagens e desvantagens. São enfocadas as principais tecnologias para interconexão entre os dispositivos sensores e atuadores de robôs industriais e finalmente são analisados aspectos referentes à incorporação de robôs industriais no contexto de integração vertical de sistemas de automação, onde informações provenientes do chamado chão-de-fábrica são disponibilizadas para sistemas gerenciais de planejamento e controle de produção. CAPÍTULO 4: INTERAÇÃO DE ROBÔ NO AMBIENTE O objetivo deste capítulo é apresentar sensores e suas tecnologias que são necessários para que o robô possa interagir com os ambientes de trabalho. Inicialmente é necessário, contudo, distinguir entre sensores que são utilizados pelo robô para controlar seu movimento e sensores que são utilizados para auxiliar nas suas tarefas. Ao final deste capítulo o leitor será capaz de responder as seguintes perguntas: O que são sensores internos e externos de um robô? Como pode-se detectar a presença de objetos na área de trabalho do robô? Como pode-se medir distâncias entre um sensor e objetos no ambiente? Como pode-se medir forças de contato entre um sensor e um objeto que se deseja manipular? Outro aspecto especificamente abordado neste capítulo refere-se a visão robótica. São relacionados três aspectos da formação de imagens: a geometria, a radiometria e o sensoreamento. Deste modo, são descritos os processos envolvidos na transformação da imagem ótica em imagem elétrica e finalmente em imagem digital, a qual pode então ser tratada por um computador. Examinam-se alguns tópicos importantes do
processamento de imagens digitais, incluindo filtragem, binarização, detecção de bordas e segmentação de imagens. A determinação de parâmetros úteis para identificar e localizar objetos na cena é também descrita em uma seção específica, onde o reconhecimento de objetos é abordado. Por fim, são descritas algumas aplicações típicas de visão computacional em robótica. CAPÍTULO 5: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIS Neste capítulo, são definidos os parâmetros imprescindíveis para se quantificar a eficácia com que um robô executa uma tarefa. Os tópicos principais aqui mencionados versam sobre a importância e a utilização da avaliação de desempenho, onde são descritas as características para esta avaliação estabelecidas em normas internacionais e as condições de teste normalizadas. A seguir é apresentada uma orientação para a seleção das características de desempenho a serem testadas para algumas aplicações dos robôs. Adicionalmente, descreve-se os procedimentos para a realização de testes comparativos entre robôs diferentes e indica-se os métodos de medição recomendados pelas normas para a avaliação de desempenho. CAPÍTULO 6: PROGRAMAÇÃO E SIMULAÇÃO DE ROBÔS Inicialmente é descrito o problema básico a ser enfrentado quando deseja-se efetuar a programação de um robô. Em um segundo momento são mencionadas as características básicas de uma linguagem de programação e faz-se um breve histórico da sua evolução. Neste capítulo o leitor é inserido no contexto de manufatura automatizada, capacitando-o a utilizar as principais ferramentas de programação e simulação existentes no mercado. Os métodos de programação on-line e off-line são extensamente analisados, bem como as linguagens de programação de robôs industriais. Um especial enfoque é dado à simulação de robôs, onde programas de simulação comerciais e didáticos de robôs industriais são apresentados. Por fim, foram incluídos alguns exemplos com listagens de programas de tradicionais fabricantes de robôs. CAPÍTULO 7: SELEÇÃO DE ROBÔS: ALGUNS ASPECTOS Este capítulo refere-se a seleção de robôs com abordagens econômica e técnica focadas em duas partes principais. Uma parte dedicada aos macro aspectos econômicos de sistemas robotizados como a análise inicial de custo de implementação - identificação das soluções alternativas de fabricação, estudo de viabilidade, escolha da tarefa a ser robotizada, ponderação de critérios não econômicos e etc - e a análise detalhada de custo como avaliação de período, depreciação e exigências fiscais. Outra parte é dedicada aos micro aspectos na seleção de robôs, que se referem ao projeto detalhado do sistema robotizado. Dentre estes tem-se a análise das características do trabalho, planejamento de métodos de trabalho e processos, projeto do arranjo físico, medidas de desempenho, e a integração da ergonomia humana e de robôs. PARTE 2 – ROBÓTICA APLICADA CAPÍTULO 8: SOLDAGEM ROBOTIZADA O estado da arte da soldagem robotizada é apresentada de forma abrangente neste capítulo. Inicialmente são analisados os principais processos de soldagem robotizada como MIG/MAG e TIG, soldagem e corte a laser, soldagem e corte à plasma e soldagem por resistência elétrica por pontos. A seguir são mencionados os aspectos relacionados à programação de robôs para a soldagem, incluindo as definições de termos e controles básicos freqüentemente utilizados em soldagem robotizada, uma seqüência ideal para a implementação de programa e um exemplo de
seqüência de programação em soldagem com eletrodo sólido contínuo sob proteção gasosa (GMAW). O projeto de juntas e tolerâncias para a soldagem robotizada, bem como alguns critérios para a aplicação, escolha e aquisição de robôs, além da monitoração em processos de soldagem a arco são aqui discutidos. A última seção trata dos problemas inerentes à robotização do processo de soldagem. CAPÍTULO 9: MONTAGEM Este capítulo inicia-se com a apresentação de informações relativas ao processo de montagem na indústria de manufatura. São definidas as principais operações de montagem e analisadas as características e componentes dos sistemas manuais e robotizados. No item relativo ao projeto orientado à montagem vem apresentadas uma série de recomendações voltadas para a otimização do projeto do produto para a montagem em geral e para a montagem robotizada mais especificamente. Exemplos complementam os tópicos estudados. CAPÍTULO 10: SISTEMAS PERIFÉRICOS PARA ROBÔS INDUSTRIAIS Este capítulo aborda aspectos relacionados a equipamentos denominados periféricos, utilizados na composição do cenário de atuação de um sistema robótico. Estes equipamentos são fundamentais para a realização das tarefas operacionais, localizando-se de forma determinada no chão de fábrica para que ocorram as condições perfeitas de interação com o robô. Na intenção de se realizar um trabalho direcionado ao mercado nacional, buscou-se enfatizar a utilização do sistema robótico em áreas distintas e em especial na área automobilística, que agrega a maior parte dos investimentos em automação. São mencionadas algumas experiências acumuladas na área de manufatura pelo SENAI, inclusive algumas aplicações em indústrias e exemplos desenvolvidos nos próprios laboratórios da rede SENAI. Sistemas periféricos bastante usados em robótica como mesas “JIG” e esteiras transportadoras são analisados e empregados em estudos de caso em processos de pintura, pulverização térmica e montagem. PARTE 3 – COMPLEMENTOS CAPÍTULO 11: TENDÊNCIAS E APLICAÇÕES ESPECIAIS Inicialmente são mostrados os diversos tipos de robôs especiais empregados em atividades fora do âmbito industrial, bem como as suas aplicações. Neste caso destacam-se os robôs móveis com patas e esteiras, robôs para operações de limpeza, robôs de segurança, robôs submarinos, robôs usados em explorações espaciais, robôs hospitalares e robôs de entretenimento. A seguir é apresentado um estudo dos sistemas de telerobótica que se utilizam da internet como meio de controle. Uma metodologia de comprovada eficiência para o desenvolvimento destes sistemas, bem como uma análise de viabilidade são abordadas. Uma breve discussão sobre as tendências futuras da robótica finaliza o capítulo. CAPÍTULO 12: ASPECTOS ECONÔMICOS E SOCIAIS O objetivo deste capítulo é abordar questões relativas aos aspectos econômicos e sociais do uso de robótica, e de automação em geral, analisando como uma empresa deveria tomar suas decisões de investimento quanto a esses equipamentos, e tecer comentários sobre os impactos nos seus recursos humanos. Informações úteis ao empresário que deseja investir na área de automação e robótica foram incluídas, como as principais instituições (e seus mecanismos) que oferecem
linhas
de
crédito
ou
financiamentos
específicos
para
investimentos
em
automação/robótica e novas tecnologias. Também são indicadas instituições que prestam serviços que visam contribuir à gestão empresarial, a otimização da capacidade produtiva, ao padrão de qualidade dos produtos e serviços, treinamento, capacitação do profissional e outros. O tema impacto nos recursos humanos é tratado na perspectiva de como as empresas que se modernizam tratam o macro-tema recursos humanos, em particular suas estratégias de qualificação.
III - CONTEÚDO DO CD
*** completar ***
III.1. Programa de simulação RobLib O programa de simulação RobLib (Robot Library), desenvolvido pelos professores J. A. Tenreiro Machado e Nuno Miguel Fonseca Ferreira no Departamento de Engenharia Eletrotécnica e de Computação da Universidade de Porto (Portugal), permite a simulação da cinemática, da dinâmica e de algoritmos de controle de posição e força para robôs de duas juntas com estruturas do tipo RR ou RP. No modelo estão incluídos fenômenos não-lineares tais como folgas, flexibilidade estrutural, atritos não-lineares, saturação nos atuadores e quantificação da resolução finita dos sensores localizados nas juntas. Dentre os recursos disponíveis destacam-se: a visualização dos parâmetros cinemáticos e dinâmicos e de desenho esquemático do robô; o planejamento de trajetórias retilíneas no espaço cartesiano ou no espaço das juntas; a "animação" do robô; a possibilidade de escolha de diversas estratégias e algoritmos de controle; e a apresentação gráfica das variáveis de entrada e de saída do robô, como a posição, a velocidade, a aceleração e os binários, bem como os seus erros em relação à trajetória de referência. O manual com as instruções do programa em português encontra-se no CD. O RobLib opera em ambiente Windows e seus comandos estão escritos em língua inglesa. III.2. Programa de simulação Workspace (incluir comentário - Renato) III.3. Filmes com exemplos aplicados de robôs em indústrias (ABB, FANUC, COMAU, Motoman etc.). III.4. Filmes de robôs em ambientes especiais a) futebol de robôs; b) robôs móveis; c) braço sensor para posicionamento dinâmico de ROV. III.5. Anexo do Capitulo 11: "Exemplos de Aplicações em Telerobótica".
IV - INDICAÇÃO DE REFERÊNCIAS COMPLEMENTARES IV.1. Cursos sobre Robótica: A robótica abrange diversas áreas de conhecimento e utilização de novas tecnologias, portanto, a formação de um especialista depende de uma vasta cultura técnica e sua constante atualização.
Há vários cursos sobre robótica ou temas afins nas áreas de engenharia como automação e controle, mecatrônica, mecânica, elétrica e produção. As principais Universidades brasileiras possuem cursos de graduação, mestrado, doutorado e extensão e a rede SENAI possui alguns cursos profissionalizantes. Maiores informações sobre os cursos e as instituições de ensino, assim como aqueles organizados pela Rede de Automação da Manufatura podem ser encontradas no endereço: http://www.manet.gov IV.2. Publicações, Congressos e Exposições: Referências às principais publicações, congressos, feiras e exposições podem ser acessadas diretamente no endereço da rede: http://www.manet.gov IV.3. Sites sobre Robótica: Devido ao crescente número de sites relacionados ao tema robótica, a Rede de Automação da Manufatura disponibiliza uma lista atualizada dos mais importantes endereços, que se encontra no endereço abaixo: http://www.recope.livrorobotica.com.br
V - AGRADECIMENTOS Ao longo do processo de concepção deste livro, os autores tiveram a oportunidade de discutir pessoalmente os principais aspectos relacionados ao seu conteúdo e forma. Isso somente foi possível devido às freqüentes e produtivas reuniões da Rede de Automação da Manufatura da RECOPE (Rede Cooperativa de Pesquisas) / FINEP, do qual este livro é um dos projetos. Os autores agradecem ao apoio obtido junto as seguintes instituições: FINEP, SENAI Autosimulations, ABB, UFES, UFMG, UFPE, UFRGS, UFRJ/COPPE, UFSC, UNB, UNICAMP, EPUSP, Universidade do Porto e Instituto Politécnico de Coimbra. Também não podemos deixar de mencionar os incentivos obtidos junto aos colegas da Rede de Automação da Manufatura e do imprescindível apoio logístico da Marta Veris. Finalmente, os autores agradecem aos seus familiares e as pessoas que de alguma forma ajudaram a realização desta empreitada. Dentre estes citamos: Prof. Jan Leon Scieszko, Eng. Luiz S.J. Romariz, Eng. Luis Felipe A. Paulinyi, Patrícia Chedier, Telma Pará, **** completar com outros nomes ****
VI - COMO NOS CONTATAR Os autores estão disponíveis para o esclarecimento de dúvidas e recebimento de sugestões e críticas relacionadas ao livro, através da página: http://www.recope.livrorobotica.com.br Para assuntos de consultoria na área de robótica, os contatos podem ser efetuados diretamente através da Rede de Automação da Manufatura: http://www.manet.gov Tel/Fax. +(11) 38185722
CAPÍTULO 1 INTRODUÇÃO À ROBÓTICA INDUSTRIAL Vitor Ferreira Romano e Max Suell Dutra
1.1 - INTRODUÇÃO 1.1.1 - Breve Histórico sobre Robôs Desde os primórdios de sua srcem, o ser humano sempre se utilizou de ferramentas e utensílios que o auxiliaram na realização de diversas atividades cotidianas relacionadas às suas necessidades de sobrevivência. Para a civilização ocidental o conceito de evolução humana está diretamente associado ao grau de desenvolvimento tecnológico adquirido ao longo do tempo, através do aperfeiçoamento destes objetos. Portanto, a motivação de se criar máquinas que possam substituir o homem na realização de tarefas, é uma característica da própria cultura ocidental. A primeira referência explícita a este conceito foi escrita por Aristóteles (séc. IV a.C.): “se os instrumentos pudessem realizar suas próprias tarefas, obedecendo ou antecipando o desejo de pessoas . . .” Ao longo dos séculos, diversas invenções propiciaram a necessária bagagem tecnológica para a gradual substituição do homem pela máquina, porém, somente quando ocorre de forma sistemática a aplicação da ciência à indústria há uma concreta alteração do cenário, resultando na sociedade industrial. Já no fim do século XVI, Francis Bacon preconizava a idéia “. . . de que o saber devesse produzir seus frutos na prática, de que a ciência devesse ser aplicável à indústria, de que os homens tivessem o dever sagrado de se organizarem para melhorar e transformar as condições de vida” (DE MASI, 1999). A partir da máquina a vapor desenvolvida por James Watt em 1769, houve um acentuado progresso em termos de automação de processos produtivos. A produção industrial em larga escala e os meios de transporte revolucionaram social e economicamente as relações humanas. Até meados do século XX, o processo de produção foi baseado no emprego de máquinas projetadas especificamente para a fabricação em série de produtos de uma mesma característica, visando uma elevada produtividade, volume e qualidade. Este modelo é denominado automação rígida e foi bastante difundido pelo empresário Henry Ford no início do século. O avanço tecnológico das últimas décadas teve reflexo direto na organização das indústrias, as quais buscam minimizar seus custos industriais através da adoção de diversos modelos de produção. Neste contexto, destacam-se a automação programável, relativa à fabricação em série de pequenos e médios lotes de produtos, e a automação flexível, referida à fabricação de lotes variáveis de produtos diversos. Os robôs industriais têm sido muito utilizados nos processos de automação programável e flexível, pois são essencialmente máquinas capazes de realizar os mais diversos movimentos 1
programados, adaptando-se às necessidades operacionais de determinadas tarefas e empregando garras e/ou ferramentas oportunamente selecionadas. O termo robô foi srcinalmente utilizado em 1921 pelo dramaturgo checo Karen Capek, na peça teatral “Os Robôs Universais de Russum (R.U.R.)” como referência a um autômato que acaba rebelando-se contra o ser humano. Robô deriva da palavra "robota" de srcem eslava, que significa "trabalho forçado". Na década de 40, o escritor Isaac Asimov tornou popular o conceito de robô como uma máquina de aparência humana não possuidora de sentimentos, onde seu comportamento seria definido a partir de programação feita por seres humanos, de forma a cumprir determinadas regras éticas de conduta. O termo robótica foi criado por Asimov para designar a ciência que se dedica ao estudo dos robôs e que se fundamenta pela observação de três leis básicas (SCHIAVICCO, SICILIANO, 1995): a
1 . que Um robô não pode fazer mal a um ser humano e nem consentir, permanecendo inoperante, um ser humano se exponha a situação de perigo; a 2 . Um robô deve obedecer sempre às ordens de seres humanos, exceto em circunstâncias em que estas ordens entrem em conflito com a 1a lei; 3a . Um robô deve proteger a sua própria existência, exceto em circunstâncias que entrem em conflito com a 1a e 2a leis. A base tecnológica para os atuais robôs industriais foi desenvolvida a partir de pesquisas iniciadas logo após a Segunda Grande Guerra Mundial, quando foi construído um equipamento denominado teleoperador " master-slave" empregado em atividades de manipulação de materiais radioativos. O sistema era formado de um manipulador "master", movido diretamente por um operador humano responsável pelas seqüências de movimentos desejados, e um manipulador "slave" capaz de reproduzir os movimentos realizados remotamente pelo "master". Os vínculos entre os manipuladores "master" e "slave" eram realizados através de sistemas de transmissão mecânicos (FU et al., 1987). A UNIMATION Inc. instalou o primeiro robô industrial, denominado UNIMATE, no chão-defábrica de uma empresa em 1961. O projeto deste robô resultou da combinação entre os mecanismos articulados e garras usados no teleoperador "master-slave" e a tecnologia de controle desenvolvida em máquinas comando eletrônica numérico. digital, Desde ciência então, da o constante desenvolvimento tecnológicooperatrizes nas áreas com de mecânica, computação, materiais e logística da produção contribuiu para o aumento da confiabilidade nos componentes empregados em projetos de robôs e a redução dos custos para a sua implementação em atividades industriais. O maciço investimento em robôs industriais no processo produtivo observado nas últimas décadas, deve-se principalmente às crescentes necessidades impostas pelo mercado de se obter sistemas de produção cada vez mais automatizados e dinâmicos. Devido às características de flexibilidade de programação e adaptação a sistemas integrados de manufatura, o robô industrial tornou-se um elemento importante neste contexto. Um sistema de produção tem por objetivo agregar valor a produtos, ou seja, a partir de uma entrada de materiais a serem processados: matérias-primas, peças básicas ou conjuntos de peças (sub-grupos); o sistema de produção irá fazer algum processo de transformação sobre estes materiais, resultando em produtos processados com valor comercial mais elevado. Estes podem ser produtos acabados aptos a serem comercializados diretamente no mercado ou ainda produtos intermediários que serão utilizados posteriormente na construção de produtos acabados. 2
O uso de robôs industriais no chão-de-fábrica de uma empresa está diretamente associado aos objetivos da produção automatizada, a qual visa (BOUTEILLE at al., 1997): Reduzir custos dos produtos fabricados, através de: diminuição do número de pessoas envolvidas no produção, aumento da quantidade de produtos em um dado período (produtividade), melhor utilização de matéria-prima (redução de perdas, otimização do aproveitamento), economia de energia e etc.; Melhorar as condições de trabalho do ser humano, por meio da eliminação de atividades perigosas ou insalubres de seu contato direto; •
•
•
•
Melhorar a qualidade do produto, através do controle mais racional dos parâmetros de produção; Realizar atividades impossíveis de serem controladas manualmente ou intelectualmente, como por exemplo, a montagem de peças em miniatura, a coordenação de movimentos
complexos e atividades muito rápidas (deslocamento de materiais).
1.2 - ASPECTOS SOBRE SISTEMAS ROBÓTICOS 1.2.1 - Definição de Robô Segundo a Robotic Industries Association (RIA), robô industrial é definido como um "manipulador multifuncional reprogramável projetado para movimentar materiais, partes, ferramentas ou peças especiais, através de diversos movimentos programados, para o desempenho de uma variedade de tarefas” (RIVIN, 1988). Uma definição mais completa é apresentada pela norma ISO (International Organization for Standardization) 10218, como sendo: "uma máquina manipuladora com vários graus de liberdade controlada automaticamente, reprogramável, multifuncional, que pode ter base fixa ou móvel para utilização em aplicações de automação industrial". Um robô industrial é formado pela integração dos seguintes componentes (RIVIN, 1988, SEERING, SCHEINMAN, 1985, WARNECKE et al., 1985, SCIESZKO, 1988, BORODIN, 1988). a) manipulador mecânico: refere-se principalmente ao aspecto mecânico e estrutural do robô. Consiste da combinação de elementos estruturais rígidos (corpos ou elos) conectados entre si através de articulações (juntas), sendo o primeiro corpo denominado base e o último extremidade terminal, onde será vinculado o componente efetuador (garra ou ferramenta). •
elos:
É inevitável que os elos rígidos apresentem algum grau de flexibilidade quando submetidos a esforços durante a realização de uma tarefa, sejam estes de natureza estática ou dinâmica. Portanto, nos robôs, a estrutura deve ser projetada para apresentar elevada rigidez aos esforços de flexão e torção. Os materiais mais empregados nas estruturas são alumínio e aço. Mais recentemente têm sido usados fibras de carbono e de vidro, materiais termoplásticos e plásticos reforçados. •
junta:
Em robótica geralmente utiliza-se dois tipos básicos de juntas para compor um par cinemático formado por dois elos adjacentes: junta de rotação ou junta prismática (translação). O uso destas juntas visa tornar mais simples o processo de montagem e/ou fabricação dos componentes mecânicos que compõe uma junta. Outra vantagem refere-se ao controle do movimento relativo entre os elos que depende de apenas uma variável de posição. 3
O número de graus de liberdade que um robô apresenta é o número de variáveis independentes de posição que precisam ser especificadas para se definir a localização de todas as partes do mecanismo, de forma inequívoca. O robô industrial é normalmente uma combinação de elos e juntas em forma de cadeia cinemática aberta. Portanto, o número de juntas equivale ao número de graus de liberdade. •
sistema de transmissão:
A movimentação de cada corpo ocorre devido a transmissão de potência mecânica (torque/força e velocidade angular/linear) srcinada de um atuador. Os sistemas de transmissão são componentes mecânicos cuja função é transmitir potência mecânica dos atuadores aos elos. Dentre os componentes de transmissão mais usados tem-se engrenagens (dentes retos, helicoidais, cremalheira e pinhão, cônicas), fusos de esferas recirculantes, correias e polias dentadas, harmônicas.correntes, cabos, fitas de aço, engrenagens planetárias e engrenagens A escolha destes componentes depende de parâmetros de projeto como a potência transmitida, os tipos de movimentos desejados e a localização do atuador em relação à junta controlada. As características mais importantes de desempenho operacional em sistemas de transmissão são a rigidez e a eficiência mecânica. b) atuadores: São componentes que convertem energia elétrica, hidráulica ou pneumática, em potência mecânica. Através dos sistemas de transmissão a potência mecânica gerada pelos atuadores é enviada aos elos para que os mesmos se movimentem. •
atuadores hidráulicos e pneumáticos:
Os atuadores hidráulicos e pneumáticos podem ter a forma de cilindros lineares para gerar os movimentos lineares, ou motores para proporcionar deslocamentos angulares. Ambos são conectados a válvulas direcionais (pré-atuadores) que gerenciam a direção do deslocamento do fluido nos atuadores, a partir de sinais gerados de uma unidade de comando. O custo das válvulas direcionais de alto desempenho ainda permanece elevado. Os atuadores hidráulicos permitem a implementação de controle contínuo e acurado de posicionamento e velocidade devido a incompressibilidade do fluido (óleo hidráulico), resultando numa elevada rigidez, porém isso pode tornar instável o controle de força. Outra característica é a elevada relação entre a potência mecânica transmitida pelo atuador e o seu peso, o que possibilita a construção de unidades compactas de alta potência. Uma bomba é utilizada para fornecer o óleo hidráulico para o atuador hidráulico através das válvulas direcionais. Os atuadores pneumáticos são utilizados em robôs industriais que operam com movimentação de cargas entre posições bem definidas limitadas por batentes mecânicos, o que caracteriza o movimento ponto-a-ponto. A baixa rigidez destes atuadores devido à compressibilidade do fluido (ar comprimido), permite que sejam obtidas operações suaves, porém esta característica o torna pouco preciso quanto ao controle de posicionamento entre as posições limites. A natureza binária do movimento destes atuadores (posição estendida ou retraída) implica em um controle simples e de baixo custo. Utiliza-se um compressor para fornecer o ar comprimido ao atuador pneumático através das válvulas direcionais. Para um correto funcionamento dos atuadores, convém a instalação de unidades de preparação (filtro, dreno, regulador de pressão com manômetro e etc.) no circuito de ar comprimido antes da entrada deste nas válvulas direcionais. 4
•
atuadores eletromagnéticos:
Os atuadores eletromagnéticos são os mais utilizados em robôs, principalmente atuadores do tipo motores de corrente contínua e de passo. Como vantagens pode-se citar a grande variedade de fabricantes disponíveis no mercado, o fato de os motores elétricos quando associados a sensores poderem ser empregados tanto para o controle de força quanto da posição do robô, e a facilidade de se programar seus movimentos, já que estes podem ser controlados por sinais elétricos, permitindo desta forma a utilização de controladores de movimento. Os motores tipo corrente contínua (cc) são compactos e geralmente o valor de torque mantém-se numa faixa constante para grandes variações de velocidade, porém necessitam de sensores de posição angular (encoder) e de velocidade (tacômetro) para o controle de posicionamento em malha fechada (servocontrole). A máxima eficiência mecânica destes motores normalmente ocorre a velocidades elevadas, portanto é comum o uso de redutores de velocidade para se obter a redução de velocidade e conseqüentemente o aumento de torque necessários à transmissão de potência mecânica ao elemento movido. Atualmente os fabricantes de robôs utilizam os motores cc sem escovas ("brushless") devido à reduzida manutenção, decorrente da diminuição de desgastes e otimização da dissipação térmica entre o rotor e o estator. Os motores tipo passo podem funcionar em controle de malha aberta em posição e velocidade e são facilmente interligados a unidades de comando de baixo custo, porém a curva de torque decresce com o aumento da velocidade e em baixas velocidades podem gerar vibrações mecânicas. São mais empregados na movimentação de garras. Os motores de corrente alternada, os motores lineares e atuadores do tipo solenóide têm sido cada vez mais empregados em projetos de manipuladores mecânicos. Recentes pesquisas indicam que os materiais com memória de forma têm bom potencial para serem usados na construção de atuadores. c) sensores: Fornecem parâmetros sobre o comportamento do manipulador, geralmente em termos de posição e velocidade dos elos em função do tempo, e do modo de interação entre o robô e o ambiente operativo (força, torque, sistema de visão) à unidade de controle. As juntas utilizadas para vincular os elos de um robô são normalmente acopladas a sensores. d) unidade de controle: Responsável pelo gerenciamento e monitoração dos parâmetros operacionais requeridos para realizar as tarefas do robô. Os comandos de movimentação enviados aos atuadores são srcinados de controladores de movimento (computador industrial, CLP, placa controladora de passo) e baseados em informações obtidas através de sensores.
5
Figura 1.1- Robô industrial de seis graus de liberdade.
e) unidade de potência: É responsável pelo fornecimento de potência necessária à movimentação dos atuadores. A bomba hidráulica, o compressor e a fonte elétrica são as unidades de potência associadas aos atuadores hidráulico, pneumático e eletromagnético, respectivamente. f) efetuador: É o elemento de ligação entre o robô e o meio que o cerca. Pode ser do tipo garra ou ferramenta. O principal escopo de uma garra é pegar um determinado objeto, transportá-lo a uma posição pré-estabelecida e após alcançar tal posição, soltá-lo. A ferramenta tem como função realizar uma ação ou trabalho sobre uma peça, sem necessariamente manipulá-la.
1.2.2 - Classificações de Robôs 1.2.2.1 - Quanto à Estrutura Mecânica Diversas combinações de elementos (juntas e elos) podem ser realizadas para se obter uma configuração desejada. De acordo com a Federação Internacional de Robótica (International Federation of Robotics - IFR), as principais configurações básicas quanto à estrutura mecânica são as seguintes (IFR, 2000, SCHIAVICCO, SICILIANO, 1995): a) Robô de Coordenadas Cartesianas/Pórtico (cartesian/gantry robot):
Este tipo de robô possui três juntas prismáticas (PPP), resultando num movimento composto de três translações, cujos eixos de movimento são coincidentes com um sistema de coordenadas de referência cartesiano. Uma variante deste robô é a configuração tipo pórtico (gantry). O volume de trabalho gerado é retangular.
6
(a)
(b)
Figura 1.2- Robôs Cartesianos: (a) tipo convencional - volume de trabalho, (b) tipo pórtico.
b) Robô de Coordenadas Cilíndricas (cylindrical robot):
Nesta configuração, os eixos de movimento podem ser descritos no sistema de coordenadas de referência cilíndrica. É formado por duas juntas prismáticas e uma de rotação (PPR), compondo movimentos de duas translações e uma rotação. Neste caso, o volume de trabalho gerado é cilíndrico.
(a)
(b)
Figura 1.3- Robô de coordenadas Cilíndricas: (a) volume de trabalho, (b) robô.
c) Robô de Coordenadas Esféricas (spherical robot):
Neste tipo de robô os eixos de movimento formam um sistema de coordenadas de referência polar, através de uma junta prismática e duas de rotação (PRR), compondo movimentos de uma translação e duas rotações. Para esta configuração, o volume de trabalho gerado é aproximadamente uma esfera.
7
(a)
(b)
Figura 1.4- Robô de coordenadas Esféricas: : (a) volume de trabalho, (b) robô.
d) Robô SCARA: É um robô que apresenta duas juntas de rotação dispostas em paralelo para se ter movimento num plano e uma junta prismática perpendicular a este plano (PRR), apresentando portanto uma translação e duas rotações. O SCARA é muito empregado em tarefas de montagem de componentes de pequenas dimensões, como placas de circuitos eletrônicos. O volume de trabalho gerado por este tipo de robô é aproximadamente cilíndrico.
(a)
(b)
Figura 1.5- Robô tipo SCARA: (a) volume de trabalho, (b) robô.
e) Robô Articulado ou Antropomórfico (articulated robot):
Nesta configuração, existem ao menos três juntas de rotação. O eixo de movimento da junta de rotação da base é ortogonal às outras duas juntas de rotação que são simétricas entre si. Este tipo de configuração é o que permite maior mobilidade a robôs. Seu volume de trabalho apresenta uma geometria mais complexa em relação as outras configurações. 8
(a)
(b)
Figura 1.6- Robô Articulado (cortesia ABB): (a) volume de trabalho, (b) robô.
f) Robô Paralelo (parallel robot):
Este robô apresenta configuração tipo plataforma e mecanismos em forma de cadeia cinemática fechada. O volume de trabalho resultante é aproximadamente semi-esférico.
(a)
(b)
Figura 1.7- Robô Paralelo (IFR, 2000): (a) esquema, (b) exemplo de robô.
1.2.2.2 - Quanto a geração tecnológica Outra classificação (RIVIN, 1988), (ROSEN, 1985), refere-se às gerações tecnológicas dos robôs industriais. A primeira geração é a dos robôs denominados de seqüência fixa, os quais 9
uma vez programados podem repetir uma seqüência de operações e para realizar uma operação diferente devem ser reprogramados. O ambiente de interação do robô na fábrica deve estar completamente estruturado (parametrizado), pois as operações exigem o posicionamento preciso dos objetos a serem trabalhados. A maioria dos robôs industriais em uso pertence a esta geração. Os robôs de segunda geração possuem recursos computacionais e sensores que permitem ao robô agir em um ambiente parcialmente estruturado, calculando em tempo real os parâmetros de controle para a realização dos movimentos. Algumas atividades como pegar uma peça que está deslocada de sua posição ideal e reconhecer uma peça a ser manipulada dentre um conjunto de peças variadas, são características desta geração. A terceira geração de robôs apresenta inteligência suficiente para se conectar com outros robôs e máquinas, armazenar programas e se comunicar com outros sistemas computacionais. É capaz, por exemplo, de tomar decisões em operações de montagem, como montar uma adequada combinação de peças, rejeitar peças defeituosas e selecionar uma combinação correta de tolerâncias. O emprego deste tipo de robô em processos industriais ainda é incipiente. 1.2.2.3 - Quanto à participação de operador humano O grau de envolvimento do operador humano no processo de controle de um sistema robótico é determinado pela complexidade que o meio de interação apresenta e pelos recursos disponíveis para o processamento dos dados necessários à execução das tarefas. Em ambientes estruturados, onde os parâmetros necessários à operacionalidade do sistema podem ser identificados e quantificados, é possível estabelecer um sistema de controle capaz de gerenciar e monitorar as tarefas com a mínima participação de um operador. Neste caso classifica-se este sistema como robótico. A maioria das atividades automatizadas relacionadas às indústrias, como soldagem por pontos ou contínua, fixação de circuitos integrados em placas, pintura de superfícies, movimentação de objetos e montagem de peças, operam em ambientes estruturados. Já em ambientes não estruturados, devido à dificuldade de serem quantificados determinados parâmetros de processo ou ao elevado custo para obtê-los dentro de certas especificações, a utilização do poder decisório do operador no gerenciamento do sistema de controle torna-se fundamental para a realização das tarefas determinadas. Neste caso, o sistema é classificado como teleoperado. Há diversas aplicações em ambientes não estruturados onde um computador pode processar parte das informações a serem enviadas do ambiente manipulado ao operador humano e viceversa. Apesar de esta situação ter conceitualmente um operador humano no comando operacional, observa-se algum grau de autonomia do sistema. Os sistemas baseados em teleoperação (ver capítulo 11) são normalmente utilizados em manipulações envolvendo atividades em ambientes não estruturados como mineração, recuperação de satélites, manipulação de materiais radioativos em usinas ou centros de pesquisas nucleares, e exploração de petróleo e gás em plataformas marítimas.
1.2.3 - Projeto de Robô O projeto de um robô é necessariamente interdisciplinar e envolve a utilização de conhecimentos de várias áreas clássicas como:
10
Engenharia mecânica: a qual fornece metodologias para o estudo de estruturas e mecanismos em situações estáticas e dinâmicas; Engenharias elétrica e eletrônica: fornecem técnicas para o projeto e integração de sensores, interfaces, atuadores e controladores; Teoria de controle: formula e avalia algoritmos ou critérios de inteligência artificial que realizam os movimentos desejados e controlam as interações entre robô e o ambiente; e Ciência da computação: propicia ferramentas para a programação de robôs, capacitando-os à realização das tarefas especificadas. Neste tipo de projeto deve-se ainda considerar entre outros aspectos: dimensionamento de atuadores, mecanismos, circuitos eletrônicos (hardware), unidades de controle e potência; cálculos estruturais; fabricação e montagem de peças de precisão; seleção de materiais; planificação dos movimentos; simulação e modelagem; •
•
•
•
•
•
•
•
•
•
desenvolvimento de técnicas de programação para o sistema de controle, sistema operacional, diagnose de sistemas/componentes e comunicação ao operador; e testes de desempenho. Os robôs são máquinas de programação flexível projetadas para operar em diversas situações, logo, as especificações de operação fornecidas pelo fabricante são de caráter geral e relacionamse a: volume de trabalho, capacidade de carga, velocidade máxima, precisão e repetibilidade. Com a implementação de um sistema robótico em uma fábrica, devem ainda ser analisados aspectos relacionados às áreas econômica e social, como: análise de custos e benefícios, mudanças organizacionais na estrutura da empresa e investimentos diretos e indiretos na produção, redução do número de empregados e remanejamentos. •
•
1.3 - EFETUADORES Os fabricantes de robôs especificam nos catálogos as informações relativas às características dimensionais e de desempenho dos robôs, como acurácia, repetibilidade, carga máxima de manipulação, número de graus de liberdade, volume de trabalho e etc. Estes dados fornecem ao usuário subsídios suficientes para que se tenha uma ordem de grandeza das condições operacionais de um determinado robô. As informações indicadas nos catálogos relacionam-se essencialmente à extremidade terminal do manipulador mecânico, ou seja, ao último elo. Portanto, torna-se necessária a inclusão de um componente capaz de promover a interação entre a extremidade terminal do manipulador mecânico e o objeto a ser trabalhado. Este componente é o efetuador. Os efetuadores podem ser divididos em dois grandes tipos: as ferramentas especiais e as garras mecânicas. As ferramentas têm como função realizar uma ação ou trabalho sobre uma peça, sendo relacionadas principalmente a operações de processamento e controle de qualidade. Enquanto as ferramentas especiais realizam trabalho, durante a sua movimentação ou quando já posicionadas pelo manipulador, as garras mecânicas são associadas a preensão (agarramento) de objetos visando operações de movimentação ou manipulação. O principal 11
escopo de uma garra é pegar um determinado objeto, transportá-lo a uma posição préestabelecida e após alcançar tal posição, soltá-lo (TANIE, 1985). Os efetuadores usados em robótica são padronizados de tal forma a permitir uma vinculação fácil à extremidade terminal do robô industrial e geralmente podem ser controlados pela mesma unidade de controle do robô, através de interfaces apropriadas.
1.3.1 - Ferramentas Especiais As ferramentas são geralmente rigidamente fixas às extremidades terminais dos robôs, não possuindo movimentação relativa a estes. A função primordial do robô nestes casos é posicionar e orientar a ferramenta em relação à peça que será trabalhada. O uso de ferramentas está associado diretamente às tarefas a serem realizadas. Dentre as ferramentas mais tradicionais utilizadas em operações de processamento estão: o porta-eletrodo, a pistola de aspersão (para pó, jateamento de superfícies e etc.), a pistola de pintura, as tochas para soldagem TIG e MIG/MAG, o dispositivo para soldagem/corte à plasma, o conjunto de pinças para soldagem por pontos, o dispositivo para soldagem/corte à laser, o porta-esmeriladora, o maçarico para corte oxiacetilênico, a pistola para limpeza por jato d'água, a pistola para corte por jato d'água e etc.
1.3.2 - Garras Mecânicas 1.3.2.1 - Analogias com a Mão Humana SALISBURY e CRAIG (1982) após pesquisarem cerca de seiscentas configurações diferentes de garras chegaram a conclusão que, em termos cinemáticos, uma garra na configuração de mão humana é a que possui maior versatilidade para realizar a manipulação de objetos dos mais variados tipos e inclusive formas irregulares, sendo capaz de exercer apenas a força estritamente necessária para que estes objetos sejam seguros com estabilidade e com segurança. Para efeito de comparação, observa-se que uma garra com dois dedos pode manipular com sucesso aproximadamente 40% dos objetos das mais diferentes formas. Uma garra com três dedos poderia manipular 90% de todos objetos, e uma na configuração com quatro dedos poderia manipular em torno de 99% destes objetos (MATSUOKA, 1995). Embora uma garra com a configuração de mão humana possa apresentar elevada versatilidade em função de seus muitos graus de liberdade, sua utilização em robôs industriais não é conveniente devido a sua complexidade de construção e controle. O número grande de juntas neste tipo de garra permite adaptá-la a muitas formas diferentes de objetos a serem manipulados, permitindo a preensão de um maior número de formas de objetos que as garras convencionais. Porém, a programação torna-se extremamente complexa. A manipulação eficiente de garras com múltiplos dedos, que cooperam entre si, requer um sistema de controle mais sofisticado contendo retroalimentação de sinais provenientes de sensores de tato (força, ótico, estensômetros e etc.) e planejamento de trajetórias. Quando se utiliza uma garra com apenas dois dedos (forquilha), a falta de versatilidade de manipulação ou destreza (dexterity) exige que o programador modele com grande precisão os objetos a serem seguros ou manipulados. Nos projetos deste tipo de garra, normalmente se considera que os modelos dos objetos que estão sendo manipulados estão disponíveis ou podem ser facilmente obtidos. Quando se deseja que o manipulador opere em ambientes desconhecidos de trabalho ou que ele manipule uma maior variedade de objetos com diferentes formas, esta 12
modelagem é difícil de ser empregada. Já uma garra na configuração de mão humana com maior número de graus de liberdade (sistema redundante) pode-se adequar a incertezas do modelo simplesmente, por exemplo, pela retroalimentação dos sensores de tato. O maior desafio é manter a controlabilidade do sistema redundante devido aos vários graus de liberdade. Basicamente existem dois modos estáveis de se promover a preensão de um objeto através de garras: a preensão com precisão e a preensão com segurança (TANIE, 1985). O modo com precisão é na maioria das vezes realizado utilizando-se principalmente as pontas dos dedos, como por exemplo no trabalho manual realizado por uma costureira através da agulha e fio. No modo com segurança existe o contato do objeto com os dedos e a palma da mão, como por exemplo um tenista segurando a sua raquete. O estudo da mão humana sob o ponto de vista cinemático requer uma análise tanto do esqueleto quanto dos ligamentos. A mão pode ser considerada como um sistema formado por ossos (elos), ligamentos (juntas) e músculos (atuadores). Estes elementos formam os dedos e a palma e permitem a realização de movimento entre os elos. As juntas são tencionadas pelos ligamentos, tendões e músculos. O movimento nas junta é obtido pela força dos músculos e é restringido pelos músculos e articulações dos ossos. A mão é formada por vinte e sete ossos, mais de vinte articulações e a sua ação envolve o uso de trinta e três músculos diferentes. Formada por cinco dedos, ela possui capacidade de executar inúmeros movimentos, que podem ser divididos em dois grupos fundamentais: movimentos com preensão e movimento sem preensão, nos quais o objeto é manipulado mediante impulsão ou levantamento. Os tipos básicos de preensão de diferentes objetos podem ser vistos na figura 1.8. Desta figura pode-se notar as vantagens da utilização de uma mão com cinco dedos. Os tipos básicos de preensão são denominados: cilíndrico, ponta de dedo, gancho, palmar, esférico e lateral (ISO/DIS, 1998).
Figura 1.8– Seis tipos básicos de preensão de uma mão humana (TANIE, 1985).
1.3.2.2 - Formas de Preensão Além da divisão por números de dedos, deve-se observar a forma de preensão. Nos desenhos esquemáticos da figura 1.9, pode-se notar as preensões internas e externas de diversas garras (ISO/DIS, 1998). 13
Além destes fatores, diversos outros devem ser considerados tanto para a especificação e seleção quanto para o projeto das garras mecânicas ou das ferramentas específicas. Dentre estes fatores podem ser citados: forma, peso, material e rigidez do objeto a ser manipulado, velocidade e aceleração do manipulador durante a realização da tarefa, estabilidade do agarramento, ambiente de trabalho, etc.
Figura 1.9– Preensões típicas de diversos tipos de garras (ISO/DIS 14539, 1998).
1.3.2.3 - Tipos de Garras Industriais Enquanto nos centros pesquisas de todo o mundo as procura-se projetar garras mecânicas tão complexas como as dosde seres humanos, nas indústrias garras são, na sua grande maioria, compostas de apenas dois ou três dedos e uma junta de rotação em cada dedo. Entre as figuras 1.10 e 1.13 são apresentadas algumas garras utilizadas na indústria.
14
(a)
(b)
(c) Figura 1.10– Garra com dois dedos i ntercambiáveis (cortesia Shunk GmbH.).
Em alguns casos deseja-se que a garra possua capacidade de exercer força e exibir uma destreza que só pode ser conseguida com dedos especiais. Na figura 1.11 pode-se observar um tipo de garra com esta característica, onde os dedos, quando sob pressão interna de algum fluido exerce a força diretamente sobre o objeto manipulado.
15
Figura 1.11– Garra com Dedos Flexíveis ( Cortesia Sommer GmbH).
Mesmo com esta capacidade, existem objetos que para serem manipulados com segurança necessitam de garras com pelo menos três dedos. Um exemplo clássico deste tipo é o da preensão de esferas ou peças com superfície cilíndrica. Um exemplo deste tipo de garra pode ser visto na figura 1.12.
Figura 1.12– Garra Mecânica com três dedos (cortesia Sh unk GmbH.).
Garras pneumáticas são muito empregadas para a movimentação de objetos com superfície plana e massa reduzida, como chapas metálicas, caixas e etc.
16
(a)
(b)
Figura 1.13- (a) Ventosas; (b) Garra pneumática (cortesia S hunk GmbH.).
1.3.3 - Especificação de uma Garra Como os efetuadores do tipo garra mecânica entrarão em contato direto com o objeto a ser manipulado, diversos fatores devem ser considerados no momento de sua especificação para o uso em robôs ou durante a fase de projeto de efetuadores. Segundo a norma ISO/DIS 14539 (1998), os principais itens são: Geometria dos dedos e da palma; Posicionamento dos dedos na palma; Forma dos dedos e seus movimentos durante o agarramento; Número e posicionamento dos atuadores; Número e posicionamento dos sensores; Mecanismos de transmissão da potência; Mecanismo de fixação efetuador / manipulador; •
•
•
•
•
•
•
• •
•
•
•
•
Tipo e força de agarramento; Tempo de operação (de agarramento, tempo do ciclo); Tipo de sistema de controle empregado (força e/ou posição); Número e material dos dedos; Número de graus de liberdade dos dedos; Geometria, peso, temperatura máxima e mínima, propriedades magnéticas e características da superfície do objeto a ser manipulado.
1.4 - APLICAÇÕES DE ROBÔS INDUSTRIAIS 1.4.1 - Generalidades A própria definição de robô industrial como sendo um "manipulador multifuncional reprogramável projetado para movimentar materiais, partes, ferramentas ou peças especiais, através de diversos movimentos programados, para o desempenho de uma variedade de tarefas", já fornece uma idéia das variadas aplicações que podem ser realizadas com este equipamento. 17
Conforme mencionado anteriormente, as características operacionais de um robô industrial, dependem essencialmente de sua configuração, das indicações de desempenho indicadas nos catálogos dos fabricantes e das tarefas planejadas a serem realizadas. Para cada tarefa, geralmente faz-se uso de diferentes efetuadores, os quais são selecionados especificamente para promover a correta interação entre a extremidade terminal do manipulador mecânico e o objeto a ser trabalhado. Os principais fabricantes de robôs industriais oferecem aos usuários diferentes configurações de manipuladores. Entretanto, alguns fabricantes se especializaram em produzir determinados tipos de robôs para aplicações específicas, obtendo desta forma melhores desempenhos operacionais. Dentre as mais importantes empresas que fabricam robôs industriais encontram-se: ABB Robotics AB, Adept Technologies Inc., Brown & Shape, COMAU SPA, FANUC LTD, Kawasaki Robotics Inc., KUKA Roboter GmbH, Motoman Inc., Stäubli AG e Sony Co. Uma das aplicações mais comuns de robôs industriais é a soldagem. Aproximadamente 25% dos robôs são empregados em diferentes aplicações de soldagem. A montagem de componentes corresponde a cerca de 33% das aplicações de robôs (1997). Muitos destes são empregados pelas indústrias automobilísticas e de eletrônica. Processos de empacotamento e paletização ainda permanecem com pequenos índices de aplicação com robôs, contribuindo com 2,8% do número total (1997). Esta área de aplicação deve crescer em função do aumento da capacidade de manipulação dos robôs. A indústria alimentícia é uma área que deve contribuir consideravelmente no futuro com a aplicação de robôs industriais (IFR, 2000). A maioria das atividades relacionadas a robôs industriais em processos de produção envolvem operações de movimentação , processamento e controle de qualidade. A seguir são apresentadas algumas destas atividades. •
Movimentação:
- movimentação de peças entre posições definidas; - transporte de peças entre esteira transportadora e máquinas operatrizes; - carregamento e descarregamento de peças em máquinas operatrizes; - carregamento e descarregamento de peças em magazines; - paletização. •
Processamento:
- soldagem por resistência elétrica (pontos) ou a arco (contínua); - fixação de circuitos integrados em placas; - pintura e envernizamento de superfícies; - montagem de peças; - acabamento superficial; - limpeza através de jato d'água e abrasivos; - corte através de processos por plasma, laser, oxi-corte ou jato d'água; - fixação de partes com parafusos, deposição de cola, rebites; - empacotamento. •
Controle de qualidade: 18
- inspeção por visão; - verificação dimensional de peças através de sensores.
1.4.2 - Aplicação de Robôs no Brasil A população mundial instalada de robôs de seis eixos é estimada em 790.000 unidades (1999), sendo no Brasil em torno de 4500 unidades. Portanto, o Brasil contribui com aproximadamente 0,6% do número total de robôs industriais instalados no mundo. As indústrias ligadas ao setor automobilístico, como montadoras e fornecedoras de autopeças são as maiores usuárias de robôs industriais no país. Cerca de 900 unidades (20% do total) foram empregadas em pequenas e médias indústrias. A figura 1.14 apresenta um gráfico do histórico da evolução do número de robôs industriais de seis eixos no Brasil. Observa-se que houve um acréscimo de 900% no número de robôs nos últimos cinco anos e a tendência é de crescimento (ROMANO, 2000).
5000 4000 3000 Robôs
2000 1000 0 1995
1996
1997
1998
2000*
Figura 1.14- Evolução histórica do nú mero de robôs industriais de seis eixos no Brasil.
A empresa ABB Robotics AB é a líder no mercado brasileiro com 33% das vendas. Na tabela 1.1 pode-se observar a distribuição de robôs industriais de seis eixos por aplicação industrial desta empresa no mercado brasileiro. Tabela 1.1- Distribuição percentual de robôs ABB no Brasil.
Aplicação Industrial
Percentual
Soldagem por pontos
33 %
Movimentação / paletização
25%
Soldagem por arco
18 %
Pintura
10 %
Outros (montagem, acabamento, corte por jato-d'água, oxi-corte)
14 %
Nas figuras a seguir são apresentados alguns exemplos de aplicação de robôs industriais no Brasil.
19
Figura 1.15- Pintura de carroceria de caminhão (cortesia Scani a Latin America Ltda.).
Figura 1.16- Soldagem na fabricação de assentos (cortesia Marcopolo Ltda.).
20
Figura 1.17- Manutenção de turbinas de aeronaves (cortesia Viação Aérea São Paulo)
1.5 - REFERÊNCIAS BORODIN, N., Machine Design, 1 ed., MIR Publishers, Moscow,1988. BOUTEILLE, D., BOUTEILLE, N., CHANTREUIL,S., at al., Les Automatismes Programables , Cépaduès-éditions, 2 ed., Toulouse, 1997. CRAIG, J., Introduction to Robotics: Mechanics & Control, Addison-Wesley Publishing Co., 1 ed., Massachusetts, 1986. CUTKOSKY, M. R., "On Grasp Choice, Grasp Models, and the Design of Hands for Manufacturing Tasks", IEEE Trasactions on Robotics and Automation, v. 5, n.3, pp. 269-279 ,1989. DE MASI, D., A Sociedade Pós-Industrial, Editora SENAI, 2 ed., São Paulo, 1999. DUTRA, M. S., Projeto, Construção, Modelagem Matemática e Testes Experimentais de uma Garra Mecânica com Quatro Dedos , Tese de M.Sc., COPPE/UFRJ, Rio de Janeiro, Brasil, 1990. FU, K.S., GONZALES, R.C., LEE, C.S.G., Robotics - Control, Sensing, Vision and Intelligence , McGraw-Hill Book Inc., International Edition, 1 ed., New York, 1987. GILBERTSON, R. G., Muscle Wires – Project Book, 3 ed., Mondotronics Inc., California, 1994. HIMENO, S. , TSUMURA, H., "The locomotive and control mechanism of the human finger and its applications to robotics", In: Proceedings of the ’83 International Conference on Advanced Robotics, pp. 261-269, 1983. IFR – International Federation of Robotics, http://www.ifr.org, 2000. ISO 10218 - Manipulating Industrial Robots - Safety, ISO Publications, France, 1992. ISO/DIS 14539 - Manipulating Industrial Robots: Vocabulary of object handling with end effectors and of characteristics of grasp-type grippers, ISO Publications, France, 1998. TANIE, K., "Design of Robot Hands". In: Nof, S. Y. (ed), Handbook of Industrial Robotics, 1 ed., chapter 8, New York, John Wiley & Sons, 1985. MATSUOKA, Y., Embodiment and Manipulation Learning Process for a Humanoid Hand, M.Sc. Dissertation, Massachussets Institute of Technology, USA, 1995. PHAN, D. T., HEGINBOTHAM, W. B., Robot Grippers, IFS (Publications) Ltd., EUA, 1986. RIVIN, E., Mechanical Design of Robots, 1 ed., McGraw-Hill Inc., New York, 1988. 21
ROMANO, V.F., "Automação e Robótica", In: Notas de Aula curso de graduação em Engenharia Mecânica EE-UFRJ, Rio de Janeiro, 1994. ROMANO, V.F., "Brazilian Investments and Applications in Robotics". In: Preprints of the Workshop on Integration In Manufacturing & Beyond - IIMB' 2000 , p.4, Bordeaux, France, Sept. 2000. ROSEN, C.A., "Robots and Machine Intelligence". In: Nof, S. Y. (ed), Handbook of Industrial Robotics, 1 ed., chapter 3, New York, John Wiley & Sons, 1985. SALISBURY, J. K.; CRAIG, J. J., "Articulated Hands: Force Control and Kinematic Issue", International Journal of Robotics Research , v.1, n. 1, pp.4-17, USA, 1982. SCHIAVICCO, L., SICILIANO, B., Robotica Industriale - Modellistica e Controllo di Manipolatori, 1 ed., McGraw-Hill Inc., Milano, 1995. SCIESZKO, J.L., "Projeto de Robôs", In: Notas de aula curso de graduação em Engenharia Mecânica EE-UFRJ, Rio de Janeiro, 1988.
SEERING, W. P., SCHEINMAN, V., "Mechanical Design of an Industrial Robot". In: Nof, S. Y. (ed), Handbook of Industrial Robotics, 1 ed., chapter 4, New York, John Wiley & Sons, 1985. WARNECKE, H. J., SCHRAFT, R. D., WANNER M. C., "Mechanical Design of Robot System". In: Nof, S. Y. (ed), Handbook of Industrial Robotics, 1 ed., chapter 5, New York, John Wiley & Sons, 1985.
22
CAPÍTULO 2 MODELAGEM E CONTROLE DE ROBÔS João Maurício Rosário
2.1 - INTRODUÇÃO Um robô industrial pode ser definido como um sistema mecânico articulado que tem como objetivo principal executar operações pré-definidas. Isto é realizado através de um Supervisor de Controle que deverá especificar o que o manipulador deverá fazer para que o mesmo possa realizar as tarefas especificadas. Normalmente ele é constituído de seis graus de liberdade, e o posicionamento de sua ferramenta de trabalho é especificado através do controle de modo apropriado de suas variáveis articulares ou de juntas. Desta maneira, sua trajetória é definida através de um conjunto de ângulos/translações associados ao movimento angular/linear de cada grau de liberdade do robô, que após algoritmo de interpolação, servirão como sinal de referência para o controlador de posição de cada junta robótica que realizará uma comparação com os sinais provenientes dos transdutores de posição das juntas. Diversas aplicações industriais, exigem que o robô trabalhe de acordo com a posição e orientação do seu elemento terminal em relação ao sistema de coordenadas de trabalho, como por exemplo, um robô trabalhando em conjunto com uma máquina de comando numérico, numa célula automatizada com outros robôs, ou ainda quando o mesmo é dotado de um sistema de visão. Neste último caso, a interpretação das imagens se efetuará em relação ao sistema de coordenadas de trabalho (em duas ou três dimensões), e as informações extraídas das mesmas serão transmitidas ao Sistema de Supervisão após tratamento apropriado. O Supervisor de Controle, ou unidade de controle, é responsável pela geração dos sinais de referência individuais ao longo do tempo, para cada junta do robô. Através de uma malha de controle de posição independente para cada junta, estes sinais são comparados com os valores atuais (obtidos através dos sensores de posição articulares), que faz com que a configuração de um robô seja controlada a partir de um valor desejado, independente do movimento desejado e da carga transportada pelo robô. Entretanto, os valores das variáveis articulares utilizados como sinal de referência na malha de controle de posição das juntas quando comparados com os valores das juntas podem traduzir num erro, que aumenta com a sua velocidade de operação. Conseqüentemente, a implementação de um controlador de posição para um robô industrial exige o conhecimento da precisão cinemática do movimento do manipulador. Para estabelecermos estratégias de controle de posição de juntas robóticas eficientes e precisas (erro próximo de zero), o movimento do robô é descrito através de equações diferenciais levando-se em consideração a sua arquitetura construtiva, a massa dos diferentes elementos, as 23
inércias e tensor de inércia relacionada com a carga transportada, considerando também a modelagem completa de seu sistema de acionamento (motor-redutor), (PAUL, 1981). Neste capitulo serão abordados aspectos conceituais que envolvem a modelagem e controle de robôs industriais, proporcionando ao leitor uma formação básica dos principais conceitos matemáticos necessários para utilização de um supervisor de controle de um robô industrial.
2.2 - MODELAGEM CINEMÁTICA DE MANIPULADORES 2.2.1 - Descrição de um Robô Industrial Um manipulador mecânico consiste de elos, conectados por juntas prismáticas ou rotacionais. Cada par junta-elo constitui um grau de liberdade. Assim, para um manipulador com N graus de liberdade, temos N pares juntas-elos, onde o primeiro elo é a base de sustentação do robô (sistema de coordenadas inerciais fixado) e no seu último elo é incorporada a sua ferramenta de trabalho. O conhecimento completo das variáveis articulares de um robô θi, determina o posicionamento de sua ferramenta no sistema de coordenadas de trabalho. De um modo geral, os três primeiros graus de liberdade de um robô são responsáveis pelo posicionamento de sua ferramenta no espaço de tarefas e os restantes pela sua orientação. A figura 1.1 apresentada no primeiro capítulo mostra as juntas e elos de um robô industrial. Assim a primeira conexão ocorre entre o primeiro elo e o suporte de base, e o último elo representa o ponto de conexão entre o sexto grau de liberdade e a ferramenta. Na maioria das aplicações industriais, a programação de tarefas de robôs, é realizada por aprendizagem, consistindo no movimento individual de cada junta. Assim sendo, a programação de trajetórias de um robô torna-se muito fácil, não necessitando de um conhecimento do modelo, sendo a fase de aprendizagem basicamente uma operação de armazenamento de uma seqüência de incrementos necessários para que o conjunto de variáveis articulares determine um posicionamento final Xi, especificado a partir de um perfil de trajetórias fornecido (robô controlado a partir do sistema de coordenadas de juntas). Como um robô é controlado através de suas variáveis articulares, a realização do controle de posição em relação ao sistema de coordenadas cartesianas implicará no desenvolvimento de metodologias para transformação de coordenadas. A transformação de coordenadas articulares para cartesianas é normalmente realizada em tempo real, onde a partir do conjunto de variáveis articulares serão obtidas a posição e orientação de sua ferramenta.
2.2.2 - Sistemas de Referência Um Sistema Articular pode ser representado matematicamente através de n corpos móveis Ci (i = 1, 2,..., n) e de um corpo C0 fixo, interligados por n articulações, formando uma estrutura de cadeia. Para representar a situação relativa dos vários corpos da cadeia, é fixado a cada elemento Ci um referencial R. Podemos relacionar um determinado referencial Ri+1 (oi+1, xi+1, yi+1, zi+1) com o seu anterior Ri (oi, xi, yi, zi), como também o sistema de coordenadas de srcem da base (figura 2.2) através da equação 2.1, onde A i,i+1 representa as matrizes de transformação homogênea de rotação e Li o vetor de translação de uma srcem a outra, onde A i, i+1 é resultante do produto matricial global entre as diversas matrizes de transformações homogêneas relacionadas com rotações ou translações sucessivas das diferentes articulações (equação 2.2).
oi + 1 = o i Ai i+ iL, + 1 *
(2.1) 24
Ai,i+1 = A1,2. A2,3. ... A i,i+1
(2.2)
onde
⎡Nxo Sxo Axo ⎤ ⎢ ⎥ A i,i+1 = ⎢Nyo Syo Ayo ⎥ ⎢⎣Nzo Szo Azo ⎥⎦
[Ai, i+1] Li
Figura 2.1 -Sistema de Referência utilizado.
Qualquer rotação no espaço pode ser decomposta em um grupo de rotações elementares ao longo dos eixos X, Y e Z. A matriz de rotação elementar usada na equação de transformação é associada com a rotação elementar do referencial correspondente em relação ao seu anterior. Este procedimento matemático pode ser estendido para toda extensão do modelo. Assim sendo, a matriz de orientação de um ponto de interesse pode ser obtida pela equação 2.2. Conseqüentemente o posicionamento completo de um corpo rígido no espaço, poderá ser facilmente obtido através da equação 2.1 que fornece o seu vetor posição, sendo que a equação 2.3 representa a matriz de orientação associada, podendo ser expressa através de componentes angulares associadas às três direções de rotação correspondentes aos eixos de referência do sistema de coordenadas (pôr exemplo, Roll, Pitch, Yaw - RPY ou quartenions).
2.2.3 - Transformação de coordenadas Nas diversas aplicações industriais, um robô pode ser controlado e programado a partir do sistema de coordenadas associadas a sua ferramenta. É muito mais natural expressarmos o deslocamento absoluto do elemento terminal de um robô que considerarmos a variação de suas coordenadas articulares, embora a malha de controle de uma junta robótica seja estabelecida a partir da comparação de grandezas articulares, tornando-se necessário a realização de uma transformação geométrica apropriada para o estabelecimento da correspondência entre as variáveis articulares θi e as coordenadas absolutas do elemento terminal Xi. A figura 2.2 apresenta um esquema descrevendo o problema de transformação direta de coordenadas para um robô com N graus de liberdade.
θ1 25 TRANSFORMAÇÃO
DIRETA
θ2
X, Y, Z ψ, θ, φ
θN Figura 2.2 -Transformação Direta de Coordenadas.
A operação que realiza a correspondência entre esses dois espaços é chamada de transformação de coordenadas. A transposição direta de coordenadas apresenta uma solução única, o mesmo não acontecendo com o problema inverso, onde manipuladores com um número de graus de liberdade superior a três podem conduzir a soluções múltiplas. Neste capitulo introduziremos o problema da transformação de coordenadas, a partir de exemplos simples, com ênfase na solução do problema inverso utilizando algoritmos numéricos. 2.2.3.1 - Robô Elementar (1 GL) – pêndulo simples A figura 2.3 apresenta um robô elementar (pêndulo simples) com 1 GL (grau de liberdade) e de comprimento L (perfeitamente rígido), onde as coordenadas X e Y do elemento terminal são expressas em relação ao sistema de coordenadas. A partir de um dado valor θ ficam determinadas as coordenadas XT = (X, Y)T do elemento terminal do robô em relação ao seu sistema de coordenadas. Esta operação é chamada transformação direta de coordenadas. Para deslocarmos a extremidade do seguimento L do robô para uma posição desejada M = (Xo, Yo)T basta utilizarmos a coordenada θ, ou seja, θ = arc sin (Xo/L), com Yo ≤ L.
Modelo Matemático associado:
X = L. sin Y = L. ( 1 – cos ) Figura 2.3 -Robô com 1 grau de liberdade (pêndulo simples).
2.2.3.2 - Robô com 2 GL – pêndulo duplo A figura 2.4 apresenta um robô com dois graus de liberdade, constituído de dois pêndulos com comprimentos L1, L2, onde as coordenadas absolutas X e Y da extremidade de L 2 são expressas em relação ao sistema de coordenadas.
26
Modelo Matemático associado:
X = L1. sin 1 + L2. sin 2 Y = L1. (1 – cos 1 ) + L2. ( 1 – cos
2
)
Figura 2.4 -Robô com 2 graus de liberdade (pêndulo duplo).
A transformação inversa de coordenadas consistirá na definição de um vetor θ = (θ1, θ2)T, a partir do posicionamento do robô num determinado ponto M(Xo,Yo)T, a partir da obtenção dos valores θ1 e θ2 expressos em função de Xo e Yo.
2.2.4 - Modelo Geométrico O modelo geométrico de um robô expressa a posição e orientação de seu elemento terminal em relação a um sistema de coordenadas fixo a base do robô (figura 2.5), em função de suas coordenadas generalizadas (coordenadas angulares no caso de juntas rotacionais).
Figura 2.5- Representação de um sistema de Coordenadas de um robô.
O modelo geométrico é representado pela expressão: )
X = f( θ
(2.3)
onde θ = (θ1, θ2, ......, θn): vetor das posições angulares das juntas e X = (X, Y, Z, ψ, θ, φ): vetor posição, onde os três primeiros termos denotam a posição cartesiana e os três últimos a orientação do elemento terminal. Esta relação pode ser expressa matematicamente pela matriz que relaciona o sistema de coordenadas solidárias a base do robô com um sistema de coordenadas associadas com o seu 27
elemento terminal. Esta matriz é chamada de matriz de passagem homogênea, sendo obtida a partir do produto das matrizes de transformação, Ai, i-1, que relaciona o sistema de coordenadas de um elemento i com o sistema de coordenadas anterior i-1, isto é: Tn = [ n s a p ] = A 0.1*A1,2*........*An-1,n
(2.4)
onde
p = [ px , py , pz ]: vetor posição e n = [ nx ny nz ], s = [ sx sy sz ] e a = [ ax ay az ]: vetor ortonormal que descreve a orientação.
A descrição da matriz de transformação é normalmente realizada utilizando a notação de Denavit-Hartenberg, após a obtenção dos quatro parâmetros θi, ai, di e αi,, descritos a seguir.
2.2.5 - Descrição cinemática de um robô A evolução no tempo das coordenadas das juntas de um robô representa o modelo cinemático de um sistema articulado no espaço tridimensional. A notação de Denavit-Hartenberg (DH) é uma ferramenta utilizada para sistematizar a descrição cinemática de sistemas mecânicos articulados com N graus de liberdade (DENAVIT, 1955).
Figura 2.6- Notação de Denavit-Hartenberg (DH).
Na figura 2.6 podemos visualizar dois elos conectados por uma junta que tem duas superfícies deslizantes uma sobre a outra remanescente em contato. Um eixo de uma junta estabelece a conexão de dois elos. 28
Estes eixos de juntas devem ter duas normais conectadas neles, uma para cada um dos elos. A posição relativa destes dois elos conectados (elo i-1 e elo i) é dada por d i, que é a distância medida ao longo do eixo da junta entre suas normais. O ângulo de junta θi entre as normais é medido em um plano normal ao eixo da junta. Assim, di e θi podem ser chamados respectivamente, distância e o ângulo entre elos adjacentes. Eles determinam a posição relativa de elos vizinhos. Um elo i poderá estar conectado, no máximo, dois outros elos (elo i-1 e elo i +1). Assim, dois eixos de junta são estabelecidos em ambos terminais de conexão. O significado dos elos, do ponto de vista cinemático, é que eles mantêm uma configuração fixa entre suas juntas que podem ser caracterizadas por dois parâmetros: ai e αi. O parâmetro ai é a menor distância medida ao longo da normal comum entre os eixos de junta (isto é, os eixos z i-1 e z i para a junta i e junta i+1, respectivamente) Assim, ai e αi , podem ser chamados respectivamente, comprimento e ângulo de twist (torção) do elo i. Eles determinam a estrutura do elo i. Assim sendo, quatro parâmetros: ai , αi , di ,θi são associados com cada elo do manipulador. No momento, em que estabelecemos uma convenção de sinais para cada um destes parâmetros, estes constituemNote um conjunto para determinar a configuração do manipulador. que estessuficiente quatro parâmetros aparecem em pares: cinemática de cada elo
• (ai , αi ) que determinam a estrutura do elo e os parâmetros da junta; • (di , θi ) que determinam a posição relativa de elos vizinhos. 2.2.5.1 - Notação de Denavit–Hartenberg Para descrever a translação e rotação entre dois elos adjacentes, Denavit-Hartenberg propuseram um método matricial para estabelecimento sistemático de um sistema de coordenadas fixo para cada elo de uma cadeia cinemática articulada. A representação de Denavit-Hartemberg (D-H) resulta na obtenção de uma matriz de transformação homogênea 4 × 4, representando cada sistema de coordenadas do elo na junta, em relação ao sistema de coordenadas do elo anterior. Assim, a partir de transformações sucessivas, podem ser obtidas as coordenadas do elemento terminal de um robô (último elo), expressas matematicamente no sistema de coordenadas fixo a base. Assim sendo, um sistema de coordenadas cartesianas ortonormal (Xi, Yi, Zi) pode ser estabelecido para cada elo no seu eixo de junta, onde i= 1, 2, . . ., N (N número de graus de liberdade) mais o sistema de coordenadas da base. Assim, uma junta rotacional tem somente 1 i i i grau de cada junta i+1,liberdade, sendo fixoeno elo i.sistema de coordenadas (X , Y , Z ) do braço do robô corresponde a Quando a junta i é acionada, o elo i deve mover-se com relação ao elo i-1. Assim, o i-ésimo sistema de coordenadas é solidário ao elo i, se movimentando junto com o mesmo. Assim, o nésimo sistema de coordenadas se movimentará com o elemento terminal ( elo n). As coordenadas da base são definidas como o sistema de coordenadas 0 (X 0, Y0, Z0), também chamado de sistema de referência inercial. Os sistemas de coordenadas são estabelecidos obedecendo três regras:
O eixo Zi-1 é colocado ao longo do eixo de movimento da junta i. O eixo Xi é normal ao eixo Z i-1, e apontando para fora dele. o eixo Yi completa o sistema utilizando a regra da mão direita. Através destas regras podemos observar que: 1. A escolha do sistema de coordenadas é livre, podendo ser colocada em qualquer parte da base de suporte, enquanto que a posição do eixo Z0, deverá ser a do eixo de movimento da primeira junta. 2. O último sistema de coordenadas (n-ésimo) pode ser colocado em qualquer parte do elemento terminal, enquanto que o eixo X i é normal ao eixo Z i-1. 29
A representação D-H de um elo rígido dependerá de quatro parâmetros associados ao elo. Estes parâmetros descrevem completamente o comportamento cinemático de uma junta prismática ou revoluta (figura 2.6). Estes quatro parâmetros são definidos a seguir: • θi é o angulo de junta obtido entre os eixos Xi-1 e Xi no eixo Zi-1 (usar a regra da mão direita); • di é a distância entre a srcem do (i-1)-ésimo sistema de coordenadas até a interseção do eixo Zi-1 com o eixo Xi ao longo do eixo Zi-1; • ai é a distância (off-set) entre a intersecção do eixo Z i-1 com o eixo Xi até a srcem o i-ésimo sistema de referência ao longo do eixo Xi (ou a menor distância entre os eixos Zi-1 e Zi); • αi é ângulo offset entre os eixos Zi-1 e Zi medidos no eixo Xi (usando a regra da mão direita). Para uma junta rotacional, di, ai, e αi são os parâmetros da junta, variando o seu valor na rotação do elo i em relação ao elo i-1. Para uma junta prismática θi, ai e αi são os parâmetros da junta, enquanto di é a variável de junta (deslocamento linear). 2.2.5.2 - Obtenção da Matriz de Transformação Homogênea i-1Ai Uma vez os sistemas de coordenadas D-H tenham sido estabelecidos, uma matriz de transformação homogênea pode facilmente ser desenvolvida relacionando dois sistemas de referência sucessivos. A figura 2.6 mostra que um ponto r i expresso no i-ésimo sistema de coordenadas pode ser expresso no (i-1)-ésimo sistema de coordenadas como r i -1 aplicando as transformações sucessivamente apresentadas a seguir: 1. Rotação no eixo Zi-1 de um ângulo de θ i para alinhar o eixo X i-1 com o eixo Xi (o eixo Xi-1 é paralelo ao eixo Xi e aponta para a mesma direção). 2. Translação uma distância de d i ao longo do eixo Zi-1 para trazer os eixos Xi-1 e Xi na coincidência. 3. Translação ao longo do eixo Xi uma distância de ai para trazer as duas srcens também como o eixo X na coincidência. 4. Rotação do eixo Xi um angulo de α i para trazer os dois sistemas de coordenadas na coincidência. Cada uma destas quatro operações pode ser expressa através de uma matriz homogênea de rotação-translação, e o produto destas quatro matrizes de transformações elementares produzem uma matriz de transformação homogênea composta i-1Ai, conhecida como matriz de transformação de D-H, para sistemas de coordenadas adjacentes, i e i-1. i-1
Ai = Tz,d Tz,θ Tx,a Tx,α
⎡10 ⎢0 =⎢ ⎢0 ⎢ 00 ⎣
0 10 0 1 0
0 ⎤ ⎡ cosθi
0 ⎥ ⎢ sinθθii ⎥⎢ d1 ⎥ ⎢ 0 ⎥⎢ 1 ⎦⎣ 0
(2.5)
− sinθi
0 0⎤ ⎡1
cos
1
0⎥ ⎢0100 ⎥⎢ 0⎥ ⎢00 ⎥⎢ 1⎦ ⎣0001
30
0 α i iα 1
ai⎤ ⎡1
⎥ ⎢ 0 cos − sin ⎥⎢ 0 ⎥ ⎢ 0 sinα i cosα i ⎥ ⎢0 0 0 ⎦⎣
0⎤ 0⎥
⎥
0⎥
⎥
1⎦
α iθi sinα iθ i sin ⎡ cosθi − cos i i θsin ⎢ sinθ cos α i θ i cos α i θ−i sin i i i θ cos =⎢ ⎢ 0 sinα i cosα i ⎢ 0 0 0 ⎣
a cos a sin di 1
⎤ ⎥ ⎥ ⎥ ⎥ ⎦
(2.6)
A transformação inversa será:
i-1
-1
[ Ai] =
sinθ i ⎡ cosθ i ⎢− cos α sinθ cos α cosθ i i i i i Ai-1 = ⎢ ⎢ sinα i sinθ i − sinα cosθ i
⎣⎢
cos α i
− ai ⎤ − d i sinα i ⎥⎥ − d i cos α i ⎥
1
sinα i
(2.7)
⎦⎥
onde ai , αi , di são constantes, e θi é a variável de junta para uma junta rotativa. Para uma junta prismática a variável de junta é d i , enquanto ai , αi , θi são constantes. Neste caso, i -1Ai será definido como:
i -1
Ai = Tz,θ Tz,d Tx,α
αi θ sin ⎡cosθi − cos i sin iαi θ sin ⎢ sinθ cos αi θ cos iα i θ− sin cos i i =⎢ ⎢ 0 cosα i sinαi ⎢ 0 0 0 ⎣
0⎤ 0⎥
⎥
di ⎥
(2.8)
⎥ 1⎦
e sua inversa será:
⎡ cosθi ⎢− cosα θsin i i [i -1Ai]-1 = iAi -1 = ⎢ ⎢ sinα iθsin i ⎢ 0 ⎣
sinθi α i cos θi αcos i α −θ sin αcos 0
0 i i
sin iα αcos 0
i
0 ⎤ − d sin ⎥⎥ − d i cos i ⎥ ⎥ 1 ⎦
(2.9)
2.2.5.3 - Matriz Transformação T A descrição cinemática completa de uma cadeia articulada pode ser obtida a partir do produto matricial entre as diversas matrizes de transformações homogêneas. Usando a matriz de transformação i-1Ai, podemos relacionar um ponto Xi no elo i, e expressar em coordenadas homogêneas, em relação aos sistemas de coordenadas i para i-1, Xi -1 estabelecido no elo i-1 através da relação: 31
Xi-1 =
i-1
Ai Xi
(2.10)
onde Xi-1 = (xi-1, y i-1, z i-1) e Xi = (xi, y i, z i)T Para simplificarmos a notação a matriz modo recorrente podemos escrever:
i -1
Ai será designada Ai. Utilizando-se essa relação de
Xi-2 = Ai-2 . Xi-1 = Ai-1 . Ai- Xi Xi-3 = Ai-2 . Ai-1 . Ai- Xi Xo = A1 . A2 . A3
...
(2.11)
Ai . Xi
Para um robô com seis graus de liberdade, a transformação de coordenadas do referencial situado na base do robô ao referencial situado em relação ao seu elemento terminal (ou ferramenta) é descrito pela matriz de transformação homogênea T 6 = A1 . A2 . A3 . A4 . A5 . A6 . A figura 2.7 ilustra as coordenadas cartesianas que expressam a posição da ferramenta de operação de um robô (Px, Py, Pz) e sua orientação espacial especificada através das componentes dos versores de orientação n, s e a.
Sistema de coordenadas rotativo Sistema de coordenadas referência Figura 2.7:Configuração do elemento terminal de um robô
2.2.6 - Orientação da Ferramenta 32
A orientação de um sistema de coordenadas (por exemplo, referencial de uma ferramenta de trabalho) pode ser descrita como uma matriz de rotação que descreve a direção dos eixos do sistema de coordenadas em relação a um sistema de referência (figura 2.7). A expressão 2.4 mostra que os eixos do sistema de coordenadas rotativo (n, s, a) são vetores que podem ser expressos em relação ao sistema de coordenadas de referência através de componentes nas direções Xo, Yo e Zo. Estes três versores podem ser dispostos em colunas numa matriz rotacional designada de matriz de orientação:
T
⎡nx s x a x ⎤ = ⎢⎢n y s y a y ⎥⎥ ⎣⎢ n z s z a z ⎥⎦
(2.12)
Esta matriz é constituída de seis parâmetros, componentes dos versores de orientação, dificultando a realização de operações matemáticas. Conseqüentemente, nas aplicações industriais a matriz de orientação espacial da ferramenta de um robô deverá ser expressa de uma forma mais concisa, ou seja através de três ângulos RPY ( Roll, Pitch e Yaw ) ou a partir de quatro parâmetros - quaternions, como apresentaremos a seguir. 2.2.6.1 - Ângulos RPY Os ângulos Roll Pitch e Yaw (RPY) podem ser obtidos a partir de três rotações elementares ψ , θ , φ em torno dos eixos Z, Y, Z (figura 2.8). Estas transformações devem ser biunívocas. Para que isso ocorra a definição dos valores dos ângulos ψ , θ , φ deverão ser realizados a partir da utilização da função ATAN2.
Figura 2.8:Ângulos de Roll, Pitch, Yaw – Rotações Elementares.
RPY (φ, θ,)ψ
( ) z,(φ ) . = ROT
( ) y,θ . ROT z, ψ ROT
33
⎡CφCθ − CφSθSψ − SφCψ ⎢ − SφSθSψ + CφCψ ⎢ ⎢⎣ − Sθ CθSψ
RPY(φ, θ, ψ ) = SφCθ
CφSθCψ + SφSψ ⎤ SφSθCψ - CφSψ CθCψ
⎥ ⎥ ⎥⎦
(2.12)
onde,
⎡n ⎤ φ = ATAN2 ⎢ y ⎥ ⎣ nx ⎦ ⎡ ⎤ − nZ θ = ATAN2⎢ ⎥ C n S n φ + φ ⎥ x y ⎦ ⎣⎢ (2.13)
ψ
⎡ Sφa x − Cφa y ⎤ = ATAN 2⎢ ⎥ ⎣⎢ − Sφs x + Cφs y ⎦⎥
onde:
FUNÇÃO ATAN2
⎡ 0 ⎡ x ⎤ ⎢ 90 θ=⎢ ⎥=⎢ ⎣ y ⎦ ⎢ − 180 ⎢ ⎣− 90
≤θ≤ 90 ≤ θ ≤ 180 ≤ θ ≤ − 90 0 ≤θ≤
, com , com , com , com
+ x, − x, − x, + x,
+y +y −y −y
2.2.6.2 - Quaternions de Orientação Outra forma bastante utilizada para a resolução do problema de orientação e cinemática inversa de robôs é a utilização de quartenions. A partir da utilização da álgebra de quaternions, a matriz de orientação da ferramenta de um manipulador (2.12), expressa em relação ao sistema de coordenadas da base, é expressa a partir de quatro parâmetros (q1, q2, q3 e q4). 1 q1 = nx + s y + az + 1 2
q2 =
1 2
nx − s y − az + 1
com sinal de q 2 = sinal (sz – ay)
34
(2.14)
q3 =
1
q4 =
1
2
2
s y − nx − az + 1
com sinal de q 3 = sinal (ax – nz)
az − nx − s y + 1
com sinal de q 4 = sinal (ny – sx)
Ao mesmo tempo a orientação deverá ser normalizada, ou seja: 2 2 2 2 q1 + q 2 + q 3 + q 4 = 1
(2.15)
A principal vantagem dessa representação é que a utilização de 4 parâmetros permitirá a obtenção de soluções únicas, implicando assim num número menor de manipulações computacionais. 2.2.6.3 - Exemplo de Aplicação Na figura 2.9 apresenta a ferramenta de um robô industrial orientada (referencial X’ Y’ Z’) em relação ao sistema de referência fixo a base (X, Y, Z). Para as duas configurações apresentadas, apresentaremos a seguir o cálculo da matriz de orientação da ferramenta, ângulos RPY e quartenions (q1, q2, q3, q4):
a) Rotação de 90oem torno de Y b) Nova Rotação de 30 o em torno de Y Figura 2.9:Cálculo da Matriz de Orientação, ângulos RPY e quartenions.
No caso (a), os eixos de referência podem ser descritos da seguinte forma: X’ = -Z = (0, 0, -1) Y’ = Y = (0, 1, 0) Z’= X = (1, 0, 0) matriz de orientação:
T
⎡n x s x a x ⎤ = ⎢⎢n y s y a y ⎥⎥ ⎢⎣ n z s z a z ⎥⎦
⎡0 ⎢0 ⎢ ⎢⎣− 1
1⎤
1
⎥ ⎥ 0⎥⎦
ângulos RPY: (0, 90, 0) – rotação de 90 o do eixo Y no sentido horário 35
quaternions:
q1 =
1
q2 =
1
q3 =
1
2
2
2
1 q4 = 2
1
0 +1+ 0 +1
=
0 −1− 0 +1
=0
1− 0 − 0 +1
=
0 − 0 −1+1
=0
2
1 2
2
= 0,707
2
= 0,707 com sinal q
3
= sinal (1 + 1) = +
No caso (b), os eixos de referência podem ser descritos da seguinte forma: X’ = (cos 30º , 0, -sin 30º) Y’ = (0, 1, 0) Z’= (sin 30º , 0, cos 30º) matriz de orientação:
T
⎡ cos 30 = ⎢⎢ 0 ⎢⎣− sin30
0 1 0
sin30 ⎤
⎥ ⎥ cos 30⎥⎦ 0
ângulos RPY: (0, 30, 0) – rotação de 30 o do eixo Y no sentido horário quaternions:
q1 =
1
q2 =
1
q3 =
1
q4 =
1
2
2
2
2
cos 30 + 1 + cos 30 + 1
= 0,9659
cos 30 − 1 − cos 30 + 1
=0
1 − cos 30 − cos 30 + 1
= 0,2588
0 − 0 −1+1
com sinal q3 = sinal (sin 30 + sin 30)= +
=0
2.3 - MODELAGEM CINEMÁTICA INVERSA A necessidade da obtenção de referências em coordenadas e juntas, correspondentes a tarefas definidas no espaço cartesiano é expressa matematicamente pela inversão do modelo geométrico, isto é: 36
(x)
θ = f -1
(2.16)
A função f é não linear e composta de soma de produtos de senos e cossenos das coordenadas generalizadas (translações ou rotações elementares). Por isso, a sua inversão é em geral não trivial. Como f é não linear não se pode garantir a existência e/ou a unicidade de uma função inversa f -1. No caso geral, só se pode determinar o número máximo de prováveis soluções. Os métodos de solução do problema da inversão do modelo geométrico são: • Métodos analíticos: Estes métodos conduzem à obtenção de todas as soluções. Estes métodos não são gerais, isto é, a inversão analítica não é trivial e, além disso, não há garantia de que seja possível fazê-la para um robô qualquer. Os métodos analíticos são adequados para robôs simples, isto é, aqueles que possuem um grande número de parâmetros de Denavit-Hartenberg nulos. numéricos iterativos: métodos convergem solução possível • Métodos entre todas as existentes, sãoEstes de caráter geral e, com opara atualuma desenvolvimento dos microcomputadores, a utilização destes métodos em tempo real é viável. Existem diversos métodos numéricos iterativos, entre eles os métodos recursivos, figura 2.10, que utiliza ao cálculo do modelo geométrico direto e da matriz Jacobiana inversa, descrito a seguir.
Figura 2.10:Problema Cinemático Inverso - determinar uma configuração θ* correspondente a
uma situação desejada x*.
2.3.1 - Descrição matemática de um Robô com N GL A transformação de coordenadas de um robô com n graus de liberdade pode ser formulada da seguinte maneira. A partir de uma configuração inicial do robô, na qual a suas variáveis articulares θo são conhecidas, a posição completa de seu elemento terminal Xo será conhecida a partir do modelo do sistema. A mudança de coordenadas consistirá de um funcional que descreverá a correspondência existente entre a cadeia cinemática para um conjunto de variáveis articulares θ e sua posição X: x – xo =
F (θ - θo )
(2.17)
onde o vetor F possuí n ≤ 6 componentes descrevendo a posição e orientação do elemento terminal do robô (no caso de n = 6). 37
No caso da transformação inversa de coordenadas, uma determinada posição X do volume de trabalho do robô será atingida pelo robô a partir de uma posição de repouso xo (equação 16). Esta equação não apresentará uma solução única, e a mesma poderá ser utilizada para o controle cinemático de mecanismos. (θ - θo ) =
F-1 (x – xo)
(2.18)
A transformação direta de coordenadas não apresenta dificuldades na sua resolução, o mesmo não acontecendo com a transformação inversa que é muito complexa, não apresentando uma solução única. Para eliminarmos as indeterminações que aparecem no problema inverso, utiliza-se geralmente a matriz jacobiana, onde a mesma poderá ser utilizada para o controle cinemático de mecanismos. 2.3.2 - Matriz Jacobiana o
o
uma configuração inicial X de pequenos um robô, asdeslocamentos coordenadas X do terminal θ ePara são Dada descritas pela equação (18). δx elemento associados aos deslocamentos das variáveis articulares δθ podemos escrever:
δθ = J-1 δX
(2.19)
onde n: número de graus de liberdade do robô (coordenadas articulares) m: no de graus de liberdade consideradas no espaço de trabalho (coordenadas cartesianas) A matriz Jacobiana J(θ) será definida como:
J (θ )i , j
= ∂Fi ∂θ j
(2.20)
que poderá ser construída a partir das relações cinemáticas que descrevem a arquitetura de um manipulador:
X2
= F1 (θ1 , θ 2 ...θ n ) = F2 (θ1 , θ 2 ...θ n )
...
..........
Xn
= Fn (θ1 , θ 2 ...θ n )
X1
(2.21)
Através de derivadas parciais, a matriz Jacobiana J(θ) será definida como:
⎡ ∂F1 ⎢ ∂θ ⎢ 1 ⎢ ∂F2 J (θ ) = ⎢ ∂θ ⎢ ...1 ⎢ ∂F ⎢ n ⎣⎢ ∂θ1
∂F1 ∂θ 2 ∂F2 ∂θ 2 ... ∂Fn
∂θ 2
... ... ... ... ... ... ... ...
∂F1 ⎤ ∂θ n ⎥⎥ ∂F2 ⎥ ∂θ n ⎥ ... ⎥ ∂Fn ⎥ ⎥ ∂θ n ⎦⎥
(2.22)
38
Considerando os exemplos apresentados anteriormente nas figuras 2.4 e 2.5, referente a manipuladores com 1 GL e 2GL, a obtenção da matriz Jacobiana, referente a esses dois manipuladores são apresentadas na figuras 2.10.
X1
= Lsinθ
X 2 = L(1 − cos θ)
⎡L cos θ⎤ ⎥ Lsinθ ⎣ ⎦
[J(θ)] = ⎢
(a) Pêndulo simples (1GL).
J (θ ) =
⎡L1 cos θ ⎢ L sinθ ⎣ 1
L 2 cos θ⎤
⎥
L 2 sinθ ⎦
(b) Pêndulo duplo (2 GL). Figura 2.11:Exemplos de cálculo da matriz Jacobiana.
No exemplo apresentado na figura 2.11, para um manipulador com 1GL, a matriz Jacobiana não será completa (2 x 1), enquanto que para um manipulador 2 GL a matriz Jacobiana é quadrada (2 x 2). Para um manipulador com n graus de liberdade, a matriz Jacobiana obtida terá (m x n) Para um robô industrial, as coordenadas de seu elemento terminal serão descritas através de um vetor posição X (x, y, z) e sua orientação definida a partir de três ângulos ( ψ, θ , φ). Isto representará um conjunto de seis graus de liberdade que deverão ser controlados a partir das n variáveis articulares do robô. 2.3.3 - Inversão da Matriz Jacobiana - Controle de Posição de um robô O controle de um robô no espaço de tarefas necessita de uma transformação de coordenadas. Esta transformação poderá ser realizada a partir da inversão da matriz Jacobiana:
39
δθ = J(θ)−1 δX
(2.23)
-1
onde J(θ) : representa a matriz Jacobiana inversa (se ela existir). Esta relação indica a variação do incremento δθ das variáveis articulares para um dado deslocamento δX do elemento terminal do robô. A partir da utilização da equação 2.24 de modo iterativo e recalculando J(θ) a cada passo de iteração, uma trajetória X(t) poderá ser realizada num determinado tempo, em função da variação dos ângulos das juntas, conforme mostra o diagrama de blocos apresentado na figura 2.10, referente ao controle de posição de um robô com N GL no espaço operacional.
Figura 2.12:Controle de Posição de um robô no seu espaço operacional.
A figura 2.12 mostra a malha de controle de posição de um robô. A partir da comparação da posição atual do robô X (valor calculado a partir das informações de posições dos sensores de juntas e modelo direto) e sua posição de referência Xd , um sinal de erro é amplificado e transformado em termos de coordenadas articulares δθ a partir do cálculo de J(θ)-1 . O sinal de erro é integrado e depois utilizado como sinal de entrada para controle das variáveis articulares do robô. Nesta representação, a relações cinemática F m(θ) referentes a modelo da arquitetura de um robô (no caso rígido) são utilizadas na malha de controle. Por outro lado, o bloco F v(θ) representa a relação entre os torques necessários para acionamento das juntas e seus valores angulares θ, podendo ser obtidos a partir das variáveis articulares e métodos de correção de parâmetros. Finalmente, a matriz Jacobiana, utilizada no método recursivo para o cálculo do modelo cinemático inverso, é uma forma multidimensional da derivada e relaciona a velocidade no espaço de juntas à velocidade no espaço cartesiano. A sua solução deverá ser implementada através da utilização de algoritmos numéricos, onde será aproximada por Δx =J.Δθ. 2.3.4 - Algoritmo Numérico para Resolução do Problema Cinemático Inverso O problema cinemático inverso é utilizado para determinar os deslocamentos angulares das juntas necessárias para o manipulador atingir o objetivo desejado. Isto torna necessária a implementação de algoritmos numéricos rápidos para a inversão do modelo. Nesta seção visa será apresentado um software para geração de trajetórias angulares offline, utilizando o modelo cinemático inverso, para um manipulador ir de uma posição e orientação inicial a uma posição e orientação final desejada. A aplicação apresentada será baseada num robô com juntas rotacionais, porém os resultados obtidos poderão ser estendidos para outras configurações de robôs.
40
Figura 2.13:Algoritmo para a geração de uma trajetória angular de um robô.
O desenvolvimento de um algoritmo numérico (SÁ, 1996) para encontrar as posições angulares para um trabalho definido em relação ao seu elemento terminal no espaço cartesiano, contem a solução do problema cinemático inverso através do método numérico recursivo que usa o modelo cinemático e a matriz Jacobiana inversa do manipulador. Para a inversão da matriz Jacobiana foi utilizado o método de eliminação Gauss (DORF et al., 1972). Existem quatro critérios para os quais para interrupção das iterações: i)
Erro máximo permitido: Este critério utiliza um erro máximo permitido para a posição e para a orientação. O erro de posição (e r p) é obtido através da expressão:
er p = Σ((i p)d) ( i ) - p a (2.24) onde pd é a posição final desejada e p a é a posição atual do elemento terminal do robô. O erro de orientação (erp) é obtido utilizando-se o conceito do produto escalar entre dois vetores e é dado por: er o = cos-1(( nd * na ) / (|| nd || * || na ||)) + cos-1(( sd * sa ) / (|| sd || * || sa ||)) + (2.25) cos-1(( ad * aa ) / (|| ad || * || aa ||)) onde os vetores n, s e a são os vetores ortonormais que descrevem a orientação do elemento terminal do robô ii)
Número de iterações: Este critério utiliza um número máximo de iterações, N, no caso do sistema não convergir para a posição e orientação desejada. iii) Final do limite físico da junta: Este critério utiliza o máximo percurso para o qual uma junta pode atuar (cada junta possui um limite físico próprio). 41
iv) Teste do “rank” da matriz: Utilizado apenas para o método de inversão de Gauss. Caso o “rank” da matriz seja menor que o número de linhas da mesma as iterações param, pois o sistema é indeterminado. Este método apresenta melhores resultados para pequenos deslocamentos (definição de Jacobiano para pequenos deslocamentos), foi introduzida uma variável, m, para a divisão do caminho total desejado em pequenos deslocamentos. 2.3.5 - Implementação em Robôs do Modelo Cinemático Inverso A implementação em tempo real do algoritmo numérico relativo ao modelo cinemático inverso é apresentado na figura 2.14. Uma trajetória de referência X d é comparada com a posição real Xreal, obtida a partir do tratamento das informações dos sensores de posição (a partir do modelo cinemático direto f(θ)). O resultado é multiplicado pela matriz Jacobiana inversa (J -1), obtendo-se assim os incrementos angulares a serem enviados a cada junta robótica.
Figura 2.14 -Implementação num robô do modelo cinemático inverso. A seguir são apresentados alguns resultados de simulações obtidas para o manipulador Kraft mover-se de uma posição inicial X i (776.9, 0, 933.1) mm e orientação (0, 90, 0) graus, correspondente a configuração angular (0, 90, -90, 0, 90, 0) graus para uma posição e orientação final desejada de Xd, (458, 658, 521, 52, 14, 62). A configuração angular final obtida é dada por (36.6, 72.56, -99.45, -10.99, -131.38, 60.81) graus. Nestes gráficos são apresentados a evolução angular das juntas em graus (figura 2.15) e a evolução espacial da garra em mm (figura 2.16).
42
Figura 2.15 -Modelagem Cinemática Inversa - Evoluções angulares das juntas. 950 ( 776.9, 0, 933.1)
900 ) m (m Z 850 o ix E
800 ( 776.9, 0,700)
750
780 778
-4
776
-2 Eix oY
0 (mm
774 2
)
4
772 770
oX Eix
(m
m)
Figura 2.16- Modelagem Cinemática Inversa - Evolução Espacial da garra.
2.4 - MODELAGEM DINÂMICA E CONTROLE 2.4.1 - Descrição Dinâmica de um Robô Um manipulador robótico é um dispositivo que tem por função posicionar e orientar um mecanismo existente na sua extremidade. Esse mecanismo tem como objetivo fazer a fixação adequada de ferramentas definidas pelo tipo de tarefa a executar. Assim, duas partes principais podem ser consideradas na estrutura de um manipulador. A primeira parte é o braço, constituído de no mínimo por três graus de liberdade, utilizado para posicionamento do ponto de concentração dos referenciais de orientação. A segunda parte é o elemento terminal (ou ferramenta), normalmente constituído por outros três graus de liberdade rotacionais, com a função de orientação do referencial terminal (DAVID, 1996, FU, 1987). A modelagem dinâmica de um robô industrial apresenta termos matemáticos não lineares, devido a efeitos gravitacionais, coriolis, força e torque centrífugos, entre outros, que acarretam num acoplamento dinâmico fortemente não linear entre as suas articulações. Isto implicará em dificuldades na identificação de seus parâmetros, fortemente interligados, causando problemas no projeto de seu sistema de controle, exigindo-se assim, o uso de técnicas de linearização, reduções de modelos e aproximações, com o intuito de tornar menos complexo e anti-econômico sua estrutura de controle. O comportamento dinâmico de um manipulador pode ser descrito por um conjunto de equações diferenciais chamadas equações dinâmicas de movimento (PAUL, 1986). As equações 43
dinâmicas de um robô manipulador com n graus de liberdade podem ser obtidas através do lagrangeano:
⎛
⎞
d ⎜ ∂L ⎟ ∂L − dt ⎜⎝ ∂ q⋅ ⎟⎠ ∂q
= T , L= K-V
(2.26)
onde: K é a energia cinética V é a energia potencial T é a força generalizada q é a coordenada generalizada As equações de movimento, para um robô com n graus de liberdade, são da forma: ⋅⋅
T
⋅
= J q + B q + Tr
(2.27) onde: J é o momento de inércia B é o atrito viscoso do motor Tr é o torque resistente A arquitetura de controle de um robô industrial apresenta normalmente uma malha individual de controle para cada junta (grau de liberdade), constituída de acionadores (motores elétricos, hidráulicos ou pneumáticos) e sensores de posição (incrementais potenciômetros de precisão, resolvers, etc.). Os sensores de posição são colocados antes do redutor, entre o eixo do motor e o eixo de cada junta. A figura 2.17 apresenta através de diagramas de blocos a estrutura de controle de um robô industrial.
Figura 2.17 -Diagrama de blocos da estrutura de controle.
Uma trajetória de referência gerada para cada junta robótica (arquivo de pontos) é comparada com a posição atual da mesma através de informações provenientes de seus sensores de posição, gerando um erro que deverá ser minimizado pelo controlador, através de um algoritmo implementado num microprocessador (por exemplo, um controlador PID). 2.4.2 - Sistema com dois graus de liberdade: Pêndulo Duplo Os três primeiros graus de liberdade de um robô são responsáveis pelo posicionamento da garra no espaço de trabalho. Normalmente os graus de liberdade (2 e 3) são os mais críticos do ponto de vista estrutural, acarretando problemas na implementação do controlador de posição das juntas, devido a seus “fortes” acoplamentos e não linearidades. Assim sendo, será realizado um estudo dinâmico relativos a esses dois graus de liberdade (figura 2.18), onde o mesmo estudo poderá ser estendido aos outros graus de liberdade.
44
(b)Modelo equivalente: Pêndulo duplo (a) Graus de liberdade (2, 3)
(c) Representação do sistema motor – carga (juntas 2 e 3) Figura 2.18 -Manipulador com dois graus de liberdade.
O modelo dinâmico de um robô industrial poderá ser simplificado para o modelo de duas juntas rotativas que servirá para posicionamento de uma ferramenta em relação a um painel de atuação, por exemplo. A modelagem dinâmica de um pêndulo duplo representa o modelo de dois graus de liberdade de um robô (figura 2.18). 2.4.3 - Modelagem do S istema de acionamento Para uma modelagem do sistema de acionamento de uma junta robótica, consideremos um motor c.c., um redutor e a dinâmica do sistema, figura 2.19. No estudo do motor c.c. será desenvolvido as equações referentes ao seu movimento. O redutor é utilizado para que com um certo valor de torque se obtenha uma melhor performance do motor. A dinâmica do sistema consiste no estudo das forças que condicionam o movimento. Para acelerar um manipulador do seu estado inercial até uma velocidade constante e promover uma desaceleração, devem ser aplicados um conjunto de equações dinâmicas nas juntas dos atuadores (CRAIG, 1988).
Figura 2.19 -Representação esquemática - Sistema de acionamento de uma junta robótica
2.4.3.1 - Motor de corrente contínua controlado por armadura Neste item será utilizado em nossa análise um motor de corrente contínua associada a redutores de velocidade que transmite o movimento de uma junta, tradicionalmente utilizado em robôs industriais. O mesmo tipo de análise poderá ser realizado para outros tipos de acionamento.
45
Um motor c.c. é empregado em um sistema de controle quando é exigida uma quantidade apreciável de potência no eixo (CLOSE, 1989). Um esquema do motor c.c. controlado por armadura é dado na figura 2.20.
Figura 2.20- Esquema de um motor de c.c. controlado por armadura.
As equações que regem o motor elétrico de corrente contínua controlado por armadura são as seguintes:
•
Equação elétrica:
u (t ) =Ri t ( )L+
di (t ) dt
+ e( t )
(2.28)
onde e(t)=KeΩ(t) - força contra-eletromotriz e para um motor cc, Ke≈Kt • Equação de acoplamento: Tm (t ) =Ki tt ( )
(2.29)
onde Kt é a constante de torque do motor.
•
Equação mecânica : Tm (t )
= Jm
dΩ (t ) + BΩ(t ) + Tr (t ) , onde dt
Ω(t ) = θ
⋅
(2.30)
onde: i(t) - corrente (A); R - resistência induzida (Ω) L - indutância (H); u - tensão aplicada no circuito da armadura (V); Jm - momento de inércia do motor (kg m2); Ke - constante da força contra-eletromotriz (V/rad s-1); Kt- constante de torque (Nm/A); Tr - torque resistente devido a perdas (Nm) Tm - torque mecânico (Nm) As equações acima podem ser representadas pelo seguinte diagrama de blocos (figura 2.21), fazendo o uso da Transformada de Laplace.
46
Figura 2.21 -Diagrama de Blocos do Motor cc controlado pela armadura.
onde:
1 1 , H 2 ( s) = ; Rs + L Jms + B
H 1 ( s) =
τm
=
τe
=
−J
m
B
−R L
, constante de tempo mecânica;
, constante de tempo elétrica.
2.4.3.2 - Sistema de Redução O comportamento de um sistema de redução, apresentado na figura 2.22, apresentam as seguintes equações cinemáticas:
η=
z2
e
z1
θ2
=
r1 r2
θ1
(2.31)
onde z é o número de dentes das engrenagens η é a razão de transmissão r é o raio da engrenagem
Figura 2.22 -Representação de um redutor.
Considerando que a velocidade tangencial é a mesma entre as engrenagens (sistema sem escorregamento). Ou seja v
=
⋅
θ 1 r1
⋅
= θ 2 r2
: Conseqüentemente:
⋅
θ1 ⋅
θ2
r
η θ= = 2= ⇒
r1
⋅ 1
ηθ
⋅ 2
(2.32) 47
Se o redutor for ideal: ⋅
τ1θ 1
⋅
= τ 2θ2
τ2
ou ainda,
τ1
= η ⇒ τ 2 = ητ1
(2.33)
Se considerarmos o efeito de uma carga no eixo do redutor (figura 2.23), a dinâmica dessa carga no redutor será descrito pela equação (2.34):
T2 =J
⋅⋅
C
⋅
Bθ + TC θ +
(2.34)
r
Figura 2.23 -Representação da carga no eixo do redutor.
2.4.3.3 - Modelo Dinâmico do sistema motor - carga O modelo de um motor em vazio foi apresentado anteriormente na figura 2.21. O modelo apresentado anteriormente será acrescido do efeito dinâmico do redutor-carga acoplado no sistema, desenvolvido a partir das equações descritas a seguir: motor elétrico:
((Tms )T−srH (s ))
2
( ) s=motor Ω
redutor e carga:
(Tc arg ) pert − sH s . ( ))( a s( T 1
Ω c arga ( s) = Ω motor η
( )
s)c a= Ω
3
(2.35)
arg
( )
(2.36)
( s) (2.37)
Tc sarga ( )T=sηmotor ( ) Conseqüentemente:
(ηTms( T) − spert H s ( ))(
3
(η 2 Tms( ) T− ηspert H s ( ))(
)= s
3
1
Ω
( )
η motor
s) = motor Ω
(2.38)
( )
Para melhor compreensão, consideraremos Tr (s T ),
48
s ( ) ≈ 0 , conseqüentemente:
pert
TmsH ( )s
2
( )
=Ω smotor ( )
e
η 2 TmsH ( s)(
3
)
smotor =Ω
( )
(2.39)
Assim sendo o sistema completo (figura 24) será descrito através da equação:
Ω motor ( s) = (mJ+
ηC2+J + )m (B
η 2 B ) T ( s)
C m
(2.40)
ou ainda,
Ω motor ( s) = ( H 2 ( s) + η 2 H 3 ( s))m T ( s)
(2.41)
onde:
H 2 ( s) = H 3 ( s) =
1 Jms 2 + Bs 1
JC s2
+ BC s
Figura 2.24 -Diagrama de blocos: redutor – carga acoplada.
2.4.3.4 - Sistema de Controle O controle de um sistema pode ser definido como um sistema cuja proposição é regular ou ajustar o fluxo de energia de uma maneira desejada. Um sistema de malha de controle em fechada especificado. usa os sinais Adapartir saídadepara do sistema com o intuito atingirdo o objetivo umamodificar entrada as de ações referência que comparada com de a saída sistema gera um erro que com a atuação de um elemento controlador trata este sinais que depois de amplificado é enviado as acionadores do sistema. A figura 2.25 apresenta uma malha de controle completa para um robô de N graus de liberdade, utilizando a resolução da matriz Jacobiana definida anteriormente no controlador de posição (modelagem cinemática inversa).
49
Figura 2.25 -Malha de controle de posição de um robô industrial.
O modelo dinâmico do sistema poderá ser introduzido no cálculo dos parâmetros dos controladores de posição de cada junta. Na figura 2.26 é apresentado o diagrama de blocos correspondente ao controle de posição de duas juntas robóticas, considerando os termos não lineares obtidos através do modelo dinâmico do robô em estudo.
Figura 2.26 -Diagrama de blocos correspondente ao Modelo Dinâmico de duas juntas robóticas.
Para exemplificarmos o problema em estudo, na figura 2.27 são apresentados resultados de simulação (curvas relativas ao deslocamento e velocidade) de um sistema completo motor-redutor e carga correspondente a uma junta robótica, a partir da utilização de um controlador PID (Proporcional, integral, derivativo) com ganhos, 10, 5 e 2 respectivamente. A entrada de referência utilizada na simulação foi construída levando-se em conta a constante de tempo do sistema e a velocidade do acionador. 50
Parâmetros R = 3,0 Ω; Lutilizados: = 0.005 H ; Jm = 1.4e-4 Kg m2; Cm = 2.7e-4 Nm/rad s-1; KT = 0.001 Nm, g = 9.8 m/s2 Figura 2.27 -Controle do motor CC com redução e carga.
Normalmente, o procedimento utilizado para cálculo dos ganhos do regulador PID, deverá ser realizado em cada junta, para diferentes configurações inerciais, considerando-se o efeito da inércia equivalente aplicada no eixo de rotação do motor (cálculo do raio de giração e massa equivalente).
2.5 - REFERÊNCIAS CLOSE, C. M., FREDERICK, D.K., Modeling and Analysis of Dynamic Systems, Houghton Mifflin Company, 1989. COUTINHO, L., Um Ambiente Integrado de Desenvolvimento de Software a Robótica, tese de mestrado, Unicamp, 1993. CRUZ, J.M., Projeto e Desenvolvimento de um Sistema de Geração Automática de Trajetória para Manipuladores, tese de mestrado, Unicamp, 1993. DORN, W. S., McCRACKEN, D. D., Numerical Methods with Fortran IV Cases Studies, John Wiley & Sons, Inc,1972. DENAVIT, J., HARTENBERG, R., A kinematic notation for lower-pair mechanisms based on matrices, ASME J. on Applied Mechanics, pp. 215-221, 1955. JACOBSEN, T. K., Visualização e Geração de Trajetórias de Robôs a Partir da Utilização do Software WORKSPACE , programa IAESTE (Brasil-Dinamarca), 1991. KRAFT TELEROBOTICS, Underwater Manipulator System, 1985. KREYSIZIG, E., Advanced Engineering Mathematics, John Wiley & Sons, Inc, 1983. NOGUEIRA, R., Controle de Posição e Orientação de um Manipulador através de um Mouse Espacial, Reinaldo Gonçalves Nogueira, tese de mestrado, Unicamp, 1995. 51
PAUL, R.P., Robot Manipulators: Mathematics, Programming and Control, The MIT Press, 1981. SÁ, C.E.; ROSARIO, J.M., Implementation of Numerical Algoritms for the Resolution of the kinematic Inverse Problem of Robots Manipulators, ICONE’96 Second International Conference on Non-Linear Dynamics, Chaos, Control and their Applications in Engineering Sciences, São Pedro, 1996. SÁ, C. E., Implementação de métodos numéricos para a resolução do problema cinemático inverso de manipuladores robóticos com ênfase em controle de posição, tese de mestrado, Unicamp, 1996.
52
CAPÍTULO 3 INTEGRAÇÃO DE SINAIS E DADOS Carlos Eduardo Pereira e Walter Fetter Lages
3.1- INTRODUÇÃO Automação e robótica são duas tecnologias intimamente relacionadas (GROOVER et al., 1986). Para que a inserção de robôs em processos industriais alcance efetivamente os benefícios esperados, tais como aumento de produtividade, melhoria da qualidade dos produtos gerados e redução de custos de produção, equipamentos robotizados devem ser entendidos como partes de um sistema mais abrangente de automação industrial. Neste contexto, robôs industriais devem ser capazes de interagir tanto com o processo sendo automatizado como com outros dispositivos de automação - centros de usinagem, linhas de transferência, esteiras, etc. - com os quais devem interagir para alcançarem os objetivos almejados. Em função disto, robôs industriais apresentam diferentes interfaces de comunicação, tais como: Interface homem-máquina, para permitir a programação e configuração dos robôs industriais pelos operadores, bem como para apresentar informações sobre o estado atual do robô; Interface com sensores e atuadores, para permitir aos robôs perceber e atuar sob o processo industrial sendo automatizado; Interfaces com controladores industriais, tais como controladores lógico-programáveis (CLPs), possibilitando a interação de robôs com outros dispositivos de controle; Interfaces
com redes de comunicação industrial, permitindo que robôs possam ser interligados em rede usando protocolos industriais de comunicação; A figura 3.1 apresenta um diagrama em blocos da arquitetura funcional de robôs industriais.
53
PC
CLP
Dispositivos periféricos
Teach pendant
Interface com usuário
Interface com Dispositivos Periféricos Desenho Sensores Robô
Controlador (Armazenamento, Configuração e Execução de Programas)
industrial Atuadores
Rede de Comunicação
Figura 3.1- Diagrama em blocos da arquitetura funcional de um robô (adaptado de NOF, 1999).
Este capítulo trata exatamente desta problemática de integração de robôs industriais no âmbito de sistemas de automação industrial. O capítulo divide-se da seguinte forma: a próxima seção (3.2) define conceitos básicos sobre sinais, modos de comunicação e outros tópicos fundamentais para a compreensão dos desafios tecnológicos encontrados na integração de robôs industriais em sistemas de automação industrial. Na seção seguinte (3.3) os principais protocolos para comunicação em plantas robotizadas são apresentados e suas vantagens e desvantagens são discutidas. As principais tecnologias para interconexão e comunicação em sistemas robotizados são apresentados nas seções 3.4 e 3.5, sendo que a primeira enfoca as principais tecnologias para interconexão entre os dispositivos sensores e atuadores de robôs industriais e a segunda discute aspectos referentes à incorporação de robôs industriais no contexto de integração vertical de sistemas de automação, onde informações provenientes do chamado chãode-fábrica são disponibilizadas para sistemas gerenciais de planejamento e controle de produção.
3.2- CONCEITOS BÁSICOS 3.2.1 - Tipos de Informação Na interligação de robôs industriais entre si ou com outros componentes do sistema de automação, diversas informações devem ser usualmente transferidas: Informações provenientes dos diversos transdutores e sensores; Sinais de controle e atuação a serem enviadas aos atuadores ou a outros sistemas; Programas de controle ou comandos devem ser recebidos pelo robô dos dispositivos de programação e controle; Tome-se como exemplo as informações provenientes dos diversos sensores e atuadores que permitem a troca de informações entre os dispositivos de automação e as plantas industriais. Os sensores e atuadores são denominados de transdutores, ou seja, dispositivos que convertem um 54
tipo de grandeza física (por exemplo, força, pressão, velocidade, fluxo, imagem, etc.) em uma outra grandeza. A fim de permitir a manipulação e transmissão das informações geradas, é importante que os transdutores sejam capazes de gerar sinais em grandezas manipuláveis, ou seja, passíveis de manipulação algébrica para fins da automação e otimização dos processos. No caso dos transdutores sensores, a grandeza de entrada é uma grandeza física da planta industrial que se queira avaliar e a saída deve ser um sinal capaz de ser manipulado pelos dispositivos de automação. Já no caso dos atuadores, a grandeza de entrada é normalmente um sinal elétrico que produz na saída do transdutor uma variação em uma grandeza física da planta industrial que se queira influir. Historicamente, as grandezas manipuláveis mais adotadas no âmbito de automação industrial são as grandezas elétricas, na forma de tensão ou de corrente elétrica, bem como grandezas pneumáticas e hidráulicas. Com o advento de dispositivos eletrônicos programáveis, tais como os microprocessadores e microcontroladores, tem-se que a grande maioria dos sistemas modernos incluem o processamento de grandezas elétricas. Estes dispositivos eletrônicos são capazes de realizar operações complexas com alto desempenho, tanto em termos de velocidade de processamento, bem como consumo de energia e custo. Alguns exemplos de transdutores capazes de converter grandezas físicas em grandezas elétricas: estensômetros
(strain-gages): sensores cuja resistência elétrica varia em função de sua deformação mecânica. Colados nas superfícies de barras metálicas, por exemplo, e dispostos em configurações adequadas, estes transdutores permitem a medição de grandezas como força e pressão. Na área de robótica eles são bastante usados em garras e nas articulações e juntas dos , a fim de se medir os esforços mecânicos presentes nas mesmas; termopares: transdutores capazes de gerar um sinal elétrico proporcional à diferença de temperatura. motores: são normalmente usado como atuadores, capazes de converter sinais de entrada em movimento ou força. potenciometros: sensores cuja resistência elétrica varia em função do deslocamento linear ou angular do seu cursor. encoders: sensores que geram sinais elétricos em função do deslocamento angular do seu eixo. Pode-se classificar os diferentes tipos de sinais presentes nos sistemas robotizados como analógicos, digitais e binários. Sinais analógicos (vide figura 3.2) são aqueles que variam continuamente no tempo. Sinais analógicos são predominantes nos processos físicos sendo controlados, uma vez que o mundo físico e seus fenômenos são predominantemente analógicos. Uma situação ideal seria aquela em que um transdutor sensor fosse capaz de gerar um sinal analógico em uma grandeza manipulável, por exemplo, uma grandeza elétrica, o qual fosse linearmente dependente à variação da grandeza física medida, em todo o intervalo de valores possíveis da grandeza física, de forma que a análise do sinal gerado permitiria determinar-se de forma unívoca o valor da grandeza medida. De forma similar, um transdutor atuador ideal seria aquele que pudesse gerar em sua saída uma grandeza física diretamente proporcional ao sinal de referência em sua entrada. Infelizmente, praticamente todos os transdutores reais apresentam uma resposta que não é totalmente linear com a entrada recebida. Desta forma, faz-se necessário o uso de dispositivos condicionadores, os quais, como o próprio nome já indica, visam compensar 55
e condicionar os sinais elétricos, a fim de que uma direta correspondência entre os sinais de entrada e de saída possa ser estabelecida.
Figura 3.2- Exemplo de sinal: (a) analógico e (b) digital.
Sinais digitais apresentam uma discretização em seus valores de amplitude, sendo caracterizados pela presença de pulsos de amplitude fixa. Tais sinais são usualmente encontrados em transdutores que possuem internamente dispositivos de processamento digital de informações como microprocessadores e microcontroladores. Neste caso, os sinais são codificados em cadeias de bits 1s ou 0s, sendo que a granularidade da discretização em amplitude depende basicamente do número de bits utilizado na representação do sinal. Por exemplo, supondo-se um sinal analógico cuja amplitude deverá ser representada usando n bits, teremos 2n possíveis representações possíveis. Quanto maior o número de bits maior o número de valores que podem ser representados. Além da discretização em amplitude, sinais digitais também apresentam normalmente uma discretização temporal, uma vez mudanças nos valores de amplitude somente ocorrem em determinados instantes de tempo definidos. Sendo os sinais digitais a forma de sinais manipulada por microcontroladores e microprocessadores e, conforme já mencionado anteriormente, as informações presentes nos processos sendo controlados são normalmente de srcem analógica, faz-se necessário o uso de dispositivos que permitam a conversão entre valores analógicos e digitais, os quais são denominados de conversores analógico-digitais (ou conversores A/D) e conversores digitaisanalógico.
56
Os instantes de tempo no qual as grandezas físicas analógicas são convertidas pelos conversores A/D em sinais digitais são denominados de instantes de amostragem. É interessante observar que, caso algumas premissas sejam observadas, é possível reconstituir-se o sinal analógico de entrada a partir do sinal analógico srcinal. Existe uma freqüência mínima com a qual uma grandeza física deve ser amostrada, a fim de que não haja perda de informação no sinal digitalizado. Esta freqüência é dependente da dinâmica da grandeza física em questão e pode ser definida pela aplicação do chamado teorema da amostragem. Este teorema enuncia que todo sinal cujo espectro é limitado em uma freqüência f 0 pode ser completamente reconstruído caso seja amostrado com uma freqüência igual ou maior a 2f 0. Dentre as vantagens do uso de transdutores capazes de tratar informações digitais destacam-se: a transmissão digital tem potencialmente uma taxa de erro muito baixa (TANEMBAUM, 1994); as informações digitalizadas já se encontram em formatos manipuláveis por controladores digitais; transdutores
com saída digital e que incorporem sistemas eletrônicos microprocessados, podem disponibilizar outras informações adicionais aos valores correspondentes às grandezas sendo medidas, tais como informações referentes às condições de funcionamento do dispositivo, entre outras. Já os sinais dito lógicos ou booleanos são caracterizados por apenas dois valores possíveis, sendo usualmente associados à ocorrência de eventos relevantes no sistema sendo automatizado, bem como na caracterização de estados de componentes do sistema de automação, tais como ligado e desligado, verdadeiro e falso, entre outros. Exemplos são os sinais gerados por chaves de contato usadas como sensores de final de curso ou para detectar a presença ou chegada de peças em uma linha de produção. Outro exemplo são os atuadores on/off que permitem a realização de funções do tipo liga/desliga (por exemplo em esteiras), abre/fecha (por exemplo em garras de manipuladores ou válvulas), etc. Os sinais lógicos podem ser entendidos como uma especialização de sinais digitais no qual o número de bits usado na representação é igual a 1. Estas diferentes formas de representação de sinais justificam a existência de diferentes dispositivos em robôs industriais para interagir com sistemas externos. Estes dispositivos são denominados módulos de entrada e saída analógicas, digitais ou binárias. O acesso a estes dispositivos pode ser de diferentes formas, conforme apresentado na próxima seção.
3.2.2 - Modos de comunicação Para transmitir para ou receber informações de outros dispositivos é necessário que os robôs industriais sejam capazes de comunicarem-se com estes dispositivos. Os diferentes modos de comunicação presentes em robôs industriais e sistemas de automação industrial podem ser classificados de acordo com diferentes características. Quanto ao número de dispositivos interconectados pelo meio físico de transmissão, podemos diferenciar entre comunicação ponto a ponto e comunicação multi-ponto. Na comunicação ponto a ponto, conforme o próprio nome já indica, um dispositivo comunica-se diretamente com outro através de um meio físico, normalmente de uso dedicado para a interligação, conectando o transmissor ao receptor. Já na comunicação multi-ponto um dispositivo pode comunicar-se 57
simultaneamente com diversos outros dispositivos. A topologia mais comumente utilizada é o chamado barramento, na qual um meio físico único interligando todos os dispositivos é utilizado. Referente à forma como os sinais são transmitidos, pode-se diferenciar entre comunicação serial, na qual os sinais são transmitidos serialmente por uma linha única de transmissão, e comunicação paralela, na qual vários sinais são transmitidos de maneira simultânea, usando-se vários canais de transmissão. Apesar de que, a princípio, uma transmissão serial possa tender a ser mais lenta do que a transmissão paralela, em função da possível simultaneidade na transmissão de vários sinais nesta última, tal afirmativa não pode ser generalizada. Por exemplo, uma interface serial capaz de transmitir a uma taxa de 10 Mbps (bps = bits por segundo) será mais rápida do que uma interface paralela capaz de transmitir 8 bits em paralelo com taxa de 9.6 kBps (ou seja, taxa efetiva de 8 * 9.6 kbps que é menor do que 10 Mbps). É também interessante fazer-se uma distinção entre as interfaces de comunicação internas e externas. Interface internas são aquelas que interconectam dispositivos que são montados ou acoplados diretamente ao hardware de controle. Por exemplo, semelhante ao que ocorre na arquitetura de computadores pessoais, é comum nos sistemas computacionais internos aos robôs industriais o uso de barramentos paralelos internos, especialmente para interconexão do processador onde os programas do robô são executados e os outros dispositivos (memórias, placas de entrada e saída, etc.). Estes barramentos permitem geralmente a transmissão da informação a elevadas taxas de transmissão, porém apresentam limitações nos comprimentos máximos das ligações entre os dispositivos. As interfaces externas são aquelas que, como o nome já indica, permitem a interligação com dispositivos externos ao robô. Duas configurações são amplamente utilizadas: o uso de barramentos paralelos: permitem a interligação com gabinetes ( racks) nos quais diferentes placas de aquisição de dados, entrada e saída digitais ou analógicas, processamento de imagens, entre outras podem ser acopladas. Um exemplo deste tipo de barramento é o VME-Bus (SITE, 2000), conforme apresentado na figura 3.3. O uso de barramentos seriais nos quais vários dispositivos podem ser interligados em rede: uma das principais vantagens da comunicação serial é um redução considrável de custos com aquisição, montagem e manutenção do cabeamento necessário para interligação dos dispositivos. Permitem também conexões a distâncias consideráveis (mais de 10km), sendo que a taxa máxima de transmissão é usualmente inversamente proporcional à distância máxima alcançada (uma vez que quanto maior a freqüência maiores as perdas).
58
Figura 3.3- Rack com VME-Bus.
Nas topologias em que vários dispositivos são interligados em rede via um meio físico compartilhado como da comunicação serial multiponto , estratégias de acesso ao meio devem ser definidas para evitar-se colisões durante a comunicação. As estratégias comumente utilizadas geralmente partem do pressuposto que todos os dispositivos presentes em um barramento são capazes de reconhecer quando outro dispositivo está comunicando, de forma que a principal diferença entre os modos de comunicação refere-se à forma como o acesso ao meio físico é realizado. As estratégias mais comuns em sistemas industriais são: passagem de permissão: neste caso, um dispositivo somente pode acessar o meio físico e iniciar a transmissão caso receba uma permissão de transmissão. Esta estratégia exige que os dispositivos que podem transmitir tenham conhecimento de outros dispositivos, em especial do dispositivo para o qual este deverá passar a permissão de transmissão após finalizar sua comunicação. Além disso, questões de gerenciamento do tempo que uma permissão de transmissão fica com um dispositivo, bem como tratamentos de falhas são também aspectos importantes a serem considerados. Um exemplo de protocolo industrial que usa esta técnica é o protocolo Profibus (PROFIBUS, 2000); acesso múltiplo com detecção de colisão: neste caso, qualquer dispositivo que queira comunicar pode iniciar sua transmissão tão logo detecte que o meio físico está livre. Em função disto, colisões no envio de mensagens podem ocorrer e devem ser detectadas (isto é possível ao fazer-se que todo dispositivo que transmite informação, efetue uma leitura da informação efetivamente presente no meio físico para, em caso de divergência, detectar a colisão). Na estratégia denominada de CSMA-CD (Carrier Sense Multiple Access - Collision Detection), padronizada pela IEEE em seu padrão 802.3 [9] e popularizada através do protocolo Ethernet, quando um dispositivo transmitindo detecta uma colisão, este suspende a transmissão por um tempo determinado (tempo aleatório dependendo de cada dispositivo) para então voltar a transmitir (quando o meio físico estiver novamente liberado). Esta estratégia garante um rápido acesso ao meio físico no caso de poucos dispositivos transmitindo, porém pode acarretar um atraso indefinido (no pior caso tendendo a infinito) na transmissão; 59
acesso
múltiplo com contenção e evitando-se colisões: uma outra estratégia bastante usada em sistemas industriais que usam meios de transmissão compartilhados atribui diferentes prioridades para os dispositivos participantes de um barramento. Dispositivos com maior prioridade sempre deverão ter a prerrogativa de transmissão. Tal estratégia torna-se possível fazendo-se que com que cada dispositivo, antes de iniciar a transmissão propriamente dita, transmita um identificador (uma seqüência de bits). Adicionalmente, projeta-se os sistemas eletrônicos de escrita no meio físico de tal forma que existe um nível lógico dominante e outro recessivo, isto é, sempre que por ventura duas informações distintas forem colocadas no barramento, aquela com nível lógico dominante predomina e sobre-escreve o nível recessivo. divisão no tempo: nesta técnica evita-se a colisão e disciplina-se o acesso ao barramento através da divisão do tempo total em intervalos, chamados de slots, os quais são distribuídos entre os dispositivos que queiram comunicar-se. Desvantagem desta técnica é ser rigída e levar a desotimizações no uso do barramento caso o dispositivo que tenha autorização para envio de mensagens, não tenha nada a enviar durante o tempo que lhe foi alocado. A fim de permitir a efetiva troca de informações, além dos dados sendo transmitidos de um dispositivo para outro(s), na interconexão entre diferentes dispositivos faz-se necessário o envio de informações adicionais para endereçamento (em especial nos casos de ligações multi-ponto) e controle da transmissão. O primeiro permite identificar do destino da informação sendo transmitida, ou seja, a qual dispositivo ou mesmo a qual processo executando em um dispositivo a mensagem em questão é endereçada. As informações para controle da transmissão incluem delimitadores de início de fim da mensagem transmitida, códigos para identificação e eventual correção de erros na transmissão, entre outros. Nas interfaces seriais, as informações de controle e endereçamento podem ser enviadas pela mesma linha de transmissão que os sinais de dados ou através de linhas dedicadas. Já nas interfaces paralela, linhas especiais para os sinais de controle e endereçamento encontram-se presentes. Conforme apresentado na figura 3.4, esta divisão das linhas de transmissão de informação leva ao surgimento dos chamados barramento de dados, barramento de endereços e barramento de controle.
Figura 3.4- Barramento de Dados, Endereço e Controle .
A temporização no envio e recebimento das informações é outro conceito importante para garantir a correta transferência de informação. Neste caso, considera-se que equipamentos transmissores e receptores devem estar sincronizados. A figura 3.5 mostra que, caso haja uma divergência nos instantes de amostragens do valor digital sendo transferido, informações incorretas são transmitidas. 60
Figura 3.5- Sincronismo entre transmissor e receptor.
Com relação à maneira como esta sincronização ocorre, pode-se classificar a comunicação como síncrona e assíncrona. No caso da transmissão assíncrona assume-se que a referência de tempo dos relógios dos equipamentos sensor e transmissor não é única, apenas próxima. Em geral a base de tempo no receptor é determinada por um relógio com uma freqüência múltipla daquela do relógio do transmissor (ou seja, n*ft onde ft é a freqüência do transmissor). Após detectado o início da transmissão, através da recepção de um bit especialmente transmitido, denominado, start bit a amostragem pelo receptor se dá após a contagem de n/2 pulsos, de forma a garantir que a amostragem sinal ocorre aproximadamente no meio do pulso sendo transmitido. Obviamente, quanto maior o valor de n maior a precisão. Na transmissão síncrona considera-se que a base de tempo dos equipamentos transmissor e receptor seja única. Para que isto seja possível, ou o relógio deve ser transmitido numa linha de transmissão separada dos dados ou a informação de sincronismo deve ser enviada junto com os dados. No primeiro caso deve-se garantir que o atraso sofrido pelo sinal de relógio seja o mesmo do que o sofrido pelos dados transmitidos. Desvantagem deste modo é o fato de exigir uma conexão extra somente para transmissão do relógio, o que onera o sistema. Em função disto, sistemas síncronos nos quais o sinal de relógio é enviado juntamente com os dados são os mais populares.codificação Uma das estratégias comumente emdecomunicação é o uso da chamada Manchestermais (vide figura 3.6).utilizadas Neste tipo codificação, síncrona sempre deve haver uma transição em qualquer que seja o padrão dos bits transmitidos. Na codificação Manchester cada bit é dividido em dois intervalos iguais. Um bit 1 binário é enviado mantendo-se o nível alto durante o primeiro intervalo, transitando-se para o intervalo baixo no segundo. Um bit 0 é o inverso: primeiro baixa e depois alta. Desta forma, a codificação garante que sempre existe uma transição no meio de um bit transmitido, facilitando a sincronização entre o transmissor e receptor.
61
Figura 3.6 - Codificação Manchester
3.3 - INTERFACES E PROTOCOLOS MAIS USADOS Nesta seção serão apresentados de forma suscinta os principais protocolos de comunicação e interfaces atualmente utilizados. Inicialmente, algumas considerações sobre o uso de protocolos proprietários e protocolos padronizados e abertos são apresentadas. São vários os aspectos a serem considerados para permitir-se a interconexão e a troca de informações entre um robô industrial e outros dispositivos de automação: deve-se definir que tipo de conectores, cabos, níveis de tensão, freqüência, etc. serão utilizados na comunicação; além disso, deve-se definir como a informação será transmitida, no caso de necessidade de envio de informações de controle e endereçamento, em que seqüência e como estas informações serão enviadas; considerando-se a possibilidade de uma rede amplamente distribuída, na qual existem vários caminhos possíveis de interligação entre dois dispositivos, algoritmos que permitam a escolha do caminho mais adequado, a fim de evitar-se congestionamento de mensagens e uma distribuição mais rápida da informação devem ser desenvolvidos; Fica claro do exposto acima que a consideração de todos estes aspectos torna o projeto de redes de comunicação para sistemas distribuídos uma atividade bastante complexa. A fim de tornar o problema tratável, uma estratégia é a divisão dos protocolos em diferentes níveis de abstração, onde cada nível lida com determinados aspectos da comunicação e desempenha uma função bem definida. Uma proposta de um modelo de comunicação amplamente aceito é o Modelo de Referência OSI ISO para Interconexão de Sistemas Abertos [3]. Este modelo, proposto pela International Standards Organization - ISO (Organização Internacional de Padronização), define uma arquitetura com sete camadas hierárquicas. Por exemplo, no nível mais baixo da hierárquica tem-se a Camada Física, que lida com a transmissão pura de bits através de um canal de comunicação. Aspectos como tempo de duração de um bit, taxas de transmissão, tipos de cabos e conectores, etc. são considerados neste nível. A camada hierarquicamente superior à camada física é chamada Camada de Enlace de Dados e é responsável pela definição do formato da mensagem a ser transmitida, a qual é dividida em diferentes campos - de endereçamento, de 62
controle, etc. É também função desta camada a identificação e eventual correção de erros na transmissão ponto-a-ponto. Para que uma efetiva comunicação de dados ocorra entre dois dispositivos é necessário que estes possuam protocolos compatíveis nas diferentes camadas, ou seja, não é suficiente que apenas em algumas camadas haja esta compatibilidade. Por exemplo, de nada adianta ter-se compatibilidade a nível de camada física, se na camada de Enlace de Dados o receptor espera uma seqüência diferente daquela enviada pelo transmissor. Por exemplo, suponha que um dispositivo queira enviar um comando para um robô industrial e que a mensagem seja dividido nos seguintes campos pela camada de enlace de dados: 1 byte para endereço seguido de um byte para comando. Desta forma, caso o comando 2 seja enviado para o robô 5, uma mensagem com o byte 5 seguido do 2 seria enviada. Supondo que o transmissor esteja esperando um formato diferente, no qual primeiro deve vir o comando e depois o endereço do dispositivo, teríamos que a mensagem seria interpretada como um comando 5 para o robô 2. Tal comando poderia inclusive colocar em risco a integridade de equipamentos e de operadores na linha de produção.
3.3.1 - Interfaces seriais Em função dos aspectos já mencionados aspectos como redução dos custos de cabeamento (tanto na aquisição, quanto na instalação e manutenção), uma das interfaces mais comumente utilizadas para interligação de robôs industriais com outros dispositivos são as interfaces seriais. Estas podem ser utilizadas tanto no conexão de interfaces com o usuário (teach pendant, computadores pessoais, etc.), na interligação de sensore com módulos de entrada e saída e na interligação com outros dispositivos. Conforme já apresentado anteriormente, numa comunicação serial, as informações são transmitidas sequencialmente uma após a outra. A seguir apresentamse dois padrões bastante difundidos em interfaces seriais, os quais encontram-se padronizados pela Associação de Indústrias Eletrônicas ( Electronics Industry Association - EIA). 3.3.1.1 - Interface serial RS 232 Esta é sem dúvida uma das interfaces mais utilizadas, em especial em conexões ponto-aponto, como na ligação entre um robô industrial e um computador pessoal rodando softwares de programação e configuração. Este protocolo limita-se a definir a camada física, incluindo: tipos de conectores: dois tipos de conectores são definidos, um com nove pinos denominado DB-9 e outro de 25 pinos, ou DB-25. A figura 3.7 apresenta o formato destes conectores e sua pinagem; níveis de tensão: o padrão define que as linhas devem possuir níveis de tensão referenciados ao pino Terra ( Ground - pino 7 no DB25 ou 9 no DB-9), sendo que quando o nível de tensão for maior que +3 V é considerado valor lógico 0 e nível de tensão menor do que -3V corresponde ao nível lógico 1. Os sinais transmitidos usualmente podem excursionar entre +12 e -12 V; Dados são transmitidos pelo pino "Dado transmitido" ( Transmited Data ou TxD) e recebidos pelo pino "Dados Recebidos" ( Received Data ou RxD). Em geral a comunicação é feita de forma assíncrona, sendo que os pinos "Requisição de Transmissão" ( Request to Send ou RTS), "Pronto para Transmissão" (Clear to Send ou CTS), "Terminal de Dados Pronto" (Data Terminal Ready ou DTR) e "Dispositivo de Transmissão Pronto" ( Dataset Ready ou DSR) são utilizados para garantir a sincronização no início da transmissão. 63
As taxas de transmissão padronizadas para uma interface RS232 são menores que 20kbps (4.8, 9.6 e 19.2 kbps) e são limitadas a distâncias menores que 15 metros. Entretanto, atualmente já existem versões comerciais capazes de transmitir a maiores taxas em cabos que permitem alcançar distâncias maiores do que as srcinalmente padronizadas (por exemplo, produtos comerciais transmitindo a 115 kbps ou mesmo 1.6 Mbps encontram-se disponíveis) Apesar de amplamente utilizado, o padrão RS232 tem sérias limitações quanto a questões de interferência eletromagnéticas: fato de pressupor um terra comum entre os dispositivos que se comunicam representa uma séria limitação em ambientes industriais, onde é comum termos diferenças consideráveis nos potencias de terra, especialmente em função de laços de corrente e do acionamento de motores, bem como a necessidade de envio de informação a longas distâncias;
a transferência do sinal sobre linha externos torna difícil o isolamento a ruídos eletromagnéticos. Apesar do uma fato única de ruídos poderem ser minimizados através do uso de cabos blindados, ruídos internos, como por exemplo através do fenômeno de cross-talk, no qual variações elétricas em um dos cabos induzem variações nas outras linhas;
64
(a)
(b) Figura 3.7- Conectores padrão RS 232: (a) D B-25; (b) DB-9 65
3.3.1.2 - Interface serial RS 485 A principal diferencial da interface RS485 com relação à RS232 é que em vez de definir os níveis lógicos em função de níveis de tensão referentes a uma tensão de referência ( ground), as informações são transmitidas em pares de fios de forma balanceada, em que a diferença de potencial entre os pares é que define o nível lógico. Desta forma temos um aumento considerável na imunidade a ruído na transmissão, uma vez que ruídos que surgirem nos dois cabos serão automaticamente suprimidos pelo fato de que o sinal levado em conta na conversão do valor analógico em um valor digital é a tensão diferencial. O padrão RS-485 é usado em comunicações seriais do tipo multi-ponto onde vários dispositivos podem compartilhar o barramento, permitindo taxas de comunicação superiores a 12Mbps e distâncias de até 1.5 Km.
3.3.2 - Interfaces paralelas Como já mencionado, interfaces paralelas caracterizam-se por transmitirem vários bits simultaneamente, potencialmente apresentando uma maior taxa de transferência de dados. No entanto, a utilização de altas taxas de transferência exige cuidados especiais, tais como blindagem de cada sinal, sinalização diferencial, utilização de pares trançados. Isto torna o custo de uma interface paralela bastante elevado, pois tais cuidados deverão ser observados para cada bit . Por outro lado, para pequenas distancias (alguns metros) grande parte destes cuidados podem ser dispensados, permitindo a implementação de uma interface paralela a um custo razoável. Adicionalmente, a maioria dos equipamentos trabalha internamente com dados na forma paralela. Assim, a utilização de uma interface paralela evita a necessidade de conversões paralelo/serial e serial/paralelo dos dados, simplificando os equipamentos. 3.3.2.1 - Interface Centronics A interface Centronics (Centronics era o nome de um fabricante de impressoras muito popular à epoca, mas que há muito deixou de existir) foi srcinalmente concebida para conectar computadores a impressoras. Esta interface permite que os dados sejam transferidos em conjuntos de é8 mostrado bits, utilizando sinais3.8. adicionais para transferência. O são protocolo desta, nSTROBE da interface na figura Os sinais decontrole controledamais importantes utilizado pelo transmissor para sinalizar que o dado está disponível e BUSY, utilizado pelo receptor para indicar que está ocupado. O sinal nACK é, de certa forma, redundante com o sinal BUSY (o pulso de nACK sempre ocorre na borda de decida de BUSY), mas visa facilitar a implementação de esquemas de transmissao via interrupção, enquanto o sinal BUSY é mais apropriado para implementação de esquemas de polling.
66
Figura 3.8- Protocolo da interface Centronics.
Em geral, a interface Centronics permite a comunicação a taxas de até 250kBps, pois na implementação usual, o protocolo é implementado por software. Implementações mais sofisticadas implementam o protocolo por hardware e, às vezes, implementam FIFOs para os dados, atingindo taxas de até 500KBps. O padrão Centronics srcinal previa apenas comunicação unidirecional (do computador para a impressora) [7], no entanto, ainda assim esta interface pode ser utilizada para comunicação na direção reversa, fazendo-se uso dos sinais de status para enviar um nibble (4 bits) por vez. A vantagem deste modo de comunicação na direção reversa é que pode ser implementado com o hardware padrão da interface Centronics. No entanto, como neste modo a taxa de comunicação é metade da obtida na direção normal, diversos fabricantes deselvolveram estensões para o padrão Centronics, visando transmitir 8 bits por vez também na direção reversa. Infelizmente, as várias estensões desenvolvidas são incompatíveis entre sí e portanto não são amplamente utilizadas, permanecendo o método de transmissão de um nibble por vez na direção reversa como o mais usual. 3.3.2.2 - Interface IEEE-1284 Numa tentativa de obter uma padronização nas variantes da interface Centronics, o foi criado o padrão IEEE-1284 [8]. Este padrão define cinco modos de operação, para os quais as linhas de controle da interface Centronics são redefinidas, confome mostrado na tabela 1.
67
TABELA 1 - Redefinição dos sinais de controle para os diferentes modos IEEE-1284. Controle Compatível Nibble Byte ECP EPP host/perif. D0-D7 D0-D7 D0-D7 D0-D7 AD0-AD7 host nStrobe HostClk HostClk HostClk nWrite host nAutoFD HostBusy HostBusy HostAck nDStrb host nInit nInit nInit nRevReq nInit host nSelectIn 1284Active 1284Active 1284Active nStrb periférico nFault nDataAvail nDataAvail nPeriphReq usuário periférico Select X-Flag X-Flag X-Flag usuário periférico PError AckDataReq AckDataReq nAckRev usuário periférico nAck PtrClk PtrClk PeriphClk Intr periférico Busy PtrBusy PtrBusy PariphAck nWait
Pino 2-9 1 14 16 17 15 13 12 10 11
Os cinco modos de funcionamento da interface IEEE-1284 são: Compatível: Modo de operação utilizado pela interface Centronics srcinal. Assim, o protocolo utilizado é o mesmo mostrado na figura 3.8. Neste modo, a transferência de dados ocorre apenas na direção host/periférico. Nibble: Modo de operação onde as linhas de status da interface Centronics são utilizadas para implementar transferências na direção reversa, tal como descrito na seção 3.3.2.1. O protocolo utilizado neste modo é mostrado na figura 3.9. Note-se que neste modo a transferência de dados se dá apenas na direção periférico/ host.
Figura 3.9- Protocolo IEEE-1284 no modo Nibble. Byte:
Modo bi-direcional criado a partir de uma estensão do padrão Centronics, permitindo a transmissão de 8 bits também na direção reversa, como já comentado na seção 3.3.2.1. A transferência na direção direta ( host/periférico) se dá de forma idêntica ao modo compatível (vide figura 3.11). A transferência no modo reverso (periférico/host) ocorre utilizando o protocolo mostrado na figura 3.10.
68
Figura 3.10- Protocolo IEEE-1284 no modo Byte. ECP
(Extended Capabilities Port): Permite a comunicação bi-direcional, com handshake por hardware. As linhas de controle da interface Centronics são redefinidas de forma a implementar um canal de dados bidirecional assíncrono de 8 bits. O protocolo IEEE-1284 no modo ECP inclui endereçamento, FIFOs ( buffers de dados) e compressão de dados utilizando RLE ( Run-Length Encoding). O protocolo para transferência de dados neste modo é mostrado na figura 3.11. Em (a) tem-se o protocolo para transferência direta e em (b) o protocolo para transferência reversa.
(a)
69
(b) Figura 3.11 - Protocolo IEEE-1284 em modo ECP: (a) transferência direta; (b) transferência reversa. EPP
(Enhanced Parallel Port): Similarmente ao modo ECP implementa uma comunicação bi-direcional de 8 bits, com handshake por hardware. Este modo também utiliza endereçamento, com o host sendo o mestre do barramente e, consequentemente controlando todas as operações. A figura 3.12 mostra o protocolo para transferência de dados no modo EPP.
(a)
70
(b) Figura 3.12 - Protocolo IEEE-1284 em modo EPP: (a) transferência direta; (b) transferência reversa.
Convém notar que embora os modos ECP e EPP sejam bastante semelhantes nas suas características, o protocolo do modo ECP é praticamente simétrico, no sentido de que a sinalização executada pelo host para transmitir os dados para o host é bastante semelhante à sinalização executada pelo periférico para transmitir os dados para o host. Já o protocolo do modo EPP utiliza uma filosofia mestre-escravo, na qual o host provê a sinalização qualquer que seja a direção da transferência. 3.3.2.3 - Interface GPIB (IEEE-488) A interface GPIB (General Purpose Interface Bus), padronizada pela norma IEEE-488 foi desenvolvida, primariamente, para conexão de instrumentos de laboratório. No entanto, a interface IEEE-488 é de uso geral, permitido a conexão de até 15 dispositivos no seu barramento. Os dispositivos conectados ao barramento IEEE-488 podem assumir três tipos de funções, eventualmente de forma acumulativa: Controlador:
responsável pelo gerenciamento do barramento, obrigatório em qualquer configuração; Locutor: fornece dados aos outros equipamentos, quando requisitado; Ouvinte: recebe dados de outros equipamentos. O barramento GPIB utiliza 8 bits de dados e pode atingir uma distância de 20 metros com uma taxa de transferência de até 1MBps. Pode-se dividir o barramento GPIB em um sub-barramento de dados e um sub-barramento de controle, também com 8 bits. As linhas de controle podem ser ainda divididas em linhas de controle de transferência de dados e linhas de controle de interface. As linhas de controle de dados são as seguintes: Dado válido (DVA): utilizada pelo locutor para indicar que os dados estão válidos; Dado não aceito (NDAC): ativada pelos ouvintes até que todos tenham lido os dados; Não pronto para dados (NRFD): utilizada para indicar que nem todos os equipamentos estão prontos para receber dados. O controle da interface é realizado através das seguintes linhas: 71
Inicializa
interface (IFC): utilizada pelo controlador para inicializar o sistema; (ATN): utilizada pelo controlador durante o endereçamento ou seqüência de comandos; Requisição de serviço (SQR): semelhante a um sinal de interrupção; Habilitação remota (REN): ativada pelo controlador, habilita os equipamentos a responderem a comandos do controlador ou de outros locutores; Fim ou identificação (EOI): ativada pelo locutor para indicar o último byte de uma transferência ou pelo controlador, juntamente com ATN para indicar endereçamento. Em linhas gerais, o barramento IEEE-488 opera da seguinte maneira: o controlador estabelece (utilizando o sinal ATN, endereços e comandos) o locutor e os ouvintes. A seguir, o locutor passa a transmitir dados para os ouvintes. Há a possibilidade de existirem diversos ouvintes com taxas de transferência diferentes. Neste caso, o controle de fluxo é realizado através Atenção
da linha NDAC, que só vai para o seu estado inativo após o equipamento mais lento ter efetuado a leitura do dado. O barramento de dados transporta além dos dados propriamente ditos, comandos (exitem 32 comandos diferentes), endereços de locutores e ouvintes (até 31 de cada) e endereços secundários (endereços de funções dentro do mesmo equipamento). A interface IEEE-488 utiliza um conector de 24 pinos (vide figura 3.13). Um detalhe interessante destes conectores é que eles possuem de um lado um plug macho e de outro um plug fêmea, permitindo que diversos conectores sejam empilhados para configuração da rede de equipamentos.
Figura 3.13- Conector IEEE-488.
3.3.2.4 - Barramento VME O barramento VME, ou VME-bus [4], é um protocolo de comunicação definido para aplicações que demandem elevado processamento, sendo utilizado em aplicações militares, telecomunicações e em automação industrial. É um barramento paralelo que permite a interconexão de diversos módulos VME (vide figura 3.3) nos quais placas de interface com conectores especiais são acopladas. O padrão utiliza um modo de comunicação assíncrona, sendo que funcionalmente o barramento é divido em 4 sub-conjuntos: o barramento de arbitragem (arbitration bus), de transferência de dados ( data transfer bus), de interrupções ( interrupt request bus) e de utilitários ( utility bus). O barramento de arbitragem serve para resolução do conflitos no 72
acesso ao barramento de dados. Um dispositivo especial, denominado de árbitro, é encarregado de decidir qual dispositivo poderá utilizar o barramento de dados para transmitir, sendo que para isto estratégias baseadas no conceito de prioridades dos dispositivos são utilizados (aquele dispositivo que tiver a maior prioridade poderá acessar o barramento). O barramento de transferência de dados permite endereços de 32 bits (ou seja, um total de 232 dispositivos podem ser acessados) e permite a transferência paralela de dados de até 32 bits. Já o barramento de interrupções interliga todos os dispositivos a um gerenciador de interrupções, sendo que até 7 níveis diferentes de interrupções são possíveis. O barramento de utilitários contém o sinal de relógio que irá sincronizar todos os dispositivos, além de serviços de detecção de falhas, reinicialização do sistema, entre outros. Equipamentos desenvolvidos para o protocolo VME são normalmente bastante robustos, porém tendem a ser mais caros em função da complexidade de implementação dos diferentes barramentos e do protocolo.
3.3.3 - Protocolos abertos x protocolos proprietários A crescente tendência na área de automação industrial do uso de arquiteturas computacionais distribuídas, nas quais diferentes dispositivos podem comunicar-se com outros e de uma maneira cooperativa realizar tarefas que levem ao atendimento dos requisitos impostos pelas aplicações, aumentou consideravelmente a oferta de dispositivos e de protocolos de comunicação. Por protocolo de comunicação entende-se um conjunto de regras e convenções que permitem a conversação e troca de informação entre sistemas [3]. Isto significa que, conhecendo-se exatamente as regras e convenções definidas num dado protocolo, a princípio pode-se construir um dispositivo capaz de trocar informações usando aquele protocolo. Neste contexto, pode-se diferenciar entre dois tipos de protocolos: protocolos proprietários e protocolos abertos. Os primeiros são protocolos definidos por uma empresa e que não são disponibilizados a usuários e outros fabricantes de dispositivos. Neste caso, somente dispositivos da empresa em questão são capazes de comunicar uns com os outros. Os protocolos abertos, pelo contrário, são aqueles cujas regras e convenções são amplamente divulgados, geralmente na forma de uma norma técnica internacional, nacional ou regional. Neste caso, diversos fabricantes podem, a princípio, desenvolver sistemas computacionais que permitam o interfaceamento de seus dispositivos com outros que entendam o mesmo protocolo. Uma das principais vantagens da adoção de protocolos abertos é a independência de fabricantes, ou seja, quanto mais empresas tiverem produtos disponíveis em um protocolo, menos dependente fica a automação de uma empresa específica. Tal aspecto tende a levar a uma redução dos custos dos dispositivos em função da concorrência que naturalmente surge no mercado. Historicamente, tem-se que os primeiros sistemas de automação tendiam a utilizar somente protocolos proprietários, uma vez que empresas de automação vendiam soluções completas, muitas vezes com dispositivos de somente um fabricante. Atualmente, existe uma forte tendência à adoção de protocolos abertos. Especificamente no que tange o uso de protocolos em robôs industriais, pode-se dizer que ainda existe uma forte presença de protocolos proprietários usando interfaces seriais e paralelas padronizadas. Assim, por exemplo robôs da empresa ABB geralmente comunicam-se com computadores pessoais via interfaces seriais RS232 rodando protocolos de mais alto nível específico da empresa, como por exemplo o Rapid Serial Link.
3.3.4 - Especificidades de redes industriais Diferentemente das redes locais de escritório, onde as redes estão instaladas em ambientes limpos e normalmente com temperaturas controladas, no caso de redes industriais, temos que o 73
ambiente nos quais as redes são instaladas é extremamente hostil, uma vez que ruídos eletromagnéticos de grande intensidade podem estar presentes (por exemplo, no acionamento de motores elétricos, em função das altas correntes envolvidas, radiações eletromagnéticas são geradas, podendo induzir ruídos nos equipamentos eletrônicos nas proximidades). Além disso, ambientes industriais também costumam apresentar temperaturas e umidades elevadas, dois aspectos prejudicais aos componentes utilizados em sistemas computacionais e de comunicação. Desta forma, equipamentos para redes industriais são em geral especialmente construídos para trabalhar nestas condições adversas e os protocolos de comunicação adotados também devem considerar aspectos de segurança e disponibilidade do sistema desenvolvido. 3.3.4.1 - Protocolos MAP e MINI-MAP O protocolo MAP (Manufacturing Automation Protocol ou Protocolo para Automação da Manufatura) foi um dos primeiros padrões de comunicação para aplicações industriais, que surgiu por iniciativa de um consórcio de empresas lideradas pela empresa de automóveis GM ( General Motors), com o intuito de montagem de uma rede de comunicação em suas plantas industriais. O protocolo adota o esquema de passagem de permissão ( token passing) para acesso ao barramento (vide seção 3.2.2), garantindo assim um tempo máximo que uma estação deverá esperar até que lhe seja concedido novamente a possibilidade de acesso ao barramento. Na verdade, MAP não representa apenas um protocolo, mas um conjunto de protocolos para os diferentes níveis do modelo OSI, onde cada protocolo foi escolhido considerando-se, dentre os protocolos existentes, aquele que melhor se adaptava para aplicações industriais. Por tratar-se de um conjunto de protocolos selecionados, MAP é chamado de um perfil ( profile) para comunicação de sistemas de manufatura. Experiência práticas com o protocolo MAP demonstraram que em função de sua complexidade, aplicações desenvolvidas para aquele protocolo demandavam uma grande quantidade de memória e tinham tempos de execução bastante longos e muitas vezes inaceitáveis para as aplicações almejadas. Em função disto, uma nova versão mais enxuta foi desenvolvida, a qual somente usa três níveis do modelo OSI, o nível físico (nível 1), o nível de enlace de dados (nível 2) e a camanda de aplicação (nível 7). A este protocolo foi dado o nome de Mini-MAP (sendo que o protocolo MAP srcinal também passou a ser conhecido por Full MAP). Especialmente em função das especificações de sua camada física, a qual propõe o uso de cabos coaxiais e cujo custo são altos para aplicações industriais a nível de chão-de-fábrica, os protocolos MAP e Mini-MAP não se tornaram tão populares. 3.3.4.2 - Protocolo Profibus Profibus, uma sigla para Process Field Bus (Barramento de Campo de Processos) é um protocolo industrial baseado em barramentos seriais e que encontra-se tanto normalizado internacionalmente, continentalmente (norma européia EN 50170) e nacionalmente (norma DIN alemã). Profibus representa na verdade um conjunto de três protocolos de comuncação denominados de Profibus-DP (Decentralized Periphery ou periferia decentralizada), Profibus-FMS (Fieldbus Message Specification) e Profibus-PA ( Process Automation). A versãpo PA é voltada para aplicações em processos contínuos, enquanto que as versões DP e FMS são voltadas para as áreas de sistemas de manufatura e automação industrial em geral. Seguindo a proposta MiniMAP, Profibus não define todas as camadas do modelo OSI limitando-se apenas às camadas 1, 2 e 7. Na camada 1, em suas versões DP e FMS Profibus permite o uso padrão RS-485 ou de fibras óticas. Profibus define dois tipos de dispositivos: dispositivos mestres são aqueles que pdoem 74
iniciar comunicação, enquanto dispositivos escravos somente respondem a solicitações dos mestres. O acesso ao barramento ocorre através de passagem de permissão ( token passing) entre os dispositivos mestres (vide figura 3.14). A tabela 2 apresenta as principais características dos protocolos da família Profibus.
Token Masters
Slaves 3
2
1
Figura 3.14- Comunicação Profibus
TABELA 2 - Características dos protocolos da família Profibus. Profibus-DP Profibus-FMS Chão-de-fábrica Células EN50170 EN50170 Dispositivos de campoCLPs, digitais e analógicos, acionamentos Tempo de Reação 1 a 5ms Menor que 60 ms Distâncias Até 23 km Até 23 km Taxas de Transmissão 9.6 kbps a 12Mbps 9.6 kbps a 1.5Mbps Aplicação Padrão Dispositivos
Profibus-PA Processos IEC 61158-2 Dispositivos de campo digitais e analógicos, Menor que 60 ms Até 1.9 km 31.25 kbps
3.3.4.3 - Protocolo CAN CAN é um barramento serial dedicado a dispositivos inteligentes ligados em rede, cuja área de aplicação principal é em sistemas embarcados para o setor automotivos e mais recentemente na área de automação industrial (CiA, 1999, BOSCH, 1991). Segundo o protocolo CAN qualquer dispositivo pode iniciar comunicação, ou seja, é um protocolo multi-mestre em que o acesso ao meio é feito usando-se a estratégia de acesso múltiplo com contenção e evitando-se colisões (vide seção 3.2.2). O protocolo permite a priorização no envio de mensagens, pois a cada mensagem é atribuído um identificador (de 11 bits no padrão CAN 2.0A e de 32 bits no padrão CAN 2.0B) e este é utilizado na resolução de colisões no acesso ao barramento. CAN caracterizase por soluções de baixo custo, especialmente em função da produção em larga escala de controladores CAN para o setro automobilístico. O protocolo permite taxas de até 1 Mbps a distâncias de 25m (distâncias de 5km também são possíveis com taxas de 10 kbps). CAN apresenta-se como uma solução interessante para uso em robôs industriais, em especial na interligação de sensores e atuadores.
75
3.3.4.4 - Protocolo Ethernet O protocolo Ethernet é uma implementação do padrão IEEE 802.3. Este padrão especifica a camada física e a subcamada de controle de acesso ao meio (MAC), que utiliza o método CSMA/CD (vide seção 3.2.2). Os dados são transmitidos utilizando a codificação Manchester (vide figura 3.) com +0,85V representando nível lógico 1 e -0,85V representando o nível lógico 0, garantindo um nível médio de 0V. Cada dispositivo Ethernet possui um endereço único de seis bytes, denominado endereço MAC. Os primeiros três bytes identificam o fabricante (REYNOLDS, POSTEL, 1994), enquanto os demais são atribuidos por este de forma única para dada dispositivo fabricado. Usualmente, estes endereços são escritos como uma seqüência de dois dígitos hexadecimais separados por dois pontos, na forma: aa:bb:cc:dd:ee:ff. Exitem, basicamente três tipos de Ethernet: Thick Ethernet, Thin Ethernet e Par trançado. Os hosts dois primeiro umutilizado. cabo coaxial, sí pelo forma de conexão e pelo tipo deutilizam conector Thickdiferenciando-se Ethernet utiliza entre uma conexão do tipo vampiro, dos onde um transceptor é acoplado, apresentanto como vantagem o fato da rede não precisar ser interrompida para conexão de mais um host. Thin Ethernet utiliza conectores BNC tipo T que são inseridos no cabo, exigindo que o cabo seja cortado e a rede interrompida, e conectados ao host. É importante salientar, que o conector T deve ser conectado diretamente ao dispositivo Ethernet, sem a utilização de cabos de estensão. Thick e Thin Ethernet tem uma taxa de transferência de dados de 10Mbps e permitem um comprimento máximo de cabo de 500m e 200m, respectivamente, sendo por esta razão denomidados 10base5 e 10base2. Utilizando-se repeditores, pode-se alcançar distâncias maiores. Por questões de temporização, o número de repetidores entre dois tranceptores é limitado a quatro. Assim, pode-se atingir uma distância máxima de 2,5km. O terceiro tipo de Ethernet também opera a 10Mbps e utiliza um cabo formado por quatro pares trançados (sendo por isto denominado 10baseT) e conectores modulares RJ45, semelhante aos utilizados em telefonia. Apenas dois pares são utilizados para comunicação de dados, sendo os demais reservados para uso em telefonia, embora raramente sejam utilizados para tal. A tabela 3 mostra a pinagem do conector utilizado. Como se pode notar, é utilizada sinalização diferencial. Além disso, para redução de ruído, é importante que os condutores conectados aos pinos 1 e 2 formem um par trançado. De maneira análoga, os condutores conectados aos pinos 3 e 6 também
devem formar um par trançado. TABELA 3 - Pinagem do conector Ethernet 10baseT. Pino 1 2 3 4 5 6 7 8
Sinal Transmissão de dados (+) Transmissão de dados (-) Recepção de dados (-) Reservado para telefonia Reservado para telefonia Recepção de dados (+) Reservado para telefonia Reservado para telefonia
Ao contrário dos tipos anteriores, que utilizam uma topologia de rede em barramento, a Ethernet 10baseT utiliza uma topologia em estrela. Assim, cada host é conectado ao hub, que é o 76
dispositivo encarregado de implementar o CSMA/CD. A distância de cada host ao hub pode ser de até 100m. Nos padrões 10base2 e 10base5, os dados são transmitidos e recebidos pelo mesmo meio físico, ou seja, o cabo coaxial. No entanto, na Ethernet 10baseT, existem pares de condutores independentes para transmissão e recepção de dados, possibilitando a operação em modo fullduplex. Já que a transmissão e a recepção são realizadas por canais diferentes, e desde que o hub seja compatível com o modo full-duplex, pode-se desabilitar a detecção de colisão nos hosts. Desta forma, pode-se transmitir e receber dados simultaneamente. Neste caso, o hub deve encarregar-se de resolver o problema da colisão. Existe também o padrão 100baseTX, que permite transferências de dados a uma taxa de 100Mbps e utiliza cabeamento e conectores similares aos utilizados pelo padrão 10baseT. Na verdade, a maioria dos sistemas 10baseT instalados recentemente utiliza cabeamento e conectores categoria 5, o que significa que obedecem as especificações necessárias para operação no padrão 100baseTX. Assim, para operação a 100Mbps, bastaria trocar os hubs e as interfaces de rede, mantendo-se o mesmo cabeamento, que significa grande parte do investimento na implantação da rede. Atualmente está em desenvolvimento o padrão 1000baseT, que permitirá atingir uma taxa de transferência de dados de 1Gbps. A princípio, este padrão também deverá utilizar cabeamento categoria 5. Os hosts em uma rede Ethernet enviam dados entre sí utilizando um conjunto de protocolos de nível superior. Os pacotes destes protocolos são transmitido através da rede em pacotes Ethernet, sendo que cada protocolo opera de maneira independente dos demais, cooperando para a transferência dos dados. Com a grande disseminação da Internet, o conjunto de protocolos denominado TCP/IP (Transfer Control Protocol/Internet Protocol) tem sido uma escolha frequente para os protocolos de nível superior. O protocolo IP tem seu próprio endereçamento, de 32 bits. O protocolo IP de um determinado host, tem conhecimento do seu próprio endereço IP e do endereço IP do host de destino dos dados. O seu próprio endereço Ethernet pode ser obtido a partir da interface de rede, mas o endereço Ethernet do host de destino não é conhecido. Este endereço precisa ser determinado a partir do endereço IP do host de destino. Isto é feito a partir de um protocolo denominado ARP (Address Resolution Protocol). Convém salientar, que os protocolos Ethernet e TCP/IP não foram concebidos para aplicações em automação industrial, não apresentando algumas características desejáveis em ambientes de controle em tempo real, como determinismo e segurança na transmissão dos dados. No entanto, Ethernet e TCP/IP são provavelmente as tecnologias de rede mais difundidas, permitindo uma grande escala de produção e disponibilidade, e por conseqüência, baixo custo, tornando-se uma alternativa bastante atrativa para interconexão de dispositivos de automação. Por outro lado, a nova geração de protocolos IPv6 (IP versão 6), também conhecida como IPng (IP next generation) propõe-se a solucionar, pelo menos em parte, algumas das limitações do protocolo IP atual (IPv4), na medida em que prevê garantias níveis de qualidade de serviço (QoS) e de seguraça, através do protocolo IPsec.
3.4 - SISTEMAS INTEGRADOS DE AUTOMAÇÃO INDUSTRIAL Uma análise da evolução do estado da arte da área de automação industrial mostra que esta tem sido extremamente influenciada por avanços nas áreas de instrumentação, microeletrônica e informática. Sistemas de automação industrial modernos caracterizam-se pela presença cada vez 77
maior de sistemas computacionais com arquiteturas de hardware e software distribuídas. Dispositivos microprocessados tornam os diversos componentes presentes no sistema de automação em unidades autônomas de processamento, as quais são capazes de interagir umas com as outras para, em colaboração, produzir produtos de alta qualidade, a custo e tempo de produção reduzidos. Esta tendência de desenvolvimento de sistemas de automação cujos componentes possuem elevado grau de autonomia e flexibilidade reflete-se em praticamente todas as sub-áreas dentro da área de automação industrial, através de novos conceitos de sensores e atuadores inteligentes, sistemas integrados de manufatura, robôs e máquinas inteligentes, etc. (GROOVER et al., 1986). O problema para os projetistas de produtos com estas tecnologias é fazer com que elas sejam compatíveis entre sí, de forma que possam ser integradas em um único sistema de controle industrial. Assim, um dos principais problemas a serem enfrentados é o problema de interface das informações. Estes sistemas distribuídos de automação são geralmente estruturados de forma hierárquica, constituindo a chamada pirâmide de automação (ver Figura 3.15). O nível mais baixo na hierarquia, denominado chão-de-fábrica, engloba os elementos diretamente acoplados aos componentes da planta industrial sendo automatizada e caracteriza-se por manipulação de informações como sinais de controle e status a elevadas taxa de processamento. À medida em que se sobe na hierarquia, tem-se que informações de mais alto nível, tais como estratégias de produção e dados gerenciais são manipuladas, sendo que geralmente quanto maior o nível de abstração menos críticos os requisitos temporais e maiores as constantes de tempo associadas aos processos envolvidos.
Nível Gerenciamento
Workstation, PC
Nível Célula
CLP, PC
Nível Chão de Fábrica
CLP, PC Acionamentos Válvulas
Nível AtuadorSensor
Atuadores Sensores
Figura 3.15- Arquitetura distribuída de sistemas de automação i ndustrial.
Como apresentado nas seções anteriores, a estrutura de uma rede de automação industrial é caracterizada pelo uso de diversos sub-sistemas de comunicação. Em geral, estes sub-sistemas são otimizados para aplicações específicas, como entrada/saída de dados nos níveis mais baixos 78
da rede e transferências de arquivos por FTP ( File Transfer Protocol) ou navegação na WWW (World-Wide-Web) nos níveis mais altos. Estes sub-sistemas possuem restrições de temporização diferentes, variando desde 10us, para o jitter de sincronização de um robô, até 30 segundos ou mais para a transferência de arquivos. Nos níveis mais baixo, a relação entre os dispositivos da rede tende a ser do tipo mestre-escravo, enquanto nos níveis mais elevados a relação tende a ser do tipo par-a-par. Através do incremento gradual do uso da tecnologia Ethernet nas plantas industriais, a comunicação poderá ser padronizada consideravelmente. Atualmente, existem esforços KLÜGER, 2000) no sentido de padronizar a comunicação industrial utilizando exclusivamente a tecnologia Ethernet.
3.5 - GERENCIAMENTO DE SISTEMAS DE AUTOMAÇÃO INDUSTRIAL A tendência atual no gerenciamento de sistemas de automação é a utilização da tecnologia da Internet, em especial utilizando-se redes Ethernet/TCP/IP para comunicação entre máquinas e páginas WEB para a interface Homem-máquina. Protoclos padronizados pela Internet, tais como TFTP (Trivial File Transfer Protocol), SNMP (Simple Network Management Protocol) e SMTP (Simple Mail Transfer Protocol), são utilizados para comunicação de dados entre máquinas, que podem ser configuradas automaticamente através de protocolos como o DHCP ( Dynamic Host Configuration Protocol). A interface como usuário é feita utilizando-se o protocolo HTTP (HyperText Transfer Protocol). A interface com o usuário através de páginas WEB, é um meio simples para acesso a todos os dados disponíveis na rede de automação, independentemente da localização do usuário ou dos equipamentos sendo acessados. Adicionalmente, para visualizar estes dados, é necessário apenas um computador convencional equipado com um navegador WEB, ou browser, sem a necessidade de softwares específicos. O próprio sistema de páginas WEB encarrega-se de fazer a interface com os aplicativos que utilizem outros protocolos (FTP, TFTP, SNMP, SMTP), dispensando o usuário de aprender a utilizar a interface de tais aplicativos. Usualmente, o sistema de páginas WEB faz isto utilizando uma interface para execução de programas externos denominada CGIs (Common Gateway Interface). Através da interface WWW, o usuário tem acesso aos seguintes serviços: visualização de dados; diagnóstico; operação manual; parametrização e configuração; serviços de auxílio. O protocolo DHCP é utilizado para passar informação de configuração para hosts em uma rede TCP/IP. Este protocolo consiste de dois componentes: um protocolo para envio para cada hosts dos seus parâmetros específicos de configuração, obtidos a partir de um servidor DHCP; um mecanismo para alocação automática de endereços de rede para os hosts. Assim, utilizando-se o protocolo DHCP, as tarefas de configuração, alocação de endereço e nome para os dispositivos na rede podem ser feitas de maneira automática. O protocolo DHCP também permite que parâmetros de configuração como endereço de rede sejam definidos manualmente. A vantagem neste caso, está no fato de que a configuração de todos os hosts é 79
realizada de forma centralizada, no servidor DHCP, evitando a necessidade de configurar-se cada host isoladamente. Embora por enquanto o conceito de automação baseada em redes TCP/IP esteja sendo aplicado principalmente em intranets, é natural no futuro próximo, este conceito seja expandido para a Internet. As vantagens são claras: em poucos minutos, especialistas dos fabricantes poderão acessar dispositivos de automação com problemas e executar diagnóstico, e configurações. A existência de uma estrutura de comunicação homogênea em uma rede automação industrial apresenta as seguintes vantagens: simplica as rotinas de startup e de manutenção; melhora a interoperabilidade dos dispositivos de automação; aumenta a confiabilidade da linha de produção; aumenta simplifica
a flexibilidade e reduz o ciclo de desenvolvimento de produtos; as bases de dados;
melhora fornece
e aumenta os serviços de diagnóstico de processos e componentes; serviços de auxílio ao usuário.
3.6- REFERÊNCIAS BOSCH, R. GmbH, CAN Specification Version 2.0, 1991. CiA Draft Standards 301, CANopen Application Layer and Communication Profile, Version 4.0, 1999. GROOVER, M., WEISS, M., NAGEL, R., ODREY, N ., Industrial Robotics: Technology, Programming, and Applications , 1 ed., McGrawHill, New York, 1986. IEEE Std. 802.4- 1982, Token-passing Bus Access Method and Physical Layer Specifications, 1982. IEEE Std.1284-1994, Standard Signaling Method for a Bi-directional Parallel Peripheral Interface for Personal Computers., 1994. IEEE Std 802.3- 1985, Carrier Sense Multiple Access with Collision Detection (CSMA/CD) Access Method and Physical Layer Specifications., 1985. KLÜGER, P., "IDA - Interface for Distributed Automation Standardization of the Automation Network", In: Proceedings of the 6th IFAC Symposium on Robot Control, Vienna, pp. S1-S4, 2000. NOF, S. Y.(editor), Handbook of industrial robots, 2 ed., John Wisley & Sons, New York, 1999. PROFIBUS: Technical Overview http://www.profibus.com/data/technic/index.html, 2000. REYNOLDS, J., POSTEL, J., Assigned Numbers, STD 2, RFC 1700, ISI, 1994. SARGENT, M., SHOEMAKER, R. L., The Personal Computer from the Inside Out ., 3 ed., AddisonWesley, 1995. SITE, http://www.vita.com, 2000. TANEMBAUM, A., Redes de Computadores, Tradução da Segunda Edição Americana, Editora Campus, Rio de Janeiro,1994.
80
CAPÍTULO 4 INTERAÇÃO DE ROBÔ NO AMBIENTE Anna Helena Reali Costa Jun Okamoto Jr.
4.1 -
INTRODUÇÃO
A simples menção da palavra “automação” ou da palavra “automático” traz à mente a noção de que a máquina deve sentir o ambiente que a cerca para que ela possa executar a sua tarefa de modo automático. Em outras palavras, a máquina, equipamento ou processo deve utilizar sensores para fornecer informações para o seu sistema de controle interno de modo a executar sua tarefa sem o auxílio de um ser humano. De uma maneira genérica este sensores devem fornecer informações ao computador de controle sobre distâncias entre máquina e objeto, posição da própria máquina, contato entre máquina e objeto, força que a máquina exerce sobre objeto, ou ainda cor do objeto, textura do objeto (DU BUF, KARDAN, SAPNN, 1990), cheiro do objeto (WILKINSON, GUANIO, 1998), dentre outras. Em robótica, quando se fala em sensores, normalmente refere-se a sensores que auxiliam o robô na execução de suas tarefas, isto é, que são utilizados para o robô determinar parâmetros do ambiente que o cerca e do objeto que se deseja manipular. É conveniente se distinguir entre estes sensores e os que são utilizados para o robô determinar seus parâmetros de movimento, ou seja, sua posição, velocidade, aceleração e força. Os sensores do primeiro caso são chamados de sensores externos do robô e os do segundo caso são chamados de sensores internos do robô.
Ref +
–
+
Ambiente e Objeto
Robô –
Medição de distância
Figura 4.1 -Controle de robô com duas malhas de reali mentação
É claro que o parâmetro que está sendo medido determina o tipo de sensor a ser utilizado, porém, a principal diferença entre um sensor interno e um externo está na velocidade de resposta que o sensor deve ter. A Figura 4.1 mostra um diagrama de blocos do sistema de controle de um robô onde estão presentes duas malhas de realimentação de informações sensoriais, uma interna e outra externa.
81
A malha de realimentação interna requer o controle em tempo real da posição do robô que opera em períodos de amostragem da ordem de milisegundos, ou seja, o sensor que está sendo utilizado para medir a posição do robô deve ser consultado na freqüência do período de amostragem e deve produzir um valor válido num tempo menor que o do período de amostragem. Por outro lado, a malha de realimentação externa utiliza informações do ambiente adquiridas pelo sensor para a execução da tarefa num nível mais alto. Por exemplo, no caso da Figura 4.1, com uma realimentação de medida de distância até o objeto a tarefa de alto nível pode ser manter constante a distância até o objeto, como no caso de acompanhar um objeto numa esteira transportadora. Enquanto se faz o planejamento da tarefa sendo executada na malha de realimentação externa, a malha de realimentação interna mantém o robô na trajetória planejada. Assim, dentro de um período de amostragem da malha de realimentação externa devem existir muitos períodos de amostragem da malha de realimentação interna, de modo que a velocidade de aquisição de informações pelos sensores externos é menor do que pelos sensores internos. Os sensores externos por sua vez podem fornecer os mais variados tipos de informação para que o robô execute de maneira não supervisionada tarefas com alto grau de complexidade. Com as informações deste sensores pode-se montar mapas de ambientes, criar modelos de objetos tanto bidimensionais como tridimensionais, tomar decisões que alteram o movimento do robô, dentre outras. A seguir será mostrado o funcionamento de alguns tipos de sensores internos e externos, indicando sua aplicação nas diversas tarefas de um robô.
4.2 - SENSORES INTERNOS 4.2.1 - Posição A medição da posição de um robô é feita normalmente no eixo dos atuadores que movimentam os links do robô. Diversos dispositivos podem ser utilizados para esta medição de posição. Considerando-se o caso de atuadores de rotação, estes dispositivos devem ser capazes de fornecer um valor proporcional ao ângulo de rotação do eixo. Um dos métodos de medição de
Figura 4.2 -Exemplo de encoder óptico incremental
posição angular mais comuns em robótica é o encoder óptico incremental. 82
A Figura 4.2 mostra um exemplo de um encoder óptico incremental. O princípio de funcionamento baseia-se na interrupção de um feixe luminoso que incide sobre um sensor óptico por meio de um disco fixo ao eixo do atuador. Este disco possui regiões transparentes e opacas para o feixe luminoso. Estas regiões alternam-se de modo que com o circuito mostrado na Figura 4.3 tem-se 50 pulsos por volta com o encoder da Figura 4.2. O número de pulsos por volta do
Vcc
Vcc
R
Figura 4.3 -Circuito para detecção da posição do encoder
disco, ou seja, para 360° de rotação do eixo do motor pode variar com o tipo de disco e com o tamanho dos sensores ópticos utilizados. Na prática os encoders ópticos podem ser encontrados com até 2000 pulsos por volta ou até maiores. A Figura 4.4 mostra um exemplo de encoder comercial com 500 pulsos por volta.
Figura 4.4 -Exemplo de encoder óptico comercial (pedir permissão para HP)
Para a determinação da posição angular do eixo do atuador os pulsos provenientes do circuito da Figura 4.3 devem ser contabilizados num contador digital, de modo que a saída deste contador terá um valor proporcional a uma variação do ângulo do eixo do atuador.
83
Fase A
Fase B
Movimento em sentido horário: primeiro fase A, depois fase B.
Movimento em sentido anti-horário: primeiro fase B depois fase A
Figura 4.5 –Sinais dos sensores montados em quadratura
A utilização de um único sensor no encoder permite a determinação do ângulo de rotação do eixo do atuador, mas não determinação da direção de rotação. Neste caso é necessário a utilização de um sensor adicional montado em quadratura com o outro sensor. A Figura 4.5 mostra os sinais produzidos por este par de sensores montados em quadratura para o movimento de um único disco. Estes sinais são denominados fases A e B. Se o eixo do motor girar no sentido horário o
Clock UP
A
B
Decodificador de fases AB para clocks UP e DOWN
Clock DOWN
Contador UP/DOWN de n-bits
b0 b1 b2
bn-2 bn-1
Figura 4.6 -Diagrama em blocos do circuito completo de encoder para medição de posição e direção de rotação
sinais apresentarão as bordas de subida na seqüência A-B-A-B e se o motor girar no sentido antihorário a seqüência de bordas de subida será B-A-B-A. Para se utilizar os sinais em quadratura com um contador digital é necessário se converter estes sinais para sinais de incremento e decremento do contador. Por exemplo, se for detectada a seqüência ABAB o circuito fornece pulsos para incrementar o contador e não para decrementar. Se a seqüência B-A-B-A for detectada o sinal produzido é para decrementar e não incrementar. Contabilizando-se os pulsos nas duas direções, o saldo será correspondente a posição angular do eixo do motor. O circuito completo para determinação da posição angular do eixo de um motor é mostrado na Figura 4.6.
4.2.2 - Velocidade A medida de velocidade de um robô, assim como a medida de posição, é normalmente feita no eixo do atuador. O tacogerador é um dispositivo acoplado ao eixo do motor que fornece um valor de tensão analógico proporcional a velocidade angular do eixo do motor. O funcionamento de um tacogerador é o mesmo de um gerador de corrente contínua onde a tensão de saída do gerador aumenta com o aumento da velocidade. Contudo, a utilização de sinais analógicos em aplicações de controle digital vem diminuindo ao longo dos anos principalmente devido ao ruído que é introduzido na medida e a erros introduzidos devido a conversão analógico/digital. No caso da medição de velocidade, uma maneira digital de se fazer esta medição é a utilização do mesmo encoder utilizado para a 84
medição de posição do eixo do atuador contabilizando-se o número de pulso por certo período de tempo fixo. Esta medição pode ser feita contabilizando-se pulsos do encoder em janelas de tempo conhecidas. Por exemplo, no instante de tempo t0 marca-se o valor do encoder; no instante t1 lêse o valor do encoder novamente e subtrai-se do valor marcado em t0, a diferença obtida dividida pela janela de tempo é a velocidade média no período em pulsos por segundo. Considerando-se a janela de tempo uma constante como a que corrige pulsos por segundo em milímetros por segundo, temos que o valor da diferença é proporcional à velocidade. No caso deste método o valor de velocidade sempre corresponderá a um valor médio no período e não a um valor instantâneo como o que pode ser obtido por um tacogerador. A utilização deste valor médio não se constitui num problema desde que o período de amostragem seja pequeno. Por isso, mesmo que as velocidade envolvidas não sejam elevadas é desejável um número grande de pulsos por volta do encoder para que se possa trabalhar com janelas de curta duração.
4.2.3 - Aceleração A aceleração nem sempre é um parâmetro medido em robótica mas sim calculado a partir da variação da velocidade num período de tempo. Seguindo-se o mesmo método aplicado para o cálculo da velocidade a partir dos valores lidos do encoder, no mesmo instante de cálculo da velocidade o próprio valor da velocidade pode ser armazenado e no próximo instante de cálculo da velocidade a diferença do valor atual com o armazenado anteriormente resulta no valor da aceleração.
4.2.4 - Força A medição de força só é necessária em situações onde se deseja controlar a força que o robô exerce no objeto que está manipulando. O método mais direto de se medir forças é através da utilização de strain gages que produzem uma variação de resistência proporcional a uma variação de força (vide Figura 4.7). Esta variação de resistência normalmente é pequena de modo que para + Rf
• Strain RS Gage
R2
• • •
•
A
• − VAB
B
+
• VOUT
Rb
R1
• −Figura 4.7 -Strain Gage
Figura 4.8 -Montagem elétrica de um strain gauge em Ponte de Wheatstone
uma detecção mais confiável é utilizada uma ponte de Wheatstone em equilíbrio, conforme o circuito da Figura 4.8. 85
4.3 - Sensores externos 4.3.1 - Presença A detecção de presença de objetos próximos ou distantes de um sensor pode ser feita por diversas técnicas, com diversas tecnologias, dependendo da distância, do objeto e da velocidade de medição. A Tabela 4.1 resume estas informações para os tipos de sensores mais comuns em robótica. Tabela 4.1 -Sensores, tecnologias, distâncias de detecção
Sensor
Tecnologia
Faixa de Detecção
Magnético
Efeito Hall
0,1 - 3 mm
Óptico
Infravermelho reflectivo (baixa potência)
1mm - 300mm
Ultra-som
Tempo-de-vôo
500mm - 10000mm
Óptico
Infravermelho ou laser reflectivo (alta potência)
3000mm - 100000mm
Dentre os sensores descritos na Tabela 4.1, os métodos de medição dos sensores de ultrasom e ópticos podem ser utilizados para medir distâncias além da presença de objetos, conforme será visto no item seguinte.
4.3.1.1 - Sensor magnético por efeito Hall O sensor magnético detecta somente objetos ferrosos em distâncias muito pequenas. O seu princípio de funcionamento baseia-se no efeito Hall onde ocorre a variação de correntes de Lorrentz quando um objeto metálico está próximo do sensor. Estes sensores são utilizados em aplicações particulares para a detecção da presença de peças metálicas em correias transportadoras, montados fora do manipulador, produzem um sinal digital que pode disparar o movimento do manipulador para interagir com a peça detectada.
Figura 4.9 -Sensor magnético industrial (Assemtech Europe Ltd. - http://www.assemtech.co.uk)
4.3.1.2 - Sensor óptico infravermelho O sensor óptico infravermelho de baixa potência possui um emissor de luz e um receptor montados num mesmo dispositivo. A luz refletida num objeto próximo é captada pelo receptor de luz que produz um sinal digital. A Figura 4.10 mostra o arranjo elétrico para este sensor e a Figura 4.11 mostra um exemplo de um sensor industrial disponível comercialmente. Como este princípio baseia-se na reflexão de luz, a distância de detecção pode variar de acordo com as características da superfície do objeto. 86
Com este tipo de sensor é possível detectar a presença de objetos próximos ao sensor onde Vcc
R
Vcc
Lentes Objeto
Figura 4.10 -Eletrônica para detecção óptica de presença.
a distância até o objeto pode ser ajustada dentro de uma faixa alterando-se o ganho do receptor.
4.3.2 - Distância Em algumas aplicações é necessário se medir distâncias entre um sensor e objetos de interesse na área de trabalho do robô. Com algumas das tecnologias vistas anteriormente para a detecção de objetos é possível a medição de distâncias dentro de certos limites.
4.3.2.1 - Sensor de Ultra-som A medição de distância com um sensor de ultra-som é feita pelo método que é conhecido por tempo-de-vôo do eco refletido num objeto produzido por um pulso de ultra-som emitido na direção deste objeto. O transdutores de ultra-som podem ser construídos por diversas tecnologias para a propagação no ar. Em aplicações na área da robótica os sistemas de medição de distâncias com ultra-som mais comuns são baseados em transdutores da Polaroid (vide Figura 4.12) com os quais é possível medir distâncias entre 70 cm e 10 metros.
Figura 4.12 –Três diferentes modelos de transdutores de ultra-som da Polaroid.
87 Figura 4.11 -Exemplo de sensor comercial (Balluff - http://www.balluff.com).
4.3.2.2 - Sensor Óptico •
•
•
Sensores ópticos para medição de distância podem empregar diversos métodos tais como: Triangularização da luz - onde a luz é enviada até o objeto por caminhos diferentes o que permite a triangularização da luz e consequentemente a estimativa da distância até o objeto. Este método é adequado para distâncias curtas, até 50 mm, com uma precisão da ordem de milímetros. Diferença fase - de a luz modulada é enviada objeto edáa uma sua estimativa reflexão é da captada no sensor. A de diferença fase entre a luz emitida até e a orecebida distância até o objeto. Este método pode ser empregado tanto com emissores de baixa potência como de alta potência o determina a faixa de distâncias que podem ser medidas. Tempo-de-vôo - um pulso de luz de alta potência é emitido em direção a um objeto e esperase o retorno do pulso refletido. O tempo decorrido entre a emissão e a recepção é proporcional a distância até o objeto. A utilização de luz coerente (laser) permite a medição de distâncias grandes, contudo para aplicações em robótica a utilização de luz infravermelha não coerente, focalizada por lentes é suficiente para distâncias até cerca de 20 metros.
4.3.3 - Tato A detecção de contato com o objeto e o valor da pressão exercida num objeto podem ser úteis na manipulação de objetos deformáveis e frágeis. Diversas tecnologias estão disponíveis para a implementação de sensores de tato. Algumas de fácil aplicação industrial e outras disponíveis mais a nível experimental. Borrachas condutoras podem ser colocadas nas pontas da garra do robô de maneira que ao se fazer o contato entre a garra e o objeto a resistência da borracha começa a diminuir com o aumento da pressão. Fazendo-se uma montagem em ponte de Wheatstone, como no caso dos strain gauges, pode-se detectar variações bem pequenas na resistência da borracha o que dará
um valor inversamente proporcional a força exercida pela garra no objeto. A Figura 4.13 mostra uma garra de robô com três dedos desenvolvido pela Universidade de Stanford em conjunto com o JPL da Nasa com a qual é possível determinar a força de contato dos dedos com o objeto e assim controlar o seu movimento.
88
Figura 4.13 –Garra com três dedos de Stanford JPL com sensor de tato.
4.4 - VISÃO ROBÓTICA Visão se mostra como um dos sentidos mais importantes para a interação de um agente (humano ou robótico) com o mundo. Visão computacional, também chamada de entendimento de imagens ou visão de máquinas, descreve a determinação automática da estrutura e propriedades do ambiente tridimensional no qual o agente está inserido, ambiente este possivelmente dinâmico, a partir de uma única ou múltiplas imagens bidimensionais do ambiente. As imagens podem ser monocromáticas ou coloridas, capturadas por uma ou múltiplas câmaras que, por sua vez, podem ser estacionárias ou móveis (NALWA, 1993). A estrutura e propriedades a serem extraídas do ambiente podem ser geométricas (formas, dimensões, localizações de objetos, etc) ou materiais (cores, texturas, etc). Além disso, se o ambiente estiver mudando durante o processo de imageamento, deseja-se também inferir a natureza desta mudança, assim como fazer inferências acerca do futuro. Visão não é uma tarefa simples, uma vez que o processo de formação de imagens consiste num mapeamento muitos-para-um: uma grande variedade de superfícies, com diferentes materiais e condições de iluminação, pode produzir imagens idênticas (MARR, 1982). A abordagem básica adotada neste capítulo consiste em primeiro entender como os estímulos sensoriais são criados pelo ambiente e então questionar: “se os estímulos sensoriais são criados de tal e tal forma pelo ambiente, então como deveria ser o mundo para que produzisse tais estímulos?" (RUSSEL& NORVIG, 1995). De certa forma, pode-se pensar em visão computacional como a tentativa de “desfazer” parcialmente o processo de formação da imagem, dai ser considerado um problema inverso. Infelizmente, não existe uma inversão própria e correta. No entanto, algumas restrições podem ser impostas para resolver satisfatoriamente a ambigüidade inerente ao processo visual. Além disso, o agente não precisa saber “tudo” acerca do ambiente para poder atuar com sucesso. Dependendo da aplicação, somente alguns aspectos tornam-se necessários. Por exemplo, em 89
tarefas de manipulação, as ações de segurar peças, encaixar, inserir, etc. que são realizadas, necessitando somente de informações de forma e localização das peças a serem manipuladas; em tarefas de navegação, ações como encontrar caminho livre, evitar obstáculos, calcular velocidade e orientação, etc. que são necessárias, e assim por diante. Nenhuma destas tarefas requer a determinação da descrição completa do ambiente para ser realizada com sucesso.
4.4.1 - Formação de Imagens O olho humano forma uma imagem invertida da cena em sua retina. A retina, por sua vez, captura a imagem, codifica-a e transmite esta imagem codificada ao cérebro. A câmara de um sistema de visão computacional executa um papel análogo ao do olho no sistema visual humano. A formação de uma imagem ocorre quando um sensor registra radiação que interagiu com objetos físicos (BALLARD&BROWN, 1982). Primeiro estudaremos rapidamente a geometria da formação da imagem. Depois, a relação entre a quantidade de luz que irradia de uma superfície e a quantidade de luz observada na imagem desta superfície. Finalmente, estudaremos o processo de sensoreamento desta imagem, transformando-a em uma representação passível de ser armazenada, processada e analisada por um computador.
4.4.1.1 - Geometria do imageamento O dispositivo de imageamento mais simples existente é a câmara “ pinhole”. Idealmente, esta câmara possui um orifício extremamente pequeno (“pinhole”), por onde entra luz na câmara, formando uma imagem geometricamente invertida na face oposta da câmara. A geometria da formação da imagem numa câmara “pinhole” é bem modelada pela projeção perspectiva. Projeção perspectiva é a projeção de uma entidade tridimensional em uma superfície bidimensional, determinada por retas que passam por um único ponto, chamado centro de projeção. A Figura 4.14 mostra a imagem formada numa câmara “pinhole” e sua correpondente configuração pela projeção perspectiva, com a imagem já representada do mesmo lado da cena, em relação ao centro de projeção. A distância do centro de projeção ao plano de imagem (ou plano focal) é chamada distância focal f. Considere o plano de imagem mostrado na Figura 4.14; um ponto (xc,yc,zc) da cena é mapeado no ponto (x i,yi,0) no plano de imagem. Os pontos x i e yi derivam das seguintes relações: xi/f = xc/(f - zc) ; yi/f = yc/(f - zc) (MARR, 1982).
Imagem
(xc, yc, zc)
y
(xi, yi)
Orifício f Centro de projeção
(a)
x z
Plano de imagem
(b)
Figura 4.14 -(a) Câmara “pinhole” e (b) seu respectivo modelo geométrico pela Projeção Perspectiva.
Para que informações geométricas 3D sejam derivadas das imagens 2D, torna-se necessário que se determine a relação entre a posição de um ponto na cena e a posição em sua imagem. Esta determinação recebe o nome de calibração da câmara. Tipicamente, a calibração da câmara 90
se dá usando um objeto de calibração conhecido, cuja imagem exibe um grande número de pontos distintos, facilmente identificáveis e precisamente localizados como por exemplo, uma grade retilínea planar (BALLARD, BROWN, 1982; SHIRAI 1987).
4.4.1.2 - Radiometria No segmento anterior vimos a relação geométrica entre o ambiente e a imagem. Agora será abordada a relação radiométrica entre eles. O brilho de um ponto p na imagem é proporcional à quantidade de luz direcionada à câmara por uma superfície infinitesimal Sp, cuja projeção seja p. Esta quantidade de luz, por sua vez, depende das propriedades de reflectância de Sp, além da posição e distribuição das fontes de luz. Como as outras superfícies da cena também podem ser fontes indiretas de luz (ao refletir em Sp a luz recebida), suas propriedades de reflectância também afetarão a referida quantidade de luz (RUSSEL, NORVIG, 1995). Assim, a intensidade I(xi,yi) de luz refletida capturada na imagem num determinado instante t (que corresponde ao brilho de p) é dada por: I(x i,yi)=k.a(xc,yc,zc).Φ(n,s,v), onde k é uma constante determinada pelas características da câmara; a(x c,yc,zc) corresponde à intensidade de luz incidente total no ponto da cena (xc,yc,zc) e Φ(n,s,v), à reflectância da superfície em (xc,yc,zc) (MARR, 1982). Uma superfície perfeitamente difusa apresenta o mesmo brilho para um observador, qualquer que seja a direção em que ele esteja; Já numa superfície perfeitamente especular refletirá somente na direção em que os raios refletidos estejam no mesmo plano dos raios incidentes e que satisfaça a condição de que o ângulo de reflexão seja o mesmo que o de incidência. As superfícies reais apresentam uma combinação das propriedades difusa e especular.
4.4.1.3 - Sensoreamento Até o momento foi considerada a relação entre a cena e a imagem formada no plano de imagem, chamada imagem “ótica”. Através do sensoreamento pode-se transformar esta imagem “ótica” em uma imagem “elétrica” (NALWA, 1993). Uma grande variedade de sensores pode ser utilizada nesta tarefa (BALLARD, BROWN, 1982; SHIRAI, 1987). O sensor mais largamente utilizado em visão computacional é uma câmara CCD (“charge coupled device”), que consiste numa matriz de elementos fotossensíveis integrados numa pastilha (“chip”). As câmaras enviam sinal analógico para uma placa digitalizadora de imagens, que converte este sinal para um sinal digital a ser processado. Atualmente, câmaras digitais, que já fornecem o dado digital para o processador, têm se tornado cada vez mais populares. Deve-se também ressaltar que a possibilidade de controle do ambiente onde o sistema de visão computacional (e o agente robótico) irá atuar pode facilitar em muito o processo da visão, permitindo resolver ambigüidades, garantindo imagens de maior qualidade, possibilitando ressaltar atributos de interesse da cena, reduzindo ruídos, simplificando os algoritmos usados para a interpretação, etc. Este controle do ambiente envolve diversos fatores, desde a colocação de adesivos com código de barras em vários lugares, visando auxiliar a tarefa de localização de robôs, até o uso de sensores a laser para medir distâncias. Uma prática bastante difundida em ambientes industriais consiste no uso de luz estruturada, onde o próprio sensor projeta uma estreita faixa de luz nos objetos, para facilitar o problema de determinação de sua forma e podendo, inclusive, facilitar a determinação da distância do objeto ao sensor ("range distance"). Assim, o projetor corta o objeto com um feixe planar de luz. A câmara, posicionada adequadamente, captura a imagem que, no caso, será de informação 91
essencialmente unidimensional, pois conterá somente a estreita faixa de luz deformada segundo a geometria da cena. A figura 4.15 mostra este procedimento.
Figura 4.15 –Técnica de luz estruturada, onde faixas de luz são projetadas num cubo.
O plano de luz pode resultar de um ou daaprojeção uma fenda. Adequando câmara convenientemente, uma vez quelaser somente faixa de através luz devedeser visível, o primeiro casoa (laser) apresenta vantagens, pois o sistema pode operar com uma cena iluminada normalmente, além de conseguir um plano de luz mais estreito. Movendo a faixa de luz (ou movendo o objeto através da faixa), pode-se conseguir uma imagem densa de distâncias. Os "laser range finders" são sensores que incorporam a fonte de laser, o controle da movimentação do feixe de luz, a câmara e todo processamento de imagem necessário para computar um mapa de distâncias dos pontos na imagem (SHIRAI, 1987). Outra maneira de se conseguir um mapa de distâncias é pelo uso de estéreo binocular, semelhante ao do ser humano. Neste modo de aquisição de imagem de distância, as coordenadas dos planos de imagens de duas câmaras estão relacionadas por uma transformação conhecida; identificando-se a projeção de determinado ponto da cena nas duas imagens pode-se determinar, por triangularização, a distância de cada ponto da cena à câmara. Estéreo multiocular atua do mesmo modo, porém fornecendo mais informação para que se determine qual o ponto de uma imagem corresponde a qual ponto da outra imagem (SHARAI, 1987; HORN, 1986; BALLARD, BROWN, 1982). No item anterior a intensidade (brilho) de uma imagem foi mencionada ignorando-se o fato de que a luz visível se apresenta numa faixa de comprimentos de onda λ, variando de 400nm para violeta a 700nm para o vermelho. Assim, é necessário considerar a composição espectral do brilho da imagem1. Denota-se brilho de uma imagem por I(x,y,t,λ), onde (x,y) representa as coordenadas dos pontos no plano da imagem, λ é o comprimento de onda no instante de tempo t. A imagem “elétrica” Iel(x,y) no instante t é dada por: Iel(x,y) = ∫ I(x,y,t,λ).s(λ).dλ , onde s(λ) corresponde à sensibilidade espectral do sensor (dispositivo). No olho humano existem três diferentes tipos de sensores, chamados cones, cada um com uma sensibilidade espectral s( λ) diferente: um para cor vermelha, outro para azul e o terceiro, para verde. As câmaras coloridas tipicamente incorporam estas três diferentes funções de sensibilidade espectral. Neste item os estudos estão restritos a imagens monocromáticas, que são capturadas usando uma única função de sensibilidade espectral (imagens em níveis de cinza).
4.4.2 - Imagem Digital 1
Numa análise mais rigorosa, deve-se considerar não só a composição espectral do brilho da imagem, mas também sua dependência em relação ao tempo (NALWA, 1993). 92
Um sinal que tenha um domínio contínuo e uma faixa de variação contínua é chamado de sinal analógico; já um sinal que tenha um domínio discreto e uma faixa de variação também discreta é chamado de sinal digital. Imagem Digital é uma matriz de inteiros, onde cada inteiro representa o brilho da imagem num tempo discreto e num ponto discreto do plano da imagem (NALWA, 1993). Um ponto desta matriz é denominado pixel. A transformação da imagem elétrica numa imagem digital envolve um processo de amostragem e um de quantização. A amostragem discretiza o domínio da função imagem, fornecendo a cada ponto discreto o valor da função naquele ponto. A quantização discretiza a faixa de variação da função, mapeando o valor da função em cada ponto a um valor dentre vários valores discretos. Tipicamente os valores discretos assumidos pelos pontos numa imagem monocromática variam de 0 (preto) a 255 (branco). A Figura 4.16 mostra uma imagem e sua matriz correspondente.
193 193 193 178 161 161 193 193 193 206 206 206 206 206 206 193 161 178 193 206 206 231 206 206 193 161 161 148 148 148 190 255 248 164 164 85 85 85 133 193 161 206 206 148 148 150 160 170 180 190 200 210 220 230 240 250 100 110 120 130 50 50 50 89 89 213 213 213 161 206 178 100 100 100 100 14 14 77 99 20 206 206 161 178 193 244 133 123 118 118 115 115 198 172 172 172 206 178 228 255 177 138 155 142 185 219 248 248 196 194 196 174 174 147 139 133 98 74 98 98 199 176 218 217 189 156 145 154 110 123 177 64 39 110 136 155 123 144 189 194 216 248 233 233 195 163 138 129 110 110
Figura 4.16 –Imagem digital e sua matriz correspondente.
4.4.3 - Processamento de imagens digitais O processo de imageamento introduz diversos ruídos e deformações na informação contida nas imagens digitais. No entanto, esta informação não está completamente perdida devida à grande redundância espacial existente, isto é, pixels vizinhos numa imagem apresentam os mesmos (ou quase os mesmos) parâmetros físicos. Um grande conjunto de técnicas exploram esta redundância para recuperar a informação contida na imagem. Estas técnicas executam transformações na imagem, procurando extrair parâmetros intrínsecos tais como descontinuidades de superfícies, distância, orientação de superfícies, entre outros. Um dos objetivos mais comuns no processamento de imagens consiste em eliminar ruídos e extrair as bordas (“edges”) contidas numa imagem. Bordas são curvas no plano de imagem através das quais existe uma “significante” mudança no brilho (RUSSEL, NORVIG, 1995). O interesse nas bordas de uma imagem consiste no fato de que elas correspondem a importantes contornos da cena. A Figura 4.17 mostra descontinuidades na cena que causam bordas na imagem: descontinuidades de reflectância, de profundidade, de orientação da superfície e de iluminação (sombras).
3 1 2 4
1.
Descontinuidade de profundidade
2.
Descontinuidade de reflectância
3.
Descontinuidade de orientação
4.
Descontinuidade de iluminação
93
Figura 4.17– Diferentes tipos de bordas numa imagem.
Basicamente, o conjunto de operadores que podem ser aplicados numa imagem dividem-se em três classes: operadores pontuais, locais e globais. A seguir serão dados alguns exemplos de cada classe.
4.4.3.1 - Operadores Pontuais Operadores pontuais são aqueles nos quais os valores resultantes de brilho num pixel dependem somente de seu valor anterior. Exemplos deste operador incluem operações aritméticas entre imagens, limiarização e manipulações do histograma da imagem. Histograma de uma imagem monocromática (em níveis de cinza) é uma função h(k) que fornece o número total de pixels que possuem um valor k de cinza (valor do brilho), conforme exemplificado na Figura 4.18.
Histograma 60000
ls 50000 e ix 40000 P e d 30000 o r e 20000 m ú N10000 0 1
3
5
7
9
1 1
3 1
5 1
7 1
9 1
1 2
3 2
5 2
Níveis de Cinza
Figura 4.18- Exemplo de histograma de uma imagem monocromática. Limiarização é um dos processos mais simples de dividir uma imagem em regiões. A binarização é o caso particular da limiarização, onde a imagem é dividida em duas regiões (0 ou 1, branco ou preto), de acordo com um valor de limiar L; assim, pixels com valor de cinza acima de L recebem valor 1 (ou branco) e recebem 0 (ou preto) no caso contrário. Tipicamente, o valor
de limiar é estabelecido a partir da análise do histograma da imagem: se o objeto de interesse apresentar grande contraste com o fundo, o histograma se configurará bimodal e o valor de cinza para o limiar pode ser estabelecido no ponto de mínimo entre os dois máximos do histograma. A Figura 4.19 apresenta exemplos de imagens que foram submetidas ao processo de limiarização, com diferentes valores de L.
(a)
(b)
(c)
Figura 4.19 –Exemplos de limiarização, transformando uma imagem monocromática numa imagem binária, através do uso de diferentes valores de limiar: (a) imagem srcinal; (b) imagem srcinal após aplicação de limiar no nível de cinza 50 e (c) imagem srcinal após aplicação de limiar no nível de cinza 180.
94
Manipulações do histograma incluem esticamento do histograma, equalização do histograma, entre outros. O esticamento do histograma realiza uma operação de normalização onde ajusta-se os valores mínimos e máximos dos níveis de cinza existentes numa imagem para os novos valores mínimos e máximos estipulados para o histograma. A equalização do histograma visa aproximar o histograma cumulativo a uma reta (ou qualquer função que se queira), para adquirir distribuição uniforme de níveis de cinza. Estas operações visam melhorar o contraste na imagem, conforme exemplifica a Figura 4.20. Histograma 60000
ls 50000 e ix 40000 P e d 30000 o r e 20000 m ú N10000 0 1
3
5
7
9
1 1
3 1
5 1
7 1
9 1
1 2
3 2
5 2
Níveis de Cinza
Figura 4.20 –Equalizaçâo do histograma da imagem da Figura 4.16.
4.4.3.2 - Operadores Locais Operadores locais são aqueles que se utilizam de uma janela (ou máscara) envolvendo o pixel de interesse e o valor resultante deste pixel é função dos valores do referido pixel e seus vizinhos inclusos na janela. Os operadores locais podem ser operadores lineares ou não lineares. Uma operação muito importante em processamento de imagens é a convolução. Convolução, denotada por ∗, é a operação que computa a integral ponderada (ou soma, no caso de funções discretas) de uma função em relação a outra função que primeiramente foi refletida em relação à srcem e então deslocada. No caso de funções discretas bidimensionais, como imagens digitais, vem: H(m,n) ∗ G(m,n) = ∑i ∑j H(i,j) G(m-i,n-j) = ∑i ∑j H(m-i,n-j) G(i,j), com i e j variando dentro dos limites da imagem.
4.4.3.3 - Operadores Locais Lineares Exemploslaplaciano. típicos de operadores locais lineares são o operador de média, operador gradiente e o operador O operador de média suaviza a imagem, pois substitui o valor de cada pixel pelo valor da média dos valores dos pixels inclusos na janela envolvente. Este operador pode ser conseguido através da convolução discreta da imagem srcinal por uma máscara de valores 1. Na operação de convolução, a máscara é colocada sobre cada pixel (excluindo os pixels da borda da imagem por apresentarem problemas de vizinhança) e a operação de soma dos produtos de cada pixel (pixel atual e seus vizinhos incluídos na máscara) pelo correspondente ponto da máscara é feita; o resultado desta operação será o novo valor do pixel. Assim, por exemplo, o novo valor do pixel I(1,1) será: 1x1+1x2+1x3+1x1+1x1+1x2+1x2+1x3+1x10 = 25 (figura 4.21). O operador gradiente e o laplaciano, por sua vez, têm o efeito oposto ao de média, já que acentuam as diferenças dos valores dos pixels, isto é, as descontinuidades dos valores de cinza. O gradiente resulta em dois componentes: (i) magnitude G = (Dx2 + Dy2)1/2, e (ii) orientação φ = tan-1(Dy/Dx), com Dx≠0. Uma aproximação muito usada é considerar G = Dx + Dy. A Figura 4.21 apresenta um exemplo do operador média e do laplaciano, usando máscaras 3x3. Já a Figura 4.22 mostra algumas máscaras muito usadas para o operador gradiente: o operador de Robert, o operador Prewitt e o operador Sobel. 95
Média 0 0 1 2 3 4
1 1 2 1 1
1
2
3
4
2 1 3 1 1
3 2 10 3 2
1 2 2 3 1
1 1 2 1 1
1 1 1
*
1 1 1
25 26 24 24 27 26 24 26 27
1 1 1
Máscaras -4 -2 -4
0 -1 0 -1 4 -1 0 -1 0
*
-8 2 30 -9 -4 -5
Laplace Figura 4.21 –Exemplo de operadores lineares: média e laplaciano utilizando máscaras 3x3.
0 -1 1 0
1 1 1
-1 0 0 1
(a)
Dx
0 0 0 Dx
Dy
-1 -1 -1
-1 -1 -1 0 0 0 1 1 1
(b)
Dy
1 2 1
0 0 0
-1 -2 -1
-1 -2 -1 0 0 0 1 2 1
(c)
Dx
Dx
Figura 4.22– Operadores gradientes: máscaras de (a) Robert; (b) Prewitt e (c) Sobel.
4.4.3.4 - Operadores Locais Não-lineares Exemplos de operadores locais não-lineares são o operador Min, operador Max e o operador mediano. O operador Min é usado para eliminar picos de altos valores de brilho, sem suavizar a imagem inteira. Sua aplicação resulta também num aumento de manchas de baixos valores de brilho. Ele consiste em colocar uma janela ao redor de cada pixel e analisar todos os valores contidos na janela, buscando o mínimo valor, que será adotado como novo valor do pixel central da janela. O operador Max é o oposto do Min. Ele é usado para eliminar pequenas manchas de baixos valoresvalor, de cinza e aumenta os picos como de altos valores cinza. Ele busca, dentro janela, maior o qual será designado novo valordepara o pixel analisado. A da Figura 4.23o exemplifica a aplicação dos operadores Min e Max (as bordas da imagem foram excluídas). O operador mediano une as funções de Min e Max, evitando suas desvantagens, porém com um acréscimo considerável no custo computacional. Consiste em ordenar os valores contidos na janela ao redor do pixel analisado, assinalando como novo valor do pixel o valor mediano da lista ordenada resultante, conforme exemplifica a Figura 4.24. 0 0 1 2 3 4
1 1 2 1 6
1 2 1 3 1 1
2 3 2 2 3 2
3
4
3 5 2 3 2 2 3 3 1 10
Imagem I(x,y)
Min
3x3
1 1 1
1 1 1
2 2 1
3 3 6
3 3 3
5 3 10
Janelas
Max (3x3)
96
(a)
(b)
(c)
Figura 4.23 – Exemplo dos operadores não-lineares Min e Max para janela 3x3 e sua aplicação: (a) imagem srcinal; (b) após operador Min e (c) após operador Max.
5 5 3
4 6 4
5 10 5
5 4
5 5
6 10 3 4 5
ordenação
mediana 5
3 4 4 5 5 5 5 6 10
Figura 4.24 –Exemplo do operador mediano para janela 3x3.
4.4.4 - Operadores Globais Um exemplo típico de operador global é a Transformada de Fourier. A imagem é uma função que varia espacialmente. Deste modo, pode-se aplicar a transformada de Fourier (discreta) para que a imagem de intensidades seja transportada para o domínio da freqüência espacial, sendo que baixas freqüências espaciais correspondem a uma imagem com o nível de cinza variando suavemente e altas frequências espaciais, a variações bruscas no nível de cinza da imagem. Diversas filtragens e manipulações na imagem podem ser feitas no domínio da freqüência espacial (GONZALEZ, WOODS, 1993; BALLARD, BROWN, 1982).
4.4.5 - Segmentação de Imagens Os operadores apresentados no item anterior visam basicamente eliminar ruídos e ressaltar bordas na imagem. Combinando operações de suavização da imagem (aplicando operador de média, por exemplo) para reduzir ruídos e operações de diferenciação (operador laplaciano, por exemplo), pode-se evidenciar as bordas numa imagem. Bordas correspondem a linhas divisórias entre regiões homogêneas numa imagem (regiões com pouca variação no nível de cinza), as quais geralmente correspondem a superfícies de interesse na cena. A determinação de regiões homogêneas numa imagem é denominada segmentação da imagem e constitui, portanto, um passo muito importante na direção da interpretação semântica da cena. Infelizmente, o uso exclusivo de detecção de bordas pode não ser adequado à segmentação da imagem por dois motivos (RUSSEL, NORVIG, 1995): (i) alguma parte da borda correspondente a um contorno de superfície pode apresentar baixo contraste e não ser detectada; (ii) muitas bordas detectadas podem ser ruídos, representar sombras ou marcas sem importância nas superfícies. Desta forma, métodos complementares de segmentação tornam-se necessários.
97
Basicamente, tem-se duas abordagens para a segmentação: (i) por análise das descontinuidades (nos níveis de cinza) existentes na imagem – que correspondem à detecção de bordas e (ii) por análise das similaridades entre elementos próximos.
Um ponto muito importante no processo de segmentação consiste na estrutura de dados usada para representar os grupos homogêneos determinados na imagem. A definição destas estruturas está intimamente ligada à abordagem adotada para a segmentação.
4.4.5.1 - Segmentação por Descontinuidade Na segmentação por descontinuidade, a imagem é particionada segundo variações bruscas nos valores dos pixels. No item anterior foram mostrados alguns operadores que podem evidenciar pixels que pertencem às bordas. No entanto, estes pixels precisam ser adequadamente associados (conectados) e representados de modo eficiente, visando não só descrever a imagem em termos de suas bordas, mas também facilitar o processo de correspondência entre as estruturas extraídas da imagem e as armazenadas em modelos dos objetos do domínio. O método de conexão de Robert aplica-se na imagem resultante após a aplicação do operador de Robert (veja Figura 4.22). O primeiro passo consiste em selecionar candidatos através da análise de janelas 4x4, selecionando os pixels de maior magnitude do gradiente. A seguir, para cada candidato, uma região é analisada para determinar a direção (do gradiente) predominante; caso não exista predominância, o candidato é descartado. Os candidatos são conectados se estiverem dentro da região de análise (4x4) e se a diferença entre suas direções não passar de um limite preestabelecido. Outro método muito usado é a Transformada de Hough, usada quando não se sabe a localização de uma borda, mas sua forma pode ser descrita por uma curva paramétrica (aqui consideraremos somente retas). A vantagem do método é que o resultado não é muito afetado com ruídos e quebras nas curvas. Aplica-se o método numa imagem de pontos candidatos (por exemplo, imagem diferenciada). A idéia básica consiste em que um ponto (x’,y’) no espaço da imagem corresponde à reta c=-mx’+y’ no espaço paramétrico. Um segundo ponto (x”,y”) na imagem, pertencente a uma reta (borda) que passa também por (x’,y’), corresponde a outra reta c=-mx”+y” no espaço paramétrico. Como (x’,y’) e (x”,y”) pertencem à mesma reta na imagem, as retas c=-mx’+y’ e c=-mx”+y” se cruzarão no ponto (m’,c’) no espaço paramétrico, conforme exemplifica a Figura 4.25. A detecção de retas se dá da seguinte forma: o espaço de parâmetros é discretizado, formando uma matriz acumuladora A(c,m), inicialmente zerada. Para cada ponto candidato de borda (x,y) da imagem, fazer A(c,m) = A(c,m)+1, com c e m satisfazendo c=-mx+y (valores discretos). No final, os pontos de máximos em A representarão pontos colineares na imagem, sendo que o valor acumulado em A no ponto de máximo indica quantos pontos da imagem compõem a referida reta.
y
y= m’x+c’
c
c= -mx’+y’
(x”,y”) (x’,y’)
(m’,c’) x
Espaço imagem
c= -mx”+y”
Espaço paramétrico 98
m
Figura 4.25 –Transformada de Hough: (x’,y’) no espaço imagem corresponde a c=-mx’+y’ no espaço paramétrico. Da mesma forma, (x”,y”) também tem uma reta correspondente. Se (x’,y’) e (x”,y”) pertencem à mesma reta na imagem, suas retas correspondentes no espaço paramétrico irão se cruzar em (m’,c’) e a reta na imagem será y= m'x+c'.
Um terceiro método usado para conectar pixels de bordas é um seguidor de bordas por busca em grafo. Um grafo é composto por nós {n i} e arcos . Custos são associados aos arcos. A busca por uma borda consiste na busca por um caminho de menor custo entre dois nós de um grafo. Na imagem gradiente, associa-se a cada arco o custo correspondente à magnitude do gradiente e os nós do grafo, à direção do gradiente. Coloca-se restrições quanto a variações da direção do gradiente em pontos adjacentes (por exemplo, ser menor que π/2). Pode-se usar busca heurística para decidir o caminho.
4.4.5.2 - Segmentação por Similaridade A abordagem por similaridade para segmentação é dual da abordagem anterior. Como nenhuma apresenta resultados perfeitos, elas podem cooperar entre si para alcançar resultados melhores. A abordagem por similaridade consiste em agregar pixels com características similares (no caso, brilho) em regiões. Um ponto x i em uma região R está conectado a x j se existir uma seqüência {xi, …, xj} tal que xk e xk+1 são conectados e todos os pontos estão em R. R é uma região conectada se todos os pontos x em R formarem pares de pontos conectados. Uma imagem será a união de todas as regiões I = ∪ Rk. As regiões são disjuntas, isto é, Ri∩Rj=0, com i≠j. O método de limiarização descrito anteriormente (item 4.4.3.1) é provavelmente o mais simples nesta categoria. Inicialmente, pode-se suavizar a imagem. Depois, computa-se o histograma. Determina-se picos e vales. Seleciona-se o pico mais alto, determinando dois valores limites (nos vales anterior e posterior). Divide-se a imagem em subregiões, com base nestes valores. Repetir o procedimento para cada subregião, até que não existam mais picos significativos no histograma. O método de dividir-e-agregar (“split-and-merge”) consiste em dividir em quatro regiões disjuntas qualquer região Ri (inicialmente, a imagem que pode ter sido anteriormente suavizada) onde o critério de homogeneidade não for satisfeito H(Ri)=FALSE. Agregar quaisquer regiões adjacentes Ri e Rj para as quais H(R i∪Rj)=TRUE. Repetir procedimento até que não seja mais possível fazer divisões nem agregações. A Figura 4.26 ilustra este procedimento.
Figura 4.26 –Segmentação por similaridade usando o método de dividir-e-agregar.
O método de rotulação é também um método bastante popular de segmentação. Considere uma imagem binária (todos os pixels ou são pretos, ou brancos, que representaremos 0 ou 1), onde o fundo=0 e objetos=1. Rastreando a imagem de cima para baixo, da esquerda para a direita, e considerando o pixel atualmente analisado como x a, pixel superior como xs e pixel à esquerda como xe, e f(x) como o brilho do pixel, vem: {cor=1;
99
Se f(xa) = 0, continue (é fundo, portanto, não interessa); Senão { (é objeto, portanto, interessa) se (f(xs)=1 && f(xe)=0), então rótulo(xa)=rótulo(xs); se (f(xs)=0 && f(xe)=1), então rótulo(xa)=rótulo(xe); se (f(xs)=1 && f(xe)=1), então {rótulo(xa)=rótulo(xe); se rótulo(xe)
≠
rótulo(xs), então rótulo(xe)
≡
rótulo(xs)};
se (f(xs)=0 && f(xe)=0), então {rótulo(xa)=cor; cor=cor+1}}}
A Figura 4.27 exemplifica a aplicação deste algoritmo de rotulação numa imagem simples. 0 0 0 0 0 0 0 0 0
0 1 1 0 0 1 1 0 0
0 1 1 1 0 1 1 0 0
0 0 1 1 0 0 0 0 0
0 0 1 1 0 0 0 1 0
0 1 1 1 0 1 1 1 0
0 1 1 0 0 1 1 1 0
0 0 0 0 0 0 0 0 0
Imagem binária srcinal
0 0 0 0 0 0 0 0 0 1 1 0 0 2 2 0 0 0 0 0 0 0 0
1 0 0 3 3 0 0
1 1 0 3 3 0 0
1 1 0 0 0 0 0
1 1 0 0 0 5 0
1 1 0 4 4 5 0
1 0 0 4 4 5 0
0 0 0 0 0 0 0
Lista de equivalências:
Rótulo 1 ≡ Rótulo 2 Rótulo 5 ≡ Rótulo 4
Imagem rotulada
Figura 4.27 –Exemplo simples de rotulação.
4.4.6 - Reconhecimento de Objetos Reconhecimento consiste em identificar e determinar a posição e orientação de cada objeto na cena em relação à câmara e, com as informações adquiridas na fase de calibração, determinar sua localização em relação a um sistema de coordenadas do ambiente (ou do robô), para tarefas de manipulação, por exemplo. No item anterior algumas técnicas de segmentação de imagens foram descritas. As regiões extraídas da imagem correspondem a objetos de interesse. Assim, propriedades como área da região, perímetro, compactividade, centróide, distâncias mínima e máxima, entre outras, são importantes na identificação e na determinação da posição e orientação dos objetos. A área A de uma região consiste na somatória dos pixels de um mesmo rótulo. Para comparar a área da região com a área do objeto imageado num determinado posicionamemento, deve-se ter conhecimento da calibração da câmara, que dá a relação (unidade de medida da imagem)/(unidade de medida real), além de relacionar a posição da câmara com a posição do objeto na cena. O perímetro P pode ser calculado pela somatória dos pixels pertencentes à borda de interesse. A compactividade C de uma região é definida como sendo a relação: C = P2/4πA. O centróide, que no caso corresponde ao centro de área, é usado para determinar a posição dos objetos e é dado por: x c = (∑x∑y y f(x,y))/A; yc = (∑x∑y x f(x,y))/A, sendo A a área, e as somatórias aplicadas à região de interesse. A Figura 4.28 ilustra este procedimento numa imagem 10x10, com quina superior esquerda sendo (0,0). A região de interesse encontra-se de (1,2) a (5,8). Área = 35 xc = (7.1+7.2+7.3+7.4+7.5)/35 = 3 100
yc = (5.2+5.3+5.4+5.5+5.6+5.7+5.8)/35 = 5 Centróide (xc, yc) = (3,5) Figura 4.28 –Cálculo do centro de área de uma região.
As maiores e menores distâncias do centróide às bordas são determinadas percorrendo o perímetro e calculando as distâncias euclidianas do ponto da borda ao centróide, armazenando a maior Dmax e a menor D min distância e as respectivas coordenadas dos pontos da borda. A excentricidade ou alongamento de uma região é definida por E x = Dmax / Dmin. Muitos outros atributos podem ser extraídos das regiões, consulte (HORN, 1986; MARR, 1982; BALLARD, BROWN, 1982; GONZALEZ, WOODS, 1993) para uma revisão mais detalhada. Após a extração dos atributos da imagem, o próximo passo consiste em corresponder os atributos e informações extraídos da imagem àqueles previamente armazenados como modelos, numa fase de treinamento do sistema de visão. A correspondência entre dados extraídos e modelos pode se dar simplesmente através do uso de um classificador estatístico, permitindo certas variações estatísticas no processo de comparação. Neste caso, o conjunto de atributos (do modelo e o extraído da imagem) deve conter elementos em número e importância significativa para identificar e localizar corretamente cada objeto, evitando falsos positivos (classificando um objeto como sendo de uma classe incorreta diz que é um parafuso quando na verdade trata-se de uma caneta, por exemplo) e falsos negativos (negando a classe correta na classificação do objeto - diz que não é um parafuso, quando na verdade trata-se de um parafuso). Pode-se também realizar um reconhecedor sintático de configuração, onde relações estruturais são utilizadas, tais como relações entre atributos e/ou segmentos de bordas. A fase de treinamento dos sistemas de visão baseados em modelos normalmente se dá através de treinamento supervisionado, onde objetos conhecidos são apresentados ao sistema, que extrai automaticamente os atributos e relações e armazena-os em modelos de cada objeto. Estes modelos também podem ser fornecidos pelo usuário. No entanto, o melhor seria que o sistema os extraísse automaticamente, para que se tenha uma garantia maior de que os mesmos procedimentos serão executados para determinar dados dos modelos e da imagem da cena, durante a fase de execução. O treinamento do sistema de visão deve ser realizado sob condições o mais próximo possível das condições de operação.
4.4.7 - Aplicações de Visão Robótica As aplicações de visão em robótica incluem: inspeção, classificação, navegação, reconhecimento e manipulação (BALLARD, BROWN, 1982; GROOVER et al., 1989; HORN, 1986; NALWA, 1993; RUSSEL, NORVIG, 1995; SHIRAI, 1987). Inspeção constitui uma das aplicações mais comuns de visão computacional na indústria, sendo que muitas delas não envolvem robôs. Uma aplicação típica consiste na seleção (aceite ou rejeição) de peças produzidas na linha (GROOVER et al., 1989). O uso de visão computacional permite inspeção automática de toda as peças da linha (100% das peças), em alta velocidade, garantindo qualidade constante. Assim, diversos tipos de inspeções são realizadas, tais como inspeção de placas de circuito impresso (conferindo se furos, filetes, etc estão dentro das especificações), produtos agrícolas (inspeção de frutas, cereais, vegetais), peças (verificando se estão dentro das especificações, com a furação correta), indústria farmacêutica (conferindo embalagens e rótulos, se pílulas estão nos lugares corretos das cartelas, etc.) e uma infinidade de outras aplicações. 101
Tarefas de classificação têm por objetivo identificar e classificar objetos, e não inspecioná-los, isto é, os objetos não estão sendo aceitos ou recusados, mas sim associados a uma determinada classe ou rótulo. Assim, peças são separadas em categorias pré-determinadas (classes). A separação é realizada em função de sua identificação, baseada principalmente em sua forma ou em atributos específicos dos objetos de cada classe. Esta classificação normalmente é seguida por algum processo decisório e ações realizadas por robôs. Navegação de robôs é uma aplicação que pode ser muito auxiliada por visão computacional. Os Veículos Autonomamente Guiados - AGVs (sigla do inglês "Autonomously Guided Vehicles") movem-se em um ambiente e precisam evitar colisões, descobrir onde estão os obstáculos, onde estão os caminhos livres disponíveis, desviar de obstáculos, localizar-se, calcular velocidade e orientação (sua própria ou de possíveis obstáculos móveis), entre outras. Normalmente, visão estereoscópica é utilizada nesta aplicação para fornecer informações de distância dos objetos ao AGV. Em tarefas de montagem ou manufatura, peças a serem manipuladas podem chegar em posições pré-definidas em uma esteira transportadora em movimento ou numa bandeja. A visão seria usada para determinar a chegada da peça e, eventualmente, identificá-la, visando dirigir a ação de um manipulador que irá agarrar a peça e colocá-la na posição adequada. No entanto, para uma maior flexibilidade na aplicação, peças diferentes podem ser fornecidas às tarefas de montagem ou manufatura, sem restrição alguma quanto a seus posicionamentos. Assim, torna-se necessária a execução de um reconhecimento de objetos pelo sistema de visão. O reconhecimento envolve não somente a identificação dos objetos na cena, mas também a determinação de suas respectivas posições e orientações. Tarefas de montagem e manufatura por robôs envolve manipulação de peças, incluindo ações tais como: segurar peças, inserir, encaixar, etc. Assim, o reconhecimento de objetos pode ser usado para adquirir informações necessárias ao robô, referentes à forma e posição das peças a serem manipuladas. Além disso, o sistema de visão pode fornecer informações de realimentação à tarefa de manipulação, tais como: está se aproximando, está desencaixando, etc. A Figura 4.29 mostra a execução de uma tarefa de manipulação na célula de montagem da Escola Politécnica da Universidade de São Paulo. Esta célula é composta por dois robôs Mitsubishi Melfa ME-RD1, duas micro-câmaras SONY (colocadas nas garras dos manipuladores), uma câmara colorida e placas digitalizadoras de imagens, além de computadores e estações de trabalho. Para tarefas de manipulação, o sistema total (visão e controle do manipulador) são treinados para a geração de modelos internos das diferentes peças, em diferentes posições (para o reconhecimento visual) e também para a especificação da melhor posição de agarramento de cada peça em particular. Na fase de execução do sistema, a visão computacional reconhece cada uma das peças depositadas na área de trabalho, fornecendo as informações necessárias para direcionar a ação do manipulador (RILLO et al., 1992; REALI, 1994).
102
Figura 4.29 –Montagem feita por manipuladores guiados por visão computacional, na célula de montagem da Escola Politécnica da Universidade de São Paulo.
4.5 - CONCLUSÃO Este capítulo mostrou que os sensores possibilitam a extração de informações perceptuais relevantes para a execução de tarefas, permitindo a interação dos robôs no ambiente. Existem diversos tipos de sensores, tanto internos quanto externos, incluindo sensores de posição, velocidade, aceleração, força, presença, distância, tato, visão. O uso de visão robótica tem sido muito difundido nos últimos anos, acrescentando autonomia aos robôs, além de flexibilização na sua atuação e nas tarefas a serem executadas, nas mais diversas aplicações. A inserção de uma maior autonomia nos robôs permite que novas aplicações possam ser vislumbradas, mostrando grande potencial de exploração do uso de robôs em ambientes diferentes, desafiadores, distantes e hostis.
4.6 - REFERÊNCIAS BALLARD, D. H., BROWN, C. M., Computer Vision, Prentice-Hall, Inc., 1 ed., New York ?, 1982. DU BUF, J. M. H., KARDAN, SPANN, "Texture Feature Performance for Image Segmentation”, Pattern RecognitionM., ; v. 23, editoraM., ?, local ???, 1990. GONZALEZ, R. C., WOODS, R. E., Digital Image Processing, Addison Wesley, New York ?, 1992. GROOVER, M. P., WEISS, M., NAGEL, R.N., ODREY, N. G., Robótica: tecnologia e programação, Tradução de D. M. Savatovsky, Editora McGraw-Hill Ltda, São Paulo, 1989. HORN, B. K. P., Robot Vision, MIT Press, Massachusetts, 1986. MARR, D., Vision, Freeman, San Francisco, USA, 1982. NALWA, V. S. A., Guided Tour of Computer Vision, AT&T, 1993. REALI C. Rillo, Anna H., “RECTRI: um sistema de reconhecimento 3D baseado em uma hierarquia de estratégias”, In: Anais do 2º Simpósio Brasileiro de Automação Inteligente - 2o. SBAI, Curitiba, pp.1-6, 1995. RILLO, M., RILLO, A. H. R. C., COSTA, L. A. R., "LSI Assembly cell", In: Proceedings of 7th IFAC/ IFIP/ IFORS/ IMACS/ ISPE Symposium on Information Control Problems in Manufacturing Technology - INCOM 92, May 25-28, 1992, Toronto, Canada, 1992.
103
RUSSEL, S., NORVIG, P., Artificial Intelligence: a modern approach, Prentice-Hall Inc., London, 1995. SHIRAI, Y., Three-Dimensional Computer Vision , Springer-Verlag, Heidelberg, ed?,1987. TSAI, R. Y., “An efficient and accurate camera calibration technique for 3D machine vision”, In: Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition - CVPR’86, Florida. pp. 364-374, 1986.
WILKINSON, S., GUANIO, D., “Development of a Spectrometric Citrus Odor Sensor for Frugivorous Robot”, In: Proceedings of the IASTED International Conference on Robotics and Manufacturing, p. 252-255, Banff, Canadá; 1998.
104
CAPÍTULO 5 AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIS Raul Guenther e Edson Roberto De Pieri
5.1 - INTRODUÇÃO A avaliação de desempenho de um robô industrial tem como objetivo verificar a capacidade do robô desenvolver as funções para as quais foi construído. Em grande parte os robôs industriais são máquinas construídas para movimentar materiais, peças, ferramentas e dispositivos. Com uma avaliação de desempenho pretende-se ter uma medida da eficácia do robô na realização desses movimentos. Neste capítulo, após definir os parâmetros utilizados para quantificar a eficácia com que um robô executa uma tarefa, destaca-se a importância e a utilização da avaliação de desempenho, descreve-se as características para esta avaliação estabelecidas em normas internacionais, as condições de teste normalizadas e apresenta-se uma orientação para a seleção das características de desempenho a serem testadas para algumas aplicações dos robôs. Adicionalmente, descreve-se os procedimentos para a realização de testes comparativos entre robôs diferentes e indica-se os métodos de medição recomendados pelas normas para a avaliação de desempenho. Uma medida da eficácia com que um robô realiza os movimentos inerentes a uma tarefa é a exatidão com que esses movimentos são realizados. Como os robôs industriais desenvolvem movimentos repetitivos outra medida importante é sua repetitividade, ou seja, sua capacidade de repetir o mesmo movimento. Além disso, o comportamento do robô durante seus movimentos, ou seja, seu desempenho dinâmico, também é uma informação importante para avaliar sua eficácia na execução de uma tarefa. Em vista disso, pode-se dizer que a avaliação de desempenho de um robô industrial é a verificação da sua exatidão, da sua repetitividade e de seu desempenho dinâmico no desenvolvimento de uma tarefa. A exatidão, a repetitividade e o desempenho dinâmico de um robô determinam se ele é adequado à execução de uma tarefa. Ou seja, através destes parâmetros, obtidos na avaliação de desempenho, pode-se verificar a adequação de um robô para a realização de uma tarefa industrial. Além disso, comparando os respectivos desempenhos pode-se selecionar o robô mais apropriado para uma tarefa. A avaliação de desempenho pode auxiliar ainda na escolha entre robôs de diferentes fabricantes, sempre que é possível comparar as avaliações realizadas pelos fabricantes.
105
Avaliar o desempenho de um robô é importante também na sua aceitação em um ambiente industrial. Escolhido a partir das exigências da tarefa e das especificações do fabricante, é fundamental que no recebimento do robô essas especificações sejam avaliadas. Além disso, durante o funcionamento do robô podem ocorrer desgastes que alteram suas características. Por isso avaliações de desempenho ao longo do tempo podem assegurar que o funcionamento do robô continua adequado para a realização de uma determinada tarefa. E mais, dificuldades verificadas na avaliação de desempenho podem facilitar a manutenção. A exatidão, a repetitividade e o desempenho dinâmico do robô são definidas a partir da interface mecânica existente na extremidade do robô, onde são fixadas as ferramentas e os dispositivos empregados na execução das tarefas (veja figura 5.1-b). A posição desta interface geralmente é dada em termos de três coordenadas cartesianas e sua orientação através de três ângulos. De acordo com a norma ISO 9787 a representação da orientação da extremidade do robô é feita através dos ângulos “a”, “b” e “c”, respectivamente em torno dos eixos “x”, “y” e “z”, cujo sentido positivo está indicado na figura 5.1-a.
(a)
(b)
Figura 5.1– (a) Ângulos que representam a orientação; (b) Sistemas de coordenadas
O conjunto formado pelas três coordenadas cartesianas e pelos três ângulos é definido como postura. A figura 5.1-b mostra os sistemas de coordenadas fixados na base do robô (x 1, y 1, z 1) e na interface mecânica (xm, ym, zm) de acordo com a norma ISO 9787. Neste caso a postura da interface mecânica é formada pelas três coordenadas cartesianas da srcem do sistema (x m, ym, zm) em relação ao sistema da base (x1, y1, z1), e pelos três ângulos em torno dos eixos x 1, y1, e z 1 que determinam a orientação do sistema (x m, ym, zm). A avaliação de desempenho é uma medida da eficácia com que o robô realiza tarefas com as ferramentas fixadas à sua interface mecânica. Por isso, essa avaliação é feita em relação a um ponto de medição, colocado a uma distância da interface mecânica para levar em conta as dimensões da ferramenta (veja figura 5.2). Nesse ponto de medição é fixado um sistema de coordenadas cuja postura é o foco da avaliação de desempenho do robô. A postura do ponto de medição é o resultado da combinação das posições de suas juntas. Por isso a exatidão, a repetitividade e o desempenho dinâmico em uma dada postura são, respectivamente, combinações da exatidão, da repetitividade e do desempenho dinâmico de cada uma de suas juntas. A influência de cada junta nessa combinação varia ao longo do espaço de 106
trabalho do robô. Devido a isso, a exatidão, a repetitividade e o desempenho dinâmico de um robô industrial variam dentro do seu espaço de trabalho. As características de desempenho também variam com a velocidade e com carga aplicada na interface mecânica do robô. Por isso, para avaliar o desempenho de um robô e compará-lo com o desempenho de outro é preciso conhecer as condições de teste utilizadas na avaliação de cada uma das características. Existem fabricantes que desenvolveram condições de teste próprias. Há outros que adotam testes definidos nas normas americanas, estabelecidas pelo American National Standard Institute (ANSI). Outros empregam a norma internacional estabelecida pela International Standard Organization (ISO). Os resultados variam muito de uma norma para outra porque as condições de teste são diferentes e porque as fórmulas para calcular os resultados são diferentes. Para os mesmos dados de postura, por exemplo, as fórmulas empregadas nas normas americanas (ANSI) dão como resultado uma exatidão maior do que as da ISO. Já a repetitividade calculada segundo a ANSI é sempre menor do que a calculada de acordo com a ISO. As normas americanas (ANSI) são voltadas principalmente à comparação de desempenho entre robôs de diferentes fabricantes. Compreendem dois volumes: a R15.05-1, que define métodos para avaliar o desempenho estático dos robôs industriais, e a R15.05-2, que estabelece métodos para avaliar o desempenho dinâmico. Em nosso país, a Associação Brasileira de Normas Técnicas adota as normas ISO, por isso apresentam-se aqui mais detalhadamente os testes recomendados por essa instituição. A ISO estabelece que a avaliação de desempenho deve ser realizada de acordo com a norma ISO 9283:1998 (Second edition) – “Manipulating Industrial Robots – Performance Criteria and Related Methods”. Os testes descritos nesta norma internacional permitem a avaliação de desempenho de robôs individuais e a comparação do desempenho entre robôs diferentes. Segundo a norma ISO 9283:1998 a exatidão de um robô industrial é avaliada medindo-se a: • Tendência de postura; • Variação multidirecional na tendência de postura; •
Tendência de distância; • Tendência de percurso. A repetitividade é quantificada através da: • Repetitividade de postura; • Repetitividade de distância; • Repetitividade de percurso. Os desvios na exatidão e na repetitividade ao longo do tempo são medidos pelo: • Deslocamento das características de postura. As variações na exatidão e na repetitividade entre robôs do mesmo modelo são caracterizadas pela: • Intercambiabilidade. A avaliação do desempenho dinâmico é realizada através do: • Tempo de estabilização; • Sobrepasso; 107
Desvios de canto; Velocidades no percurso; • Tempo mínimo de posicionamento. A norma ISO 9283:1998 estabelece ainda uma característica para avaliar a flexibilidade do robô denominada de: • Flexibilidade estática. As características apresentadas acima podem ser usadas no todo ou em parte para avaliar o desempenho de um robô. A norma não especifica quais delas devem ser empregadas para testar um robô em particular. Apresenta, no entanto, uma orientação para a seleção das características a serem testadas para algumas aplicações típicas, reproduzidas mais adiante neste capítulo. As grandezas relacionadas acima são descritas com mais detalhes a seguir. • •
5.2 - CARACTERÍSTICAS DE DESEMPENHO A norma ISO 9283:1998 (segunda edição) define características para testar a postura, o percurso, o tempo mínimo de posicionamento e a flexibilidade estática dos robôs industriais.
5.2.1 – Características de postura As características de postura são grandezas que quantificam os erros entre uma postura comandada (especificada através da programação do robô) e a respectiva postura atingida (alcançada em resposta à postura comandada com o robô funcionando em modo automático). Os erros podem ser causados pelo algoritmo de controle, pelas transformações de coordenadas, por diferenças dimensionais entre os componentes do robô e o seu modelo utilizado no sistema de controle, por dificuldades mecânicas como folgas, atrito, histerese, e por influências externas como a temperatura. Nos robôs industriais a postura comandada pode ser especificada diretamente no robô mediante a gravação das coordenadas das juntas, através de uma caixa de comando ou de outra entrada manual de dados, e indiretamente através de um método de programação fora de linha. A forma pela qual a postura comandada é especificada influencia diretamente os resultados dos testes e, de acordo com a norma ISO 9283, deve estar claramente descrita no relatório dos testes. Na figura 5.2 estão mostradas a postura comandada e a postura atingida, que devem ser medidas em relação a um sistema de coordenadas paralelo ao sistema da base indicado na figura 5.1-b. A figura 5.2 apresenta também o ponto de medição, neste caso tomado como o centro da ferramenta acoplada à interface mecânica.
108
Figura 5.2– Postura comandada e postura atingida.
Segundo a norma ISO as características de postura são a tendência de postura, a repetitividade de postura, a variação multidirecional na tendência de postura, o deslocamento nas características de postura, a intercambiabilidade, a tendência e a repetitividade de distância, o tempo de estabilização, e o sobrepasso, que são descritos a seguir. 5.2.1.1 – Tendência de postura (AP) É a diferença entre a postura comandada e a média das posturas atingidas quando a aproximação é realizada pela mesma direção. É dividida em: • Tendência de posicionamento (AP p): a diferença entre uma posição comandada e o •
baricentro das posições atingidas (figura 5.3-a); Tendência de orientação (AP c): a diferença entre a orientação angular comandada e a média das orientações angulares atingidas (figura 5.3-b).
(a)
(b)
Figura 5.3– Tendência e repetitividade (a) de posicionamento; (b) de orientação.
5.2.1.2 – Repetitividade de postura (RP) Expressa a proximidade das posturas atingidas após n visitas à mesma postura comandada na mesma direção. É quantificada através do: Raio da esfera centrada no baricentro do grupo de pontos atingidos (RP l) calculado a partir da média dos raios de cada ponto atingido e do seu desvio padrão (figura 5.3-a); Faixa de três desvios padrão das medidas angulares em torno dos valores médios dos ângulos de orientação (figura 5.3-b). 5.2.1.3 – Variação multidirecional na tendência de postura (vAP) Expressa a diferença entre as médias das posturas atingidas visitando a mesma postura comandada n vezes a partir de três direções ortogonais (figura 5.4). É quantificada por: vAPp – a distância máxima entre os baricentros do conjunto de pontos atingidos ao final de cada percurso; 109
vAPa, vAPb, vAPc – o máximo desvio entre o valor médio dos ângulos atingidos ao final dos diferentes percursos. 5.2.1.4 – Deslocamento nas características de postura Compreende os deslocamentos na tendência e na repetitividade. O deslocamento na tendência de postura (dAP) é a variação na tendência de postura no decurso de um tempo especificado. Da mesma forma, o deslocamento na repetitividade de postura (dRP) é a variação na repetitividade de postura ao longo de um dado tempo. Esses deslocamentos são medidos ao longo de diversas horas, a partir da partida fria do robô.
Figura 5.4- Variação multidirecional na tendência de postura.
5.2.1.5 – Intercambiabilidade: expressa o desvio dos baricentros das posturas atingidas em testes realizados com robôs diferentes do mesmo tipo, sob as mesmas condições ambientais, mesma montagem mecânica e usando o mesmo programa. Esse desvio é provocado pelas tolerâncias mecânicas, erros de calibração e erros de montagem dos robôs. A intercambiabilidade (E) é a distância entre os baricentros das posturas atingidas pelos dois robôs que tiveram o maior desvio nos testes (figura 5.5).
110
Figura 5.5– Intercambiabilidade.
5.2.1.6 – Tendência e repetitividade de distância : quantificam, respectivamente, o erro na distância entre duas posturas comandadas e as duas posturas médias atingidas, e as flutuações na distância para uma série de movimentos repetidos entre as duas posturas. Essas características dizem respeito apenas a robôs que têm entrada de dados manual ou são programados fora de linha. Os testes de tendência e a repetitividade de distância podem ser realizados empregando dois procedimentos: a) Comandando as duas posturas usando a programação fora de linha; b) Comandando uma postura através da caixa de comando e a outra através de uma entrada de dados manual. O procedimento utilizado influencia os resultados do teste. Por isso a norma determina que ele deve ser explicitado no relatório dos testes. Tendência de distância (AD): é o erro na posição e na orientação entre a distância comandada e a distância atingida (figura 5.6).
Figura 5.6– Tendência de distância.
111
Repetitividade de distância (RD): quantifica a proximidade entre as diversas distâncias atingidas para a mesma distância comandada, repetida n vezes na mesma direção. 5.2.1.7 – Tempo de estabilização: caracteriza a rapidez com que o robô pode parar em uma postura atingida.
Figura 5.7– Representação tridimensional de um percurso de estabilização.
A figura 5.7 ilustra num exemplo o percurso de aproximação a uma postura atingida em três dimensões. Essa figura apresenta também a banda limite em torno da posição atingida. A banda limite é igual à repetitividade definida no item 5.2.1.2 ou um valor estabelecido pelo fabricante do robô. O tempo de estabilização é o tempo medido entre o instante em que o ponto de medição cruza a banda limite pela primeira vez até o instante a partir do qual o ponto de medição permanece dentro da banda limite. 5.2.1.8 – Sobrepasso: é a distância máxima ocupada pelo ponto de medição em relação à postura atingida após ele ter cruzado a banda limite pela primeira vez (figura 5.7). O sobrepasso quantifica a capacidade do robô realizar paradas suaves e precisas nas posturas atingidas. A figura 5.8 mostra o exemplo de uma parada superamortecida (curva 1), no qual o sobrepasso é nulo, e o exemplo de uma parada oscilatória onde o sobrepasso (OV) existe.
112
Figura 5.8– Tempo de estabilização e sobrepasso.
5.2.2 – Características de percurso Expressam os erros entre um percurso comandado (especificado na programação do robô) e o respectivo percurso percorrido (em resposta ao percurso comandado com o robô funcionando em modo automático). Essas características são quantificadas através da tendência de percurso, da repetitividade de percurso, da tendência de percurso com reorientação, dos desvios de canto, e da tendência, repetitividade e flutuação na velocidade de percurso, descritas no que segue. 5.2.2.1 – Tendência de percurso (AT): caracteriza a habilidade de um robô mover sua interface mecânica ao longo de um caminho comandado n vezes na mesma direção. É dada pela: a) – Diferença entre as posições do caminho comandado e a linha do baricentro das posições p na figura 5.9); caminhosentre percorridos (tendência comandadas de percurso dee posição - ATdas b) dos – Diferença as orientações a média orientações percorridas (tendência de percurso de orientação). Tanto para a posição como para a orientação, a tendência de percurso é o valor do máximo desvio obtido ao longo do caminho.
5.2.2.2 – Repetitividade de percurso: expressa a proximidade entre os caminhos percorridos para o mesmo caminho comandado em n repetições. É dada por: a) RTp – raio máximo das circunferências que envolvem o tubo de caminhos percorridos, medido a partir da linha de baricentros do tubo em um plano normal a ela (figura 5.9); b) O máximo desvio entre o valor médio dos ângulos percorridos.
Figura 5.9– Tendência de percurso e repetitividade de percurso.
5.2.2.3 – Tendência de percurso com reorientação: registra a influência da orientação na tendência de percursos ao longo de um caminho linear. 5.2.2.4 – Desvios de canto
113
Figura 5.10– Desvios de canto.
O percurso comandado de um robô pode ter cantos agudos ou cantos arredondados. Para percorrer cantos agudos com uma boa tendência de percurso é preciso admitir mudanças na velocidade. Para conseguir velocidade constante deve-se arredondar os cantos. Diz-se que o percurso comandado tem um canto agudo quando o robô deve deixar um primeiro percurso comandado (veja figura 5.10) que ele vem percorrendo com uma velocidade programada constante para, sem atraso, tomar um segundo percurso comandado ortogonal ao primeiro. Os desvios de canto são quantificados através do erro de arredondamento de canto e do sobrepasso de canto descritos a seguir. Erro de arredondamento de canto (CR): é a distância da trajetória percorrida à interseção do primeiro com o segundo caminho comandado (figura 5.10). O resultado do teste é o maior erro para três ciclos consecutivos. Sobrepasso de canto (CO): é(figura o desvio máximo da trajetória percorrida em relação ao segundo caminho comandado 5.10). Novamente, o resultado é o medido maior desvio para três ciclos consecutivos. 5.2.2.5 – Características de velocidade de percurso: o desempenho de um robô é caracterizado pela tendência, repetitividade e flutuação na velocidade de percurso, indicadas na figura 5.11.
114
Figura 5.11– Características de velocidade de percurso.
Tendência na velocidade de percurso (AV): é definida como o erro entre a velocidade comandada e o valor médio das velocidades atingidas. Repetitividade na velocidade de percurso (RV): é a medida da proximidade das velocidades atingidas para a mesma velocidade comandada. Flutuação na velocidade de percurso (FV): é o desvio máximo durante o movimento com uma velocidade comandada.
5.2.3 – Tempo mínimo de posicionamento O tempo mínimo de posicionamento é o tempo entre a partida de uma postura estacionária e a chegada a outra postura estacionária percorrendo uma distância linear ou angular préestabelecida, sob a ação de um controle de postura a postura. O tempo de estabilização na postura atingida, definido no item 5.2.1.7, é incluído no tempo de posicionamento.
5.2.4 – Flexibilidade estática A flexibilidade estática é o máximo deslocamento por unidade de carga aplicada. De acordo com a norma, a carga deve ser aplicada na interface mecânica do robô e o deslocamento deve ser medido no mesmo local. As forças devem ser aplicadas nas três direções correspondentes ao sistema de coordenadas da base do robô. A medição das características apresentadas acima é realizada em testes de desempenho correspondentes estabelecidos na norma. No que segue são descritas as condições que devem ser observadas durante a realização desses testes.
5.3 - CONDIÇÕES PARA OS TESTES DE DESEMPENHO As condições nas quais as características de desempenho são testadas influenciam decisivamente os resultados. A norma ISO 9283:1998 estabelece condições que dizem respeito à 115
montagem, à operação, ao meio ambiente, aos princípios de medição, à instrumentação, às cargas na interface mecânica, às velocidades de teste e às posturas e percursos a serem utilizadas nos testes. A norma também fixa as condições para testes comparativos entre robôs diferentes que estão apresentadas ao final deste item. De acordo com a norma a montagem, a operação e as condições ambientais em que o robô funciona devem seguir as instruções de seu fabricante. A medição das posições e ângulos de orientação deve ser feita no sistema de coordenadas da base definido pela norma ISO 9787 (veja figura 5.1-b). A incerteza na instrumentação não deve ultrapassar 25% da magnitude da característica que está sendo testada. Maiores detalhes dos equipamentos de teste e dos métodos de metrologia pode ser encontrada na norma ISO/TR 13309. Todos os testes devem ser realizados sob as condições de carga máxima especificadas pelo fabricante. Adicionalmente pode-se efetuar testes com cargas menores. No que diz respeito à velocidade, os testes para medir as características de postura devem ser realizadosdeutilizando a velocidade máxima realizar estabelecida fabricante. menores. Para as características postura pode-se, adicionalmente, ensaios pelo com velocidades Para quantificar as características de percurso os testes devem ser realizados para 100%, 50% e 10% da velocidade máxima.
Figura 5.12– Cubo de teste inscrito no espaço de trabalho.
As posturas e os percursos a serem utilizadas nos testes são estabelecidas a partir de um cubo de teste inscrito no espaço de trabalho do robô (figura 5.12). Esse cubo com lados paralelos aos eixos do sistema de coordenadas da base deve ser localizado na parte mais utilizada do espaço de trabalho, e deve ter o maior volume possível. O relatório dos resultados dos testes deve conter uma figura mostrando a localização do cubo dentro do espaço de trabalho, como na figura 5.12. Quando o espaço de trabalho tem uma dimensão preponderante, o cubo pode ser substituído por um paralelepípedo retangular.
5.3.1 – Posturas a serem testadas
116
Figura 5.13– Planos no cubo de teste.
As posturas a serem utilizadas nos testes devem estar localizadas em um dos planos do cubo de teste indicados na figura 5.13. O plano escolhido deve estar explicitado no relatório de testes. Nos testes de postura são utilizadas cinco posturas (P1 a P 5) contidas no plano selecionado. A postura P 1 é a interseção das diagonais do cubo de teste e é o centro do cubo. As posturas P2 a P5 estão localizadas a uma distância igual a (10 ± 2)% do comprimento da diagonal medida à partir do fim das diagonais (veja figura 5.14).
Figura 5.14– Posturas a serem utilizadas.
Para cada teste são estabelecidos os respectivos ciclos. A tendência de postura descrita no item 5.2.1.1, por exemplo, é avaliada movimentando-se a interface mecânica à partir de P 1 até P5, 117
P4, P3, P2 e P 1 novamente, sendo cada postura visitada mediante uma aproximação unidirecional. Outros ciclos são definidos para os testes das demais características.
5.3.2 – Percursos a serem testados O percursos a serem testados devem estar localizados em um dos quatro planos mostrados na figura 5.15. Para robôs com seis eixos deve ser usado o plano 1, a não ser que algum outro esteja especificado pelo fabricante. Para robôs com um número menor de eixos o plano a ser usado deve estar especificado pelo fabricante. Os percursos devem ter forma linear ou circular. Caso o fabricante do robô especifique outras formas de percurso, os testes devem ser feitos de acordo com essa especificação e o percurso deve estar explicitado no relatório de resultados. Os percursos lineares na diagonal do cubo devem ter comprimento igual a 80% da distância entre vértices opostos do cubo no plano selecionado, como a distância entre os ponto P 2 e P4 na figura 5.16, por exemplo.
Figura 5.15– Planos que contém os percursos a serem testados.
Nos testes com percursos circulares devem ser testados dois círculos diferentes. O diâmetro do círculo maior deve ser igual a 80% do tamanho do lado do cubo, e centro deve ser no ponto P1 (veja figura 5.16). O círculo menor deve ser centrado em P 1 e seu diâmetro é 10% do diâmetro do círculo maior. Nos percursos retangulares os cantos são denominados E1, E2, E3 e E4, cada um localizado a uma distância igual a (10 ± 2)% do comprimento da diagonal do plano, como está mostrado na figura 5.16.
118
Figura 5.16– Exemplos de percursos de teste.
5.3.3 – Testes comparativos Os parâmetros para a realização de testes comparativos entre robôs diferentes estão estabelecidos no anexo A da norma ISO 9283:1998. Na comparação de robôs são avaliadas as características de postura e de percurso descritas respectivamente nos itens 5.2.1 e 5.2.2. A norma determina também que o tamanho dos cubos de teste, as cargas de teste, as velocidades de teste, os percursos de teste, os ciclos de teste e as condições ambientais tem que ser os mesmos para os diferentes robôs. Os valores desses parâmetros estão estabelecidos no anexo A da norma.
REFERÊNCIAS ISO 9787:1990, Manipulating Industrial Robots: Coordinate systems and motions, ISO Publications, 1 ed., França, 1990. ISO 9283, Manipulating Industrial Robots: Performance criteria and related test methods, ISO Publications, 2 ed., França, 1998. ISO/TR 13309, Manipulating industrial robots – Informative guide on test equipament and metrology methods of operation for robot performance evaluation in accordance with ISO 9283 , ISO Publications, 1 ed., França, 1995.
119
Tabela 5.1– Orientação para a seleção das características de desempenho
Aplicações Solda Ponto
Movimentação de materiais
Montagem
Inspeção
Características
Tendência/Repetitividade de postura
X
X
X
X
X
X
X
Variação multidirecional na tendência de postura
Desbaste/ Polimento/ Corte
X
X
X
X
Tendência/Repetibilidade de distância
X
X
X
X
Tempo de estabilização
X
X
X
X
Sobrepasso
X
X
X
X
Tendência/Repetibilidade de percurso
X
X
X
Desvios de canto
X
X
X
X
X
X
X
X
Flexibilidade estática
X
X
X
X
120
Selamento
X
velocidade de percurso Tempo mínimo de posicionamnto
Solda a arco
X
Deslocamento na tendência/repetitividade de postura
Tendência/Repetibilidade /Flutuação na
Pintura
X
X
X X
X
X
X
CAPÍTULO 6 PROGRAMAÇÃO E SIMULAÇÃO DE ROBÔS Renato Ventura Bayan Henriques
6.1- INTRODUÇÃO Com o crescente desenvolvimento dos processos de manufatura surgiu a necessidade de linhas de produção que permitissem uma maior flexibilidade na quantidade e na variedade de produtos a serem produzidos. A indústria com a globalização dos processos, sentiu a necessidade de romper com os paradigmas, como por exemplo que toda a empresa deveria obter uma alta taxa de produtividade com uma pequena variedade de produtos, característica da visão Taylorista, e adequar-se as necessidades do mercado mais especificamente do cliente. Neste processo de mudança surgiu o conceito de automação flexível onde basicamente otimizamos o layout existente no chão de fábrica para torná-lo o mais flexível frente a variação de produtos a que a linha de produção esta sujeita. Em outras palavras com um layout mais racional pode-se obter uma alta taxa de produtividade com uma ala variedade de produtos. Desde o início da automatização dos processos1 ficou clara a necessidade de uma sistemática que possibilitasse a otimização das linhas de produção. Ao analisarmos a estrutura de uma linha de produção verificamos que algumas tarefas são repetitivas e que perdemos um tempo considerável para programá-las (reprogramá-las), a busca da automatização (ou semiautomatização) de determinadas tarefas passa pela definição de como replicar uma determinada tarefa em outra máquina. Neste livro estamos tratando da robótica e da programação dos robôs de uma célula robotizada, a questão que surge aqui é: Como replicar as tarefas executadas num robô num parque industrial com uma centena deles? A resposta para esta pergunta nos leva a Sir. Charles Devol 2 que desenvolveu uma forma de registrar uma seqüência de movimentos, iniciando assim a primeira geração de robôs. A partir de Devol começou-se a ter a consciência do conceito de reprogramabilidade, que é atualmente a base do desenvolvimento dos robôs comerciais existentes no mercado . Um dos pontos importantes quando se deseja programar uma determinada tarefa no robô é o fato de ser ou não possível executar uma seqüência específica de comandos. Programar um robô significa descrever os procedimentos a serem tomados pelo manipulador sob a ação do controlador. Devido ao grande número de controladores de robôs existentes e a crescente evolução dos sistemas de programação de alto nível orientados ao usuário faz-se necessário uma interface entre eles. Conforme a norma ISO TR 10562 (Manipulating industrial robots Intermediate Code for Robots (ICR)) um código intermediário deve ser usado como uma interface entre programas de robô orientados ao usuário e controladores de robôs industriais. 1 2
Protótipo de comando numérico desenvolvido no Instituto de Tecnologia de Massachusets - MIT Charles Devol, desenvolveu dispositivo controlador para registrar sinais eletricos magneticamente 121
Inicialmente passaremos a uma descrição do problema básico a ser enfrentado quando desejamos efetuar a programação de um robô. Em um segundo momento descreveremos as características básicas de uma linguagem de programação e daremos um breve histórico da sua evolução. Neste capítulo tentar-se-á situar o leitor no contexto de manufatura automatizada, preparando-o para utilizar as principais ferramentas de programação e simulação existentes no mercado.
4.1 - O PROBLEMA BÁSICO DA PROGRAMAÇÃO Para um dado problema de programação existirão diversas formas de implementarmos um algoritmo para solucioná-lo, destas escolheremos uma em função do índice de desempenho adotado de forma a minimizá-lo ou que seja a mais próxima do ideal. Eis ai a motivação precípoa da programação e consequentemente para a programação de robôs. Da busca constante da otimização das soluções é que surgiram ao longo dos anos ferramentas computacionais mais avançadas, que propiciam ao projetista uma maior flexibilidade no que tange a tarefa a ser executada. Inicialmente as linguagens existentes eram baseadas em comandos intuitivos do tipo move to, open tool, etc., que descreviam literalmente o tipo de ação a ser executada. Concomitantemente com estes desenvolvimentos os computadores, unidade básica no processamento destas informações, experimentaram uma constante evolução em termos de quantidade de informação, velocidade de processamento e disponibilidade de periféricos. A conjunção de fatores tais como: evolução tecnológica dos microcomputadores, desenvolvimento de linguagens e ferramentas de análise e programação é que nos possibilitou atingirmos o estágio atual da automatização robotizada. Nosso problema no entanto, se reduz a apresentar de forma clara e objetiva o estado atual da programação de robôs propiciando ao leitor uma visão dos procedimentos adotados ao resolver um problema de programação.
4.2 - MÉTODOS DE PROGRAMAÇÃO A pesquisa na indústria durante os últimos vinte anos tem sido direcionada na criação de técnicas de automação que aplicadas em lotes de produção de pequeno e médio porte produzam resultados adequados do ponto de vista custo-benefício. Isto culminou com o desenvolvimento das máquinas CNC, Sistemas Flexíveis de Manufatura (FMS), Robôs Móveis (AGV's) e braços manipuladores. O desenvolvimento deste último grupo, tem particular importância, pela complexidade intrínseca envolvida no desenvolvimento da habilidade de emular o comportamento da cadeia de ligamentos do braço manipulador de forma a replicar os movimentos do braço humano. Os robôs industriais de hoje são mecanismos automatizados projetados para movimentar peças ou ferramentas sobre uma trajetória previamente estabelecida. Como mencionado anteriormente um robô ou um outro do mesmo modelo deverá ser capaz de executar um conjunto de operações ou movimentos diferenciados se a célula de trabalho do mesmo for alterada. O programa de controle do robô deverá ser capaz de adaptar-se as variações de tarefas e ser flexível o suficiente para permitir uma seqüência dinâmica de operações. Pode-se avaliar a flexibilidade de um robô pela extensão do tipo de operações e movimentos que podem ser programados no seu controlador e pela facilidade de entrada ou alteração de um programa. 122
A programação pode ser feita de duas maneiras: Programação on-line e Programação offé feita utilizando-se linguagens de programação criadas especialmente para robôs tais como VAL, WAVE, AML, MCL, and SIGLA. Estes programas são geralmente depurados com uso de simuladores. A Programação on-line por outro lado faz uso geralmente de métodos de programação por ensino ou condução. Os métodos atuais de programação de robôs industriais tem provado serem satisfatórios onde a proporção entre o tempo de programação e de produção é pequeno e também quando a complexidade da aplicação não é tão exigida. line. A programação off-line
A programação "off-line" pode ser definida neste contexto como o processo pelo qual a programação dos robôs é desenvolvida, parcial ou completamente, sem a necessidade do uso do robô.
6.3.1 - Programação On-line Podemos definir programação on-line como a utilização de métodos de programação por ensino para aplicar um programa de controle no controlador do robô. O programador conduz o robô através de uma seqüência de posições desejadas(via teach-pendant ou dispositivo mestreescravo). Neste processo de "ensino" envolvemos as tarefas de identificação dos pontos, edição e repetição do trajeto ensinado. Programas de edição são utilizados para adicionar informações relevantes ao programa de controle bem como aos equipamentos de produção associados. O uso de programas de edição nos permite um meio de avaliar e corrigir programas de controle existente ou ajustar pontos quando uma tarefa é modificada. Durante este processo o programador necessita de funcionalidades que podem incluir repetição do programa para frente e para trás, operações passo a passo, seleção de velocidade de execução entre outras, que facilitam a depuração do programa. Necessariamente esta abordagem utiliza o robô para a programação e de alguma forma é dependente do algoritmo de controle usado para movimentação entre os pontos da trajetória. Três algoritmos básicos de controle são usualmente utilizados: movimento ponto a ponto, continuo e o controle de trajetoria. Robôs com controle ponto a ponto movem-se de uma posição a outra sem considerar o trajeto intermediário entre os pontos. Geralmente cada eixo move-se até atingir a posição desejada. Robôs de movimento contínuo movimentam-se através de pontos com pequenos incrementos entre si, armazenados ao longo de uma trajetória previamente percorrida. As posições de cada eixo são gravadas pela unidade de controle a intervalos de tempo constante recolhendo dados dos sensores de posição durante a movimentação do robô. O movimento controlado de trajetória envolve o controle coordenado de todas as juntas para percorrer uma trajetória desejada ao longo de dois pontos. Neste método os eixos movem-se suavemente e proporcionalmente para gerar o trajeto de controle especificado. Em programação on-line duas abordagens básicas são tomadas para ensinar o robô uma trajetória desejada: Métodos de programação por aprendizagem e Linguagens textuais. 6.3.1.1 - Programação por aprendizagem 123
Os métodos de programação por aprendizagem exigem que o programador conduza o manipulador, movendo-o fisicamente de modo a realizar as manobras que ele deve apreender. Esse método é mais utilizado em tarefas que necessitam de uma trajetória contínua, como pintura por pulverização, corte a jato d´agua, aplicação de selante ou solda a arco. A programação por aprendizagem envolve o uso de um " joystick", um teclado comum ou um teclado portátil chamado de "teach box" para guiar o robô ao longo de uma trajetória planejada. Se o programa (ou teach box) especificar uma trajetória, continua ou ponto a ponto usando as coordenadas de mundo estes sinais s ão enviados ao controlador que os transforma em coordenadas de junta e produz os movimentos desejados. 6.3.1.1.1 - Programação por condução Aprendizado por condução também é utilizado no modo ponto a ponto, onde o robô grava apenas certos pontos da trajetória deslocando-se posteriormente através delas em linha reta (ou por trajetos circulares, se assim for solicitado). Na programação por condução , o operador move fisicamente o efetuador final pelo trajeto desejado. Para trajetórias contínuas, os sensores do braço enviam continuamente informação sobre a posição de cada junta para o controlador do robô à medida que o braço vai se movimentando. Para trajetórias ponto a ponto, a informação de posição da junta é enviada apenas nos pontos da trajetória onde o operador especificamente a posiciona. Em qualquer caso, uma vez gravados na memória do computador os pontos podem ser chamados a qualquer tempo para reprodução . Ambos os métodos de programação descritos anteriormente envolve a tarefa de integração entre três fatores básicos: As coordenadas dos pontos devem ser identificadas e armazenadas na unidade de controle. Os pontos podem ser armazenados como coordenadas individuais das juntas ou pelas coordenadas geométricas da flange do robô. As funções a serem executadas nos pontos específicos devem ser identificadas e gravadas. Por exemplo para cada trajetória podemos identificar a velocidade de avanço, fluxo de selante a ser aplicado, etc. •
•
Os pontos e dados funcionais são organizados em seqüências lógicas. Isto inclui quando uma dada trajetória deve ser estabelecida ou quando várias condições devem ser checadas. Este três fatores são integrados no processo de aprendizagem e não existem em separado como passos de programação. •
6.3.1.1.2 - Programação via "teach-pendant" A programação on-line necessariamente faz uso de um teclado portátil chamado teachpendant, para guiar o robô ao longo de uma trajetória. Isto fica bem claro como tomamos como exemplo (vide figura 6.1). Neste exemplo o robô deverá executar a tarefa de pegar a peça na esteira de entrada colocá-la no centro de usinagem, depois do processamento retirar a peça e colocá-la na esteira de saída. Nesta tarefa faz-se necessária a integração do robô com as esteiras e o operador deverá executar uma seqüência pré-determinada de operações que serão sumarizadas a seguir. 124
Figura 6.1– Célula genérica ser programada
A seguinte seqüência de pontos deve ser armazenada pelo operador durante a programação on-line do sistema. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Mover o braço do robô até que a garra esteja justamente acima da peça na esteira de chegada, então abre-se a garra, Alinha-se o eixo da garra com o da peça a ser transportada, Armazenar o programa apertando a tecla correspondente a gravar no teach-pendant, Baixar a garra até que a mesma esteja centrada com o objeto a ser pinçado. Armazenar este ponto, Fechar a garra para que a peça possa ser levantada. Armazenar este ponto. Levantar o braço de forma a liberar o espaço de trabalho e alinhá-lo no nível do centro de usinagem. Armazenar este ponto. Aproximar a garra do centro de usinagem e posicioná-la alinhada com o dispositivo de fixação do centro de usinagem. Armazenar este ponto. Abrir a garra e liberar a peça. Elevar o braço até liberar o espaço de trabalho de forma a retirar o braço do robô do centro de usinagem. Retrair o braço do robô até uma posição intermediária. Armazenar este ponto. Aguarde o sinal do centro de usinagem e retire a peça. Rotacione o braço até a esteira de saída e posicione sobre a superfície da esteira. Armazene este ponto. Abaixe o braço até a superfície da esteira. Armazene este ponto. Abra a garra e libere a peça. Armazene este ponto. Levante o braço ate liberar o espaço de trabalho do robô. Armazene este ponto. 125
16. Volte para a posição de equilíbrio e reinicie o ciclo. Os passos listados anteriormente podem variar de acordo com o layout da célula e servem para prover ao controlador as coordenadas dos pontos utilizados no programa. Cabe ao operador entrar via teach-pendant com os parâmetros necessários para a correta sinalização entre o robô e os periféricos (neste caso esteiras e centro de usinagem).
6.3.1.1.2.1 - O controlador do robô e o teach-pendant O teclado e o display da unidade de controle são freqüentemente usados em conjunto com um teach-pendant padrão. Em geral existem três tipos: Teach-pendant genérico (veja figura 6.2) •
•
•
Teach-pendant com botões pictográficos (veja figura 6.3) Teach-pendant com display (veja figura 6.4)
Figura 6.2– Teach-pendant genérico
Figura 6.3 –teach-pendant pictográfico
Figura 6.4– Teach-pendant com display
6.3.1.2 - Programação Textual A primeira linguagem textual de robôs foi WAVE, desenvolvida em 1973 como uma linguagem experimental de pesquisa no Stanford Artificial Intelligence Laboratory. A pesquisa envolvia um robô interfaceado com um sistema de visão. O desenvolvimento de uma linguagem subseqüente 126
começou em 1974, em Stanford. A linguagem foi chamada AL, e podia ser usada para controlar braços múltiplos em tarefas exigindo coordenação dos braços. Muitos dos conceitos das linguagens WAVE e AL foram aproveitados no desenvolvimento da primeira linguagem textual de programação de robôs comercialmente disponível, a linguagem VAL (Victor Assembly Language, de Victor Scheinman). A linguagem VAL foi introduzida em 1979 pela Unimation Inc. para seus robôs da série PUMA. Essa linguagem foi melhorada para VALII e lançada em 1984. O trabalho de desenvolvimento de linguagens de programação de robôs prosseguiu também nos laboratórios T.J. Watson Research Labs, da IBM Corporation tendo começado por volta de 1976. Foram desenvolvidas duas linguagens dirigidas para tarefas de montagem e tarefas correlatas, foram elas a AUTOPASS e AML. Este tipo de programação é realizada de forma semelhante a programação de computadores. O programador pelo fabricante dodigita robô.o programa usando um terminal de computador na linguagem fornecida 6.3.2 - Programação Off-line Os desenvolvimentos na tecnologia de robôs, tanto em software quanto em hardware estão tornando possível que a programação off-line se torne cada vez mais viável. Estes desenvolvimentos incluem o uso de controladores mais sofisticados, o aumento da precisão no posicionamento e a adoção de sensores mais avançados. A programação "on-line" de um robô, de um modo geral, pode consumir muito tempo evoluindo desproporcionalmente com o aumento da complexidade das tarefas; consequentemente quando o robô fica fora da linha de produção o tempo gasto na programação pode prejudicar substancialmente a sua utilidade. Em muitas aplicações envolvendo processos de produção em massa, tais como soldagem a ponto em linhas de produção automobilísticas, os requisitos temporais de reprogramação devem ser minimizados ao máximo. Logo podemos concluir que para a aplicação de robôs ser factível, em pequenos e médios lotes de produção, onde os tempos envolvidos podem ser substanciais, a utilização de Programação Off-line é altamente recomendada. O incremento na complexidade das aplicações em robótica torna as vantagens associadas a programação off-line mais atrativos, essas vantagens podem ser classificadas como segue: 1. 2.
3.
Redução do tempo ocioso: O robô pode manter-se na linha de produção enquanto a próxima tarefa estiver sendo programada. Isto acrescenta maior flexibilidade aos robôs. Ambientes potencialmente perigosos: Redução do tempo de permanência do operador próximo ao robô ,reduzindo assim o risco de acidentes por comportamento anormal do equipamento. Sistema Simplificado de Programação: Pode-se usar a programação off-line para programar uma grande variedade de robôs sem a necessidade de conhecer as peculiaridades de cada controlador. Reduz-se assim o índice de reciclagem dos programadores.
127
4.
5.
Integração com sistemas CAD/CAM: Habilita a interface com banco de dados de peças, centralizando a programação de robôs com estes sistemas possibilitando o acesso a outras funcionalidades, como por exemplo planejamento e controle. Depuração de Programas: Sistemas de programação off-line com CAD/CAM integrados podem produzir um modelo da planta (robô + célula de trabalho)que podem ser usados para detecção de colisões dentro do espaço de trabalho e se será possível executar determinados movimentos evitando assim danos ao equipamento.
6.3.2.1 - Limitações da Programação Off-line A programação off-line como já foi dito anteriormente necessita obrigatoriamente da existência de um modelo teórico do robô e do ambiente; o objetivo é usar este modelo para simular o comportamento real do robô. A implementação da programação off-line encontra basicamente três problemas principais: a) Dificuldade em desenvolver um sistema de programação generalizado que seja independente do robô e de suas aplicações; b) Para reduzir a incompatibilidade entre robôs e sistemas de programação faz-se necessário a definição de padrões para as interfaces; c) Programas gerados em off-line devem levar em conta os erros e imprecisões que existem entre o modelo idealizado e o mundo real. Devido a estas imprecisões entre o modelo teórico idealizado e a variáveis inerentes ao processo no mundo real, seqüências simuladas geralmente não atingem o objetivo de controlar o robô sem erros. Na prática o robô não atinge o local calculado pelo modelo ou a ferramenta não é precisamente localizada como definido no modelo. Estas discrepância podem ser atribuídas aos seguintes fatores: 1. Robô: Falta de precisão na tolerância da montagem dos ligamentos provocando o aumento na variação do off-set das juntas. Pequenos erros na estrutura •
são amplificados e produzem grandes erros de posicionamento no efetuador; Falta de rigidez na estrutura do robô. Pode causar grandes erros quando este está sujeito a condições severas de carregamento; Incompatibilidade entre robôs do mesmo modelo. Devido a diferenças no setup do sistema de controle de cada robô a mesma programação off-line pode apresentar pequenos erros. Controlador: Resolução insuficiente do controlador. A resolução específica o menor incremento de movimento atingível pelo controlador. Precisão numérica do controlador. É afetado pelo comprimento da palavra do controlador e a eficiência do algoritmo usado para os propósitos de controle. Ambiente: •
•
2.
•
•
3.
•
Dificuldade na determinação precisa dos objetos(robôs,máquinas, pecas) com relação ao sistema de coordenadas generalizadas. 128
Efeitos do ambiente tais como temperatura, podem causar efeitos adversos ao desempenho do robô. Modelo e o Sistema de Programação: A precisão numérica do processador do computador. A qualidade dos dados do modelo real. Isto determina a precisão final do programa gerado em off-line.
•
4.
•
•
A composição destes erros através de todo o sistema de programação off-line pode levar a discrepâncias de magnitude significante. Para que a programação off-line se torne uma ferramenta prática, esta magnitude deve ser reduzida a níveis onde os ajustes do posicionamento final possam ser executados automaticamente. Na programação off-line, um programa pode estar contido em um disquete ou ser transmitido eletronicamente (via rede); este pode ser parte de uma biblioteca completa de programas desenvolvidos para aquele modelo de robô, embora este não tenha sido desenvolvido especificamente naquele robô.
6.4 - LINGUAGENS DE PROGRAMAÇÃO DE ROBÔS INDUSTRIAIS Atualmente, após a padronização das linguages de programação de robôs pela ISO, "International Organization for Standardization", a linguagem de programação para comunicação
homem-máquina já é bem conhecida, além disso temos a padronização da interface máquinamáquina. Uma condição importante para as linguagens de programação da inteface homem-máquina é que estas devem necessariamente ser interativas. Atualmente existem duas correntes de pensamento na estruturação da interface homem-máquina. Uma defende que a linguagem deve ser simples e capaz de ser usada pelos próprios operadores sem um treinamento computacional específico. A outra defende que a linguagem deverá prover requisitos computacionais poderosos e que somente técnicos especialmente treinados devem desenvolver a programação. Um exemplo clássico da primeira filosofia é a linguagem ARLA da ABB, como segundo exemplo podemos citar a linguagem KAREL da FANUC. Atualmente, existem centenas de linguagens de robôs disponíveis comercialmente. Muitas delas baseadas em linguagens clássicas tais como Pascal, C, Modula-2, BASIC, e Assembler. As linguagens de programacão podem ser classificadas de acordo com o sistema de referência do modelo, o tipo de estrutura de controle utilizada, o tipo de especificação de movimento, a interface com o dispositivos externos e os periféricos a serem utilizados. Segundo GONG (1998) os seguintes tipos de linguagens de programação podem ser classificados em: •
•
•
•
•
Linguagens de movimento ponto a ponto Linguagens de movimentacao básica, linguagem de baixo nivel (Assembly) Linguagem de programação não estruturada de alto-nivel Linguagem de programação estruturada de alto-nivel Linguagens do tipo NC (Numeric Command)
129
Conforme norma ISO TR 10562 a linguagem ICR é um pseudocódigo de baixo nível que possui os elementos básicos para permitir que qualquer linguagem de alto nível seja para ela traduzida. Para que isso seja possível devem ser desenvolvidos compiladores adequados. Cada tradutor irá fazer uso das capacidades da ICR do modo que lhe for mais conveniente a fim de satisfazer o usuário final. Apenas a título de exemplo são citadas algumas técnicas para implementações de linguagens comuns.
6.4.1 - Linguagens tipo BASIC Este tipo de linguagem se caracteriza por um algoritmo linear e simples sem compilação em módulos separados, sem abstração de dados ou algoritmos, existem apenas tipos de dados predefinidos e as chamadas às subrotinas não utilizam passagem de argumentos. Este tipo de linguagem geralmente é interpretada, traduzida para ICR e somente depois executada, linha por linha. Como não as linhas código são sintaticamente independentes, este método simples de interpretação causa de problemas.
6.4.2 - Linguagens tipo PASCAL Este tipo de linguagem é caracterizada pelo encorajamento à programação estruturada. As funções e procedimentos podem ter argumentos e as variáveis podem ser globais ou locais (a uma função ou procedimento). Recursão é permitida e facilmente implementada e em alguns casos (MODULA 2 e ADA) a programação pode ser modular. Neste último caso um ligador deve providenciar a resolução das referências externas e converter os módulos em um único executável ICR. A linguagem ICR não oferece suporte nativo para ligação dinâmica. Se for necessário utilizar esta técnica o ligador dinâmico deve ser implementado de forma independente. A passagem de parâmetros deve ser feita por meio da pilha da esquerda para a direita, ou seja, o primeiro elemento a ser empurrado para a pilha será aquele mais à esquerda (na linguagem srcinal) e no topo da pilha estará aquele mais à direita. Deve ser prestada especial atenção á estruturação dos blocos da linguagem uma vez que o espaço de pilha reservado para as variáveis depende disso. Como a ICR não faz distinção entre funções e procedimentos, a pilha deve ser esvaziada ao final das chamadas de procedimentos.
6.4.3 - Linguagens tipo C Estas linguagens se caracterizam principalmente pela possibilidade de declaração de variáveis na abertura de qualquer bloco (delimitado por { } em C) e pela capacidade de usar matrizes ou ponteiros de forma indistinta. A primeira característica pode ser implementada diretamente com os comandos BLKBEG e DECLVAR mas a segunda apresenta problemas pois ICR prefere que os dados tenham tipos explícitos. É recomendado que sempre que não seja realmente impossível, se faça a atribuição de tipo.
6.4.4 - Linguagens do tipo LISP Este tipo de linguagem tem como característica básica a habilidade de trabalhar com listas encadeadas e a intercambiabilidade de dados e programas. Este tipo de linguagem requer um acurado gerenciamento de memória. Apesar de ser possível escrever compiladores para estas linguagens recomenda se a consulta a literatura específica. 130
6.4.5 - Linguagens tipo FORTH Pelo fato de utilizar basicamente operações baseadas na pilha e pela semelhança estrutural, este tipo de linguagem não apresenta maiores problemas de implementação. A única ressalva fica por conta da implementação de múltiplas pilhas.
6.4.6 - Linguagens orientadas a objeto Linguagens deste tipo estão fora do escopo deste texto e não tem grande utilidade na área aplicada de robótica. Como a ICR possui suporte a todos os tipos de dados comuns em robótica e suporte às operações a eles associadas pode-se geralmente cair em alguns dos casos acima. Muitos robôs industriais são amplamente utilizados em processos de manufatura tais como tarefas de montagem, manipulação de materiais, soldagem a arco/ponto, pintura, carga e descarga de centros de usinagem e em algumas aplicações especiais tais como exploração submarina e pesquisa de próteses para deficientes. Estimasse que haja no mundo cerca de 100 fabricantes de robôs. A tabela 6.1 lista alguns destes fabricantes e e suas respectivas linguagens de programação.
TABELA 6.1 – Lista de fabricantes de robôs e suas linguagens de programação
Fabricante
Linguagens de Programação
ABB
ARLA, RAPID
Fanuc
KAREL
Reiss
IRL
Staubli
V+
Adept
V+
Comau
PDL2
Eshed
ACL
IBM
AML/2
Kawasaki
AS
Motoman
Inform 1, Inform 2
Nachi
SLIM
Panasonic
Parl-1, Parl-2
PSI
PSI
Samsung
FARL-II 131
Seiko
DARL 4
Toyota
TL-1
TQ
TQ
6.5 - SIMULAÇÃO DE ROBÔS Hoje em dia os robôs tem uma larga aplicação na indústria e na Manufatura. Exemplo disto são os vários programas de desenvolvimento lançados a nível Nacional e Internacional como por exemplo: RECOPE3,ESPRIT,BRITE e EUREKA, que são grandes programas de pesquisa que dentre suas linhas de pesquisa focam a robótica como um de seus temas. Os principais esforços no desenvolvimento e nas aplicações de robótica sem dúvida recaem na indústria nos automobilística. benefícios da automação flexível foram incorporados pesadamente processos de Os manufatura automatizada automotiva. As indústrias automotivas tem encorajado a utilização de robôs em outras áreas encorajando seus fornecedores a utilizarem a mesma tecnologia. Muitos robôs comerciais tem largo uso em tarefas de montagem e manufatura tais como manipulação de material, soldagem a arco/ponto, montagem de partes, pintura, carga e descarga, etc. As técnicas de CAD encontraram extensivo uso nos projeto de engenharia auxiliando o projetista em processos que envolviam desenvolvimento de diagramas e desenhos de alta complexidade. Entretanto no que diz respeito a processos que envolvem a movimentação de peças há necessidade de um estudo mais aprofundado através de simulação. A extensão das técnicas de CAD/CAM também é desejável no domínio da robótica. Entretanto a cinemática envolvida nos movimentos do robô é consideravelmente mais complexa do que as relacionadas com os movimentos xyz dos centros de usinagem e da relação entre os movimentos do efetuador e das juntas do robô. Somado a isto faz-se necessário a utilização de um ambiente capaz de simular uma grande variedade de robôs e tipos de configurações disponíveis no mercado. destas dificuldades, simulação veio para de prover um ambiente de gerar umaApesar interação suave com as adiversas linguagens programação degráfico robôs capaz existentes no mercado comercial. Benefícios tais como: detecção de colisões em off-line, avaliar e otimizar seqüências de programas sem a necessidade da presença física do manipulador tem impulsionado o desenvolvimento das pesquisa em simulação de robôs. Em resumo, programação off-line prove uma interligação essencial para sistemas CAD/CAM. O sucesso desta integração pode ser evidenciado pela ampla difusão de simuladores comerciais e pela diminuição do tempo de implementação de Sistemas Flexíveis de Manufatura na indústria.
6.5.1 - Simuladores Comerciais O primeiro simulador comercial que possibilitou a simulação de robôs foi o GRASP, desenvolvido pela Nottingham University durante um período de sete anos. Utilizado por diversas universidades e instituições de ensino tinha a inconveniência de não poder modelar estruturas cinemáticas não seriadas. 3
Grupo Automação da Manufatura 132
Robographics foi desenvolvido pela Computervision uma companhia bem conhecida pelos desenvolvimentos em pacotes comerciais de CAD. Utilizado pela Austin-rover e Unimation. A McAuto CAD divisão da McDonell-Douglas comercializa uma série de pacotes para simulação de robôs, usados pela Cincinatti-Millacron. O programa PLACE usado para avaliação do layout da célula robotizada. O BUILD usado para modelagem e estudos dinâmicos em 3D. O COMMAND usado para programação off-line e o ADJUST para a calibração do robô. A Technomatics comercializa o ROBCAD. Este pacote é utilizado por muitas montadoras na europa (Ford, BMW, Volkswagen e OPEL). O IGRIP da Deneb, grupo Dassault Systems também é largamente utilizado em muitas empresas. Semelhante ao ROBCAD o DENEB é baseado em uma estação gráfica. A Deneb crescentemente foi comprada pelo grupo Dassault e está incluindo no pacote o software CATIA. O software WORKSPACE da Flow Technologies, é um ambiente desenvolvido para plataforma PC que possui interface gráfica de simulação capaz de gerar um modelo do ambiente propiciando a geração e interpretação de programas em off-line. Um grande número de outros simuladores estão disponíveis comercialmente mas tem um pequeno impacto no mercado.
6.5.2 - Softwares Educacionais Para a modelagem, simulação, programação off-line, detecção de colisões e análise do layout as indústrias montadoras de robôs utilizam softwares que operam em estações de trabalho que demandam alto investimento em equipamentos. No entanto existem algumas opções comerciais 4 com diferentes capacidades e disponíveis para pesquisa. •
•
•
•
Xanimate: Software educacional para simulação gráfica de robôs, desenvolvido pela University Ohio. ROBÔ_SIM: Ambiente de simulação para PC desenvolvido para MATLAB. O pacote consiste de rotinas capazes de desempenhar cálculos específicos (funções para cinemática direta e inversa, dinâmica do manipulador, planejamento de trajetória, controle e simulação). Simderela: Software de simulação para ambiente UNIX. RobLib : Software de simulação para windows desenvolvido na Faculdade de Engenharia da Universidade do Porto. Capacidade de modelagem de robôs de dois graus de liberdade.
6.6 - EXEMPLOS Nesta seção será apresentado um exemplo de geração de código para um robô industrial sobre uma aplicação de soldagem (vide figura 6.5), a partir deste serão gerados os códigos apresentados a seguir.
4
Nenhum dos softwares citados tem capacidade para programação off-line 133
Figura 6.5– Exemplo didático.
Na seção de apêndices no CD que acompanha o livro serão encontrados exemplos com casos reais de geração de programas em off-line em algumas empresas brasileiras.
134
LINGUAGEM RAPID %%% VERSION:1 LANGUAGE:ENGLISH %%% MODULE LIVRO_RAPID VAR robtarget TP1:=[[1144.53,0.00,1287.05],[0.70701,0.00000,0.70719,0.00000],[0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; VAR robtarget WELD_BAS0GP2:=[[686.71,-100.00,630.08],[0.24991,0.06698,0.93303,-0.25000],[0,1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; VAR robtarget WELD_POLGP1:=[[786.71,-100.00,530.08],[0.24993,0.06698,0.93303,-0.24999],[0,1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; VAR robtarget TP2:=[[786.71,-100.00,530.08],[0.24994,0.06698,0.93302,-0.24999],[0,1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; VAR robtarget WELD_POLGP2:=[[786.71,100.00,530.08],[0.24995,0.06698,0.93302,-0.24999],[0,1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; VAR robtarget WELD_POLGP4:=[[986.71,100.00,530.08],[0.24995,-0.93302,0.06698,0.25000],[1,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; VAR robtarget WELD_POLGP3:=[[886.71,200.00,530.08],[0.00000,0.70707,0.61239,-0.35356],[1,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; VAR robtarget WELD_POLGP5:=[[986.71,-100.00,530.08],[0.24998,-0.93301,0.06698,0.24999],[1,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; VAR robtarget TP3:=[[986.71,-100.00,530.08],[0.24999,-0.93301,0.06698,0.24999],[1,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; VAR robtarget WELD_BAS0GP3:=[[1086.71,-100.00,630.08],[0.25000,-0.93301,0.06698,0.24999],[1,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; !! LANGUAGE RAPID !! MEMORY 32768 !! TEACHPOINTFILE LIVRO_RAPID.PR# !! ROBOT IRB1400 PERS tooldata TOCHA:=[TRUE,[[-92.05,0.00,189.53],[0.99999,0.00000,0.00000,0.00000]],[0,[0,0,0],[1,0,0,0],0,0,0]]; PROC main() MoveJ [[1144.53,-0.00,1287.05],[0.70710,0.00000,0.70710,0.00000],[-1,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],\V:=1000,fine\Z:=100,TOCHA; MoveJ WELD_BAS0GP2,vmax\V:=220,fine\Z:=0,TOCHA; MoveL WELD_POLGP1,vmax\V:=220,fine\Z:=0,TOCHA; !! ARCWELDON 100,10 MoveL TP2,vmax\V:=220,fine\Z:=0,TOCHA; MoveL WELD_POLGP2,vmax\V:=220,fine\Z:=200,TOCHA; MoveC WELD_POLGP3,WELD_POLGP4,vmax\V:=220,fine\Z:=200,TOCHA; MoveL WELD_POLGP5,vmax\V:=220,fine\Z:=0,TOCHA; !! ARCWELDOFF MoveL TP3,vmax\V:=220,fine\Z:=0,TOCHA; MoveL WELD_BAS0GP3,vmax\V:=220,fine\Z:=0,TOCHA; MoveJ [[1144.53,-0.00,1287.05],[0.70710,0.00000,0.70710,0.00000],[-1,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],\V:=1000,fine\ Z:=100,TOCHA; ENDPROC ENDMODULE
135
LINGUAGEM ARLA livro_ARLA.irb UNIT=METRIC INCLUDE LIVRO_ARLA.CRD PROGRAM 1 COMMENT ! LANGUAGE ARLA COMMENT ! MEMORY 8192 COMMENT ! ROBOT IRB1400 V=100.0 MAX=1500.0 POS V=100.0% FINE X=1144.53 Y=-0.34 Z=1287.05 -> Q1= 0.70710 Q2= 0.00000 Q3= 0.70710 Q4= 0.00000 ROBOT COORD POS RECTV=220.0% COORD FINE WELD_BAS0GP2 POS V=220.0% FINE WELD_POLGP1 ROBOT COORD COMMENT ! ARCWELDON 100,10 RECT COORD POS V=220.0% FINE TP1 POS V=220.0% PATH WELD_POLGP2 ROBOT COORD POS V=100% CIRCLE WELD_POLGP3 POS V=220.0% PATH WELD_POLGP4 RECT COORD POS V=220.0% FINE WELD_POLGP5 ROBOT COORD RECT COORD POS V=220.0% FINE TP2 COMMENT ! ARCWELDOFF POS V=220.0% FINE WELD_BAS0GP3 ROBOT COORD POS V=100.0% FINE X=1144.53 Y=-0.34 Z=1287.05 -> Q1= 0.70710 Q2= 0.00000 Q3= 0.70710 Q4= 0.00000 STOP livro_ARLA.cdr WELD_BAS0GP2 686.71 -100.00 630.08 Q 0.24991 0.06698 0.93303 -0.25000 30 WELD_POLGP1 786.71 -100.00 530.08 Q 0.24993 0.06698 0.93303 -0.24999 29 TP1 786.71 -100.00 530.08 Q 0.24994 0.06698 0.93302 -0.24999 29 WELD_POLGP2 786.71 100.00 530.08 Q 0.24995 0.06698 0.93302 -0.24999 29 WELD_POLGP4 986.71 100.00 530.08 Q 0.24995 -0.93302 0.06698 0.25000 2 WELD_POLGP3 886.71 200.00 530.08 Q 0.00000 0.70707 0.61239 -0.35356 2 WELD_POLGP5 986.71 -100.00 530.08 Q 0.24998 -0.93301 0.06698 0.24999 1 TP2 986.71 -100.00 530.08 Q 0.24999 -0.93301 0.06698 0.24999 1 WELD_BAS0GP3 1086.71 -100.00 630.08 Q 0.25000 -0.93301 0.06698 0.24999 1
136
FANUC
LINGUAGEM KAREL PROGRAM LIVRO_KAREL -- ! LANGUAGE KAREL 2 -- ! MEMORY 8192 -- ! ROBOT IRB1400 -- TEACHPOINT DECLARATIONS VAR WELD_BAS0GP3: POSITION WELD_POLGP5: POSITION WELD_POLGP4: POSITION WELD_POLGP3: POSITION WELD_POLGP2: POSITION WELD_POLGP1: POSITION WELD_BAS0GP2: POSITION TP1 : POSITION BEGIN $UTOOL=POS(154.8749,-0,67.6648,90,0,90,'') $USEMAXACCEL=TRUE %INCLUDE LIVRO# WITH $MOTYPE=JOINT MOVE TO $HOME:$UTOOL WITH $MOTYPE=Joint, $TERMTYPE=FINE, $SPEED=100 MOVE TO WELD_BAS0GP2 WITH $MOTYPE=Joint, $TERMTYPE=FINE, $SPEED=100 MOVE TO WELD_POLGP1 -- ! ARCWELDON 100.0,30 WITH $MOTYPE=Linear, $TERMTYPE=FINE, $SPEED=100 MOVE TO WELD_POLGP2 WITH $MOTYPE=Linear, $TERMTYPE=FINE, $SPEED=100 MOVE TO WELD_POLGP3 WITH $MOTYPE=Linear, $TERMTYPE=FINE, $SPEED=100 MOVE TO WELD_POLGP4 WITH $MOTYPE=Linear, $TERMTYPE=FINE, $SPEED=100 MOVE TO WELD_POLGP5 -- ! ARCWELDOFF WITH $MOTYPE=Linear, $TERMTYPE=FINE, $SPEED=100 MOVE TO WELD_BAS0GP3 WITH $MOTYPE=JOINT MOVE TO $HOME:$UTOOL END LIVRO_KAREL 137
6.7 - REFERÊNCIAS CRAIG, J. J., Introduction to Robotics, Mechanics and Control , Addison-Wesley Publishing Company, 2 ed., Massachusetts, 1986. GONG, W., Automatic Robot Path Generation for Manufacturing on Sculptured Surfaces, Master Thesis, University of Windsor, 1998. GROOVER, P. M., Automation, Production Systems, and Computer-Integrated Manufacturing, Prentice-Hall Inc., New Jersey, 1987. MARHEFKA, W. D., ORIN, E. D., “Xanimate: AN Educational Tool For Robot Graphical Simulation”, IEEE Robotics and Automation Magazine, pp. 6-14, 1996. NOF, S. Y., Industrial Assembly, Chapman & Hall, 1 ed., London, 1997.
138
CAPÍTULO 7 SELEÇÃO DE ROBÔS: ALGUNS ASPECTOS Oswaldo Horikawa, Newton Maruyama Diolino José dos Santos Filho, Paulo Eigi Miyagi
7.1 - INTRODUÇÃO Uma decisão sobre a utilizaçao ou não de robôs industriais, está inserido dentro do contexto da análise global de investimentos da empresa. Em última instância, o foco principal da análise de investimentos é o impacto destes sobre a competitividade da empresa. Para tal, foi proposta uma metodologia dividida em três etapas: análise estratégica, reengenharia de processos e análise de investimentos em competitividade. Dentro desse contexto, os robôs industriais estão diretamente relacionados aos diversos fatores de competitividade, espalhados do chão de fábrica aos sistemas gerenciais, tais como, CAE, CAD, CAPP, CNC, SFM, MRPI, TQC, CIM, etc. Neste capítulo, a seleção de robôs é abordada através de uma análise mais localizada, tentando enfocar os aspectos econômicos e técnicos mais relevantes. A utilização de robôs no setor industrial é geralmente realizado sob um dentre dois possíveis conjuntos de circustâncias. O primeiro, se refere a uma nova instalação física e/ou novo processo produtivo. Nessa situação, robôs são incorporados durante o planejamento inicial, permitindo grande flexibilidade nas decisões. O segundo, se refere a uma situação mais comum onde robôs devem ser incorporados a processos ou operações já existentes, freqüentemente por decisão gerencial, visando maior processo, produtividade e/ou qualidade das tarefas. Nessa mudanças ou adaptações no produto, equipamento ou instalação física, quesituação, eventualmente podem ser necessárias, são em geral, difíceis de serem acomodadas. Para assegurar o sucesso em qualquer um dos casos, a incorporação de robôs deve ser abordado de uma maneira sistemática. A implantação de um sistema de produção robótico é melhor realizado num processo com múltiplos passos que envolve não apenas o robô mas também o produto, os equipamentos de produção, o arranjo físico, o escalonamento, o fluxo de materiais, e outros fatores. Este capítulo foi dividido em duas partes principais. Uma parte dedicada aos macro aspectos, que estão diretamente relacionados a análise de aspectos econômicos, e uma outra dedicada aos micro aspectos na seleção de robôs, que se referem ao projeto detalhado do sistema robotizado. De uma maneira geral, os micro aspectos devem ser analizados inicialmente pois funcionam
139
como pré-requisitos para uma análise econômica detalhada. O processo envolve em geral várias iterações entre micro e macro aspectos para se obter uma solução satisfatória.
7.2 - MACRO ASPECTOS NA SELEÇÃO DE ROBÔS: A ANÁLISE ECONÔMICA DE SISTEMAS ROBOTIZADOS Estudos sugerem que as empresas devem passar pelas etapas descritas a seguir, até decidirem-se pela introdução de máquinas automáticas de fabricação como máquinas CNC e robôs: 1. Fabricação manual sem definição de metodologia de trabalho; 2. Fabricação manual com metodologia de trabalho definida; 3. Fabricação manual com metodologia de trabalho definida e com estratégias de 4.
5.
otimização de processos; Fabricação manual com metodologia de trabalho definida, com estratégias de otimização de processos e introdução de ferramentas computacionais para a automação parcial das tarefas de planejamento, controle e otimização; Fabricação através de máquinas automáticas.
Obviamente, não necessariamente deve-se passar por todas as etapas, já que pode-se iniciar uma nova planta a partir de qualquer etapa. A razão para tal ordem nas etapas, consiste basicamente no volume de investimento, que cresce de (1) para (5). Ou seja, as máquinas automáticas são de elevado custo e devem ser introduzidas num contexto em que há segurança acerca do retorno do investimento. O grande risco na introdução de máquinas automáticas está na sua sub-utilização. É preciso ter em mente que o objetivo de um projeto de robotização não é o de simplesmente reproduzir métodos e sistemas existentes através da troca de pessoas por robôs. O objetivo deve ser sim, o de desenvolver um novo sistema integrado que proporcione os seguintes aspectos: flexibilidade; maior produtividade; •
•
menores custos de operação; maior qualidade; eliminação de problemas que afetam a saúde e a segurança. Uma avaliação econômica permite comparar os benefícios da automação através da robótica com o sistema atual e demais alternativas. Esta análise se baseia na comparação dos custos de aquisição, adaptação do sistema e operação da instalação robotizada em questão, com os benefícios em caixa. Embora a análise de viabilidade econômica de um projeto de robotização seja similar ao de qualquer outro equipamento, é importante observar que existem algumas diferenças: robô pode substituir mão de obra humana; robô proporciona flexibilidade para atender às mudanças de mercado; robô força a reavaliação do processo produtivo; •
•
•
•
•
•
140
robô é reprogramável, dessa forma, essa flexibilidade proporciona uma longa vida útil dentro do sistema de produção. A Figura 7.1 descreve as principais etapas a serem cumpridas para uma análise econômica de um projeto de robotização. O processo de análise compreende duas etapas: a análise inicial e a análise detalhada de custo. •
Etapa 1:Identificar soluções alternativas
Desenvolver um novo robô ou melhorar o método atual
Etapa 2: A solução é viável ?
Desenvolver novos métodos que não utilizem robôs
N
S Etapa 3:Escolher a tarefa a ser robotizada
Abandonar o projeto
Etapa 4:Ponderar critérios não econômicos (política da empresa, responsabilidade social, estratégias administrativas, etc.) Etapa 5:Coletar dados e realizar análise operacional (previsão de volume de produção, tempo de produção, mão de obra e índices de ganho)
S
Etapa 6: Há risco do robô ser sub-utilizado?
N Etapas 7 e 8:Análise detalhada de custo Escolher a melhor alternativa
Figura 7.1 - Metodologia para a análise econômica de um projeto de robotização. Adaptação baseada em (Hasegawa, 1985).
7.2.1 - Análise inicial de custo Etapa 1: Identificação das soluções alternativas Dentre as três estratégias básicas de fabricação: manual, sistemas flexíveis (robotizados) e automação rígida, deve-se escolher a mais adequada levando-se em consideração uma comparação entre a relação do custo unitário e o volume de produção para cada uma das estratégias (Vide Figura 7.2). Automação flexível e robôs são mais efetivos para volumes médios de produção. Os volumes médios podem variar, dependendo do tipo de produto, entre algumas dezenas ou centenas, até milhares de unidades anuais. Para volumes de produção de centenas de milhares anuais uma automação rígida é em geral mais aconselhável.
141
Estratégia mais eficiente de produção
Manual o ã ç a c ri b a f e d io r á it n u to s u C
Automação flexível e robôs
Automação rígida
Automação rígida Manual Automação flexível e robôs Volume anual de produção
Figura 7.2 - Comparação das estratégias de fabricação para diferentes volumes de produção. Fonte (HASEGAWA, 1985)
Nesta etapa, objetiva-se evitar a utilização equivocada de um robô, como por exemplo, o da atividade ilustrada na Figura 7.3, que consiste apenas na transferência de peças de uma correia à outra. Neste caso, uma alternativa mais racional é a utilização de uma automação rígida, por exemplo, através do uso de um simples cilindro pneumático (Figura 7.3). robô
Mais eficiente Mais barato
cilindro pneumático
Figura 7.3 - Exemplo onde a aplicação de um robô é claramente inadequada. Etapa 2: Estudo de viabilidade Durante o estudo de viabilidade objetiva-se responder as seguintes perguntas: É possível executar as tarefas segundo o procedimento planejado, e satisfazendo um determinado lead time? É possível assegurar: confiabilidade a todo sistema, segurança e nível de qualidade? Existe mão de obra para operar e manter os robôs de forma satisfatória? É possível reduzir estoques e manipulação de materiais? produto está projetado para ser manipulado ou montado por robôs? Caso se mostre que a robotização é inviável, é preciso selecionar um outro tipo de robô, aperfeiçoar o robô proposto ou buscar uma outra alternativa onde um robô não seja utilizado. Etapa 3: Escolha da tarefa a ser robotizada •
•
•
•
•
142
A identificação da tarefa a ser executada por um robô ou um conjunto de robôs não é uma tarefa simples. Em geral, as seguintes estratégias de agrupamento de tarefas podem ser utilizadas para a escolha de uma tarefa viável: Componentes pertencendo à mesma família de produtos; Produtos, no presente, sendo manufaturados em locais próximos; Produtos que possuem componentes similares e que podem compartilhar dispositivos de alimentação; •
•
Produtos que possuem dimensões similares, pesos similares e número de componentes similares; Produtos com projeto simples e que podem ser manufaturados dentro de um ciclo curto de tempo. Etapa 4: Ponderação de critérios não econômicos •
•
Aqui devem ser ponderados diversos aspectos não econômicos que afetam um projeto de robotização. Por exemplo: a política e filosofia da empresa, políticas administrativas e produtivas, imagem da empresa, efeitos sobre a motivação dos empregados, dentre outros. Também nesta etapa, deve-se ponderar os benefícios intangíveis resultantes das características de robôs, como por exemplo, o fato de robôs poderem ser reutilizados em outras tarefas em futuros projetos. Etapa 5: Coleta de dados e análise operacional Aqui deve-se obter os dados que efetivamente serão utilizados na análise econômica. Por exemplo: projeção de volume de produção, produtividade desejada, duração da jornada de trabalho, taxa de ocupação do robô e capacidade desejada de produção, etc. Etapa 6: Decisões sobre futuras aplicações A sub-utilização do robô deve ser evitada devido ao seu elevado custo de aquisição e manutenção e baixa capacidade de economia de mão de obra. É preciso também que se pondere aplicações adicionais ou um crescimento futuro da empresa ao avaliar a relação entre custo e benefício da robotização, observando que para uma nova aplicação, é preciso novos acessórios como ferramentas, alimentadores, etc.
7.2.2 - Análise detalhada de custo Etapa 7: Avaliação de período, depreciação e exigências fiscais Se baseado nos seis passos anteriores, é decidido que a robotização é tecnicamente viável e preferido a outras alternativas, uma avaliação econômica detalhada pode ser realizada. A determinação da vida útil (tempo de duração do projeto), levantamento dos impostos envolvidos (bens de capital, lucro etc.) e o cálculo da depreciação são elementos fundamentais desta análise inicial. Etapa 8: Análise do custo do projeto A análise de custo do projeto envolve os seguintes aspectos: Considerações acerca da mão de obra: aqui, deve-se comparar a alternativa de produção manual com a robotizada. Nas últimas duas décadas, nos EUA, o custo da mão de obra cresceu exponencialmente e a tendência é a de um crescimento cada vez mais acentuado (HASEGAWA, 143
1985). Pelo contrário, o custo por hora de um robô tem se mantido relativamente constante e a tende a continuar dessa forma. É interessante observar que o custo de produção/operação do robô diminui à medida que a população de robôs aumenta. Além da redução na mão de obra, deve-se lembrar também que este efeito esta resulta na redução de gastos com benefícios e facilidades voltados para os empregados (estacionamento, área de lazer, etc.). Obviamente, no Brasil, tais considerações não podem ser facilmente estendidas, já que a utilização mais significativa de robôs é um fenômeno relativamente mais recente. Custo de aquisição e partida do sistema: são custos como o de: aquisição de robôs, aquisição de acessórios, contratação de engenheiros, programação, instalação, ferramentas, treinamento, além de seguros e fretes. Despesas de operação: Gastos contínuos com os operadores do robô, suprimento para os alimentadores, ajuste de ferramentas e manutenção. Observa-sedos ainda que existe uma tendência crescente para que o custo deseja eliminação e/ou sucateamento equipamentos dentro do contexto de auto-sustentabilidade considerado nesta análise. A análise econômica sobre os aspectos acima listados pode ser analisada por diferentes técnicas, por exemplo: regra do custo mínimo, método da recuperação de investimento, método da taxa de retorno de investimento ou o método do volume admissível de investimento (HASEGAWA, 1985).
7.3 - MICRO ASPECTOS NA SELEÇÃO DE ROBÔS: A ERGONOMIA DE SISTEMAS ROBOTIZADOS A palavra ergonomia tem srcem Grega e possui como significado: “as leis naturais do trabalho”. Tradicionalmente a ergonomia está relacionada com o estudo dos aspectos anatômicos, fisiológicos e psicológicos de ambientes de trabalho, visando a otimização da eficiência, saúde, segurança e conforto associados a sistemas de trabalho. A correta e efetiva introdução de robôs em ambientes industriais pode se valer da utilização de conceitos de ergonomia. Obviamente, deve ser observado que o planejamento do trabalho de robôs traz características totalmente distintas quando comparados à ergonomia do trabalho exclusivamente humano. Recentemente, algumas técnicas têm sido desenvolvidas para várias aplicações de robôs na indústria. Algumas dessas técnicas possuem bastante similaridades com técnicas tradicionais de ergonomia orientadas ao trabalho humano. O objetivo principal de tais técnicas é o de otimizar o desempenho global do sistema. Especificamente, o trabalho do robô deve estar otimizado para: minimizar o tempo por unidade de trabalho produzido, minimizar o esforço e energia despendido pelos operadores, minimizar o número de perdas e de reusinagem, maximizar a qualidade e maximizar a segurança. Um procedimento geral para a otimização do trabalho de robôs envolveria inicialmente a análise se um operador humano ou um robô, ou ainda se uma combinação de ambos deve ser empregada para o trabalho. Dentro desse contexto, aborda-se os seguintes aspectos: análise das características do trabalho; planejamento de métodos de trabalho e processos; projeto do arranjo físico; avaliação de desempenho; integração da ergonomia humana e de robôs. A seguir os aspectos citados acima são detalhados.
144
7.3.1 Análise das características do trabalho Para essa tarefa, torna-se necessário analisar as características técnicas dos robôs industriais e operadores humanos para realizar a especificação do sistema robotizado. Sob o ponto de vista funcional, robôs e operadores podem assumir papel colaborativo ou serem considerados com papel excludente (ou seja, pode-se optar entre robôs ou operadores humanos para uma determinada tarefa). Não cabe aqui, fazer uma análise detalhada das características robô versus homem, para tal o leitor pode-se referir a (NOF, 1985b). Para a seleção adequada do robô diversas considerações técnicas devem ser analisadas, por exemplo: Tipos de Atividades a serem desenvolvidas: especificação do robô quanto à estrutura e número de graus de liberdade. Se as atividades são repetitivas e envolvem um número reduzido de trajetórias (ou pontos), e se além disso, este número não se altera com freqüência ao longo do tempo, a melhor solução específica nem sempre é umeconômica robô. Eme muitos destes a construção de dispositivos de aplicação é mais por vezes maiscasos, eficiente (Vide Figura 7.3). •
•
•
•
•
•
•
•
Efetuador: seleção do efetuador de acordo com a tarefa a ser realizada (ex: soldagem, pintura, montagem, etc.). Volume de Trabalho: especificação do robô quanto ao raio de ação. Velocidade de Trabalho: especificação da velocidade de trabalho de acordo com a taxa de produção requerida e outras restrições quanto à integração com outros sub-sistemas. Precisão: especificação da rigidez/resolução de posicionamento, de trajetória e de força. Carga admissível: especificação da carga máxima admissível considerando as diversas velocidades de trabalho e amplitudes de movimento. Programação: especificação dos métodos de programação necessários (programação on-line, programação off-line, simulação gráfica, etc.). Interface: especificação dos requisitos de interface com outras máquinas, pessoas, atividades, redes industriais, sistemas supervisórios, etc. Custo: especificação do custo máximo admissível incluindo instalação, treinamento,
manutenção e sucateamento. Fatores Ambientais: especificação dos requisitos de temperatura, limpeza, etc. Segurança e confiabilidade: especificação dos requisitos necessários de segurança e confiabilidade. Treinamento: especificação do treinamento necessário para operação e manutenção do sistema (hidráulica, pneumática, elétrica, eletrônica, programação, etc.). Infraestrutura: tipo de linhas de energia elétrica, rede pneumática, base de montagem, etc. necessários para a operação robotizada. Na Tabela 7.1, as principais categorias de aplicacões de robôs e a razão da sua escolha são enumeradas. •
•
•
•
Tabela 7.1- Principais categorias de aplicação de robôs e a razao de sua utilização. Fonte: (Meyer,1985). 145
Habilidades do robô que justifica o seu uso
Aplicação
Exemplos o ã ç a l u ip n a M
tre o p s n a r T
Manipulação de materiais
o t n e m ia r o s n e S
Benefícios primários da utilização de robôs
o d e d a d li a u q a d a r o h l e M
to u d ro p
e d a d i iv t u d ro p e d to n e m u A
s o t s u c e d o ã ç u d e R
s o lh a b a rt e d o ã ç a n i m li E
s i e v á d ra g a s e d u o s o s o g ir e p
Manipulação de componentes / Paletização / Transporte / Tratamento térmico.
Máquinas de fundição em molde Carregamento / Prensas Automáticas / de máquinas Máquinas de usinagem / Tornos.
X
X
X
X
Pulverizador
Pintura por pulverização / Aplicação de resinas.
X
Soldagem
Soldagem a ponto / Soldagem a arco.
X
Usinagem
Furação / Desbaste / Retífica / Remoção de cavaco / Conformação.
X
Montagem
Encaixe / Fixação.
X
Inspeção
Controle de posição / Tolerância.
X
X
X X X
X
X
X
X
X
X
X
X
X
X
X
X
7.3.2 - Planejamento de métodos de trabalho e processos O método de trabalho determina como recursos limitados como tempo, energia e materiais devem ser utilizados e além disso, é decisivo para a qualidade do produto. Ao contrário do nível macro onde o planejamento está relacionado com o planejamento do processo de produção e do sistema, no nível micro, o planejamento está relacionado com o detalhamento do método de trabalho e do processo. Dentro desse contexto, os seguintes aspectos devem ser considerados: Tipo e quantidade de peças, ferramentas e materiais necessários; Tipo e quantidade de equipamentos periféricos necessários; Tipo e quantidade de operadores (humanos ou robôs) necessários; Especificação de tarefas e operações que devem ser realizadas; Seqüência e precedência de operações; Projeto do arranjo físico; Fluxo de trabalho no arranjo físico. Uma estratégia para o projeto de novos métodos ou para o aperfeiçoamento de métodos existentes compreende sete passos (NADLER, 1981): •
•
•
•
•
•
•
146
•
•
•
•
•
•
•
Determinar o propósito do método; Conceber métodos ideais; Identificar restrições e padrões típicos nas operações; Esboçar métodos práticos, usando princípios como os da Tabela 7.2; Selecionar o melhor método esboçado avaliando as alternativas utilizando critérios como segurança, aspectos econômicos e controle; Formular detalhes do esboço selecionado; Analisar o método proposto para aperfeiçoamento posterior.
7.3.3 - Projeto do Arranjo Físico O melhor arranjo físico é aquele que permite a realização mais eficiente do método de trabalho escolhido. O projeto de um arranjo físico determina, quatro principais características de trabalho: A distância dos movimentos que devem ser realizados para cumprir a tarefa designada; A quantidade de espaço de armazenamento; Os atrazos causados por interferências entre os vários componentes operando no arranjo físico; Os sentimentos e atitudes dos operadores em relação ao seu trabalho. Configurações típicas de arranjo físico são mostrados na Figura 7.4. Na ergonomia tradicional, o arranjo físico é projetado para operadores humanos, dessa forma, a antropometria, a biomecânica e outros fatores devem ser considerados. Em analogia, com relação a arranjo físico para operadores, a dimensão do robô e outras propriedades físicas como as relacionadas na Seção 7.2.1 são determinantes no projeto do arranjo físico, etc.. Adicionalmente, deve-se considerar se as tarefas são variáveis; manipulado por um ou mais robôs; se os recursos são compartilhados por vários robôs; a natureza e o tamanho dos componentes dentro do arranjo físico; e as características das peças que fluem através do arranjo físico. Devido ao fato de todas as operações dos robôs serem controlados via computador, muitos robôs podem ser colocados •
•
•
•
para interagir parauma realizar uma tarefa podendo haver até compartilhamento de recursos. Dentro desse ambiente, situação particularmente complexa ocorre quando operadores humanos devem interagir cooperativamente com robôs dentro de uma seqüência rígida de ações. Dessa forma, o arranjo físico pode ser otimizado com relação a disposição dos equipamentos ou para um controle efetivo das operações envolvidas. Diversos estudos recentes descrevem ferramentas e técnicas para auxílio do projeto do arranjo. Muito embora algumas ferramentas sejam voltadas para a construção de modelos matemáticos para avaliação quantitativa, as ferramentas mais simples e práticas se referem a simuladores (com suporte a programação de robôs) que permitem a construção de modelos de simulação gráfica 3D do arranjo físico, por exemplo, o programa WORKSPACE (Robot Simulations, LTD.). Tabela 7.2- Princípios para projeto de métodos. Fonte: (NOF, 1985b). •
Projete considerando apenas os propósitos básicos do sistema;
•
Considere todos os elementos do sistema e respectivas dimensões; 147
•
Projete inicialmente para padrões típicos antes de considerar as exceções;
•
Coloque o foco sobre “o que deveria ser” ao invés de “o que é”;
•
Considere o arranjo físico e o projeto de dispositivos perféricos;
•
Elimine ou minimize todos os movimentos;
•
•
•
•
Considere a melhor posição para o operador: Mantenha a coluna do operador reta e as mão próximas ao corpo; Mantenha robôs próximos ao ponto de operação para minimizar a distância do movimento; Manipule objetos e grave informações apenas quando necessário;
•
Minimize o uso de todos os recursos: tempo, energia, materiais e dinheiro;
•
Siga os princípios de economia de movimentos.
7.3.4 - Medidas de Desempenho: Uma análise quantitativa do sistema, se faz necessária para todas as etapas, incluindo planejamento, instalação e operação do sistema. Durante as fases de planejamento e de projeto, uma estimativa de desempenho é fundamental para a avaliar a viabilidade técnica e econômica do sistema proposto, além de ser um fator fundamental para comparar e selecionar a melhor entre as diversas alternativas. Durante a fase de desenvolvimento e instalação a medida de desempenho serve como uma referência para uma implementação efetiva. Durante a operação regular do sistema, medidas de desempenho são utilizadas para estabelecer e revisar padrões de trabalho, gargalos e conflitos, além de treinar operadores e estimar o custo e a duração de novas ordens de trabalho. Uma outra função vital é o de permitir examinar novos métodos de trabalho, tecnologias e equipamentos que podem ser utilizados para aperfeiçoar, expandir e modernizar operações existentes. Não cabe nesse texto examinar com detalhes os métodos e ferramentas para estabelecer medidas de desempenho, maiores detalhes podem ser encontrados em (RAJAN, 1985). Cabe aqui ressaltar, entretanto, que várias ferramentas de simulação, gráficas ou não, permitem gerar análises quantitativas do sistema. Exemplos seriam, PROMODEL (Promodel Corporation), ARENA (Systems Modeling, Inc.). AUTOMOD (Auto Simulation), etc.
148
peça
Estações de trabalho de múltiplas tarefas Fluxo de peças robô
Múltiplas entradas e saídas
Sistemas com múltiplos robôs
Linhas de produção multidirecionais
Sistemas de montagem de conjuntos
Sistemas de montagem sucessivos
Figura 7.4 (a)- Arranjos físicos típicos enfatizando o fluxo de materiais (NOF, 1985b).
149
Exemplo 1:configuração de esteira
Exemplo 2:configuração de esteira
Esteira
Esteira
•
Esteira retílinea limita o raio de ação do robô.
•
Esteira curvilínea tirando vantagem do movimento radial do robô.
Exemplo 3
Exemplo 4 Estação de trabalho
Estação de trabalho palete
palete palete palete
Robô • •
Robô
Requer pelo menos 3 eixos de movimento. Movimentos de grande amplitude elevam a complexidade de programação.
• •
Requer pelo menos 3 eixos de movimento. Movimentos são reduzidos em relação ao exemplo anterior, mas a programação ainda não é simples.
Exemplo 6 Exemplo 5 Estação de trabalho
Estação de trabalho
Robô palete
esteira
esteira •
•
Variação de altura entre a estação de trabalho e a palete requer eixos adicionais de movimento do robô. Esforço de programação cresce com o aumento dos eixos de m ovimentação. Exemplo 7
Robô •
•
Requer pelo menos 2 eixos de movimento. A programação é mais simples quando comparada aos dois últimos exemplos.
palete Robô
•
•
150
Estação de trabalho
Exigência menor em relação aos eixos de movimentação. Tarefa de programação simplificada.
Figura 7.4 (b)- Exemplos de considerações em projeto de arranjo físico (NOF, 1985b).
7.3.5 - Integração da ergonomia humana e de robôs. Uma área vital para o estudo de ergonomia é a integração entre operadores humanos e robôs em sistemas de trabalho. Apesar das indústrias historicamente tenderem a separar as atividades dos operadores das atividades dos robôs, principalmente por razões de segurança, existem vários aspectos que devem ser considerados. Exceto em algumas fábricas totalmente automatizadas, operadores sempre trabalham com robôs em diferentes graus de interação. Alguns exemplos de atividades são citadas a seguir: Monitoração de robôs; •
•
•
Intervenção para inicialização, desligamento, reconfiguração, programação, etc.; Manutenção;
Supervisão: gerenciamento e planejamento; Inspeção para controle de qualidade; Sinergia entre robôs e operadores e robôs em montagem ou controle supervisório de robôs realizados por operadores. Em todas as atividades citadas acima, o objetivo é otimizar o desempenho global do sistema. A idéia fundamental é planejar um sistema robotizado com um grau de interação para melhor utilizar as respectivas vantagens de humanos e robôs trabalhando em conjunto. Uma importante corrente de pesquisa em projeto de sistemas de manufatura se refere a sistemas denominados, Sistemas de Automação Balanceados e Sistemas Antropocêntricos de Produção. Nesse contexto, procura-se obter uma perfeita sinergia entre operadores e máquinas visando a construção e operação de sistemas com maior flexibilidade. As considerações dos fatores humanos no planejamento de sistemas robotizados incluem o projeto do arranjo físico, ambiente de trabalho, treinamento, segurança, planejamento do controle supervisório, etc. Maiores detalhes podem ser encontrados em (CAMARINHA-MATOS, AFSARMANESH, 1995, 1996). •
•
•
7.4 - CONCLUSÃO Neste capítulo, alguns aspectos e critérios relacionados a seleção de robôs foram abordados. O sucesso da implantação de sistemas de produção robotizados envolve um processo iterativo de múltiplos passos com foco não apenas sobre o robô mas também sobre o produto, equipamentosde produção, arranjo físico, escalonamento, fluxo de materiais, etc. O processo de seleção contempla duas partes complementares: uma relacionada a macro aspectos, onde uma análise econômica do sistema robotizado é realizada, e uma outra dedicada a micro aspectos, que contempla diversos aspectos como: análise das características de trabalho, planejamento de métodos de trabalho e processos, projeto do arranjo físico, avaliação de desempenho, integração da ergonomia humana e de robôs, etc.
151
REFERÊNCIAS CAMARINHA-MATOS, L.M., AFSARMANESH, H., (eds), Balanced Automation Systems – Architectures and Design Methods, Chapman and Hall, London, 1995. CAMARINHA-MATOS, L.M., AFSARMANESH, H., (eds), Balanced Automation Systems II – Implementation Challenges for Anthropocentric Manufacturing , Chapman and Hall, London, 1996. HASEGAWA, Y. "Evaluation and Economic Justification", In: Handbook of Industrial Robotics, Nof, S. Y. (ed), 1 ed., John Wiley & Sons, 1985. MEYER, J. D., "An Overview of Fabrication and Processing Applications", In: Norf, S. Y. (ed), Handbook of Industrial Robotics, 1 ed., New York, John Wiley & Sons, 1985. NADLER, G., The Planning and Design Professions: An Operational Theory, Wiley, New York, 1981. NOF, S. Y., Handbook of Industrial Robotics, 1 ed., New York, John Wiley & Sons, (1985a). NOF, S. Y., "Robot Ergonomics: Optimizing Robot Work", in: Handbook of Industrial Robotics, Nof, S. Y., 1 ed., John Wiley & Sons, (1985b). SURIN, R., "Quantitative Techniques for Robotic Systems Analysis", In: Handbook of Industrial Robotics, Nof, S. Y. (ed), 1 ed., New York, John Wiley & Sons, 1985.
152
CAPÍTULO 8 SOLDAGEM ROBOTIZADA Alexandre Queiroz Bracarense Teodiano Freire Bastos Filho, Ivanilza Felizardo, Wagner Gomes Rogana
8.1 - DEFINIÇÃO Soldagem automática é definida como sendo a aplicação de componentes mecanizados/eletrônicos para a execução de funções básicas de um procedimento de soldagem, exigindo-se não apenas componentes não-inteligentes para a movimentação do arco elétrico da solda sob a peça de trabalho (ou da peça sob o arco), mas também fixadores para prender os materiais, manipulando tanto o movimento da peça de trabalho, quanto o movimento do arco elétrico. Além disto, considera-se também sensores para monitorar parâmetros de soldagem e a partir deles, controlar o processo. De um modo geral, soldagem automática ainda não está disponível para utilização. Soldagem robotizada é uma forma específica de soldagem automática a qual é definida pela American Welding Society – AWS (Associação Americana de Soldagem) como: “soldagem com equipamento (robô, manipulador, etc.) que executa operações de soldagem, após programação, sem ajuste ou controle por parte do operador de solda”.
8.2 – PROCESSOS DE SOLDAGEM ROBOTIZADOS O primeiro processo de soldagem a ser robotizado foi a soldagem por resistência elétrica por pontos (Resistance Spot Welding - RSW), surgida na década de 70. A robotização deste processo, introduzido inicialmente na indústria automobilística, mudou completamente a concepção da linha de produção de automóveis, pois a precisão e a produtividade aumentaram significativamente. Atualmente, o processo de soldagem com eletrodo sólido contínuo sob proteção gasosa (Gas Metal Arc Welding - GMAW) é, entre os vários processo de soldagem existentes, o mais utilizado em soldagem robotizada. Os processos de soldagem e corte que possuem interface com os robôs industriais atualmente são: • Gas Metal Arc Welding – GMAW, ou processo de soldagem com eletrodo contínuo sob proteção gasosa, também conhecido como MIG/MAG ( metal inert gas/metal active gas ); • Gas Tungsten Arc Welding – GTAW, ou soldagem TIG; • Laser Beam Welding and cuting – LBW, ou soldagem e corte a laser; • Plasma Arc Welding and cutting – PAW, ou soldagem e corte à plasma; • Resistance Spot Welding – RSW ou soldagem por resistência elétrica por pontos.
153
8.3 – SOLDAGEM A ARCO ELÉTRICO ROBOTIZADA 8.3.1 - Soldagem com Eletrodo Sólido Contínuo sob Proteção Gasosa (GMAW) Neste processo, o arco elétrico aquece a peça e o eletrodo (arame) cujo fornecimento é contínuo, fundindo-os e formando o metal de solda. Simultaneamente a tocha de soldagem é deslocada sobre a junta, conforme mostrado esquematicamente na figura 8.1. O equipamento requerido para o processo, mostrado na figura 8.2, inclui uma fonte de energia de soldagem de tensão constante, um alimentador de arame interconectado a uma fonte para controle de velocidade de arame, uma tocha de soldagem, um sistema de fornecimento de gás de proteção, que pode ser uma rede de gás ou um cilindro com reguladores de vazão deste gás.
Figura 8.1– Princípio de funcionamento do processo GMAW
154
Figura 8.2– Componentes do equipamento necessário para o processo de soldagem GMAW
Tanto o arco quanto o metal de solda fundido são protegidos por uma atmosfera de gases (gás ativo (CO2) ou gás inerte (argônio ou hélio), ou misturas de gases ativo e inerte) através da tocha de soldagem. Misturas de gás argônio (inerte) e CO2 (ativo) são freqüentemente utilizadas. As misturas podem variar desde 98% de argônio e 2% de CO2, até 75% de argônio e 25% de CO2. Em algumas aplicações, adiciona-se pequenas quantidades de oxigênio (O 2) ao argônio ou à mistura argônio/CO2. O processo foi inicialmente utilizado na soldagem de alumínio, mas é atualmente muito utilizado na soldagem dos metais comerciais, incluindo o aço carbono e suas ligas, aço inoxidável, e metais não ferrosos como o cobre. Aprimoramentos realizados nos últimos anos permitiram reduzir significativamente os respingos e melhorar a aparência do cordão de solda, tornando o processo um dos mais utilizados na indústria. Algumas vantagens do processo são: • •
•
•
Solda uma grande variedade de metais comerciais e ligas metálicas; Solda em todas as posições, com uma apropriada escolha do modo de transferência metálica; Trabalha com altas taxas de deposição (kg de metal depositado por hora) e não requer interrupções durante a soldagem (alto ciclo de trabalho - tempo de soldagem dividido pelo tempo total de fabricação), devido à continuidade do eletrodo; Praticamente não há escória no cordão, minimizando ou mesmo dispensando a limpeza póssoldagem;
155
•
•
Pode-se trabalhar dentro de uma grande faixa de corrente, o que torna o processo flexível e versátil também para soldagem de chapas finas, chapas chanfradas e soldagem em juntas com abertura de raiz; Os índices de fumo devido à soldagem são relativamente baixos. Algumas limitações do processo são:
•
•
equipamento é mais complexo e de custo mais elevado, se comparado com outros processos de soldagem a arco. O cilindro de gás torna o equipamento menos portátil e de difícil locomoção; Há a necessidade de proteção contra vento (grande sensibilidade a correntes de ar);
•
A de soldas em juntas estreitas normalmente é comprometida devido ao tamanho darealização tocha.
8.3.2. Componentes de um Sistema para Soldagem a Arco Robotizada Um robô industrial consiste de um conjunto de elos conectados e articulados, sendo o primeiro elo vinculado geralmente a uma base fixa, e o último elo, denominado extremidade terminal, é aquele onde a ferramenta tocha de soldagem é fixada. Deste modo, o deslocamento da tocha passa a ser controlado segundo a movimentação especificada pela programação do robô. Existem quatro principais tipos de configurações básicas de robôs industriais que são mais utilizados em operações de soldagem, conforme mostrado na figura 8.3. Os robôs na configuração do tipo retangular ou cartesiana movem a tocha dentro de um volume na forma retangular, nas direções "x", "y" e "z", sendo os mais empregados em processos de soldagem para a produção de cordões de solda lineares. O tipo cilíndrico é similar ao retangular, pois utiliza movimentos de deslizamento em duas direções (vertical (z) e extensão (x)), porém tem uma junta de rotação, a qual estabelece o espaço de trabalho como um cilindro (círculo no plano da base e um retângulo na elevação). O tipo esférico ou polar possui um eixo deslizante e dois eixos rotativos. O espaço de trabalho é uma esfera. Finalmente, o robô do tipo articulado, cujos movimentos são todos de rotação, apresenta um espaço de trabalho mais complexo e irregular, tornando-o adequado para qualquer tipo de soldagem (lineares ou fora de posição). Devido a esta grande mobilidade, este é o mais utilizado atualmente.
156
Figura 8.3 - Configurações básicas de robôs industriais mais empregadas em soldagem. (a) retangular ou cartesiano; (b) cilíndrico; (c) esférico ou polar e (d) articulado. Um fator que pode ser determinante na escolha de um robô, é o seu sistema de integração “robô/fonte de energia” (interface com diferentes sistemas). Muitas empresas preferem adquirir soluções de baixo custo através de soluções dedicadas (sistemas específicos). Entretanto, elas esquecem que a robotização de processos industriais envolve diferentes soluções integradas entre si, necessitando de flexibilidade. Exemplificando, a aquisição de um robô integrado por uma fonte de energia de soldagem de apenas um fabricante, pode significar no futuro, uma limitação, pois impossibilita a utilização de uma fonte de energia de outro fabricante, de características diferentes. Ou seja, a soldagem robotizada fica atrelada a uma aplicação específica cuja modificação, implica na aquisição de uma nova fonte de energia e de um novo robô. empresas fabricantes robôs industriais têm estudado formas vezdemasiadamente mais baratas de fazerAs esta flexibilização e têm de atendido satisfatoriamente o mercado semcada onerar os custos do sistema. A expectativa é que em breve exista uma interface "universal" que flexibilizará mudanças nos processos de soldagem, como a troca de uma fonte de energia padrão de tensão constante para uma fonte de energia pulsada. A tabela 8.1 apresenta os componentes básicos de um sistema de soldagem robotizada ou célula robótica para soldagem. A figura 8.4 apresenta uma célula robótica com configuração básica para soldagem. Tabela 8.1- Componentes básicos de um sistema para soldagem robotizada
COMPONENTES BÁSICOS
CONSIDERAÇÕES IMPORTANTES
Robô
Graus de liberdade, envelope de trabalho (faixa), destreza (precisão), fonte de energia, repetibilidade, velocidade, capacidade de carga, tipo de acionadores.
Controle computacional do robô
Técnica de programação, sistema “feedback” de controle, tamanho da memória e do arquivo de backup, armazenamento do programa, interfaces, softwares especiais de soldagem. 157
Fonte de energia para soldagem Ciclo de trabalho (usualmente 100% é desejável), interface com o controle do robô, precisão (corrige pequenas flutuações da tensão do arco) e habilidade de constantemente iniciar o arco elétrico. Equipamentos e acessórios para Tipo de alimentador do arame (2 ou 4 roletes, por exemplo), soldagem a arco tipo de controle, interface com o controle do robô, tocha de soldagem (capacidade, precisão, dimensões), cabos (comprimento e montagem), ferramentas para alinhamento, estação de limpeza do bocal da tocha, estação do operador e equipamento de segurança.
Figura 8.4 – Célula robótica para soldagem – configuração básica. (a) robô; (b) controle; (c) fonte de soldagem; (d) alimentador de arame; (e) rolo de arame; (f) cilindro de gás; (g) tocha de soldagem e (h) mesa de soldagem
8.4 – CONSIDERAÇÕES QUANTO À PROGRAMAÇÃO DO ROBÔ PARA SOLDAGEM Quando se faz uma solda, deseja-se sempre fazer uma solda perfeita. Em qualquer método de aplicação, exceto na soldagem manual, algum tipo de controle ou mecanismo normalmente é requerido. Este controle é necessário para rodar o programa que controla os parâmetros de soldagem para depositar a solda. Em soldagem manual o controle é realizado pelo soldador. Em processos semi-mecanizados um controle no sistema de alimentação de arame 158
inicia a alimentação, permite a passagem de corrente e libera o gás de proteção, quando o soldador aciona o gatilho da tocha. Em soldagem robotizada entretanto, este procedimento requer um sistema mais complexo e funções adicionais de controle, incluindo movimento da tocha e até movimento do sistema de fixação das partes a serem soldadas. Quanto maior a complexidade necessária, tal como oscilação da tocha, controle de corrente (monitoração de parâmetros), etc. mais complexo é o sistema de controle. Atualmente, a maioria dos robôs industriais vêm com modernos sistemas de controle que lhes confere uma grande capacidade de produção de soldas com qualidade.
8.4.1 - Definições Básicas •
•
•
•
•
•
•
Alguns termos e controles básicos utilizados atualmente em soldagem robotizada são: Tempo de pré-fluxo: Tempo entre liberar o gás e abrir o arco elétrico – Preflow time (prepurge) – Durante este intervalo de tempo, o gás de proteção flui da tocha e gera uma nuvem que afasta o ar da região de abertura do arco. A utilização deste pré-fluxo, ajuda a prevenir problemas no início do cordão de solda. Em alguns sistemas, durante este intervalo de tempo, a circulação de água para refrigeração da tocha é aberta; Tempo, corrente e tensão de abertura: Intervalo de tempo – start time - antes da soldagem onde a corrente - start current - e a tensão - start voltage - são ajustadas acima ou abaixo da corrente e da tensão de soldagem para abertura do arco – Esta regulagem ajuda a abrir o arco no início do cordão, onde as peças estão frias. Este procedimento também ajuda a prevenir problemas no cordão e promove uma deposição homogênea em toda a extensão da junta. Neste intervalo inicia-se a alimentação de arame; Tempo de subida de corrente: Tempo entre a aplicação da corrente de abertura do arco e a corrente de soldagem – upslope time – Durante este tempo a corrente aumenta ou diminui para a corrente de soldagem. Em alguns casos (chapas finas) aplicam-se pulsos de corrente – hot start current – para garantir que o arco não seja extinto e que a corrente de soldagem seja alcançada satisfatoriamente; Tempo de retardo para início do movimento da tocha: Tempo para iniciar o movimento da tocha após a abertura do arco – Travel start delay time – Durante este intervalo de tempo, que pode coincidir com o tempo de abertura e o tempo de subida da corrente, o arame inicia a fusão, depositando-se na junta, porém sem movimento da tocha. Esta fusão enche o início do cordão garantindo uma deposição homogênea em toda a extensão da junta; Tempo de soldagem: Tempo entre o início e o término da soldagem onde a corrente de soldagem – welding current – e a tensão de soldagem – welding voltage são aplicadas dependendo do que esta sendo soldado; Tempo de descida da corrente: Tempo entre a corrente de soldagem e a extinção do arco e solidificação da cratera no final do cordão – downslope time - Durante este tempo controles de enchimento (tempo e corrente ) da cratera ( crater fill time and current ) podem ser utilizados. Na maioria das vezes a tocha pára no início deste intervalo e o metal fundido do arame se deposita na cratera, evitando uma cratera com depressão, garantindo assim uma deposição homogênea em toda a extensão da junta; Tempo de parada de alimentação de arame: Intervalo de tempo no final do enchimento da cratera e a extinção completa do arco, onde a corrente e a tensão são reduzidas gradativamente permitindo um aumento do comprimento do arco – burnback time – A 159
•
•
utilização deste tempo na programação da soldagem, facilita a reabertura do arco pois evita que o arame fique “colado” na cratera. Tempo de pós-fluxo: Tempo entre a extinção do arco e o fechamento do gás – Postflow time (postpurge) – Durante este intervalo de tempo, o gás flui da tocha após a extinção do arco. A utilização deste pós-fluxo, ajuda a prevenir problemas (contaminação) no fim do cordão de solda afastando o ar da região onde a cratera está solidificando. Em alguns sistemas, a água que circula pela tocha ainda fica aberta durante este intervalo de tempo preservando a mesma; Ciclo de soldagem: O ciclo de soldagem - weld cycle time – é o tempo total requerido para executar todos os eventos envolvidos para realizar a solda. Ele é considerado desde o primeiro instante de pré-fluxo até o último instante de pós-fluxo. O ciclo de soldagem está relacionado com a produção durante a soldagem robotizada.
8.4.2 - Seqüência para a Programação A programação do robô para a realização de soldas, segue a seqüência abaixo: a) Calibração da posição da tocha de soldagem para assegurar que o robô operará dentro da sua faixa de tolerância; b) Localização dos componentes de trabalho (mesa, gabaritos, fixadores, etc.) e definição do tipo de fonte de energia; c) Definição do caminho que será seguido pela tocha de soldagem do robô, assim como a localização dos cordões de solda. Alguns robôs são do tipo "ensino e repetição (playback)" (armazenamento na memória do controlador, dos pontos a serem percorridos) e outros devem ser programados "off-line". O controle computacional de um robô (movimentação) pode ser realizado de três formas diferentes: • Ponto-a-ponto: quando o robô tem a habilidade de se mover de um ponto específico para outro, mas sem poder parar em um ponto arbitrário não definido anteriormente (entre os pontos); •
Caminho contínuo: habilidade de mover tomando como referência pontos específicos que definem um caminho, mas a trajetória seguida pode não corresponder aos pontos de programação; • Caminho controlado (trajetória computada): o caminho entre os pontos programados é controlado, podendo ser definido através de uma interpolação linear (linha reta) ou por uma interpolação parabólica, bastando para isso que as coordenadas inicial e final, e o tipo de interpolação sejam informadas ao controle. O controle computacional dependerá do tipo de robô e do programa implementado, entretanto a maioria dos robôs para soldagem utilizam trajetória computada. d) Definição das condições de soldagem a serem utilizadas e que devem estar atreladas às coordenadas de movimentação do robô. Nesta etapa da programação são inseridos na programação, dois arquivos, o primeiro, no início da trajetória onde será depositado o cordão, contém informações para abertura do arco. O segundo, no final da trajetória, contém informações para extinção do arco.
160
e) Refinamento do programa através da verificação do desempenho e introdução de alguns controles básicos para soldagem. Algumas vezes necessita-se editar o programa novamente para se obter a correta soldagem da peça. Por exemplo, ensina-se um robô de soldagem a soldar uma parte específica de um componente direcionando ou orientando a tocha de soldagem, posicionada no final do braço do robô. A movimentação ou manipulação das juntas do robô, assim como a caminho a seguir, é realizado por uma interface homem-máquina (IHM), ou seja, “ teach pendant”, através de botões de controle ou “joystick”. Pontos ao longo da trajetória são inseridos e armazenados na memória do controle computacional do robô (a programação ensino-repetição é realizada pelo programador do robô que fisicamente guia a tocha de soldagem ao longo da trajetória a ser seguida, armazenando alguns pontos). O robô irá repetir este programa tendo como referência os pontos da posição de calibração do robô. Caso a espessura ou dimensões da peça seja diferente da utilizada para a programação da trajetória e das condições de soldagem do robô, o cordão de solda será posicionado em uma posição diferente da desejada, ou seja, não cobrirá completamente o chanfro ou a junta, ou o fará de forma incompleta. Consequentemente, a precisão e os dispositivos de fixação necessitam ser modificados para o sucesso da operação. Esta variação das dimensões da peça, entretanto, podem ser superadas através do uso de sensores especiais e sistemas de controle adaptativos desenvolvidos especialmente para operações de soldagem robotizada a arco.
8.4.3 - Exemplo de Seqüência de Programação em Soldagem GMAW A figura 8.5 apresenta um fluxograma de programação de uma soldagem robotizada GMAW. Neste procedimento, definiu-se que a mesa giratória tem duas posições (LADO-A e LADO-B) com ângulo de 180º de defasagem. Os sensores para informar a posição da mesa giratória podem ser óticos, magnéticos, capacitivos, indutivos ou mecânicos, podendo estar localizado na mesa ou no atuador (verificar esta possibilidade junto do fabricante). WELD JOB – A: Inicialmente, verifica se a mesa giratória encontra-se no LADO-A e se os fixadores estão atuados. A seguir, desloca-se para o início da junta, executando o programa de soldagem. Adiciona uma unidade ao contador de limpeza da tocha. WELD JOB – B: Inicialmente, verifica se a mesa giratória encontra-se no LADO-B e se os fixadores estão atuados. A seguir, desloca-se para o início da junta, executando o programa de soldagem. Adiciona uma unidade ao contador de limpeza da tocha. WELD JOB – C: Inicialmente, desloca a tocha de soldagem até a estação de limpeza da tocha (acessório do robô para retirar os respingos e a seguir, pulverizar anti-respingo no bocal da tocha, automaticamente). Acionar o dispositivo automático de limpeza da tocha, quando o TCP estiver na posição de inicialização. “Zerar” o contador de limpeza da tocha.
161
Girar a mesa: LADO-A (SAÍDA#2=ON e SAÍDA#3=OFF)
Mover o robô: Posição Inicial Fixadores atuados (SAÍDA#1=ON)
Sinal do operador (ENTRADA#1=ON)
WELD JOB - A
Verificação do LADO-A (ENTRADA#3=ON) Se ENTRADA#3=OFF Retorna MASTER JOB
Execuçã o d os cordões de solda
Adicionar uma unidade ao CONTADOR de limpeza da tocha
Girar a mesa: LADO-B (SAÍDA#2=OFF e SAÍDA#3=ON) Fixadores atuados (SAÍDA#4=ON)
Sinal do operador (ENTRADA#2=ON)
WELD JOB - B
Verificação do LADO-B (ENTRADA#4=ON) Se ENTRADA#4=OFF Retorna MASTER JOB
Execuçã o d os cordões de solda
Adicionar uma unidade ao CONTADOR de limpeza da tocha
WELD JOB - C (Se CONTADOR > 100)
162
LEGENDA ENTRADA#1: LADO-A liberado pelo operador
SAÍDA#1: Fixador atuando no LADO-A
ENTRADA#2: LADO-B liberado pelo operador
SAÍDA#2: Girar a mesa para o LADO-A
ENTRADA#3: Mesa posicionada no LADO-A
SAÍDA#3: Girar a mesa para o LADO-B
ENTRADA#4: Mesa posicionada no LADOB
SAÍDA#4: Fixador atuando no LADO-B
COR VERDE: Seqüência do MASTER JOB
COR AZUL: prosseguimento
Verificação
condicional
COR CINZA: Seqüência do WELD JOB Figura 8.5- Fluxograma da programação de uma célula robotizada GMAW
MASTER JOB: Girar a mesa para o LADO-A. Mover o robô para a posição inicial, informando quando a estação de trabalho está pronta. Aguardar o sinal do operador do robô informando que as peças encontram-se em posição de soldagem (através de uma botoeira). Executar o programa WELD JOB-A (nesse momento, o operador está posicionando as partes a serem soldadas no LADO-B). Girar a mesa para o LADO-B e executar o programa WELD JOB-B, somente após a verificação do posicionamento das peças a serem soldadas (nesse momento, o operador retira o conjunto soldado e posiciona novas partes a serem soldadas no LADO-A). Verifica se há necessidade de limpeza da tocha (execução do WELD JOB-C). Esse programa é executado até que o operador decida pela interrupção do mesmo, ou que seja fabricado um número predeterminado pela produção, ou ocorra algum problema (colisão por exemplo).
8.5 – PROJETO DE JUNTA E TOLERÂNCIAS PARA A SOLDAGEM ROBOTIZADA Um robô, como um soldador humano, solda qualquer junta. Entretanto, quando se considera a possibilidade de robotização da soldagem de uma determinada peça ou dispositivo, deve-se considerar também a repetibilidade. Em outras palavras, apesar de ser possível utilizá-lo para soldagens de recuperação e manutenção, deve-se considerar sempre a utilização de um robô para soldagens seriadas e neste caso, para obter cordões de solda iguais. Para isto, deve-se garantir que as peças a serem soldadas estejam dentro de tolerâncias adequadas. Neste caso, o projeto das juntas deve considerar o acesso e a abertura da junta tal que permita a deposição homogênea do metal de solda. Quanto à junta, normalmente tem-se considerado apenas soldagens em passes únicos. Assim, juntas sobrepostas, de topo, em “T” ou “L” têm sido utilizadas com sucesso. A deposição em chanfros também é possível, entretanto, em alguns caso, devido à diluição do material depositado, o controle do comprimento do arco fica comprometido e torna-se difícil garantir uma qualidade adequada para o que se deseja. Em casos específicos, onde sistemas de monitoração são utilizados, o controle do robô ajusta a distância entre a tocha e a superfície dos cordões garantido assim que o comprimento do arco fique constante durante a deposição dos cordões. Quanto à tolerância, algumas regras práticas têm sido utilizadas com sucesso. Uma delas diz que a abertura entre partes a serem soldadas não pode ser superior à metade do diâmetro do eletrodo. Neste caso, se o diâmetro do eletrodo for de 1,2 mm, a repetição do processo só 163
de
ocorrerá se as aberturas entre as juntas não forem superiores a 0,6 mm. De um modo geral, principalmente em soldagem robotizada de peças estampadas, por exemplo, é muito difícil garantir uma constância nas tolerâncias entre as peças. Neste caso, outros fatores devem ser considerados para conseguir uma adequada deposição, mesmo que os cordões não fiquem exatamente iguais, porém que fiquem dentro de uma faixa de aceitação. Dentre os vários fatores a serem considerados, citam-se o processo de soldagem, a posição de soldagem e os parâmetros de soldagem (corrente, tensão, velocidade de soldagem, tipo de gás, etc.).
8.6 – APLICAÇÃO, ESCOLHA E AQUISIÇÃO DE ROBÔS PARA SOLDAGEM A escolha de um robô está relacionada com a tecnologia a ele agregada. Deve-se adquirir um robô com a maior qualidade possível e de melhor repetibilidade. Atualmente, um robô de seis graus de liberdade é o mais indicado para as operações em soldagem, por ser mais flexível (consegue alcançar todos os pontos de seu espaço de trabalho) que aqueles de menores graus de liberdade. Além disso, deve-se optar por robôs que possuam servo motores alimentados por corrente alternada (CA). Essa é uma tecnologia recente na área de robótica que elimina a necessidade do robô ir à posição inicial, sempre que for ligado. Outro fator importante a ser observado é a segurança. Embora a responsabilidade da segurança na célula robótica é da empresa e do operador, o robô deve fornecer vários níveis de segurança. A segurança deve ser desde o total travamento dos servos motores, até a implantação de barreiras físicas entre o robô e o operador, não se esquecendo da verificação do programa sem que ocorra a abertura do arco elétrico. As juntas dos braços do robô movem-se rapidamente se for utilizado motores elétricos. As máximas velocidades encontram-se entre 6.000 e 9.000 cm/min, velocidade essa muito superior à velocidade de soldagem dos processos a arco elétrico. Usualmente, o robô soldará com a mesma velocidade ou ligeiramente mais rápido que um soldador. Mas a elevada velocidade de manipulação reduz o tempo de movimentação entre os cordões de solda e entre a troca de peças, portanto, reduzindo o tempo total de fabricação por soldagem. Como um exemplo, robôs utilizados para soldagem de chapas de aço que compõem cascos de navios utilizam velocidades de soldagem entre 30 a 90 cm/min, com uma velocidade de alimentação de arame entre 9 a 15 m/min, utilizando um eletrodo de 1,2 mm de diâmetro. Expressões empíricas utilizadas neste tipo de aplicação permitem obter a velocidade de soldagem ( v sol ) e a velocidade de alimentação de arame ( wsol ):
v sol
=
wsol πφ
2
4S
e
wsol
=
AI
+
BhI
2
,
onde:
φ é o diâmetro do eletrodo, S é a área de deposição, 164
h é a extensão do eletrodo, I é a corrente de soldagem, e A e B são constantes empíricas.
Para determinar qual robô de soldagem é mais indicado para uma planta industrial, deve-se considerar alguns pontos muito importantes e que podem alterar significativamente o projeto srcinal da peça a ser soldada. A primeira consideração está relacionada com a peça a ser soldada. No caso de ser um projeto novo, deve-se levar em conta a possibilidade da soldagem ser realizada em pontos que dêem a ela resistência suficiente para utilização, porém que minimizem tensões residuais, distorções, elevados campos de temperatura, etc. Os gabaritos devem ser simples, porém eficientes e de preferência, deve-se optar para soldagem na posição plana ou horizontal. A tolerância entre as peças deve ser a mínima possível, de modo a permitir o encaixe entre as mesmas ou no conjunto. Deve-se sempre pensar em melhoria de tolerância da peça. Ainda sobre o gabarito, deve-se considerar o tamanho e o peso do conjunto. Gabaritos em mesas giratórias, onde enquanto um conjunto está sendo soldado, o outro está sendo montado para soldagem, têm sido muito utilizadas. A integração entre estas mesas e o robô são relativamente fáceis de serem realizadas. Em alguns casos, pode-se optar por sistemas com alguns graus de liberdade que podem ser integrados com o robô. Neste caso, aumenta-se o número de graus de liberdade, porém, aumenta-se também a complexidade de programação. Finalmente, as considerações quanto à produção. O número total de soldas e o comprimento de cada solda estão relacionados com o tempo de soldagem e com o gasto com o material de consumo. Em alguns casos, não é possível reduzir o comprimento das soldas para compensar estes dois fatores. Na maioria dos casos entretanto, levando em consideração a estabilidade do robô, pode-se aumentar as velocidades de intervalo entre cordões compensando o tempo de soldagem. Deve-se sempre ter em mente a meta a ser atingida no projeto de automação, ou seja, se deseja-se aumentar o volume da produção com a robotização do processo de soldagem, melhorar a qualidade das peças ou realizar procedimentos de soldagem com segurança. Neste caso, restrições orçamentárias também devem ser consideradas para que não haja decepção após a implementação do processo, o que se for feito obedecendo o bom senso, dificilmente acontece.
8.7 – MONITORAÇÃO EM PROCESSOS DE SOLDAGEM A ARCO ROBOTIZADA Uma forma de aumentar a confiabilidade na soldagem robotizada é considerando a utilização de sistemas de monitoração com sensores. Os sensores têm como função a obtenção de informações sobre o ambiente onde encontra-se o robô, além de informações sobre o processo (parâmetros) de soldagem. As informações obtidas podem ser utilizadas para adaptar o robô ao ambiente ou ajustar os parâmetros de soldagem. Nestes casos, os ajustem podem ser automáticos, dependendo de um sistema de controle acoplado ao sistema de monitoração ou realizando ajustes após repetidas operações e testes. Quando sensores são utilizados na soldagem a arco, seja robotizada ou não, eles operam em um meio adverso e agressivo à sua integridade. A presença do arco elétrico implica em vários problemas para a operações dos sensores, sendo o calor produzido pelo arco, o fator que provoca as principais limitações para uma operação correta. Além do calor, outros fatores também afetam os sensores: a luz intensa provocada pelo arco afeta os sistemas que empregam visão artificial; os intensos campos eletromagnéticos provocados têm influência sobretudo nos sensores indutivos; a 165
deformação ou desvio do eletrodo tem influência sobre os sensores de contato elétrico; a flutuação da tensão de alimentação, o desgaste do eletrodo, salpicos e as mudanças na forma do arco, provocam erros nos diversos sensores de arco. A escolha de um sistema de monitoração ou do sensor mais indicado para uma determinada aplicação não é uma tarefa fácil e, da mesma forma que a própria escolha do robô, a escolha do sistema deve ser realizada com bom senso. Os fatores considerados anteriormente levaram ao desenvolvimento de diversos sistemas de refrigeração e proteção dos sensores para que pudessem operar no ambiente de soldagem a arco. Uma vez protegidos, os sensores podem ser utilizados para localizar a estrutura a ser soldada, buscar o cordão de soldagem e seu início, extrair as características geométricas da junta, e guiar a tocha de soldagem ao longo do cordão de solda até o ponto final. Paralelamente estarão operando sensores para detectar possíveis obstáculos na trajetória do robô e para a monitorização do processo de soldagem, e finalmente, outros sensores realizarão o controle de qualidade da soldagem. Assim, as possíveis tarefas a serem realizadas pelos sensores em um processo de soldagem devem ser: a) Informação geral sobre a área de trabalho: Para realizar esta tarefa, é necessário um sensor que possa proporcionar informações globais da estrutura a ser soldada. O sensor deve identificar todas as partes da estrutura, formas, tipos e dimensões aproximadas, devendo proporcionar informação tridimensional da mesma. Um sensor de visão artificial, utilizando câmaras de vídeo CCD, pode cumprir este objetivo. Para a obtenção de informação 3D (tridimensional) é basicamente utilizada a técnica de triangulação, apesar de que também se possa utilizar uma câmara fixae um sensor de distância (ultra-som ou laser). b) Detecção da junta, extração das características geométricas e acompanhamento da deposição do cordão de solda:
Com a informação proporcionada pelo sensor de informação geral, pode-se posicionar o robô na estrutura a soldar. A partir daí começa a operação dos outros tipos de sensores cuja tarefa será encontrar o cordão de solda, extrair as características geométricas da junta e posteriormente realizar o acompanhamento da deposição do cordão desolda. A operação de encontrar a junta significa encontrar sua posição geométrica antes que comece o procedimento de soldagem. A operação para extrair as características geométricas da junta consiste em obter a largura, profundidade e área de deposição a ser preenchida pelo cordão de solda. Isto permite que o sistema robotizado realize o controle dos parâmetros de soldagem com a finalidade de proporcionar a quantidade de material necessário para cada tipo de junta, a velocidade de soldagem (equação 1) e até determinar a amplitude do movimento de tecimento a ser realizado pela tocha, quando for o caso. Já para realizar o acompanhamento da deposição, deve-se ter em mente que durante o processo de soldagem por arco ocorrem deformações no cordão de solda devido às altas temperaturas presentes. Assim, é necessário um sensor que possa seguir o cordão de solda, mesmo na presença destas deformações. A detecção do cordão de solda pode ser feita mediante uma série de passos ou em uma única operação. Podem ser empregados sensores de contato ou de não-contato. Os sensores de contato podem ser puramente mecânicos, elétricos ou uma mescla dos dois (eletro-mecânico). Também podem ser utilizados transdutores de ultra-som, dos tipos utilizados em ensaios não-destrutivos, em 166
contato com a peça a soldar. Além de detectar a junta, este sensor pode ser utilizado também para acompanhamento da deposição do cordão de solda. Os sensores que proporcionam medidas do cordão de solda, sem contato com o mesmo, podem ser de diversos tipos: óticos, ultra-sônicos, indutivos, de arco, etc. Estes tipos de sensores possuem a vantagem de, ao não operar emcontato com as peças a soldar,não se danificam facilmente. • Sensores ópticos: Os sensores ópticos (luz visível ou laser) podem ser utilizados tanto para encontrar e seguir o cordão de solda, quanto para extrair as características geométricas das juntas. Estes sensores são classificados em sensor pontual (fotodiodo ou fototransistor), sensor linear (CCD, MOS e PDS) e sensor de área (imagem por CCD ou MOS), de acordo com a forma com que recebem a luz internamente. • Sensores ultra-sônicos: Os sensores ultra-sônicos operando no ar também podem ser utilizados para avaliar a dimensão de uma junta. Outro tipo de sensor de não-contato utilizado para este propósito o indutivo. Umser sensor de arco, utiliza o próprio arco elétricodadodeposição processo do de soldagem,étambém pode utilizado comoque sensor para acompanhamento cordão de solda, e até a radiação térmica (captada por câmaras infravermelhas) emitida pela peça que está sendo soldada pode ser utilizada para este fim. c) Detecção de obstáculos: O robô deve ser capaz de operar no ambiente de soldagem, detectando possíveis obstáculos que impeçam seus movimentos e que ocasionaria uma colisão, se a ação de evitá-los não seja executada. A detecção de obstáculos pode realizar-se por um sensor de informação geral (visão artificial), capaz de identificar todos os obstáculos existentes no trajeto do robô, ou por sensores locais colocados no próprio robô(ultra-som). d) Monitorização: A monitorização de um processo de soldagem consiste em detectar variações no processo, verificando, por exemplo, a posição relativa da estrutura a soldar, e a presença do arco elétrico. Os sensores que podem ser utilizados para a monitorização são os sistemas de visão artificial, captando imagens da peça que se solda e os sensores de infravermelho, medindo a radiação térmica da peça. A monitorização também pode ser combinada com sensores de corrente e tensão do arco, ou até com a emissão acústica produzida durante oprocesso de soldagem. e) Controle de qualidade da soldagem: Uma vez que o processo de soldagem tenha finalizado, entram em operação os sensores para avaliar a qualidade do cordão de solda, identificando problemas como excesso de solda ou defeitos que requerem reparação ou modificações no processo. Para esta aplicação, podem ser utilizados sensores óticos ou sensores de ultra-som em contatodireto com a peça. f) Segurança na área de trabalho: A finalidade dos sistemas de segurança é basicamente a proteção do operador quando este está trabalhando próximo ao lugar de soldagem. Os sensores utilizados para esta aplicação devem detectar a violação do ambiente de soldagem durante as operações do robô. Os sensores de segurança também podem ser utilizados como sensores auxiliares ao sensor utilizado para detecção de obstáculos, de forma a evitar colisões entre o robô e o ambiente de operação. Os sensores 167
normalmente empregados utilizam métodos óticos como cortinas de luz, sensores ultra-sônicos, dispositivos mecânicos usados como barreiras, e dispositivos sensíveis à pressão.
8.8 – PROBLEMAS DA ROBOTIZAÇÃO DA SOLDAGEM Uma boa maneira de se soldar com qualidade em elevadas velocidades de soldagem (acima de 60 cm/min) é consultar o manual do fabricante do robô, ou consultar diretamente o fabricante. Para isso, é necessário o correto posicionamento da tocha (inclinação e ângulo de ataque da tocha de soldagem), uma adequada escolha do tipo de transferência do metal (função da espessura e tipo do material, do gás de proteção, da fonte de energia e da corrente e da tensão de soldagem) e uma exata determinação dos parâmetros de soldagem. A não observância nesses fatores poderá produzir descontinuidades como: porosidade, falta de fusão, falta de penetração, mordedura, perfil incorreto da solda e trincamento. Um engenheiro de soldagem que trabalha em uma empresa que está implantando soldagem robotizada deve ter em mente que o robô é uma máquina quase perfeita. Ele segue todas as instruções que foram predeterminadas para ele seguir. Por outro lado, a soldagem é um processo complexo e impreciso, quase imperfeito. Assim, quando se vai realizar uma soldagem utilizando o robô, deve-se levar em conta todos os fenômenos possíveis de acontecer, desde o sopro do arco por correntes de vento até problemas de condução de calor em regiões da peça onde a dissipação é limitada. Um robô que não utiliza sensores não poder ver a solda, nem tem sentimento do que está fazendo. Não é como o soldador humano que ajusta o deslocamento da tocha (ângulo, distância, etc.) para compensar eventuais problemas durante a soldagem.
8.9 - CONSIDERAÇÕES FINAIS A robotização de um processo produtivo tem vários benefícios: aumento da produtividade, redução dos custos de mão-de-obra, redução dos custos com materiais, redução do número de operadores requeridos na soldagem de um componente, aumento da qualidade e alto grau de segurança (redução do número de afastamentos de empregados por lesões). Entretanto, antes de se decidir sobre a automatização de um processo utilizando robôs para soldagem, deve-se verificar diversos fatores como: definição das metas a atingir (aumento de volume ou melhoria da qualidade), necessidade de melhoria do ajuste entre as peças, tempo de retorno do investimento, definição dos tipos de equipamentos e acessórios necessários, forma de integração com outros sistemas e a capacidade de armazenamento de programas na memória do robô.
8.10 - REFERÊNCIAS AMERICAN WELDING SOCIETY, Jefferson’s Welding Encyclopedia, 18 ed., Miami, 1997. AMERICAN WELDING SOCIETY, Welding handbook, v.1 e 2, 8 ed., Miami, 1991. ASM, "Welding, Brazing and Soldering", In: ASM Handbook, v. 6, 1994. NOMURA, H., "Sensors and Control Systems in Arc Welding", In:Technical Commission on Welding Processes, Japan Welding Society, 1991. THE LINCOLN ELECTRIC CO., The procedure handbook of arc welding, 13 ed., Miami, 1994. FILHO, T. F. B., Seguimiento y Análisis de Entornos de Soldadura por Arco Automatizada Mediante Ultrasonidos, Ph.D. Dissertation, Universidad Complutense de Madrid, Espanha,1995. 168
CULLISON, A., "Get that Spatter Under Control", Welding Journal, Miami, p.43-45, 1999. BRACARENSE, A. Q., Estudo da Sensibilidade do Arco de Soldagem TIG à Variações Geométricas do Anodo, Dissertação de Mestrado, DMt/UFMG, 119p, 1986. AMERICAN WELDING SOCIETY, 74th Annual AWS Convention Abstracts, 352 p., Houston, 1993. CHIN, B. A., MADSEN, N. H., GOODLING, J.S., "Infrared Thermography for Sensing the Arc Welding Process", In: Welding Journal, v. 62, N. 9, pp. 229s-234s, 1993. BONCROFT Corp., "Adaptive welding cells: trend of the future", Welding Journal, Miami, p.62-63, 1989. GARCÍA, C., "Exámenes Radiográficos y por Ultrasonidos. Optimización con Ayuda de Ordenador", Metalurgia y Electricidad, N. 596, pp. 58-63, 1988. UMEAGUKWU, C., MCCORMICK, J., "Investigation ofan Array Technique for Robotic SeamTracking of Weld Joints", IEEE Transactions on Industrial Electronics , v. IE-38, N. 3, pp. 223-229, 1991. CULLEN, C.P., "An Adaptive Robotic Welding System Using Weld-Wire Touch Sensing", Welding Journal, v. 67, N. 11, pp. 17-21, 1988. CYCLOMATIC INDUSTRIES Inc., "Joint Tracker Attacks Uneven Fitup". Welding Journal, 64 p., Miami, 1989. PLACKO, D., CLERGEOT, H., MONTEI, F., "Seam Tracking Using a Linear Array of Eddy Current Sensors", Proceedings of the 5th Int. Conf.on Robot Vision and Sensory Controls , Kempston UK, IFS, pp. 557-568, Amsterdam, 1985. TAYLOR, D. S., Welding and Metal Fabrication, 58(6), pp. 200-204, 1990. KARASTOJANOV, D. N., NACHEV, G. N., "Adaptative Control of Industrial Robots for Arc Welding", Proceedings of the 9th Triennial World Congress of IFAC , Pergamon Press, pp. 2405-2410, Budapest, 1984. GOLDBERG, F., "Inductive Seam-Tracking Improves Mechanized and Robotic Welding ", Automation and Robotization in Welding and Allied Processes , Pergamon Press, pp. 393-400, Strasbourg, 1985. SADLER, H. A., "A Look at the Fundamentals of Gas Metal Arc Welding", Welding Journal, Miami, p.45-47, 1999. DUTRA, J. C., OLLÉ, E L.F., XVII Encontro Nacional de Tecnologia da Soldagem, Associação Brasileira de Soldagem, pp. 245-264, 1991. PEREZ, J.B., "Consideraciones sobre la Evolución de la Aplicación de los Ensaios con Ultrasonidos y sus Criterios de Aceptación en Soldadura de Aceros",Deformaciones Metálicas, N. 63 pp. 38-45, 1981. AGAPAKIS, J.E., Wittels, N., Masubuchi, K., "Automated Visual Weld Inspection for Robotic Welding Fabrication", In: Automation and Robotisation in Welding and Allied Processes, Pergamon Press, pp. 151-160, Strasbourg, 1985. JONES, L. A., EAGAR, T. W., LANG, J. H., "Images of a steel electrode in Ar-2%O2 shielding during constant current gas metal arc welding", Welding Journal, p.135s-141s, Miami, 1998. DORN, L. e RIPPL, P., "Fundamental and Practical Approaches to the Reliability of Welded Structures", Japan Welding Society. pp. 37-42, 1982. TREMONTI, M. A., e ALVES, A. S., “Soldagem Robotizada: o caso de sucesso da substituição da soldagem a arco elétrico com proteção gasosa manual pela robotizada.” Soldagem & Inspeção, n.12, pp.14-28, São Paulo, 1998. 169
BONNEY, M. C. e YONG, Y. F., R " obot Safety", IFS (Publications) Ltd., UK, 1985. Cook, G.E. et al., Proceedings of the Second Int. Conf. Developments in Automatic and Robotic Welding, The Welding Institute, paper 7, 1987. JOHNSEN, M. R., "Automated system keeps steel rolling in one door and out the other", Welding Journal, Miami, p.49-51, 1996. SCHNEE, M., "What to know before choosing a robotic welding system", Welding Journal, Miami, p.59-62, 1993. HOWARTH, M.P. e GUYOTE, M.F., "Eddy Current and Ultrasonic Sensors for Robot Arc Welding", Sensor Review, pp. 90-93, 1983. GUSTAFSON, N. D., Welding Journal, v. 72 , n. 5, pp. 43-45, 1993. CARLSON, N. M. e JOHNSON, J.A., "Ultrasonic Sensing of Weld Pool Penetration",Welding Journal, v. 67, n. 11, pp. 239-246, 1987. MODENESI, P.J., Ph.D. Dissertation, Cranfield Institute of Technology, 308p, 1990. PANASONIC FACTORY AUTOMATION, "Robotics Enhance Auto Parts Production", Welding Journal, Miami, pp.63-65, 1990. FENN, N. e STROUD, R.R., "Development of an Ultrasonically Sensed Penetration Controller and Seam Tracking System for Welding Robots", U.K. Robotics Res., IMECHE Conf. Pub. London, Mechanical Engineering Publications Ltd., pp. 105-108, 1984. FENN, R., "Ultrasonic Monitoring and Control duringArc Welding",Welding Journal, pp. 18-22, 1985. KSIAZKIEWICZ, R., e GUSTAFSON, N., "Robotic GTAW may prove key to higher gas turbine engine production", Welding Journal, Miami, p.33-37, 1996. NAGARAJAN, S., BANERJEE, P., CHEN, W., e CHIN, B. A., "Control of the Welding Process Using Infrared Sensors",IEEE Transactions on Robotics and Automation , v. RA-8, n. 1, pp. 86-93, 1992. MITA, T., SAKABE, A. e YOKOO, T., Welding International, v. 2, pp.152-159, 1989. MITA, T., Welding International , v. 3, pp. 227-231, 1989. CHEN, W. e CHIN, B.A., "Monitoring Joint Penetration Using Infrared Sensing Techniques", Welding Journal, v. 69, n. 5, pp. 181-185, 1990. ARATA, Y., INOUE, K., FUTAMATA, M. e TOH, T., "Effect of Welding Method and Welding Condition of Welding Arc Sound",Transactions of JWRI, v 8, n. 1, pp. 25-31, 1979.
170
CAPÍTULO 9 MONTAGEM Ricardo Naveiro 1 9.1 - INTRODUÇÃO Os processos de montagem respondem por cerca de 50 até 70% dos custos de mão-de-obra de um produto. Trata-se, portanto, do processo que envolve o maior contigente de pessoas em uma indústria de manufatura e o responsável pela maior parcela do custo total de fabricação. Nos últimos anos vem sendo empreendidos esforços para reduzir os custos de montagem através da utilização da automação; entretanto, a maioria das operações de montagem continua sendo feita com praticamente as mesmas ferramentas utilizadas no passado. Os ciclos de trabalho de montagem são em sua maioria curtos: 1,5 minutos para 42% dos postos de trabalho e menos de 30 seg para 26% dos postos de trabalho, o que acarreta muitas operações repetidas e lesões por esforço repetido são comuns de ocorrer entre os trabalhadores. Os distúrbios osteomoleculares relacionados ao trabalho - denominados atualmente como DORT - representam 70% do total de atendimentos de trabalhadores, o que acarretou uma mudança recente na legislação brasileira (1998) que passou a classificá-la como acidente de trabalho. O percentual da força de trabalho industrial envolvida em tarefas de montagem é enorme. O quadro a seguir mostra dados de empresas européias referentes ao final da década de 80. Indústria Máquinas-ferramenta Equipamentos agrícolas Eletrodomésticos Veiculos automotores
% do custo de montagem em relação ao custo total de manufatura 55,0 20,1 32,0 45,6
Esses dados mudaram bastante na década de 90 em função da eletronificação dos produtos, o que resultou em produtos com menor número de componentes e por conseguinte com um menor número de operações de montagem, porém de qualquer forma as operações de montagem ainda respondem pela maior parcela do custo de mão-de-obra de fabricação. No Japão a indústria eletro-eletrônica é a que mais utiliza robôs para operações de montagem.
9.2 - MÉTODOS E SISTEMAS DE MONTAGEM Os vários métodos de montagem podem ser grupados em três categorias: montagem manual, montagem mecanizada e montagem robôtizada. A escolha do método de montagem para um novo produto vai depender de uma série de fatores: • • • • • •
1
ciclo de vida previsto para o produto custo e disponibilidade de mão-de-obra volume de produção variedade dos produtos tamanho do lote flexibilidade
A elaboração deste capitulo contou com a colaboração de Telma Para e Patricia Chedier, alunas de mestrado do curso de Engenharia de Produção da COPPE/UFRJ 171
9.2.1 - Montagem manual e robotizada A montagem manual utiliza ferramentas de baixo custo e dispositivos de armazenagem de peças também de baixo custo. Ela é empregada quando se quer flexibilidade alta associada a uma grande variedade de produtos; seus custos permanecem relativamente constantes e independentes do volume de produção. A montagem mecanizada se aplica aos casos onde se tem grandes volumes de produção e baixa variedade. São equipamentos especialmente projetados para montar um determinado produto, consistindo de cabeçotes de montagem associados equipamentos periféricos alimentação e orientação. portanto equipamentos de automação rígida com aciclos fixos de operação de de custo relativamente alto sem São possibilidade de reconversão para outros produtos. A montagem robotizada se aplica a situações intermediárias onde se tem lotes médios de produção e variedade média de produtos. O gráfico abaixo mostra o campo de aplicação de cada tipo de sistema.
Classificação de Sistemas de Montagem (LOTTER,1986)
Na prática o que se encontra é uma combinação desses métodos, como por exemplo um posto de montagem manual associado a um equipamento automático para orientação das peças ou uma linha de montagem robotizada associada a postos de trabalho manuais, como ocorre na indústria automobilística. Para a escolha de um sistema de montagem devem ser considerados três fatores preliminarmente: o volume de produção, o número de peças e tempo de retorno do investimento. Os gráficos a seguir servem como diretriz para tomada de decisão. Há dois grupos de gráficos: o primeiro para produtos com um único modelo e o segundo para produtos com vários modelos, cada um deles usando um subconjunto do número total de peças disponíveis. Por exemplo, se considerarmos um produto com vários modelos que apresenta 70 peças na sua versão mais completa e que contém 40 peças na sua versão standard. Nesse caso, NT o número total de peças disponíveis é de 70 enquanto NA o número totat de peças aplicadas é de 40. O segundo gráfico é indicado para produtos que apresentem relação NT/NA igual à 1.5. 172
5000
5000
VA
VA
1000
1000
500
500
100
100 Período de retorno = 4 substituições/ano
50
Período de retorno = 6 substituições/ano
50 2
5
10
20
NA NA
50
5000
2
5
10
20 20 20
NA NA
50
Propósito especial de posicionamento Propósito especial de transferência livre Estação simples com um braço de robô
VA
Estação simples com dois braços de robô Multi-estação com robôs
1000 Montagem manual em bancada VA = volume médio de produção anual em milhares. Número de montagens de todos os estilos produzidos durante o período de restituição do equipamento. NA = número de peças na montagem. Número médio das peças ou sub-montagens para ser montado em um sistema de montagem. NT = número total de peças. Número total das peças ou sub-montagens das quais podem ser montados vários estilos.
500
100 Período de retorno = 8 substituições/ano
50 2
5
10
20 20 20
NA NA
Produto com somente um estilo (NT/NA = 1)
50
Gráficos de escolha do sistema de montagem (BOOTHROYD, 1991)
173
5000
5000
VA
VA
1000
1000
500
500
100
100 Perí o do d e ret o rno = 4 s ubs t i t u içõ es /a no
Perí o do d e ret o rn o = 6 s ub s t i t u içõ es /a n o
50
50 2
5
10
20 20 20
NA NA
2
50
5
10
20
NA NA
50
5000 Propósito especial de posicionamento Propósito especial de transferência livre Estação simples com um braço de robô
VA
Estação simples com dois braços de robô Multi-estação com robôs
1000
Montagem manual em bancada VA = volume médio de p rodução anual em milhares. Número de montagens de todos os estilos produzidos durante o período de restituição do equipamento. NA = número de peças na montagem. Número médio das peças ou sub-montagens para ser montado em um sistema de montagem. NT = número total de peças. Número total das peças ou sub-montagens das quais podem ser montados vários estilos.
500
100 Período de retorno = 8 substituições/ano
50 2
5
10
20
NA NA
Produto com somente um estilo (NT/NA = 1.5)
50
Período de retorno = 8 substituições/ano
Gráficos de escolha do sistema de montagem (BOOTHROYD, 1991) 9.2.1.1 - Operações de montagem As operações de montagem podem ser subdivididas em uma série de etapas encadeadas, tais como posicionamento, transporte, etc. de tal forma que, para cada tipo de operação, pode ser desenvolvido um equipamento específico. As principais operações de montagem são as seguintes: Armazenagem Processo pelo qual os componentes são armazenados antes ou depois de serem dirigidos, compostos e verificados (conferidos). Caixa – armazenagem de componentes sem orientação. Magazine – armazenagem de componentes com orientação.
Posicionamento Processo que tem o objetivo de orientar o componente em relação a outro. Alinhamento – posicionamento do componente em um ou mais direções axiais em relação a base.
Inserção - recolocação do componente em relação ao componente básico que resulta na posição final. 174
Transporte Processo que tem o objetivo de mover e orientar componentes de acordo com a demanda dos processos de composição e verificação Movimentação – recolocação constante ou indexada dentro do sistema de montagem. Se esta operação for realizada por um
operador ou robô haverá três fases: reconhecer, agarrar e mover.
Separação - divisão de um único fluxo de componentes em muitos fluxos.
Conjunção – união de dois ou mais fluxos de componentes.
Orientação - orientação de fluxo de componentes em relação ao sistema.
Rotação - orientação de componentes dentro do fluxo em relação ao sistema. Alocação - liberar determinado número de componentes do fluxo para o sistema.
175
Inserção/extração - posicionamento do componente na ferramenta, remoção de componente.
9.2.2
- Sistemas robotizados
Os sistemas de montagem programada possuem os seguintes componentes: •
•
•
•
•
•
•
Estações de Trabalho Robôs Efetuadores Alimentadores Orientadores Mecanismos de Transferência Sensores
Estações de Trabalho A função de uma estação de trabalho um lugar estável esão: bemsubestrutura definido paradaa estação, implementação tarefas de montagem e de inspeção. Seusé prover componentes principais a mesadas de ferramentas ou plataforma e dispositivos de localização para interligação com outros equipamentos. Dependendo da configuração do sistema, um ou todos estes componentes podem ser suprimidos da estação. A maior parte dos problemas associados às estações de trabalho estão relacionados às funções que são dadas aos componentes da estação. Freqüentemente, deve ser deixado espaço para dezenas de cabos elétricos, linhas de sinais e de alimentação, ar comprimido, linhas de gás , hidráulicas e de vácuo. E, na maior parte das vezes, essas linhas estão dispostas no chão e são conectadas a estação aleatoriamente, porque durante a fase de projeto não foi dada muita atenção a isso. Portanto, deve-se levar em conta o posicionamento das linhas durante o projeto não só pelo fator estético, que reflete a qualidade do equipamento, mas também para facilitar a sua manutenção. Outra variação deste conceito é a linha de montagem multiestação com um robô de transferência. Novamente, quando o volume de produção de um produto é pequeno, uma estação de trabalho pode ser usada para cada tarefa, mas somente um robô é usado para realizar toda a montagem e as tarefas de inspeção. O robô é movido de estação em estação para produzir montagens como a programação de tarefas requer. Nesse caso, mecanismos de localização e de preempção devem ser assegurados ao robô de forma que ele possa ser alinhado e preso para a estação de trabalho específica. Colocar o robô sobre rodas facilita a transferência do robô para as diferentes estações de trabalho. Os sistemas de montagem robôtizada compreendem um sistema de controle, um ou mais robôs para manipulação e inserção e equipamentos periféricos utilizados na armazenagem, alimentação e orientação das peças a serem montadas. Os robôs do tipo SCARA são os mais encontrados em operações de montagem. As principais configurações de sistemas robotizados de montagem são os seguintes: Célula de montagem: unidade independente envolvendo um ou mais robôs e equipamentos periféricos
onde um produto completo é montado. Esse arranjo é caracterizado por ciclos de montagem relativamente 176
longos e um número considerável de peças a serem montadas. A ilustração mostra uma célula de montagem composta de um robô e alguns equipamentos periféricos (Fig. 1.).
Figura 1. Exemplo de uma céluda de montagem. (Boothroyd, 1991) Linha robotizada de montagem: configuração de várias estações robotizadas instaladas em série. Esse arranjo
se caracteriza por ciclos curtos de operação, um número limitado de peças montadas por estação e um sistema de transporte dos subconjuntos entre as estações. A figura abaixo mostra o exemplo de uma linha robotizada composta de duas estações de montagem.
Figura 2. Exemplo de uma linha robotizada de montagem. (Boothroyd, 1991) Levantamentos junto à indústria européia a respeito do uso de montagem robotizada indicam o seguinte: •
•
•
•
O setor automobilístico concentra o maior número de aplicações seguido do setor eletro-eletrônico. O número médio de peças singulares por produto é 10 80% das peças pesam menos que 4 kg. 70% das peças tem dimensões internas a um cubo com 100 mm de lado. 177
•
O tempo de ciclo é de 12 a 60 segundos nas linhas de montagem, e de 20 s a 3 min nas células de montagem.
9.2.2.1. Robôs Atualmente, o uso de robôs e tecnologia robótica em aplicações de montagem é pequeno se comparado ao número total de robôs em aplicações industriais. Embora os trabalhos teóricos tenham apontado as vantagens do uso da robótica na área de montagem e também trabalhos experimentais tenham provado muito da teoria, esses esforços ainda não foram suficientes para acelerar o uso dessas tecnologias. Mas como os robôs, bem como sua tecnologia vem amadurecendo, e um número cada vez maior de instalações industriais estão provando o que a teoria e os experimentos já haviam demonstrado, ou seja, que robôs em montagem são economicamente vantajosos, confiáveis e excelentes ferramentas para o aumento da produtividade. De uma forma geral, o sucesso destas e de futuras aplicações dependem do robô selecionado para o sistema e de seu desempenho. A seleção do robô certo para uma aplicação específica vem se tornando difícil a cada momento devido a grande variedade de equipamentos nesta área. Além disso, sem experiência anterior na área, é difícil para designers de sistemas de montagem escolherem e avaliarem os aspectos relevantes a serem levados em conta na longa lista de dados que acompanham as especificações de cada robô. Para facilitar , destacamos uma lista dos principais parâmetros a serem levados em conta na seleção de robôs para montagem : Espaço de Trabalho Este talvez seja o mais importante parâmetro que influi na seleção do robô para um sistema de montagem programável. Ele representa o espaço necessário para acomodar o robô e os demais equipamentos necessários às tarefas de montagem, bem como o envoltório de alcance do robô. Repetibilidade Como a montagem, mesmo em pequenos lotes, é uma repetição das mesmas operações, é importante que o dispositivo na grau extremidade retorne aodeponto desejado dentro da faixa de tolerância do produto. Um robô com um medíocredodebraço repetibilidade 0.10mm (nas condições de carga máxima, extensão máxima, velocidade máxima) tem capacidade de realizar a maioria das operações de montagem usuais na industria. Precisão Semelhante a repetibilidade, porém dependente da precisão do conjunto a ser montado. Carga Na maior parte das aplicações em montagem, a capacidade de um robô de levantar carga deve estar na faixa de até 4 Kg. Se ocasionalmente uma peça mais pesada estiver envolvida na tarefa de montagem, um novo dispositivo deve ser desenvolvido para ajudar na montagem das peças antes de se pensar em adotar um robô com maior capacidade de levantar cargas. Velocidade Para otimizar o ciclo de montagem, a distância percorrida pelo braço do robô deve ser a menor possível. Isto pode ser feito posicionando os pontos de pega das peças próximos ao ponto de montagem, entre 500mm. Usualmente, os pontos de pega são posicionados mais próximos ao ponto de montagem do que 500mm, e a aceleração/desaceleração está perto de 0,3g, ao invés de 0,5g. O que demonstra que existe pouca vantagem em especificar um robô com velocidade de deslocamento acima da faixa de 0,6m/s. Grau de Liberdade A tarefa de montagem especificada a ser desempenhada na estação ou centro de montagem praticamente define o número de graus de liberdade e o tipo de robô exigido. É uma boa prática especificar um número mínimo de eixos, bem como o número de movimentos de cada eixo necessários às tarefas de montagem. Geralmente, em operações simples de montagem (uma direção de montagem) recomenda-se o uso de robôs do tipo SCARA. Dependendo da complexidade do produto deve-se optar pelo uso de robôs com 4 eixos ou antropomórfico. 178
O que deve ser lembrado ao se especificar os graus de liberdade para um robô é que ele estará em um sistema programável de montagem e como tal, deve satisfazer ao maior número possível de requisitos. Uma vez o robô incluído no sistema, adicionar graus de liberdade torna-se uma tarefa impossível, ou factível apenas a custos muito elevados.
Controle Ao se identificar os parâmetros anteriores do robô, o controle basicamente está definido. Os dispositivos de controle presentes em robôs atualmente possuem tantos recursos que torna-se difícil utilizar as funções de controle propriamente disponíveis para vantagem doosistema. preocupações existem não no sentido do controle dito,obter mas uma no método paramaior integrar sistema As de controle aos outros equipamentos. Fundações Para robôs com a base integrada, as fundações são as comuns utilizadas na indústria. A freqüência natural de vibração de um robô é de 3 a 8 Hz e, durante a operação, são gerados harmônicos dessa freqüência. Em alguns casos é necessário de construir uma base sólida para fixar o robô e, se isso for mal feito, gera-se instabilidade na operação do robô o que resulta em imprecisão e alteração do tempo de montagem. Além do mais, o excesso de vibração diminui a vida útil do equipamento e a precisão da montagem. 9.2.2.2 - Equipamentos auxiliares Efetuadores Projetar efetuadores para um robô não é muito diferente de conceber dispositivos de fabricação para outros tipos de equipamentos. Os principais aspectos a serem considerados são os seguintes: 1) ter conhecimento da função da peça no produto final 2) avaliar as tarefas de montagem a serem realizadas 3) definir o ambiente em que o efetuador será usado. Em qualquer estação de montagem (manual, dedicada ou programável) para executar uma tarefa de montagem, a peça do produto a ser montado deve ser transferida da armazenagem para o ponto de montagem. Cada transferência leva tempo significativo, portanto, a redução desse tempo de transferência irá reduzir o tempo total de montagem. Para um sistema de montagem programável, onde uma grande quantidade de peças é manipulada em cada estação, a forma mais eficaz de se reduzir o tempo de transferência é manipular todas as peças do produto na estação com um único efetuador. Evidentemente, que essa medida deve ser tomada associada, sempre que possível, à aproximação entre o local de armazenagem e o ponto de inserção ou de montagem. Em alguns casos podem ser utilizados efetuadores multipropósito, uma vez que eles trazem algumas vantagens: •
•
eliminam o tempo de troca de ferramenta e também o trabalho de projeto associado à fixação dos diversos dispositivos reduzem ou eliminam o tempo individual de transferência da peça
A desvantagem deste tipo de efetuador é que ele é mais difícil de desenvolver, e também mais complexo em sua operação. Porém, na3maioria casos, as de vantagens uso do efetuador multipropósito superamdois as suas desvantagens. A figura mostra dos um exemplo efetuadordomultipropósito, projetado para manipular tipos de produtos: um disco fundido e um eixo usinado. O efetuador pega, em seqüência, o eixo e o disco, posicionando-os e montando-os no produto.
179
Figura 3. Efetuador multipropósito (SHIMON, ) Alimentadores A função dos alimentadores nos sistemas de montagem programável é prover, separar, orientar e apresentar as peças individuais para o mecanismo de montagem do sistema. Além dos alimentadores vibratórios usados freqüentemente, foram desenvolvidos outros dispositivos de alimentação tais como elevadores, silos e bandejas centrífugas. A limitação comum a todos esses dispositivos, está no fato deles alimentarem apenas uma determinada peça do produto. Isto significa que toda vez que o sistema de montagem necessita ser reprogramado para montar outro modelo de produto, dentro da mesma família de produtos, deve-se trocar por um outro alimentador ou utilizar alimentadores programáveis. Alguns dos alimentadores vibratórios são baseados na já conhecida bandeja vibratória, porém incorporando novos componentes, tais como reconhecimento ótico para determinar o tipo e a orientação das peças do produto. Finalmente, a seleção de um alimentador depende basicamente da geometria das peças do produto, do material de que são feitas, e do número de peças necessárias por unidade de tempo. Alimentadores vibratórios Os alimentadores vibratórios são os mais versáteis de todos os dispositivos de alimentação para pequenas peças. Sua função é alimentar uma montagem orientando as peças. As peças depositadas na tigela do alimentador são movimentadas através da vibração e seguem a trajetória dos trilhos interiores através de um helicóide. (Fig. 4) Alguns parâmetros influenciam o funcionamento de um alimentador vibratório, a saber: a freqüência de vibração, a aceleração nos trilhos, o ângulo do trilho, o ângulo de vibração e o coeficiente de atrito entre a peça e a pista do alimentador.
180
Fig 4. Exemplos de alimentadores vibratórios. Alimentadores não-vibratórios Normalmente são satisfatórios para alimentar certos tipos básicos de peças para as quais podem ser obtidos bons resultados. Seu funcionamento ocorre através da rotação do próprio depósito alimentador, ou de elementos internos giratórios que direcionam as peças para a calha de escoamento do alimentador para montagem (Fig. 5) No alimentador não-vibratório é necessário que todas as peças apresentadas à máquina estejam na mesma orientação para garantir a montagem correta. Um ponto que deve ser considerado é que a saída de peças do alimentador é sempre restringida pela máquina que é alimentada.
181
Figura 5. Exemplos de alimentadores não vibratórios. (Boothroyd, 1992) 182
Orientadores de peças Em uma máquina de montagem automática, é necessário que as peças alimentadas sejam corretamente orientadas. Baseados no princípio de orientação e rejeição muitos dispositivos são utilizados para garantir a montagem. Através desses dispositivos, a montagem é alimentada de peças corretamente alinhadas enquanto as rejeitadas retornam ao alimentador. Em alguns casos, os dispositivos são providos de elementos de reorientação de peças (Fig 6.)
Figura 6. Exemplo de orientadores de peças (Boothroyd & Poli, 1982). Mecanismos de Transferência Esses mecanismos são utilizados para se completar as tarefas de submontagem ou de montagem de produtos. Eles têm sido evitados devido ao seu alto custo pois requerem o projeto de mecanismos de movimentação, o emprego de sensores e de um sistema de controle. São dispositivos a serem evitados ao máximo, uma vez que não agregam valor ao produto final e podem danificar o produto durante a operação. Esse fato colaborou para o desenvolvimento do conceito de centros de montagem dedicados e programáveis. Nos casos onde a operação de transferencia é inevitável, ela deve ser assíncrona, de forma a servir de “buffer” 183
de armazenagem de componentes, garantindo o fluxo de produção caso haja algum problema temporario com uma estação de montagem. Sensores As tarefas de reconhecimento, orientação, inspeção das peças do produto, presença ou ausência de uma peça, e demais funções sensoriais são plenamente desempenhadas em operações de montagem manual. O quadro é outro,porém, quando se trata de montagem automatizada. A qualidade e eficiência do sistema dependera muito dos sensores selecionados e de seu posicionamento no sistema de montagem. No quadro abaixo é mostrado o uso de sensores em operações realizadas por um braço pneumático executando a função de pegar e posicionar. Operação Abertura do Efetuador Braço se move ao ponto de pega Pegar uma peça do produto Braço se move ao ponto de pega Efetuador se abre Braço se move para posição inicial (home)
Função Sensorial Detectar abertura Detectar presença do braço Detectar presença da peça Detectar fechamento do efetuador Detectar presença da peça no efetuador Detectar a presença do Braço Detectar efetuador se abrindo Detectar presença da peça na montagem
Além disso, os sensores enviam respostas a intervalos regulares de forma que o processo de montagem possa seguir da forma planejada e qualquer interrupção ou desvio possa ser detectado a tempo. As aplicações de sensores para sistemas programáveis de montagem usando braços de robôs servodirecionados são bem simples. Muitas das funções sensoriais de hardware podem ser substituídas por sinais de entrada e saída do sistema que são incorporados ao software de operação. 9.2.3 - Exemplo A figura 7 requer ilustra uma estação de montagemAsrobotizada, robô compela 4 graus de liberdade. tarefa de montagem 6 tipos de ferramentas. 17 peças com são um alimentadas gravidade atravésA de 12 alimentadores - essas 17 peças incluem 3 parafusos que possuem três longas chaves, alimentadas junto à carcaça frontal. A montagem é feita em dois diferentes gabaritos, um para a montagem principal e outro para a submontagem. O robô é operado por um computador que orienta as quatro juntas para os pontos de parada designados. A principal característica deste robô é o seu mecanismo de pega que confere a inserção das peças sem danos (Fig.7.).
184
Figura 7. Layout de uma estação de trabalho robotizada. (NEVINS & WHITNEY, 1978)
Figura 8. Visão explodida do alternador. (NEVINS & WHITNEY, 1978) A figura acima mostra a seqüência na qual as 17 peças do alternador são montadas pela estação robotizada. Identifica também as ferramentas que desempenham cada tarefa. Uma árvore do produto foi elaborada para simplificar o entendimento da montagem do alternador (Fig. 9)
185
Figura 9. Árvore do produto. 9.3 - Projeto orientado à montagem Existem certos princípios que são utilizados pelos projetistas para se obter um produto com custo mínimo. São práticas consagradas de projeto, conhecimento prático e experimental do projetista acumulado ao longo do tempo de seu exercício profissional. Esse tipo de conhecimento é denominado conhecimento tácito e é o mais difícil de ser formalizado, uma vez que muitas vezes representa a experiência coletiva de uma equipe de trabalho ou a prática consagrada de uma empresa. Alguns desses princípios consagrados de projeto estão assinalados a seguir: •
•
•
•
•
Simplicidade: significa que o produto deve ter o menor número de peças possível, o menor número de peças complexas possível, a menor quantidade de ajustes finos possível e as peças devem ter a menor seqüência de fabricação possível. Padronização: devem ser usados materiais padronizados, preferencialmente no estado em que são adquiridos no mercado de forma a se obter vantagens comparativas no processamento. Modularização: utilização de subconjuntos compartilhados entre os produtos do portfolio de produtos sempre que possível. Essa prática traz economias de escala na produção e no pós-venda. Relaxamento de tolerâncias: o afrouxamento das tolerâncias nos ajustes onde elas foram mal especificadas evita a utilização de equipamentos especiais de fabricação e de medição o que barateia a produção. Adequação ao nível de produção: o projeto deve estar adequado ao nível de produção do produto, uma vez que determinados detalhes definidos no projeto estão associados a determinados processos de fabricação.
Além desses princípios gerais de projeto, existem regras específicas que conduzem a um produto melhor projetado segundo critérios de custo e de adequação aos processos de fabricação. As principais regras apontadas em vários manuais de projeto orientado à fabricação são as seguintes: Redução do número de peças. Projetar para operações de fabricação de baixo custo. Cotar os desenhos das peças orientando a cotagem aos processos de fabricação. Projetar para operações que utilizem ferramental padronizado e de uso geral. •
•
•
•
186
•
•
Projetar visando redução do peso das peças. Projetar as peças de forma a que sua fabricação possa ser feita sem alterar a sua fixação na máquina.
Conforme registrado nos “princípios gerais” e nas “regras” a obtenção de um produto com o menor número de peças possível é um dos principais fatores para se alcançar um bom projeto. A redução do número de peças em um produto pode ser realizada pela eliminação de um componente individual que cumpria uma função redundante na estrutura do produto, ou pela combinação de várias peças integrando num único componente as funções que eram realizadas pelos diversos componentes individuais. O projeto de peças multifuncionais também deve ser praticado, uma vez que elas contribuem para a padronização e para a redução do número de componentes. A diminuição do número de peças deve no entanto assegurar que o produto tenha as peças básicas necessárias para constituir a montagem, pois cada produto possui um número mínimo de peças necessárias para ser funcional e ter a forma desejada. O exercício intelectual de antecipar a situação que vai ocorrer na montagem do produto que ainda não está inteiramente materializado é um exemplo típico de aplicação do conhecimento tácito do projetista para construir o conhecimento sobre este objeto (produto) ainda ausente. Esse exercício vem sendo praticado há bastante tempo, porém somente a partir da década de 70, o conjunto de conhecimentos que produz uma melhor eficiência do processo de montagem tomou corpo, tendo inclusive sido introduzido como recomendações nas normas inglesas e alemãs a partir da década de 80. Data dessa época também a introdução desses conhecimentos nas empresas que passaram a treinar todo o seu pessoal técnico nos métodos de “Design for Manufacture” dentro dos quais se encaixa o projeto orientado à montagem. O termo “Design for Assembly” foi cunhado nessa mesma época a partir dos estudos desenvolvidos por Boothroyd & Dewhurst inicialmente na Universidade de Massachussets e mais tarde na Universidade de Rhode Island. A principal contribuição do trabalho desses professores foi o desenvolvimento de um método que permite a mensuração do mérito de montagem de um produto através de critérios objetivos facilmente reproduzíveis dentro de uma equipe de projeto. Resultados de casos de empresas que aplicaram DFA são relatados em Huang e mostram que a redução do número de peças em algumas empresas chegou a 80%, ficando a média em torno de 56% de redução (Huang G., 1996). Os métodos de DFA foram desenvolvidos para produtos de pequeno porte tais como aqueles submetidos a montagem manual em bancadas de montagem e são aplicados analisando o produto completo. Os documentos principais em cima dos quais se faz a análise do mérito de montagem são os desenhos de conjunto, preferencialmente do tipo vista explodida e as estruturas de produto tais como árvores de produto ou listas de material indexadas. Os principais parâmetros que interferem no processo de montagem manual são os seguintes: •
•
•
•
•
•
•
Possibilidades de manipulação. Necessidade de orientação. Direções e sentidos de montagem. Dificuldades de inserção. Necessidade de ferramentas especiais para manipulação. Visibilidade na inserção. Operações preparatórias.
A partir desses parâmetros foram construídas tabelas que têm como chave de entrada o tamanho, a espessura da peça e a sua dificuldade de pegar e manipular (Boothroyd & Dewhurst, 1991). As tabelas foram organizadas de tal forma que o resultado da avaliação de cada peça forneça a sua contribuição no tempo total de montagem. A partir daí se tem um quadro onde irão aparecer quais os componentes que estão contribuindo com a maior parcela para o tempo total de montagem e por conseguinte para o custo. Em seguida, é feito o cálculo do grau de eficiência da montagem do produto em análise e, a partir daí é de responsabilidade do projetista gerar alternativas de projeto que eliminem ou minimizem os efeitos dos componentes críticos. O exemplo abaixo mostra o caso de um conjunto de embolo pneumático que teve redução de seis peças srcinalmente para quatro peças (Fig.10 e 11). Pode-se notar que o principal partido adotado no redesenho do produto foi a eliminação dos elementos de ligação e a integração de funções. 187
Figura 10. Embolo pneumático
Figura 11. Redesenho do produto.
Recomendações de Montagem No desenvolvimento de um projeto de um produto orientado à montagem o projetista deve visualizar a totalização de suas peças e como elas serão reunidas, e assim considerar as alternativas de projeto que facilitem sua montagem. Existem várias recomendações citadas por diversos autores que visam orientar o produto para uma montagem simplificada. Essas regras se diferenciam para cada sistema de montagem, direcionadas às suas características, porém, as regras indicadas para a montagem manual podem ser utilizadas pelos outros tipos de montagem uma vez que são abrangentes. Recomendações Gerais Se um produto possui menos número de peças normalmente gastará menos tempo para ser montado, e assim, o custo total dele também será menor. Por isso, uma das principais questões relativas ao projeto orientado à montagem é a verificação da necessidade da existência de algumas peças e de certas operações; também devendo ser levado em conta questões tais como: forma, material e movimento dentro do sistema. A redução de peças pode ser realizada pela eliminação de um elemento individual ou a combinação de várias peças gerando uma única. Sendo assim, uma peça ou operação só não deve ser substituída se as características funcionais do projeto forem comprometidas e deve-se assegurar que o produto tenha peças básicas satisfatórias para constituir a montagem, pois cada produto possui um número mínimo de peças necessárias para ser funcional e ter a forma desejada. Vários autores como Boothroyd recomendam que sejam eliminadas as fixações, os prendedores, os condutores, conectores e ajustes, projetando peças principais com características integrais, projetando peças multifuncionais e eliminando algumas características ou funções dos produtos que não adicionam valores no uso. Com a eliminação de peças e redução do número de diferentes tipos na produção aumentam-se os benefícios, incluindo a diminuição do custo de material, redução do custo de fixação e aperfeiçoamento da qualidade do produto. Uma montagem complexa pode ser construída de várias sub-montagens que podem ser reduzidas substancialmente, se as mesmas forem modulares, possuindo acesso mais fácil para a colocação das peças e ajustes. A modulação das peças além de trazer benefícios na montagem do produto oferece uma grande contribuição para seu transporte (Fig. 12).
188
Figura 12. Recomendação para a modulação. (Andreansen, 1983) O peso das peças deve ser levado em consideração, uma vez que, o montador seja obrigado a suportar a peça por um longo período de tempo para inseri-la, ou quando esse peso resulta na necessidade de uma ferramenta específica de transporte. Algumas regras são relacionadas a forma que as peças possuem. A forma da peça por sí só, poderá auxiliar uma boa orientação da montagem. A simetria é uma característica indicada, sempre que possível, para que o tempo de manipulação e inserção seja reduzido, pois, quanto mais simétrica uma peça é, mais fácil ela pode ser orientada durante a manipulação na montagem. Também é indicado que se as características funcionais não podem ser feitas claramente simétricas, então uma característica não funcional claramente visível deveria ser definir a orientação afim de facilitar a inserção da peça e se não puder ser simétrica a indicação é que deve-se assegurar que ela seja totalmente assimétrica, para que não haja dúvida durante a inserção. Algumas superfícies definem a orientação da montagem de um componente, de forma que o uso de superfícies livres, que são obtidas através da remoção e adição de materiais, mudam a forma do componente e induzem a orientação dos mesmos para a montagem. O alinhamento das peças é essencial para a seqüência correta de manipulação e inserção. Sendo assim, o projeto deve minimizar a necessidade de reorientação das peças e assegurar que a peça da base possa ser localizada prontamente em uma posição satisfatória em plano horizontal mantendo sempre a orientação da submontagem constante ao longo da sucessão de montagem.
189
Para facilitar essa orientação as peças podem ser direcionadas facilmente se possuírem estabilidade para a sua manipulação, inserção e apertos, por isso, devem ser auto-alinhadas e auto-direcionadas e devem estar localizadas corretamente na montagem antes de serem liberadas (Fig. 13).
Figura.13. Recomendação para alinhamento e simetria e para peças com conectores, elementos de ajuste. (Bralla, 1988) Algumas regras consideram os aspectos gerais durante montagem, que podem prejudicar ou até impedir que ela ocorra adequadamente. O acesso inadequado e falta de visibilidade das peças poderá aumentar o tempo de operação por isso é necessário garantir: a altura para mãos, e para as ferramentas, que a visão do operador de montagem em cada operação não seja restrita, acessibilidade direta para toda sub-montagem. A liberação de altura para mãos no projeto evita situações que possam resultar na tendência das peças para prender e dificultar a operação durante a inserção (Fig. 14).
Figura 14. Recomendação para o acesso das mãos. (BOOTHROYD, 1991)
190
O projeto deve prever situações onde uma peça possa ser instalada em uma orientação que não permita a montagem incorreta do produto, provendo obstruções, fazendo o cruzamento de características assimétricas e se no caso de duas peças serem montadas incorretamente então deve-se fazer com que a montagem subsequente seja impossível. Recomendações para Montagem Robotizada As recomendações para a montagem automatizada podem ser incorporadas à montagem robotizada em relação ao manuseio e a orientação e reorientação das peças, mas o projeto para a montagem robotizada deve considerar as características específicas dos robôs como o uso de um ou dois braços, as pinças e os alimentadores. Para garantir a linha de comnão umsão robô, ou sistema de estação de trabalho simples com um braço, essencial quemontagem as peças que fixadas imediatamente na inserção sejam auto-direcionadas, poisé uma peça instável não pode ser montada por um único braço de robô, e assim, é requerido uma fixação especial que deve ser ativada pelo controlador do robô. Com um sistema de estação única de dois braços, um braço pode, em princípio, segurar uma peça enquanto o outro continua a montagem e fixando-a no lugar. O projeto do produto deve determinar a priori quais as peças que podem ser apanhadas e inseridas pelos efetuadores do robô, uma vez que projetar e testar dispositivos apos iniciada a produção causa ineficiência e aumento do custo de produção. Considerações finais Neste capitulo, procurou-se apresentar os principais aspectos a serem considerados no projeto de um produto visando a automatização de sua montagem. Inicialmente, foram apresentados os diversos sistemas de montagem e o campo de aplicação para cada tipo de sistema. Em seguida foram apresentadas os diversos tipos de operação de montagem e os elementos constituintes de um sistema robotizado de montagem. E apresentado um exemplo do uso de uma estação de trabalho robotizada para a montagem de um produto. Finalizando o capitulo, foram apresentadas as principais considerações a serem tomadas no projeto de um produto para se obter a melhor eficiência no processo de montagem.
9.4 Bibliografia: 1. ANDREASEN ,M. M., KAHLER, S., LUND, T., Design for Assembly. IFS (Publications) Ltd., U.K.,1983. 2. BOOTHROYD, G., DEWHURST, P., Assembly Automation and Product Design. Marcel Dekker, Inc. New York, 1992. 3. BOOTHROYD, G., DEWHURST, P., Design for Assembly. Peton/IPC, Amherst, EUA, 1991. 4. BOOTHROYD, G., DEWHURST, P., Making It Simple – Design for Assembly. Mechanical Engineering, v. 110, pp28-31. Fev, 1988. 5. BOOTHROYD, G., DEWHURST, P., Product Design for Assembly Handbook. Wakefield, RI, 1991. 6. BRALLA, JAMES G., Handbook of Product Design for Manufacturing . McGraw-Hill. 1988. 7. LOTTER, B., L´automazione del Montaggio – Elettrotecnica e Meccanica di Precisione. Tecniche Nouve. 1992. 8. NEVIS, JAMES L. , WHITNEY, DANIEL E., Computer – Controlled Assembly. W. H. Freeman and Company. EUA, Scientific American, v. 238, no. 2, pg.62-74. Fev, 1978. 9. NOF, SHIMON Y., Handbook of Industrial Robots. John Wiley and Sons, 1946. 10. SHIMOKAWA K., JURGENS U., FUJIMOTO T., Transforming Automobile Assembly. New York.1997. 11. TRUCKS, H. E., Designing for Economical Production. Society of Manufacturing Engineers Publications Development Department Marketing Division. Michigan, 1987.12. 12. ULLMAN, DAVID G., The Mechanical Design Process. McGraw-Hill International Editons. 1992.
191
CAPÍTULO 10 SISTEMAS PERIFÉRICOS PARA ROBÔS INDUSTRIAIS Julio César de Almeida Freitas
10.1- INTRODUÇÃO Este capítulo aborda aspectos relacionados a equipamentos denominados periféricos, utilizados na composição do cenário de atuação de um sistema robótico. Estes equipamentos são fundamentais para a realização das tarefas operacionais, localizando-se de forma determinada no chão de fábrica para que ocorram as condições perfeitas de interação com o robô. O controle de movimentação dos equipamentos periféricos é vinculado diretamente à unidade de controle do robô geralmente através de sinais enviados por sensores que monitoram o cenário de atuação. Na intenção de se realizar um trabalho direcionado ao mercado nacional, buscou-se enfatizar a utilização do sistema robótico em áreas distintas e em especial na área automobilística, que agrega a maior parte dos investimentos em automação.
10.2- SISTEMAS PERIFÉRICOS USADOS EM ROBÓTICA A interação de um sistema robótico com o ambiente externo pode ser descrito de modo simplificado como o processamento de um dado fluxo de materiais (entrada), resultando em um produto acabado (figura 10.1). A caracterização dos elementos que irão compor uma certa produção automatizada (vide capítulo 1) depende essencialmente do tipo de aplicação desejada. Na tabela 10.1 são mencionados alguns destes elementos.
Sistema Robótico (processamento)
Matéria-prima,sub-produtos
Produtoacabado
193
Figura 10.1- Fluxo de materiais em sistema robótico. Tabela 10.1- Construção de Elementos do Sistema Robótico.
APLICAÇÃO Transportando; Transferindo; Testando.
FORMA QUANDO EM TRANSPORTE
FORMA DO PRODUTO TRANSPORTADO
Material bruto, Material bruto, parcial ou parcial ou Produto. Produto
Carga / teste de Material bruto, Processo parcial ou descarga parcial ou Produto. Produto Soldagem / Montagem
Peça 1 + Peça 2 + Peça 3 + ...
Peça soldada ou Produto
Pintura / vedação
Peças ou Semi-Produtos
Pintado acabado
Paletização
Peças ou Produtos
Arranjo
ou
ELEMENTO DE CONSTRUÇÃO Robô (incluindo dispositivos de fixação) Dispositivo de transferência (incluindo JIG’s) Robô; Dispositivo de transferência; Ferramentas. Robô; Dispositivo de transferência; Ferramentas de posicionamento (incluindo JIG’s)
Produto Mesmo que os anteriores Robô; Dispositivo transferidor posicionamento
de
A seguir são apresentados os principais equipamentos periféricos utilizados em tarefas típicas de robótica industrial.
10.2.1 - Mesa “JIG” O equipamento periférico denominado mesa “JIG” é usado para controlar a localização e posicionamento das peças a serem manipuladas/trabalhadas, possibilitando que o robô possa executar as tarefas fielmente. A mesa “JIG” vincula a peça de trabalho numa posição e orientação específicas, relativamente a um sistema de referências local à peça. A informação dos parâmetros de posicionamento da peça é monitorado de modo a permitir a interação com o robô. As mesas tipo "JIG" possuem componentes posicionadores de peças, formados de diversos dispositivos como pinos, guias, fixadores e/ou grampos automáticos do tipo pneumático ou eletromagnético “mandril”. Há diversos modelos de mesa "JIG", sendo alguns destes relacionados a seguir. • “JIG” de posicionamento linear; • "JIG" vinculado a esteiras; • "JIG" de posicionamento angular com um eixo de rotação; • "JIG" de posicionamento angular com dois eixos de rotação; 194
• •
"JIG" de giro com deslize Mesa "JIG" X-Y.
Mesa “JIG” fixada
(a)
(b)
Figura 10.2 - Desenho esquemático de Mesa "JIG" (a) uma estação, (b) duas estações.
Figura 10.3 - Mesa "JIG" de uma estação (cortesia SENAI São Caetano do Sul - SP).
10.2.1.1 - “JIG” de posicionamento linear A posição linear de fixação da peça pode ser alterada através de dispositivo de retorno e avanço. 195
Figura 10.4 - Mesa "JIG" de posicionamento linear
10.2.1.2 - "JIG" vinculado a esteiras (veja fig. 4 ) Esta fixa uma quantidade específica de peças em compartimentos dedicados, fornecendo-as para continuamente a um sistema de alimentação.
Figura 10.5 - Mesa "JIG" vinculado a esteiras
196
Figura 10.6 - Sistema de alimentação contínua (cortesia SENAI São Caetano do Sul).
10.2.1.3 - Mesa "JIG" com um eixo de rotação Esse dispositivo tem um grau de liberdade de rotação. Em geral apresenta o eixo de rotação nas orientações horizontal ou vertical.
Mesa de giro
Mesa de giro (A)
Mesa de giro (A)
Mesa de giro (B)
Figura 10.7 - Mesa "JIG" com um eixo de rotação.
10.2.1.4 - "JIG" com dois eixos de rotação Este dispositivo tem dois graus de liberdade de rotação em torno de dois eixos, e as configurações básicas são do tipo excêntrico com eixos de rotação horizontal e vertical e do tipo com eixo de rotação inclinado.
(a)
(b) 197
Fig
Figura 10.8 - Mesa "JIG" com dois eixos de rotação (a) excentrico, (b) eixo inclinado.
Fig. 6-
Figura 10.9 - Mesa "JIG" com dois eixos de rotação e eixo inclinado (cortesia VASP).
10.2.1.5 - "JIG" de giro com mesa deslizante Esta configuração apresenta um eixo de rotação e um eixo de translação, com mesa deslizante.
Figura 10.10 - Mesa "JIG" de giro com mesa deslizante..
10.2.1.6 - Mesa "JIG" X-Y 198
É uma mesa de trabalho com a qual se pode mudar horizontalmente ambas as direções do movimento no plano definido pelos eixos X e Y.
10.2.2 - Dispositivo de elevação O dispositivo de elevação é empregado em situações onde o volume de trabalho do robô não é suficiente para alcançar os pontos de trabalho em uma determinada peça. Seja devido as grandes dimensões da peça ou ao reduzido volume de trabalho do robô. O resultado é um "acréscimo" de um grau de liberdade ao sistema robótico e conseqüentemente o aumento do volume de trabalho. Há duas variantes de dispositivos de elevação: para a peça ou para o robô.
(a)
(b)
Figura 10.11 - Esquema do "JIG" de elevação (a) Peça, (b) Robô.
10.2.3 - Esteiras A esteira transfere a peça de trabalho na direção definida continuamente. Muitos destes tipos de esteiras são disponíveis. Alguns estão definidos abaixo: 10.2.3.1 - Esteira Cabide ou Carrinho Carrinhos somados com suportes para peças de trabalhos encabidadas são fixadas em um caminho. Esses carrinhos são conectados por uma corrente sem fim. A corrente é dirigida, puxada, por uma polia de corrente para carrinhos circulares. Desta maneira, o trabalho é transportado. 10.2.3.2 - Esteira tipo piso Este tipo de esteira é instalado diretamente no piso para carregamento e transporte da peça de trabalho. Esteira tipo piso são classificadas grosseiramente para dentro da direção de sistema de transporte e sistema pallet de transporte. O sistema formado inclui calha, esteira de rolo, esteira de correia, etc. e o ultimo sistema inclui mudança automática pallet (APC), esteira de fluxo livre, etc... 199
Fig 8
10.2.3.3 - Veículos Autonomamente Guiados - AGV Os Veículos Autonomamente Guiados - AGVs (sigla do inglês "Autonomously Guided Vehicles") são geralmente utilizados no cenário de uma fábrica altamente automatizada, substituindo o operador humano na tarefa de transportar peças de uma determinada localização a outra, seguindo comandos especificados pela unidade de gerenciamento da fábrica. A movimentação deve ser sincronizada a dos equipamentos que deverão interagir com o AGV, como robôs, esteiras móveis e alimentadores automáticos de peças. Embora existam modernos sistemas de orientação, tais como laser, sensores de marca, etc. a maioria dos AGVs incorpora sistemas de orientação eletromagnética ou ótica. Botão de
Luz de
Caixa de
parada de emergência
estado
operação
Bateria Detector da guia ótica Fita de sinal
Fita de reflexão Borracha de segurança
Figura 10.12 - Esquema básico de um AGV.
Em aplicações especiais a visão estereoscópica pode ser utilizada embarcada em AGV, principalmente caso este deva mover-se em um ambiente onde seja necessário evitar colisões, descobrir onde estão os obstáculos, os caminhos livres disponíveis, desviar de obstáculos, localizar-se, calcular velocidade e orientação (sua própria ou de possíveis obstáculos móveis). Em tarefas de montagem ou manufatura, peças a serem manipuladas podem chegar em posições pré-definidas em uma esteira transportadora em movimento ou numa bandeja. A visão seria usada para determinar a chegada da peça e, eventualmente, identificá-la, visando dirigir a ação de um manipulador que irá agarrar a peça e colocá-la na posição adequada. No entanto, para uma maior flexibilidade na aplicação, peças diferentes podem ser fornecidas às tarefas de montagem ou manufatura, sem restrição alguma quanto a seus posicionamentos. Assim, torna-se mais ainda necessária a execução de um reconhecimento de objetos pelo sistema de visão.
200
Fig 8
10.3 - MÁQUINAS PERIFÉRICAS Uma variedade de máquinas periféricas é usada conforme o tipo de trabalho a ser feito pelo robô. A tabela a seguir, lista as máquinas periféricas usadas em um típico sistema de operação robotizado.
Tabela 10.2- Principais máquinas periféricas.
PROPÓSITO DO TRABALHO A SER FEITO PELO ROBÔ FORJARIA
MÁQUINAS PERIFÉRICAS USADAS TIPICAMENTE Máquina de forjaria (prensa, máquina de estampagem, etc...), Forno de tratamento, esteira, etc... Máquina de fundição, forno de fusão, máquina automática de energia de metal fundido, esteira, calha, etc...
FUNDIÇÃO
Máquina ferramenta, esteira, padrão temporário e ‘PALLET’, dispositivo de usinagem, magazine de ferramenta, etc...
USINAGEM, REBARBAGEM, FURAÇÃO, ETC...
Máquinas de injeção de plástico, esteira, alimentador das partes OPERAÇÃO DE inseridas, magazines, etc... MOLDES PLÁSTICOS PRENSAGEM
Máquina de prensagem, alimentador de ‘BLANCK’, esteira, padrão temporário, elevador, máquina de rolagem, magazines, etc...
SOLDAGEM
Fonte de energia para soldagem, esteira, posicionador, mesa de giro, ‘JIG’ padrão e dispositivo de mudança de trabalho, AGV’s para transporte, etc...
PINTURA
Equipamento de pintura, esteira, mesa de giro, cabine de pintura, etc...
MONTAGEM
Esteira, mesa de giro, alimentador de peças, peças estocadas, dispositivo de força e arranjos das peças magazines, ‘ PALLETS’, montagem padrão, “JIG" padrão, dispositivo de posicionamento, etc...”.
MUDANÇA DE ESTÁGIO ENTRE PROCESSO
Esteira, magazine, ‘PALLET’, etc.
INSPEÇÃO MEDIÇÃO
Esteira, mesa X-Y, etc...
CAMADA VEDAÇÃO
E DE
Dispositivo pressurizador de material de vedação, esteira, mesa de giro, etc...
201
10.4 - TÍPICOS EXEMPLOS DE SISTEMAS DE COMBINAÇÃO E INTERLIGAÇÃO DAS OPERAÇÕES USANDO ROBÔS. A flexibilidade e a redução de custos operacionais obtidos com o emprego de robôs têm feito deles uma parte integral da estratégia de automação na indústria automotiva. Algumas operações de montagens veiculares têm alto nível de automação como por exemplo nos setores de carroçaria e pintura. Entretanto, enquanto outros setores como a linha de montagem final, possui grande participação de operações manuais. A produção de componentes para as montadoras de veículos automotivos abrange sempre, um número maior de montagens de interior e exterior, brasagem e soldagem de componentes com controle de temperatura e umidade, montagem e soldagem de componentes eletrônicos e assim por diante. Na montagem de veículos o setor de carroçaria recebe normalmente partes estampadas vindas de operações internas de estampagem. Robôs de soldagem executam a seqüência final de união das chapas para se construir uma determinada carroçaria. Diversos subconjuntos de peças, do painel de instrução até as montagens das portas ou sistemas de chassis podem ser completamente ou parcialmente montados, dependendo da organização da planta. Uma vez preparada a carroceria, esta é então transferida para o setor de pintura onde recebe uma demão e posteriormente camadas de tinta, usando como ferramenta um cabeçote de "spray" automatizado vinculado à extremidade de um braço de robô com longo alcance. Enquanto a carroçaria está na área de pintura, outra submontagem está sendo completada dentro da alimentação da linha saindo através da planta. Finalmente, da pintura da carroçaria é transferida até a linha de montagem final, onde na geralmente grande parte das operações é manual. Na carroçaria, muitas áreas são totalmente automatizadas com uma extensa faixa de robôs para manusear as seqüências de soldagem. Robôs de manuseio de material são freqüentemente usados para transportar o metal em chapa, de uma localizada célula de trabalho para a próxima. Robôs são também usados para aplicar colas, adesivos e material de selagem durante a montagem da carroçaria. Atualmente esforços estão sendo realizados para aumentar a flexibilidade do equipamento de fixação das chapas para a operação de soldagem no setor de carroceria. Muito destes são em prol dodauso dos robôs para repor o tradicional mecanismo de fixação por grampo para localizar a parte carroçaria. A operação de pintura numa planta automotiva é também altamente automatizada devido aos requisitos de proteção ambiental impostos pelas autoridades. Outro fator que contribui ao grande número de robôs no setor de pintura automotiva é que o modelo de operação é bem definido e não é necessário contato entre o robô e a carroçaria do veículo. A instalação da linha de pintura robotizada no setor de pintura de veículos automotivos nos últimos tempos resultou num substancial aumento da qualidade geral da pintura. Estima-se que houve redução de até 50% nas perdas de material em razão do controle de automação do sistema. Como na área de carroçaria, robôs também são usados para aplicação de selo a prova d’água na área de pintura.
10.5 - ASPECTOS GERAIS E DETALHES TÉCNICOS DE PINTURA 10.5.1- Princípios Gerais Nas cabines de pinturas “primer”, cor-base e verniz, são de fundamental importância o controle de parâmetros como a qualidade do ar insuflado, a permanência de temperatura 202
constante, o grau de umidade, o nível de filtragem e a velocidade de lâmina do ar. O balanceamento dos mesmos e o sistema de exaustão devidamente ajustado permitirão o máximo aproveitamento e eficiência do sistema de aplicação, tornando possível até a presença humana no ambiente. Em todo o setor de pintura, é de suma importância a qualidade do transportador de “Skids”, seja ele de arraste ou translação, o qual deverá manter uma velocidade uniforme e com intertravamento de posicionamento em sincronismo com o sistema automático de aplicação de tinta. Também existem linhas e aplicações específicas que exigem previamente a parada e localização (indexação) do produto, denominadas estações “stop-in-go”. Os “Skids” deverão garantir alta repetibilidade de posicionamento dos produtos suportados por eles (em geral, para pintura, variação máxima tolerável +/- 1,5 mm nos três eixos do referencial cartesiano - x, y e z). Estes também deverão garantir a máxima acessibilidade ao produto para qualquer ângulo. Já estações de aplicação de massas (PVC, TRBT, etc...) deverão garantir níveis de posicionamento ainda mais precisos, reduzindo as variações para até +/- 2,0 mm, nos três eixos. As linhas de tintas, solventes, catalisadores (quando for o caso de utilização de dois componentes) e ar comprimido deverão manter pressão estável, acima do mínimo especificado no ponto de aplicação, temperatura constante, filtragem garantindo em certos casos até 5 μm de eliminação de partículas para o ar comprimido, e a retirada de umidade. É de suma importância a manutenção da viscosidade dos polímeros, pois qualquer processo de aplicação automático terá de restringir as tolerâncias de controle de muitas variáveis, para que se possa manter as condições ótimas de aplicação, com respostas rápidas às variações pequenas. Para uma perfeita combinação de todos os processos, é fundamental a existência de sistemas de identificação ao longo de todas as etapas operacionais. 10.5.2 - Processos de Aplicações Dentre os vários processos de aplicação encontrados, destacam-se produtos em forma de massa: calafetação-pulverização, filetagem, extrusão; líquidos: pulverizados com efeito eletrostático ou não, e a pó: pulverizados somente com efeito 100% eletrostático. Os solventes básicos são os derivados de xilol (hidrocarbonetos aromáticos, acetatos de butila) e mais recentemente, água em proporção variada entre 30 a 75%. As tintas a pó não utilizam nenhum tipo de solvente e em muitos casos podem ser reutilizadas nos mesmos processos. A forma de armazenamento, manipulação e abastecimento destas tintas requer tecnologias específicas e um controle rigoroso, mas já amplamente dominados e utilizados pela industria automobilística e de artefatos domésticos. Todas as aplicações passíveis de utilização de efeito eletrostático têm sido associadas à implementação de automação, devido a alguns riscos de formação de arcos ou mesmo a explosão, principalmente quando a tinta é diluída em solvente à base de água (extremamente condutor). O efeito eletrostático é obtido através de uma fonte de alta tensão (100Kv ou mais) que carrega as partículas de tinta expelidas pelo aplicador, via eletrodo, criando assim uma diferença de potencial entre estas e os produtos a serem pintados, os quais estão aterrados junto ao conjunto “Skids” mais transportador. As aplicações manuais com pistolas eletrostáticas são possíveis, porém requerem treinamento específico e maior atenção do usuário, pois pela associação dos efeitos gerados, as variações de camada as imperfeições podem ser ainda maiores do que aqueles obtidos com o uso de sistemas convencionais. 203
As aplicações automáticas de tintas líquidas podem ser efetuadas tanto por robôs como por máquinas de múltiplos eixos livres de interpolação. Para um máximo aproveitamento, é normalmente utilizada a aplicação eletrostática, mas dependendo da cor ou do efeito desejado deve haver a aplicação de uma última camada convencional (empoeiramento) na cor-base, no caso de aplicação de primer. Vários fabricantes vêm utilizando, assim como nas aplicações de verniz, tanto a tinta líquida quanto a tinta a pó. 10.5.3 - Exemplo de Pintura Usando mesa de Giro Na mesa de giro, a peça a ser trabalhada é ajustada e rigidamente vinculada. Deste modo, a operação de pintura poderá ser feita para que a peça seja pintada a partir de movimentações da mesa de giro, localizada nas proximidades da cabina de pintura onde a operação é realizada pela pulverização de tinta através da pistola de tinta transportada pelo robô. Desta maneira obtêm-se segurança, salubridade da área de trabalho e melhoria da eficiência.
Cabina de pintura
Sistema de ventilação Mesa de giro
robô
Unidade de pintura Figura 10.13 - Pintura com mesa de giro e robô.
10.5.4 - Exemplo de Lay-out de Operação de Pintura Usando Mesa de Giro
Ventilação Mesa de
ROBÔ
204
giro
Unidade de pintura
Fig 8
Figura 10.14 - Interligação do processo de operação.
Fig 8
Neste caso tem-se a seguinte seqüência de operações: I. A operação do robô é comandada através dos sinais da unidade de pintura e ventilação da cabina de pintura, e pelo sinal de conclusão de operação do posicionamento da mesa de giro para o presente ponto de pintura; II. A operação da mesa deoperador giro é comandada pelo sinal completo de operação e pelo sinal de partida “ON” enviado pelo após a renovação da peça de trabalho.
10.5.5 - Exemplo de Pintura Usando Esteira Contínua 10.5.5.1 - Esboço do sistema e operação No exemplo apresentado na figura 10.15, quatro processos de pintura são formados nos diversos tipos de objetos que são elevados no carrinho suspenso localizados sobre a esteira contínua, que se movimentam com ajustes de velocidade para permitir uma sincronia com os quatro robôs.
Cabina de pintura
Unidade de pintura n°1
Robô n° 1
Unidade de pintura n°2 Robô n° 2 Trabalho n°3 e detector de Trabalho n°4 e classificação detector de
Carrinho Suspenso
classificação
Sistema de ventilação
Trabalho n°1 e detector de classificação Trabalho n°2 e detector de
porta
Robô n° 3 205 Robô n° 4
classificação Unidade de pintura n°3
Unidade de pintura n°4
Figura 10.15 - Interligação do processo de operação.
Fig 8
10.5.5.2 - Procedimento da operação contínua
Seleção dos movimentos de cada robô conforme o tipo de trabalho e movimentos são comandados por sobre o sinal de operação da ventilação em cada unidade e cabina de pintura. Sinal fechado das portas, e sinal de classificação de trabalho de cada trabalho e detector de classificação.
Trabalho n°1 e detector de classificação
1Robô n°
Portas n
° 1 e n° 2
Unidade de pintura n° 1
Trabalho n°2 e detector de classificação Unidade de pintura n° 2
Robô n° 2
206
Ventiladores elétricos n° 1 e n° 2
Figura 10.16 - Procedimento de operação contínua.
10.5.5.3 - Operação interligada de trabalho de pintura usando esteira contínua
Figura 10.17 - Pintura de cabinas com esteira tipo piso. Cortesia: Scania Latin América Ltda.
10.6 - EXEMPLO DE TRABALHO DE MONTAGEM 10.6.1 - Esboço do Sistema e Operação 207
Fig 8
Esse é um sistema para montagem de uma variedade de produtos com nove tipos de peças, fornecidos pelo alimentador de peças e peças estocadas para a base de acúmulo conforme o padrão de montagem, usando um robô acumulador e um robô apertador parafusador. Produtos montados são automaticamente transferidos entre processos pelo fluxo livre de esteiras. Após o levantamento da base acumulada em que são ajustados juntos da base acumuladora no magazine de levantamento, um a um eles são fornecidos para o ponto acumulado do fluxo livre de esteira pelo robô acumulador. Nesta hora, a base acumulada é segura pela parada n° 1. O número requerido da peça necessária de nove tipos daqueles fornecidos do alimentador n° 1 e n° 2 e das peças estocadas é acumulada pelo robô acumulador conforme o presente padrão acumulado. Alimentador de peça n° 1
Alimentador de peça n° 2
Robô acumulador
Peças estocadas
Alime par
Base acumuladora magazine de levantamento
Maga direc
Robô par
Parada n°1
Fluxo livre de esteira
Parada n°2
Figura 10.18 - Exemplo de lay-out de trabalho de montagem.
No complemento da operação de acumulo, parada n ° 1 desce, o produto acumulado é transferido para o ponto do apertador parafusador pelo fluxo livre da esteira, e ele é seguro pela parada n° 2. Parafusos são automaticamente fornecidos até o magazine de auto direcionamento pelo alimentador de parafusos. O auto direcionamento é guardado no magazine próprio na atual posição. O robô apertador parafusador segura o presente autodirecionamento neste magazine faz o rosqueamento de cada peça acumulada interligada com o autodirecionamento. Para rosquear os parafusos de diferentes tamanhos, o robô muda o autodirecionamento e executa a mesma operação acima de apertar parafuso, assim, a parada n ° 2 desce e a produção acumulada é automaticamente transferida para o próximo processo pelo fluxo livre da esteira.
10.6.2 - Procedimento de operação de interligação 208
Base acumuladora do magazine de levantamento
Alimentador de peça n° 1
Peças estocadas
Robô acumulador
Parada n° 1
Alimentador de peça n° 2
Fluxo livre da esteira Alimentador de rosca
Magazine auto direcionador
Robô apertador parafusador
Parada n° 2
Auto direcionador
Figura 10.19 - Diagrama mostrando a operação de interligação. (a) Movimento do robô acumulador é comandado pela operação através do sinal do fluxo livre da esteira, subindo o sinal completo da parada n ° 1, ausência do sinal da base acumuladora da chave de acesso ligado ao ponto acumulando. Presença de sinal da base acumulada, da chave
de acesso ligada para o estágio de tope do magazine de levantamento da base acumulada a peça apresenta sinal da chave de acesso ligada para o ponto alimentador do n ° 1 e n° 2, peças alimentadas apresentam sinal das chaves de acesso ligado para o ponto de alimentação de cada peça do estoque. (b) Movimento de descer da parada n ° 1 é comandado pelo sinal completo de operação do robô acumulador. (c) Movimento de subir da parada n° 1 é comandado pela base acumuladora pela ausência de sinal da chave de acesso ligado para o ponto de acumulo. (d) Movimento do robô apertador parafusador é comandado pela operação sobre o sinal do fluxo livre da esteira, subindo o sinal completo da parada n° 2, presença de sinal da base acumuladora da chave de acesso ligada para o ponto de aperto do parafuso, sobre o sinal de operação do alimentador de parafuso. Presença de sinal do parafuso da chave de acesso ligado para cada autodirecionamento, e a presença de sinal do autodirecionamento da chave de acesso ligado para cada magazine de autodirecionamento. (e) Movimento de descer da parada n ° 2 é comandado pelo sinal completo do robô apertador parafusador. 209
(f) Movimento de subir a parada n° 2 é comandado pela base acumuladora pela ausência de sinal da chave de acesso, ligado pelo ponto de aperto do parafuso.
10.7 - EXEMPLO DE REVESTIMENTO POR PULVERIZAÇÃO TÉRMICA 10.7.1 - Definição do Sistema A cobertura por pulverização térmica envolve o aquecimento de um material em pó ou em forma de fio para um estado derretido ou semiderretido. O material é propulsionado usando um jato de gás ou ar comprimido com meio atmosférico altamente controlado, capaz de depositar o material na parede da peça a ser trabalhada, criando uma estrutura de superfície denominada substrato (camada). O material de cobertura pode ser constituído de um único elemento, mas é freqüentemente uma liga ou composto com uma única propriedade física, que é somente capaz de alcançar através do processo de pulverização térmica. A gama de materiais que pode ser empregada neste processo é praticamente sem limite. A cobertura pode ser metálica, plástica, ou qualquer combinação desejável para se encontrar uma larga faixa de critério físico. Muitas indústrias utilizam a cobertura para estender a vida do produto, melhorando a execução e reduzindo os custos de produção e manutenção. A cobertura térmica pode implicar eventualmente na melhoria do custo-benefício de um produto, pois um substrato de superfície auxilia na proteção contra desgaste e corrosão. Outros usos básicos de cobertura incluem restauração dimensional, modificação de propriedades térmicas e elétricas, modificação das características de dureza e acabamento, minimização do efeito do desgaste mecânico. Desta forma, estende-se a vida do produto e se reduzir o custo da manutenção. As principais funções de cobertura são mencionadas abaixo: • Resistência ao desgaste • Resistência ao calor e oxidação • Resistência à corrosão atmosférica e imersão • Restauração das dimensões • Controle de limpeza 10.7.2 - Operação do sistema Observa-se na figura 10.20, a exemplificação da utilização do processo com aplicação do revestimento executada por um robô. A execução do robô é comandada pela operação através dos sinais da unidade alimentadora de pó, da unidade de gás, da unidade de fornecimento de energia e pelo sinal completo de operação de localização da mesa posicionadora.
Unidade alimentadora de pó
210
Sistema de Exaustão
Figura 10.20 - Aplicação do revestimento robotizada.
Figura 10.21 - .
211
Figura 10.22 - Sistema com robô de aplicação de revestimento térmico (veja fig. 17-A/B) Cortesia: VASP – Viação aérea de São Paulo Oficina Mecânica São Paulo – S. P.
Nas figuras 10.21 e 10.22, pode-se observar uma típica aplicação do processo de revestimento térmico em uma parte estrutural da câmara de combustão de um motor de avião a jato. Esta peça é feita em liga de alumínio e sobre ela é necessário que se tenha uma camada de material cerâmico para que este seja desgastado ao ter-se o contato entre as palhetas do rotor do eixo do motor (estas são ajustadas em décimos de milímetro), durante a operação. A aplicação exemplificada também serve para melhorar o retardamento da oxidação em alta temperatura da peça estrutural. A cobertura da câmara de combustão de avião a jato é crucial para ajudar a retardar ao substituição da peça em liga de alumínio cuja construção é onerosa. Desta forma, o processo pode ser executado muitas vezes na mesma peça, melhorando a sua relação final de custobenefício.
10.8 - REFERÊNCIAS NOF, S. Y., Handbook of industrial Robotics, 2 ed., John Wiley&Sons Inc., New York, 1999. SUGIMOTO, N., "Como usar de maneira correta os robôs industriais", Material Didático, Escola SENAI “Armando de Arruda Pereira”, São Caetano do Sul, 2000. Catálogo da Sulzer Metco, The Coatings Company, USA, 1995 MEKHALIN E., "Sistema de automação de pintura e áreas correlatas", In: Tratamento de superfície, v. XXI, n. 99, pp.16-21, São Paulo, Jan/Fev. 2000.
212
CAPÍTULO 11 TENDÊNCIAS E APLICAÇÕES ESPECIAIS Alberto José Álvares, Sérgio Roberto Gonsalves Tourino Teodiano Freire Bastos Filho, Hansjorg Andreas Schneebeli
11.1 - ROBÔS MÓVEIS Desde a década de 60, quando a empresa Unimation instalou o primeiro robô manipulador industrial, já se contabilizam mais de 700.000 robôs em todo o mundo (ver Capítulo 1). Inclusive, prevê-se um rápido crescimento desse número principalmente devido ao aumento do custo da mão de obra, à necessidade de aumento de produtividade e melhoria da qualidade final, à necessidade de realização de tarefas perigosas, as quais o homem não pode realizar, e à queda do custo dos robôs. Os robôs manipuladores vêm sendo bastante utilizados na indústria, para tarefas como soldagem, pintura, montagem de peças e inspeção de defeitos. Ultimamente também vêm sendo utilizados robôs manipuladores em cirurgias delicadas, através de teleoperação (ver www.recope.br/robo/telecirurgia) e como próteses mioelétricas (ver www.recope.br/robo/protese). Entretanto, um outro tipo de robô, os chamados robôs móveis, vêm sendo amplamente pesquisados e são utilizados desde para o transporte de peças em uma indústria, até para substituir o homem em explorações de locais arriscados, tais como águas profundas, áreas radioativas, crateras de vulcões, ambientes espaciais e até outros planetas. Diferentemente dos robôs manipuladores, cuja base fixa serve de referência tanto para os movimentos do robô quanto para a área de trabalho, um robô móvel autônomo é livre para mover-se em todas as direções e não tem como referenciar-se de forma direta ao meio que o rodeia. As três formas mais comuns de movimento são por rodas, esteiras e patas, embora existam robôs que saltam, escalam, voam e até se deslocam por propulsão no fundodo mar. Sem o intuito de esgotar o tema, mesmo porque o avanço tecnológico pode rapidamente tornar obsoleto qualquer desenvolvimento, são apresentados neste capítulo os robôs que se destacam pela novidade apresentada ou por terem uma aplicação especial.
11.1.1 – Evolução dos Robôs Móveis Na década de 70 começaram os primeiros desenvolvimentos na área de robôs móveis: surgiram os robôs móveis não-autônomos, que são robôs que se movem unicamente sobre trajetórias fixas, restritas de alguma forma (por exemplo, trilhos), ou seguindo marcas contínuas ou espaçadas, pintadas sobre o solo. Estes robôs são normalmente classificados como veículos auto-guiados ou AGV (‘Auto-Guided Vehicle’) de caminho fixo, e realizam operações de transporte automatizado, com diferentes graus de complexidade, em fábricas e armazéns. 213
Na década de 80 apareceram os primeiros robôs autônomos, ou AGV de caminho indefinido, os quais não estão restringidos a um espaço de trabalho fixo. Os robôs autônomos são mais versáteis, entretanto isso requer um sistema de sensoriamento mais sofisticado e são necessários computadores de bordo mais poderosos, capazes de atender às exigências dos sistemas de sensoriamento, navegação e controle. Este tipo de robôs são atualmente objeto de amplo estudo: pretende-se chegar a sistemas capazes de operar autonomamente nas mais diversas situações possíveis, desde em ambientes fechados e estruturados, até locais abertos, desconhecidos, acidentados e dinâmicos. Para isso, seria necessário reproduzir praticamente toda a capacidade humana de percepção sensorial, habilidade motora e discernimento abstrato, obtendo sistemas capazes de operar sem a presença humana, ou com sua mínima intervenção (JONES, 1999). O exemplo mais recente de aplicações destes tipos de robôs é o robô Sojourner que a NASA enviou recentemente a Marte. Entre os tipos de movimento utilizados em robôs, os robôs móveis a rodas são os mais populares por razões práticas, já que são mais simples e fáceis de construir. Os robôs com patas ou com esteiras normalmente requerem hardware mais complexo e de maior peso que os robôs a rodas projetados para suportar a mesma carga útil. A principal desvantagem dos robôs móveis a rodas é que têm um pior desempenho em terrenos acidentados, já que como regra geral, um veículo com rodas tem problemas se a altura do obstáculo que ele deve transpor se aproxima ao raio de suas rodas (JONES, 1999).
11.1.2 - Robôs com Esteiras Para robôs que devem operar em um ambiente natural, os robôs com esteiras são mais interessantes porque as esteiras permitem ao robô transpor obstáculos relativamente mais altos. Assim, estes robôs são menos suscetíveis que as rodas a terrenos acidentados, tais como terras soltas e pedras. A principal desvantagem das esteiras é sua ineficiência, pois o atrito nas esteiras dissipa potência, fazendo com que a energia seja desperdiçada sempre que o robô se movimenta (JONES, SEIGER, FLYNN, 1999). Alguns exemplos de robôs com esteiras desenvolvidos em vários centros de pesquisa do mundo são o ATR6000 (www.recope.br/robo/esteira1), o MRK-41 (www.recope.br/robo/esteira2) e o Hazbot III (www.recope.br/robo/esteira3).
11.1.3 - Robôs com Patas Os robôs com epatas, ou caminhantes, a possibilidade de intervenção em meios submarinos, espaciais terrestres. Além disso, ostêm robôs com patas podem superar a maioria dos problemas de locomoção em terrenos acidentados do que qualquer robô com rodas ou esteiras. Entretanto, um dos fatores que vem dificultando o desenvolvimento de robôs caminhantes é o entendimento da complexidade de coordenação de movimento de suas patas. Isto se deve ao modo de caminhar, à estabilidade do corpo sob a ação de movimento, e à arquitetura das mesmas. O modo de caminhar está associado à coordenação harmônica das patas no movimento de locomoção; a estabilidade do corpo está associada à distribuição de massas em relação às patas, quando estão em movimento; e a arquitetura mecânica se deve principalmente ao número de graus de liberdade, tipo de configuração, e formação mecânica das juntas (JONES, 1999). Embora exista um grande interesse no desenvolvimento de sistemas práticos, o robô caminhante ainda tem que superar alguns desafios. Muitos destes desafios são devido ao grande número de graus de liberdade requeridos por este tipo de robôs. Como cada pata deve ter pelo menos dois motores, o custo de construir um robô com patas é relativamente mais alto do que o dos robôs com rodas ou esteiras. Além disso, o mecanismo de caminhar é mais complexo e portanto mais propenso a falhar, sendo que o algoritmo de controle fica comprometido, dado que existem mais movimentos a coordenar. 214
O controle ótimo de robôs caminhantes é ainda uma área ativa de pesquisa e existe até um site dedicado a construtores de robôs com patas (www.recope.br/robo/patas). Como exemplos de robôs com patas desenvolvidos em diferentes centros de pesquisa do mundo, estão o robô de seis patas Katharina (www.recope.br/robo/seispatas), o robô de quatro patas RVL (www.recope.br/robo/quatropatas1), os robôs bípedes Planar (www.recope.br/robo/duaspatas1) e o robô humanóide da Honda (www.recope.br/robo/duaspatas2), e finalmente, o robô de uma pata OLIE (www.recope.br/robo/umapata). Como exemplo de robô com patas desenvolvido no Brasil está o robô ROQUE (figura 11.1), desenvolvido no Departamento de Engenharia Elétrica da UFES (Maiores informações, com o vídeo sobre a operação deste robô, estão disponíveis em www.recope.br/robo/quatropatas2).
Figura 11.1 - Robô com quatro patas ROQUE.
11.1.4 - Robôs com Rodas Tal como mencionado anteriormente, os robôs móveis a rodas são mais simples e fáceis de construir. Existem vários arranjos de rodas tracionadas e de direção para este tipo de robôs. Entre eles estão os de tração diferencial, tração sincro, tração triciclo, e tração carro (JONES, 1999). Muitas empresas desenvolveram robôs móveis a rodas comerciais. Alguns exemplos são os robôs Nomad (www.recope.br/robo/rodas1), Pioneer (www.recope.br/robo/rodas2), RoboSoft (www.recope.br/robo/rodas3), RWI (www.recope.br/robo/rodas4), Rug Warrior (www.recope.br/robo/rodas5), existindo até sites no Brasil que comercializam robôs móveis: www.recope.br/robo/rodas6 e www.recope.br/robo/rodas7. A figura 11.2 mostra um robô móvel a rodas de tração diferencial desenvolvido no Departamento de Engenharia Elétrica da UFES, o qual consta de sensores de ultra-som, sensores de infravermelho, sensores de contato e câmara de vídeo, e pode ser comandado por voz e teleoperado pela Internet. Maiores informações, com o vídeo sobre a operação deste robô e link para sua teleoperação pela Internet, estão disponíveis em www.recope.br/robo/rodas6.
215
Figura 11.2- Robô móvel a rodas de tração diferencial “Brutus”.
11.1.5 - Robôs de Limpeza 11.1.5.1 - Limpeza de pisos domésticos e industriais Existem trabalhos pioneiros no uso de robôs de limpeza de piso para ambientes domésticos, tal como o robô móvel a rodas RoboScrub, surgido em 1991, desenvolvido pelas empresas Denning Mobile Robotics e Windsor Industries. Entretanto, esse pioneirismo não garantiu um sucesso comercial, devido a várias razões. Primeiro, o robô algumas vezes se chocava com os móveis, danificando-os. Segundo, o custo do robô era bastante alto: o salário de um empregado de limpeza saía bem mais em conta. Por esta razão, o RobScrub foi posteriormente destinado para limpeza de grandes salões, de forma a justificar seu alto custo, embora não se garantia a limpeza completa do ambiente (fora do alcance do robô). Um outro desenvolvimento de robô de limpeza de pisos é o robô móvel a rodas RoboKent, desenvolvido pela Kent Corporation (www.recope.br/robo/limpeza1). Este talvez seja o robô de limpeza de maior sucesso até o momento. Embora de tecnologia básica similar ao RoboScrub, diferencia-se deste em que, uma vez situado na área a ser limpada, pode tanto realizar a limpeza de forma autônoma (em ambientes de geometria retangular), quanto ser totalmente guiado pelo operador. A Robosoft (www.recope.br/robo/limpeza2) também fabrica robôs de limpeza de pisos de ambientes industriais, tais como o Auto VacC 6, o qual pode realizar a limpeza de ambientes de forma remota, através de ensino-repetição ou autonomamente. Esta empresa fabrica também robôs para limpeza de fachadas de edifícios e até de telhados de vidro. A empresa Dyson (www.recope.br/robo/limpeza3) comercializa um robô móvel de limpeza de pisos domésticos. É o DC06, um robô a rodas, autônomo e de pequenas dimensões, o qual realiza aspiração automática à vácuo. Seu pequeno tamanho permite deslocar-se por baixo de cadeiras e mesas, efetuando a limpeza desses locais que seriam inacessíveis para os outros robôs de limpeza. Além disso, utiliza 50 sensores, para, entre outras funções, detectar e desviar de obstáculos, detectar escadas (de forma a não cair da mesma) e até para proteger-se, ou seja, pára o seu funcionamento quando por exemplo é atacado por um animal ou agarrado por alguém. Além disso, durante a operação de aspiração de pó, executa uma trajetória em espiral, o que implica em cobertura eficiente da área sob limpeza. 216
11.1.5.2 - Limpeza de tubulações de esgoto, dutos de ar condicionado e de usinas nucleares Robôs para limpeza de tubulações de esgoto comerciais vêm sendo utilizados em diversas cidades (ver www.recope.br/robo/esgoto1). Nesta aplicação, um operador humano controla remotamente os movimentos do robô enquanto recebe as imagens da tubulação interna a ser limpa. Existem pesquisas sendo desenvolvidas para a construção de robôs que realizem esta limpeza de forma autônoma (www.recope.br/robo/esgoto2). Uma outra aplicação de robôs de limpeza é para limpeza de dutos de ar condicionado (www.recope.br/robo/ar) e de usinas nucleares (www.recope.br/robo/nuclear). A UNESP (Baurú) e a EPUSP desenvolveram um protótipo de telerobô para inspeção de dutos - DAVID - (figura 11.3), capaz de se movimentar em tubulações através de rodas acionadas por motores elétricos. Ele possui uma estrutura mecânica adequada a tubulações de seção circular, podendo ser alterada segundo as restrições impostas pelo ambiente. O DAVID está equipado com sensores para realizar medições de diâmetro, declividade e “embarrigamento” da tubulação.
Figura 11.3- Telerobô de inspeção de dutos - DAVID.
11.1.5.3 - Limpeza de cascos de navios Os robôs podem ser utilizados até para a limpeza de cascos de navios. Por exemplo, a empresa Barnes and Reineke desenvolveu um robô manipulador de grandes dimensões para efetuar este tipo de limpeza (Everett, H.R., 1995).
11.1.6 - Robô Cortador de Grama Uma outra aplicação de robôs destinada a ambientes domésticos é o robô cortador de grama (ver www.recope.br/robo/grama1). O robô RL500 (www.recope.br/robo/grama2) inclusive já se encontra à venda. Um outro desenvolvimento é o robô Lawn Nibbler (www.recope.br/robo/grama3). Este robô corta a grama em uma área definida, cujo perímetro é demarcado por emissores de rádio-frequência. Enquanto corta a grama, o robô é capaz de desviar-se de obstáculos (árvores, brinquedos, animais, crianças, etc.).
11.1.7 - Robô de Segurança 217
Os robôs móveis também podem realizar a função de sentinelas, tais como é o caso do robô a rodas Denning Sentry (www.recope.br/robo/seguranca1), desenvolvido pela Denning Mobile Robotics. Este robô conta com sensores de ultra-som para detecção de obstáculos, sensor de movimento por infravermelho e por microondas, para detecção de intrusos, câmara de vídeo, microfone para sensoriamento acústico do ambiente e transmissor de sinais para transmitir informação para a estação de controle. Além disso, contém um sensor de nível de bateria que permite que o robô busque autonomamente a estação de recarga quando sua bateria estiver baixa. Entretanto, este robô, além de ser de alto custo, é incapaz de executar tarefas tão simples para um vigilante humano quanto verificar se as portas do ambiente sob vigilância estão fechadas, se os equipamentos foram desligados e se as lâmpadas do ambiente foram apagadas (JONES, SEIGER, FLYNN, 1999). A Robosoft (www.recope.br/robo/seguranca2) é outra empresa que também fabrica robôs de segurança, tal como é o caso do robô SMIS. Um recente lançamento de robô capaz de executar tarefas de vigilância é o iRobot (www. recope.br/robo/seguranca3). Ele é um robô dotado de câmara de vídeo, microfone, alto-falante e sensores anti-colisão. É possível teleoperá-lo via internet, recebendo de volta o som e as imagens do ambiente onde o robô se encontra. Pode-se inclusive transmitir para o robô comandos para que ele emita sons, como se falasse por você. O iRobot também é capaz de subir e descer escadas. Um exemplo de robô de segurança para usinas nucleares é o robô com patas Robug II (www.recope.br/robo/seguranca4), desenvolvido pela Universidade de Portsmouth, Inglaterra. Este robô foi idealizado para realizar tarefas de vigilância de indústrias de alto risco, sendo capaz de deslocar-se entre obstáculos e até de subir escadas.
11.1.8 - Robô Bombeiro O robô Fire Spy (www.recope.br/robo/bombeiro1), desenvolvido por UK's West Fire Service/JCB, foi projetado para apagar incêndios, suportando temperaturas de até 800 oC. O Fire Spy pode ser controlado remotamente desde até 100 m de distância, sendo que o operador recebe as imagens do ambiente ao redor do robô através de duas câmaras de vídeo (normal e infravermelha), instaladas no robô. É tal o interesse neste tipo de aplicação que existe até uma competição anual (www.recope.br/robo/bombeiro2) cujo objetivo é construir robôs que sejam capazes de, no menor tempo possível, encontrar e extinguir focos de incêndio em uma casa.
11.1.9 - Robô Hospitalar A HelpMate Robotics desenvolveu um robô móvel a rodas de aplicações hospitalares, chamado HelpMate (www.recope.br/robo/hospital), capaz de realizar uma tarefa corriqueira em um hospital: transportar documentos e medicamentos entre as salas do hospital. É uma tarefa simples, mas que toma bastante tempo de auxiliares de enfermagem, enfermeiras e trabalhadores de um hospital. Ao ser capaz de resolver esta simples tarefa de transporte de uma forma eficiente, o HelpMate tornou-se um sucesso em mais de 100 hospitais do mundo (JONES, 1999).
11.1.10 - Robô Agrícola Algumas pesquisas vêm sendo realizadas para o uso de robôs em aplicações agrícolas, tais como o controle de ervas daninhas (www.recope.br/robo/agricola1), colheita de frutas, fumigamento, monitoramento de estufas, do Projeto Agrobot da Itália e do Projeto Agrobot da Espanha (www.recope.br/robo/agricola2 e www.recope.br/robo/agricola3). 218
11.1.11 - Robô Explorador de Vulcões Em 1994, o robô móvel a patas Dante II (www.recope.br/robo/vulcoes), composto de 8 patas, foi capaz de se locomover em um vulcão ativo no Alaska. Neste caso, utilizou-se o robô para substituir o homem em tarefas arriscadas. Note que em 1993, em duas explorações separadas, oito vulcanologistas foram mortos enquanto monitoravam e retiravam amostras de vulcões.
11.1.12 - O Robô Sojourner Em 1997, a missão espacial da sonda Pathfinder levou a bordo o robô móvel a rodas Sojourner (www.recope.br/robo/marte), o qual fez a exploração do planeta Marte. Este robô utilizava uma configuração especial de rodas e sistema de suspensão que possuía uma funcionalidade a esteiras,desde podendo transpor obstáculos grandes dimensões. O Sojourner podiasimilar ser teleoperado a terra, mas também era de capaz de executar tarefas autonomamente, tais como detectar e desviar de obstáculos. Por exemplo, quando a comunicação com a Terra era perdida, o Sojourner era capaz de continuar executando a exploração de forma autônoma.
11.1.13 - Robô Buscador de Bombas e Detector de Minas Explosivas O robô móvel Fetch, desenvolvido pela IS Robotics (www.recope.br/robo/bombas), utiliza esteiras para sua locomoção. A bordo do mesmo, existe um braço manipulador contendo um ímã em sua extremidade. Este robô tem como função inicial a busca de pequenos artefatos de bombas e munições não explodidas, dispersas em um campo de batalha, e logo a sua remoção para um local onde serão explodidas com segurança. Alguns estudos também estão sendo feitos para possibilitar a um robô detectar minas terrestres explosivas (www.recope.br/robo/minas).
11.1.14 - Robô Tosador de Ovelhas Uma aplicação bastante interessante de robôs é na extração de lãs. Um robô tosador de ovelhas, um desenvolvido University naofextração Westernde da permitiu aumento de na produtividade lã. Austrália (www.recope.br/robo/tosador)
11.1.15 - Robô Saltador O Jet Propulsion Laboratory (JPL) da Califórnia, Estados Unidos, desenvolveu recentemente um robô móvel de forma esférica, destinado à exploração de planetas de baixa gravidade. O robô é equipado com câmara de vídeo e transmissor de imagem, e se desloca através de saltos. Para isto, possui um mecanismo de propulsão e orientação, de forma que possa superar obstáculos de grande altura (ver www.recope.br/robo/saltador).
11.1.16 – Robô Escalador O Instituto de Automática Industrial da Espanha desenvolveu um robô capaz de escalar o casco de um navio, soldando a estrutura do mesmo (Grieco, 1994). Um outro projeto é um robô escalador de paredes, com sistema de sucção nas patas, o qual vem sendo construído nos Estados Unidos para exploração de ambientes reduzidos (www.recope.br/robo/microrrobo2). 219
11.1.17 – Robô Aéreo O Centro Tecnológico para a Informática (CTI) de Campinas está construindo um robô aéreo (Projeto Aurora) para a realização de tarefas de inspeção aérea de florestas, estradas, fazendas, cidades, cursos de rios, etc. (www.recope.br/robo/aereo1). Um outro centro envolvido com este tipo de pesquisas é o SPAWAR Systems Center San Diego (www.recope.br/robo/aereo2), o qual desenvolve robôs aéreos para várias aplicações: controle de incêndios, detecção de áreas minadas e com armadilhas militares, proteção de tropas militares, exploração de áreas contaminadas (químicas, biológicas e nucleares), etc.
11.1.18 - Robô Submarino Existem basicamente dois tipos de robôs remotamente, submarinos, um ROV (Remote Operated Vehicle), que pode ser controlado e denominado o outro denominado AUV (Autonomous Underwater Vehicle), o qual opera autonomamente. Estes robôs têm sido aprimorados para operarem em profundidades e áreas de risco onde os mergulhadores não podem operar. Os ROVs podem realizar diversos tipos de tarefas, utilizando para isto braços mecânicos e ferramentas especializadas. Dentre as aplicações para estes robôs, podem-se citar: investigação visual das partes submersas de navios, pontes e plataformas monitoramento de colônias de peixes controle de poluição subaquáticas controle de devastação da vida marinha localização de depósitos de combustíveis nucleares execução de operações tecnológicas em plataformas marítimas inspeção visual de estruturas subaquáticas de oleodutos e gasodutos inspeção de barragens explorações marítimas para fins de pesquisa •
•
•
•
•
•
•
•
•
Tipicamente, os ROVs operam conectados a uma embarcação de superfície através de um cabo umbilical. Por este cabo, o ROV recebe a energia necessária para sua operação e se comunica com a Unidade de Comando enviando sinais de vídeo e recebendo sinais de controle. Entretanto, este cabo limita a velocidade e o alcance deste tipo de robô, além de que o cabo pode se enredar tanto com o robô quanto com um obstáculo. Estes veículos são normalmente acionados por propulsores elétricos, que representam um conjunto constituído pelo motor e pelo hélice. Os AUVs são de tecnologia mais recente e operam de forma autônoma, eliminando o uso de cabos umbilicais. Entretanto, essa autonomia é limitada pela duração de suas baterias. Isto pode ser contornado, mantendo-se um navio de recarga de baterias próximo ao ponto onde o AUV realiza suas operações. Existem diversos sites na Internet contendo informações sobre robôs submarinos. O site www.recope.br/robo/submarino1 é apenas um dos pontos de partida. O Departamento de Engenharia Elétrica da Universidade Federal do Espírito Santo está na fase inicial de desenvolvimento de um ROV híbrido, com características mostradas na Figura 11.4. Este robô terá cinco graus de liberdade, seis propulsores elétricos, possuirá baterias a bordo, mas será 220
controlado desde a superfície através de um cabo de fibra ótica. As dimensões do robô serão 150x70x50 cm, pesará cerca de 55 Kg e está previsto que atinja profundidades de até 150 m. Será utilizada uma rede de microcontroladores para controlar os diversos processos envolvidos. O objetivo inicial deste ROV é a inspeção subaquática. Maiores informações e vídeo sobre o projeto deste robô estão disponíveis em www.recope.br/robo/submarino2.
Figura 11.4- Projeto do robô submarino com cinco graus de liberdade.
Outro projeto relacionado a robótica submarina refere-se ao desenvolvimento de um dispositivo automático para compensar os desvios de posicionamento de ROV, causados pela ação da correnteza. Trata-se de um braço passivo sensorizado capaz de informar a um computador embarcado no ROV, qual o valor da correção que deve ser realizada para que o ROV mantenha inalterado o seu posicionamento inicial. Este projeto foi desenvolvido pela COPPE/UFRJ (LabRob-PEM e PEE) para o CENPES/Petrobrás. A figura 11.5 apresenta o braço acoplado a um ROV.
Figura 11.5- Braço Mecânico Passivo acoplado a ROV.
11.1.19 - Sistemas Multi-Robôs 221
Existem ambientes onde é empregado mais de um robô na realização de determinada tarefa, dando srcem a sistemas multi-robôs. Estes sistemas podem ser compostos de robôs que compartilham um mesmo ambiente, robôs que compartilham uma mesma carga, mãos artificiais (cada dedo é um robô de dois ou mais graus de liberdade) ou robôs com patas (cada pata é um robô de dois ou mais graus de liberdade). Um exemplo de sistemas multi-robôs é um time de futebol composto por robôs móveis a rodas. Existem até projetos internacionais como o RoboCup (www.recope.br/robo/futebol1) e o Mirosot (www.recope.br/robo/futebol2) que utilizam um jogo de futebol de robôs como foco central de pesquisa em técnicas de inteligência artificial aplicada à robótica. A Escola Politécnica da USP possui um time de futebol de robôs, o FUTEPOLI que foi classificado em segundo lugar no torneio internacional Mirosot em 1998 na França. Algumas instituições no Brasil também desenvolveram equipes de futebol de robôs como a BRAVO (FCTI Campinas), MIneirROSOT (UFMG), UNESP (Baurú), entre outras. Fotos dos times e vídeos dos jogos podem ser vistos em www.recope.br/robo/futebol2) e o artigo completo sobre o trabalho de pesquisa do FUTEPOLI está disponível em www.recope.br/robo/futebol3.
11.1.20 - Robôs para Entretenimento Vários robôs de estimação estão sendo lançados no mercado. Pesquisadores japoneses da Mitsubishi Electric Corporation desenvolveram em 1999 um peixe robô, com aspecto tão realista que somente uma inspeção minuciosa permite verificar que não se trata de um peixe real. O custo de desenvolvimento desse robô mais um aquário especial composto de diversos sensores para a realização de experiências foi divulgado ser da ordem de um milhão de dólares (www.recope.br/robo/peixe). Já a Sony (www.recope.br/robo/cachorro1) desenvolveu o robô cachorro Aibo. Este robô pesa cerca de 1,6 kg e utiliza as mais recentes tecnologias da Sony na área digital. Os recursos de inteligência artificial embutidos no robô também lhe dão a capacidade de aprender novos truques. Segundo a Sony, o robô aprende através da técnica de tentativa e erro ao levar bronca do seu dono. Assim ele descobre o que pode ou não fazer. O Aibo utiliza baterias de lítio e possui orelhas que respondem a comandos de voz. O preço de venda inicial que era de 2500 dólares (www.recope.br/robo/cachorro2) caiu para 1500 dólares (www.recope.br/robo/cachorro3). Um outro robô recentemente desenvolvido pela Sony, que é uma adaptação do Aibo, é o robô humanóide SDR-3X, de 50 cm de altura e 5 Kg de peso. Este robô joga futebol e até dança (www.recope.br/robo/duaspatas3).
11.1.21 - Microrrobôs Ultimamente têm surgidos vários projetos de desenvolvimento de microrrobôs, com vista à exploração de ambientes de dimensões reduzidas, como pode ser a exploração interna humana. Um desses projetos é o desenvolvido no MIT, Estados Unidos (www.recope.br/robo/microrrobo1), que está construindo um robô menor que 4 cm para a detecção de doenças do colon. Um outro projeto é o Projeto DARPA (www.recope.br/robo/microrrobo2) que está construindo um microrrobô de 8 cm de comprimento, o qual contém um sistema de sucção nos patas, que o torna apto a explorações de ambientes reduzidos, sendo capaz inclusive de subir paredes e passar por cima de obstáculos. Existe até um comitê técnico que reúne interessados nas tecnologias dos micro e nano robôs (www.recope.br/robo/microrrobo3).
11.2 - TELEOPERAÇÃO VIA INTERNET DE SISTEMAS ROBÓTICOS 11.2.1 - Definição Clássica de Sistemas de Teleoperação 222
A Teleoperação é definida como o controle contínuo e direto de um teleoperador/teleoperator. Teleoperador é um manipulador que requer comandos ou supervisão de um operador humano remoto (Nof, 1999). Telepresença refere-se à intensa utilização de realimentação sensorial para a teleoperação, fornecendo realismo para o operador em uma abordagem idealizada de “presença à distância”. Telerobótica amplia o domínio do manipulador em um contexto de controle compartilhado pela máquina e pelo operador humano. Um sistema Teleoperador/Teleoperator (NOF, 1999) consiste de uma unidade remota (manipulador), uma unidade de comando para entrada dos comandos do operador (interface homem/máquina) e um canal de comunicação como elo de ligação da unidade de comando com a unidade remota. Inicialmente desenvolvida para a manipulação de materiais radioativos, a teleoperação permite que um operador exerça força e realize movimentos sobre uma máquina remota, e ainda receba realimentação sensorial, geralmente através de dados visuais, sonoros ou táteis. Com a introdução da tecnologia de teleoperação, foi possível o desenvolvimento de interfaces capazes de prover uma interação satisfatória entre homem e máquina, permitindo que serviços de grande destreza fossem realizados. Foram propostos um grande número de sistemas de classificação para descrever a teleoperação. Um desses categoriza os sistemas de teleoperação tomando como base o grau de automação do sistema. Em um espectro variando da mínima para a máxima autonomia, a teleoperação pode ser classificada como (ZHAI, 1991): controle manual sem auxílio computacional; controle manual com significativo auxílio ou transformação computacional; controle supervisório com predomínio do controle realizado pelo operador humano; controle supervisório com predomínio do controle realizado pelo computador; controle completamente automático, onde os operadores humanos observam o processo sem intervenções. •
•
•
•
•
11.2.2 - Modelos de Interação Homem-máquina A teleoperação requer a sinergia entre homem e máquina. Diversos modelos relacionam esta interface, sendo os seguintes os tipos principais (ZHAI, 1992): a) Modelo Mestre-Escravo Este modelo descreve o mais tradicional sistema de teleoperação. Neste caso, o operador humano observa o ambiente de trabalho remoto através de um sistema de vídeo e manipula o braço robótico mestre por meio de um ``console'', que controla o braço escravo no local remoto. A estrutura mestre-escravo provê uma interface intuitiva para o controle remoto de sistemas. Embora esse modelo esteja muito evoluído, com o uso de vídeos estéreis e realimentação de força, a maior desvantagem desse sistema é a sua falta de destreza e o cansaço físico que impõe ao operador. b) Modelo de Telepresença Em um esforço de alcançar uma alta fidelidade nos canais de comunicação entre o mestre e escravo do modelo anterior, foram desenvolvidos sistemas antropomórficos para teleoperação, de forma a oferecer uma melhor forma de transmissão das capacidades humanas de solução de problemas e de manipulação em ambientes hostis. Com a meta de prover um sistema transparente de interface homem-máquina, os sistemas de telepresença utilizam-se de “displays'' 223
montados na cabeça, sensores de movimento montados no corpo do operador, realimentação de força, entre outras tecnologias. A meta final desses sistemas é fazer o operador sentir-se presente no local de trabalho remoto, obtendo-se assim melhores condições de realização de tarefas. O custo técnico da implementação de tais sistemas, entretanto, não é justificado. O cansaço provocado ao operador devido ao volume e peso do equipamento, e ainda a falta de necessidade de um sistema de telepresença, reduzem o uso desse modelo principalmente à pesquisa e não para utilizações práticas. c) Modelo Professor-Aluno Dado que o aprendizado de sistemas computacionais é uma das áreas mais difíceis na inteligência artificial, o modelo professor-aluno define como função de professor ao operador humano, e assume que o ``aluno'' robô possui inteligência suficiente para reconhecer e atuar em uma situação já aprendida. Embora essas tecnologias ainda devam ser desenvolvidas e integradas para realizar esse modelo, as vantagens potenciais oferecidas por este conceito, em termos de conforto e efetividade, são substanciais. d) Modelo Supervisor-Companheiro De acordo com esse modelo, um robô baseado em sensores não deve simplesmente repetir os movimentos do operador humano, como no modelo mestre-escravo. Neste caso, o operador humano serve como um supervisor, ao invés de projetar-se no ambiente remoto. Com a companhia do operador humano, o sistema robótico incorpora capacidades computacionais, como precisão e capacidades sensoriais, para a realização das tarefas. A comunicação homem-robô pode ser facilitada com o uso de gráficos interativos, controle com vários graus de liberdade, e interfaces híbridas. Uma vez estabelecida e efetivada a comunicação entre homem e máquina, deve-se observar a relação entre a máquina remota e seu ambiente. Dessa forma, são propostos esquemas de classificação de modelos de ambientes: e) Ambiente Remoto Totalmente Modelado Nesta categoria, os objetos sendo manipulados, o ambiente e os procedimentos operacionais são repetitivos ou variantes, mas previsíveis. No primeiro caso, um robô programável pode realizar suas tarefas com mínima intervenção humana. No último, um operador humano escolhe estratégias de ação pré-programadas, consideradas como uma linguagem de programação do sistema. f) Ambiente Remoto Parcialmente Modelado Nesta categoria incluem-se operações em ambientes “humanos”, como plataformas espaciais ou plantas industriais, onde todos os potenciais procedimentos operacionais das tarefas não podem ser antecipados em suficientes detalhes para uma pré-programação efetiva. Nesses casos, entretanto, é possível algum conhecimento geométrico do ambiente, podendo ser modelado à priori, mesmo que as relações espaciais entre o local e seus objetos não sejam conhecidas exatamente. g) Ambiente Remoto Desconhecido Esta categoria difere da anterior pelo fato de que pouca ou nenhuma informação sobre o ambiente e seus objetos é conhecida a priori. Exemplos desse tipo são os de robótica submarina, mineração, limpeza de resíduos nucleares e robótica militar.
11.3 - INTRODUÇÃO À TELEOPERAÇÃO VIA INTERNET DE SISTEMAS ROBÓTICOS 224
A Telerobótica utilizando a Internet como link de comunicação é um novo campo de pesquisa que se desenvolve na área da Teleoperação tendo muitos grupos de pesquisa atuando nesta promissora área da Telemática (MONTEIRO et al., 1997), principalmente em função dos baixos custos de acesso à Internet. Uma das primeiras aplicações de Telerobótica via Internet foi o sistema desenvolvido por Taylor & Trevelyan (1995) na University of Western Australia em 1994. Este sistema é constituído por um Robô Industrial sendo controlado via Interface WWW (World Wide Web), permitindo a manipulação de objetos com a utilização de uma garra. Este sistema pode ser acessado através do endereço http://telerobot.mech.uwa.edu.au. A figura 11.6 apresenta a interface com o usuário deste sistema. A partir deste sistema, inúmeros outros foram desenvolvidos por vários grupos de pesquisa em todo o mundo. Uma lista de algumas aplicações pode ser encontrada em http://dir.yahoo.com/Computers_and_Internet/Internet/Interesting_Devices_Connected_to_the_Net / Robots. Dentre estes, têm-se a teleoperação de Robôs Móveis (KLAUS et al., 1997 e HIRZINGER et al., 1997), WebVideo e Manipuladores (ÁLVARES & ROMARIZ, 1998 e WOLF & FREITZHEIN, 1997), Manipuladores, Televigilância (ALMEIDA et al., 1995), entre outras. A Telerobótica pode ser definida como sendo uma área da Telemática e da Robótica voltada à teleoperação de sistemas robóticos utilizando-se de um link de comunicação (KLAUSS et al., 1997). Uma nova terminologia está sendo empregada no caso de se utilizar a Rede de Comunicação Internet como link de telecomunicações. Neste caso, designa-se sistemas World Wide Web Robots, WebRobots ou simplesmente Internet Robots. Esta terminologia é válida para aplicações que utilizam Robôs Industriais, Manipuladores, Pan-Tilt, Máquinas de Comando Numérico e outros equipamentos industriais similares. É desejável o controle e a monitoração de máquinas remotamente, centralizando sua supervisão, possibilitando o compartilhamento de pessoal e de recursos materiais e minimizando custos. Outra vantagem está associada à localização da aplicação que poderá estar na mesma planta industrial ou mesmo em outro país ou continente, possibilitando a conexão e a utilização dos serviços disponibilizados através da Rede de Comunicação Internet. A utilização da Internet como link de telecomunicações, na Telerobótica, possibilita a diminuição de custos de comunicação, viabilizando aplicações voltadas ao suporte técnico, à manutenção e reparos, controle de máquinas e robôs em locais que anteriormente eram inviáveis economicamente. Aplicações típicas de teleoperação no passado incluíam ambientes hostis (deserto, espaço, águas profundas, entre outros) e trabalhos tediosos (inspeção de oleodutos, ferrovias, etc.).
225
Figura 11.6- TeleRobot: robô ASEA IRB controlado via Internet
Atualmente, com links de comunicação via Internet, Modem e/ou Rádio pode-se estabelecer uma conexão de qualquer parte do mundo a um Computador Servidor de Tarefas Industriais que pode disponibilizar uma série de serviços para a aplicação em questão. Plantas industriais, portanto, podem ser monitoradas e supervisionadas remotamente a um custo extremamente baixo (MONTEIRO et al., 1997). Tarefas típicas como telediagnóstico de malfuncionamento e telemanutenção podem ser executadas diretamente do escritório do fornecedor ou mesmo de outra filial/matriz da empresa situada a milhares de quilômetros.
11.4 - METODOLOGIA: SISTEMAS TELEOPERADOS VIA INTERNET Sistemas teleoperados remotamente necessitam de dados e/ou imagens do objeto de controle, bem como da transmissão dede comandos através de umetlink comunicação, neste caso é baseado em conexão via Rede Comunicação (WOLF al., de 1997), através do que Protocolo Internet (IP). A metodologia proposta, implementada e testada para Telerobótica utilizando a Internet como link de comunicação é baseada na Arquitetura Cliente/Servidor utilizando o Protocolo HTTP (Hypertext Transfer Protocol) através de um Servidor WWW convencional (CERN, NCSA ou APACHE) que disponibiliza uma interface multimídia. Esta pode ser acessada através de um Cliente WWW (browser) como o Netscape, Arena ou Internet Explorer (ECKEL & HARE, 1995). A arquitetura proposta do sistema é apresentada na figura 11.7. Como exemplos de equipamentos teleoperados têm-se: manipuladores com vários graus de liberdade; câmeras de vídeo, pan-tilt, robôs industriais, robôs móvel, máquinas de soldagem, máquinas de comando numérico, controladores lógicos programáveis, brinquedos; entre outros. Estes equipamentos são conectados ao servidor WWW, normalmente, através de uma interface serial, paralela, proprietária ou mesmo, via Rede Local de Comunicação Ethernet. O Browser WWW conecta-se ao Servidor WWW através do protocolo TCP/IP (Transport Control
226
Protocol/Internet Protocol) podendo utilizar ligação discada (115 kbps) ou uma linha dedicada T1 ou T3 a 1,4 Mbps e 45 Mbps, respectivamente. Robô Equipamento Teleoperado Ação de Controle
Retorna Status e/ou Imagem
Servidor WWW Solicita Serviços
Retorna Status e/ou Imagem Browser WWW Netscape
Figura 11.7 - Arquitetura para teleoperação
O cliente interage com o Servidor WWW utilizando a linguagem de programação HTML (Hypertext Markup Language). Os dados enviados ou solicitados pelo cliente utilizam o mecanismo de solicitação/resposta do Protocolo HTTP, disponibilizado pelo servidor. Os dados solicitados/enviados pelo usuário são codificados em URI/URL (Universal Resource Identifier/Uniform Resource Locator) e enviados para o Servidor HTTP. 11.4.1 - Ambiente WWW O servidor extrai as informações da URI, mais especificamente da URL, processa-as e retorna uma resposta HTTP. Uma URL é um subset de uma URI, sendo esta o endereço de um arquivo acessado via Internet (http://www.whatis.com/url.htm). A figura 11.8 apresenta este mecanismo. O CLIENTE solicita uma URL ao SERVIDOR
Cliente WWW O CLIENTE formata e apresenta a informação recebida
Servidor WWW
A URL solicitada é um CGI e o SERVIDOR executa o CGI
Outros Programas
CGI
O C GI tra balha ch aman do outr os programas
Figura 11.8- Servidor HTTP (Otsuka, 1996)
O Servidor HTTP utiliza-se de um recurso muito poderoso chamado CGI (Commom Gateway Interface). Através desta extensão do HTTP (ECKEL & HARE,1997) é possível executar um programa em “C” ou Perl, ou em outra linguagem ou script, para realizar uma determinada tarefa. 227
Por exemplo, pode-se executar um programa compilado especialmente para ser utilizado em um Servidor WWW, que controla o acionamento de um motor de passo através da conexão a um drive de potência do motor à interface paralela do servidor (ÁLVARES & ROMARIZ, 1998). A figura 11.9 apresenta o mecanismo CGI, onde a URI aponta para o programa executável. A figura 11.10 apresenta uma parte do código fonte deste programa em linguagem “C” para controlar o acionamento de um motor de passo. HTTP Solicita
HTTP Resposta HTTP Server
HTTP Solicita
HTTP Resposta Servidor HTTP
Sistema de
CGI
Arquivos
Servidor de Controle
Figura 11.9- Servidor HTTP e CGI.
11.4.2 - Servidor WWW: servidor WebCam e servidor de teleserviços industriais (Web Robot) O Servidor HTTP (WWW) deve, preferencialmente, ser baseado em plataforma Unix o que possibilita maior robustez, flexibilidade, modularidade e até mesmo a necessidade de máquinas com menor capacidade de processamento, quando comparado ao ambiente Windows NT. O Sistema Operacional Linux em plataforma PC (Personal Computer) é uma opção extremamente atraente satisfazendo todos os requisitos das aplicações de teleserviços para teleoperação de Robôs.
228
Programa pmp.c #include #include "interfac.C" #include "motor.C" #include #include char nome[80] = "esquerda.mot"; void Le_comanda (void) { int inteiro; float real; FILE *arquivo; char comando[5],parametro [5]; class Motor M; if ((arquivo = fopen (nome,"rt")) == NULL) { puts ("Arquivo nao existe.”); exit (0);} while (fscanf (arquivo,"%s",&comando) > 0) { if (strcmp (comando,"S") == 0) { fscanf (arquivo,"%s",¶metro); inteiro = atoi (parametro); M.set (inteiro);} if (strcmp (comando,"P") == 0) { fscanf (arquivo,"%s",¶metro); real = atof (parametro); M.precision (real);} if (strcmp (comando,"D") == 0) { fscanf (arquivo,"%s",¶metro); inteiro = atoi (parametro); M.delay (inteiro);} int main (int argc,char *argv []) { printf("Content -type: text/html\n\n"); printf("Controle de motor de passo\n"); printf("\n"); printf("Posicionamento Efetuado. De o Com ando BACK para voltar a pagina de controle\n"); printf("\n"); printf("Back Joystick\n"); Le_comanda (); }
Figura 11.10- Programa CGI em “C ++” (pmp.c) para acionamento de motor de passo via
interface paralela utilizado no sistema RobWebCam (ÁLVARES & ROMARIZ, 1998). 11.4.3 - Servidor WWW: servidor WebCam e servidor de teleserviços industriais (Web Robot) O Servidor HTTP (WWW) deve, preferencialmente, ser baseado em plataforma Unix o que possibilita maior robustez, flexibilidade, modularidade e até mesmo a necessidade de máquinas com menor capacidade de processamento, quando comparado ao ambiente Windows NT. O Sistema Operacional Linux em plataforma PC (Personal Computer) é uma opção extremamente atraente satisfazendo todos os requisitos das aplicações de teleserviços para teleoperação de Robôs. Neste contexto, o Servidor HTTP deve disponibilizar dois tipos de serviços básicos, que estão representados na figura 11.11 através de dois módulos: . WebCam: Visualização do objeto teleoperado, através de vídeo e/ou imagem; . WebRobot: Disponibilização de funções de controle remoto do objeto teleoperado. Servidor WebCam: visualização do objeto teleoperado: Este módulo é responsável pela captura de imagens através de câmeras CCD (Charge Coupled Device) utilizando-se da tecnologia WebCam (Álvares & Romariz, 1998) ou WebVideo (WOLF & FROITZHEIM, 1997). •
229
Imagens estáticas podem ser adquiridas em vários formatos como GIF (Graphics Interchaning Format) e JPEG (Joint Photographic Experts Group). O formato preferido devido à compressão de dados obtida é o JPEG. Imagens dinâmicas, no formato de vídeo digital, podem ser utilizadas com ou sem compressão de dados. Entre os padrões utilizados têm-se o MPEG (Moving Picture Experts Group), UYVY, RealVideo, M-JPEG (seqüência de imagens JPEG), CellB (Cell) e CuSee-Me, entre outros (SUN, 1994), (CONNECTIX, 1996). O sistema de vídeo (placa de captura mais software) deve capturar, digitalizar e comprimir um sinal de vídeo NTSC ou PAL não modularizado (composto ou S-Vídeo). O vídeo comprimido pode então ser armazenado em disco e/ou transmitido via rede para o cliente em um determinado padrão de compressão. EQUIPAMENTOS – Robô e Câmera
C ontrole
Solicita Serviço
D ad os , S t atus , Ví d eo
Programas CGI Teleoperação CGI – Programas Servidor WebRobot
Vídeo Status CGI – Programas Servidor WebCam
Serviços Teleoperação
Realimentação: Vídeo e Texto Browser WWW
Figura 11.11- Servidor HTTP: módulos WebCam e WebRobot.
No caso de se utilizar seqüência de imagens JPEG, a taxa de compressão é muito baixa quando comparada com a MPEG ou RealVideo. A principal vantagem é que se pode enviar as imagens de vídeo utilizando o mecanismo server-push do Servidor HTTP diretamente para o cliente WWW, como o Netscape, sem a necessidade de se utilizar um software especial ou um plugin para receber o formato de vídeo (OTSUKA, 1996). Para utilizar a compressão é necessário um software específico ( plugin) que deverá ser instalado pelo cliente e ajustado ao ambiente para receber imagens no formato especificado, normalmente, MPEG ou RealVideo (MELCHIORS, 1996). Com relação ao hardware para captura de imagens pode-se utilizar: câmeras de vídeo (NTSC ou PAL) conectadas a uma placa para frame grabber (SUN, 1994); ou câmeras com placa para captura de imagens com CCD utilizando a interface paralela como entrada de vídeo para o microcomputador, como no caso da QuickCam (CONNECTIX, 1996). A grande desvantagem da utilização deste hardware esta associada a menor qualidade e a baixa velocidade de captura de imagens obtida, devido às restrições de velocidade da interface paralela. Servidor WebRobot: funções de controle remoto do objeto teleoperado: •
230
A fim de teleoperar o sistema Robótico é necessário que o mesmo tenha como pré-requisito alguma capacidade de comunicação remota utilizando um protocolo de comunicação aberto através de uma interface serial, paralela ou mesmo de uma Ethernet, permitindo a conexão a um Microcomputador ou a uma Workstation. Utilizando-se desta capacidade é possível que qualquer equipamento industrial possa ser teleoperado via Internet. A partir desta abordagem, disponibiliza-se um Servidor Robótico, denominado WebRobot, conectado ao equipamento industrial através da interface de comunicação do equipamento. Este servidor pode ser um servidor HTTP, de forma similar ao descrito para o WebCam (Figura 11.11). O mecanismo de acesso às funções do objeto teleoperado é também baseado em programas CGI e HTML. Para cada função disponibilizada pelo protocolo de comunicação do Robô existe um programa CGI que é acessado no servidor WebRobot pelo cliente utilizando um browser WWW. Pode-se utilizar o mesmo equipamento para disponibilizar os dois serviços: WebCam e WebRobot. Por outro lado, pode-se também utilizar dois ou mais servidores para realizar as funções de WebCam e WebRobot. Uma segunda abordagem é utilizar um único Servidor WWW conectado a um ou mais PC servidores via sockets TCP/IP. Estes PC servidores não são necessariamente servidores WWW. São servidores específicos para controle do Robô e para captura de imagem, sendo que todo o tratamento das informações obtidas é realizado pelo Servidor WWW, concentrando todas as ações. A figura 11.12 apresenta esta abordagem. Vídeo / Status P C S ervid o r
Servidor WWW
P C S ervid o r
Controle RS-232
Internet
Paralela Proprietária
Ro bô
C â me r a
Browser WWW Cliente
Figura 11.12- Servidor WWW centralizado.
Nesta configuração todas as informações solicitadas passam pelo Servidor WWW que estabelece a comunicação via Rede Local de Comunicação (Intranet) através de sockets TCP/IP utilizando-se de programas CGI ou mesmo de servidores específicos.
11.5 - RESTRIÇÕES DO PROTOCOLO INTERNET - TCP/IP A Rede de Comunicação Internet apresenta uma largura de banda heterogênea e com taxas de transmissão não determinísticas que variam de 10 kbps (conexão wirelless) a mais de 10 Mbps em rede local, dependendo da conexão Internet e do tráfego. Com esta limitação de largura de banda, aplicações em tempo real para captura de vídeo apresentam sérias restrições. Para vencer estas restrições é necessário utilizar compressão de dados e conexão de grande velocidade à Internet. Taxas típicas de transmissão de vídeo com 231
compressão necessitam de 20 Kbps (RealVideo), e sem compressão, de 100 Kbps (seqüência de imagens JPEG) com 5 quadros/s (MELCHIORS,1996). Outra limitação é o delay (atraso) inerente ao protocolo TCP, pois os pacotes enviados não necessariamente estão na mesma ordem dos pacotes recebidos pelo cliente, o que não é desejável para aplicações em tempo real. Esta restrição pode ser resolvida adicionando algum grau de autonomia para a aplicação, no caso um Robô, de tal forma a contornar situações de emergência, bem como, situações perigosas. Este nível de autonomia é obtido localmente no Servidor WebRobot, que deve monitorar estas condições limites (HIRZINGER et al., 1997). Apesar dos datagramas com informações de controle enviados para o Robô pelo cliente via Protocolo TCP/IP serem pequenos, da ordem de 2 a 3 Kbytes, o Protocolo TCP não garante aplicações em tempo real. Uma alternativa para o futuro é utilizar o Protocolo RTP (Real-Time Transport Protocol) para aplicações em tempo real (OTSUKA, 1996).
11.6 - INTERFACE COM O USUÁRIO A interface gráfica com o usuário (GUI – Graphical User Interface) deve ser baseada nas linguagens de programação HTML, JAVAScript e JAVA (OTSUKA, 1996). A utilização de JAVA permite uma independência de arquitetura de hardware, pois o applet escrito em JAVA (aplicação JAVA) pode ser executado em qualquer plataforma com um browser WWW que tenha suporte para esta linguagem. O programa em JAVA/HTML permite que o cliente tenha uma interface amigável com o sistema de teleoperação aceitando comandos e disparando os programas CGI necessários para executar as funções disponibilizadas e apresentando as informações necessárias para o usuário que são recebidas pelo servidor (figuras 11.13 e 11.14).
232
Figura 11.13- Sistema RobWebLink: interface com o usuário.
A realimentação visual é feita através do Servidor WebCam que do lado do cliente apresenta uma interface amigável que recebe as imagens em formato comprimido (MPEG ou RealVideo) ou em uma seqüência de imagens JPEG. As figuras 11.13 e 11.14 apresentam alguns exemplos de interfaces com usuários, que foram desenvolvidas em projetos de teleoperação executados no GRACO (Grupo de Automação e Controle) da Universidade de Brasília. A figura 11.13 apresenta interfaceRobWebCam do sistema RobWebLink (http://webrobot.graco.unb.br) e a figura 11.14 do a sistema (http://www.graco.unb.br/ robwebcam). Outra abordagem é a utilização de VRML (Virtual Reality Modeling Language). VRML é uma linguagem de descrição de simulações interativas com vários participantes se comunicando através da Internet (OTSUKA, 1996). O objetivo do desenvolvimento desta linguagem é torna-la um padrão para a descrição de simulações interativas no WWW, assim como a linguagem HTML é o padrão para descrição de páginas Web. Sua principal característica para aplicações de Telerobótica está associada a capacidade de operar em conexões com pequena largura de banda, o que a torna uma candidata em potencial para ser utilizada
233
Figura 11.14- Sistema RobWebCam: interface com o usuário.
11.7 - CONCLUSÕES Há um certo consenso em que o futuro da robótica se concentrará no desenvolvimento de robôs móveis mais avançados tanto para ambientes industriais quanto não industriais, como também para tarefas relacionadas a explorações espaciais. Uma das conseqüências previstas é a utilização cada vez maior de robôs para a realização de atividades ligadas a nossa vida cotidiana, seja nas residências, escritórios, escolas, e outros lugares. Por exemplo, a faxineira andróide Tmsuk de 1,40 m e 98 kg, um recente desenvolvimento da empresa de japonesa Personalpara Robotics Solutions (www.recope.br/robo/faxina), pode ser comandada, forma limitada, cuidar da casa, limpar janelas, carregar móveis, buscar encomendas e até aplicar massagens. Um outro cenário futurista é o emprego de colônia de robôs (sistemas multi-robôs), em outras palavras, a utilização de robôs móveis em tarefas cooperativas. A colônia será capaz de navegar em um mesmo ambiente e realizar tarefas que um único robô não possa executar, ou ainda executar as tarefas de uma forma mais eficiente. Alguns centros de pesquisa já vêm realizando pesquisas neste sentido como pode ser observado em www.recope.br/robo/multirobo1, www.recope.br/robo/multirobo2 e www.recope.br/robo/multirobo3. Em resumo, uma grande fonte de informações sobre novidades em robótica pode ser encontrada na referência JONES (1999). Entretanto, a melhor forma de estar atualizado sobre aplicações especiais de robôs e as novas tendências é através da Internet. Para isso, existem sites especializados de busca tais como www.recope.br/robo/busca1, www.recope.br/robo/busca2 e www.recope.br/robo/busca3. Também existem sites com links para vários outros sites relacionados à robótica (www.recope.br/robo/robotica1, www.recope.br/robo/robotica2, www.recope.br/robo/robotica3 ou www.recope.br/robo/robotica4) e ainda um site especializado em apresentar respostas para as indagações mais freqüentes na área de robótica 234
(www.recope.br/robo/robotica5). Obviamente, essas são apenas algumas sugestões diante dos inúmeros sites que tratam de temas relacionados à robótica. A tecnologia de teleoperação via Internet encontra-se em seu estágio inicial de desenvolvimento, tendo sua aplicabilidade ainda reduzida devido à baixa velocidade de transmissão de dados pelos meios atualmente disponíveis aos usuários. Porém, este gargalo tecnológico tende a ser reduzido substancialmente nos próximos anos devido ao enorme interesse das empresas de telecomunicação na solução deste problema.
11.8 - REFERÊNCIAS ALMEIDA, R., ALMEIDA, F. and CARVALHO, R., 1995, Sistema de televigilância, ISR Project Report. ÁLVARES, A. J. & ROMARIZ, L. J., ”Desenvolvimento de um Manipulador Com Dois Graus de Liberdade Controlado Remotamente Via Internet”, V Congresso de Engenharia Mecânica Norte e Nordeste, pp. 529-536, Fortaleza, 1998. ÁLVARES, A. J. & ROMARIZ, L. J., “Telerobótica: Metodologia Para o Desenvolvimento de Sistemas Robóticos Teleoperados Via Internet”, XV Congresso Brasileiro de Engenharia Mecânica, Águas de Lindóia, 1999. BASTOS FILHO, T. F., SARCINELLI Filho, M., e FREITAS, R. A. C., "An Efficient Obstacle Recognition System for Helping Mobile Robot Navigation", Latin American Applied Research – An International Journal (ISSN 0327-0793), Bahia Blanca, v. 30, n. 1, pp. 157-162, 2000. BENPORAD, A. De Luca, A., ORIOLO, G., “Local Incremental Planning for a Car-Like Robot Navigating among Obstacles”, Proceedings of the 1996 IEEE, Mineapolis, 1996. COMMECTIX, QuickCam color - Guia do Usuário, 1996. DOWELING, K., Robotics: comp.robotics Frequently Asked Questions, Available as a hypertext document at www.frc.ri.cmu.edu/robotics-faq. 90+ pages, 1996. ECKEL, G. & HARE, C., Building a linux internet server, New Riders Publishing, Indianapolis, 1995. ENGELBERGER, J. F., "Robotics in the 21st Century", Scientific American, p. 132, 1995. EVERETT, H. R., “Sensors for Mobile Robots, Theory and Application”, A. K. Peters, Massachusetts, 1995. FREIRE, E. O., T. F., BASTOS FILHO, T. F, Freitas, R. A. C., Schneebeli, H. A. e SARCINELLI Filho, M., "Um Sistema de Sensoriamento Externo para Robôs Móveis com Controle Baseado em Agentes", XII Congresso Brasileiro de Automática, Uberlândia, pp. 581-586, 1998. FURUKAWA, C. M., ‘Navegação de um Veículo Autônomo por Ultra-Som em Ambiente Estruturado’, Dissertação de Mestrado, Escola Politécnica da Universidade de São Paulo, 1992. GADRE, D., “Programming the Parallel Port: Interfacing The PC for Data Acquisition and Process Control”, R&D Publishing, 1998. GOODALL, K., “Mars pathfinder - Welcome to Mars”, http://mars.jpl.nasa.gov/default, 2000. HIRZINGER, G. et al, “Teleoperating space robots - impact for the design of industrial robots", IEEE International Symposium on Industrial Electronics, Portugal, pp. 250-256, 1997. ISHIHARA, W. M., "Desenvolvimento e Construção de um Robô de 4 Patas", Dissertação de Mestrado, Universidade Federal do Espírito Santo, Vitória, ES, 1998. 235
JONES, J. L, SEIGER, B. A., FLYNN, A. M., “Mobile Robots: Inspiration to Implementation.”A K Peters, Massachusetts, 1999. MELCHIORS, C., Sistemas interpessoais de videoconferência (mbone )”, http://www.penta. ufrgs.br/~cristina/mbone/ti/indiceti.htm, 1996. MONTEIRO F. et al., “Teleoperating a mobile robot - a solution based on java language”, IEEE International Symposium on Industrial Electronics, Portugal, pp. 263-267, 1997. NEHMZOW, U., BÜHLMEIER, A., DÜRER, H., “Remote Control of Mobile Robot via Internet”, Manchester, 1996. NOF, S. Y. et al., "HandBook of Industrial Robotics”, John Wiley & Sons, 2 ed.., Canada, 1999. NOMADIC TECHNOLOGIES, “XR4000 Mobile Robot”, Disponível na Internet via WWW, URL: http://www.robots.com/products.htm, 1999. OTSUKA, J., “Fatores Determinantes na Efetividade de Ferramentas de Comunicação Mediada por Computador no Ensino à Distância”, http://penta.ufrgs.br:80/pesquisa/joice/ joice_ti.html., 1996. SCHILLING, K., ROTH, H., and Lieb, R., "Teleoperations of Rovers - From Mars to Education", IEEE International Symposium on Industrial Electronics, pp. 257-262, Portugal, 1997. SUN, Sun video user’s guide, 1994. SUPER INTERESSANTE, n. 6, Junho, 2000. TAYLOR, K., & TREVELYAN, J., "A Telerobot on the World Wide Web", National Conference of the Australian Robot Association, Melbourne, http://telerobot.mech.uwa.edu.au., 1995. WOLF, H., & FROITZHEIM, K., "Webvideo - A tool for www based teleoperation", IEEE International Symposium on Industrial Electronics, pp. 268-273, Portugal, 1997. ZHAI, S., MILGRAM, P., “A Telerobotic Virtual Control System”, Proceedings SPIE. Boston, 1991. ZHAI, S., MILGRAM, P., “Human Robot Synergism and Virtual Telerobotic Control”, Proc. HFAC, Canada, 1992.
236
CAPÍTULO 12 ASPECTOS ECONÔMICOS E SOCIAIS José Lamartine Távora Júnior e Heitor Mansur Caulliraux
12.1 - INTRODUÇÃO Um problema econômico fundamental e comum aos indivíduos, empresas e nações é o de alocação de recursos. Um desses recursos é o capital, aqui definido, de forma genérica, como fundos disponíveis. Os fundos disponíveis, para uma unidade econômica, abrange aqueles correntes em mãos, mais os fundos adicionais, que de uma forma ou de outra, possam ser levantados. O indivíduo, a empresa e a nação se confrontam com uma ampla variedade de oportunidades de consumo e de investimentos para seus fundos disponíveis. Para que possa selecionar, de forma racional, as aplicações de fundos que irá empreender, a unidade econômica deve ter um objetivo. Este, é o alvo que ela se esforça para alcançar ao levar a cabo suas atividades econômicas. Portanto o indivíduo, a empresa e a nação devem definir seus alvos para dar propósito à sua alocação de fundos. É necessário, também, um método de medição e comparação dos possíveis usos dos fundos. Finalmente, é necessário um critério de escolha entre as aplicações alternativas de fundos que seja consistente com o método de medição dessas aplicações em perspectiva e que, quando utilizado, seja dirigida a unidade econômica a seus objetivos. O custo de capital é um conceito que tem recebido atenção freqüente e crescente na literatura econômica e financeira dos últimos anos. Sua aplicação básica tem sido como critério para escolha dos usos e das formas potenciais de fundos. Se for utilizado para realizar essas escolhas de forma ótima, o custo de capital para a unidade econômica deve ser definido e estimado com precisão. O objetivo deste capítulo é abordar questões relativas ao uso de robótica, e de automação em geral, considerar como uma empresa deveria tomar suas decisões de investimento quanto a esses equipamentos, e tecer comentários sobre os impactos nos recursos humanos.
12.1.1 - Uso de Automação e Robôs na Indústria: Algumas pesquisas têm sido realizadas no Brasil sobre o uso da automação industrial e robótica1.
1
Ver, por exemplo: CAULLIRAUX, PROENÇA & NEVES (1996); TÁVORA, NEVES & ALBUQUERQUE (1997); e NEVES (1998). 237
CAULLIRAUX, PROENÇA & NEVES (1996), em artigo no qual analisaram os resultados de pesquisa sobre Integração da Produção no Brasil, forneceram qual a porcentagem de informatização em cada função do sistema de produção de empresas de processos contínuos e descontínuos (de manufatura), para o total de empresas da amostra.
s e õ ç a z it a m r o f n I 17% %
66%
59%
78% 77%81% 70%
81% 62%
55% 39%
Discreto
30% 21%18%
15%
Contínuo
7%
E A C
D A C
P P A C
N C
ip u q E C
P P
P C
Q C
Funções do Modelo Y Figura 12.1- Incidência de Automação por Função por Tipo de Processo Produtivo.
O gráfico indica que a maior parte dos esforços empresariais em informatização estão ligadas à área de PCP e qualidade. Um dos pontos de destaque é a grande incidência da tecnologia CAD nas empresas de processo discreto. Por suas características, o projeto auxiliado por computador se reflete em ganhos de competitividade, na medida em que pode proporcionar aumento de flexibilidade para desenhos de novos produtos ou customizações, além de, se integrado com um sistema de CAM, facilitar a elaboração de programas para as máquinas CNC. Já as empresas de processo contínuo apresentam elevado índice de automação no controle de equipamentos, como por exemplo, uso de CLPs, SDCDs, SMCs, entre outros. Segundo os mesmos autores, ao relacionarmos os padrões de informatização com a tamanho das empresas, em relação ao número total de empregados, teríamos os seguintes resultados:
238
90% 80% 70%
100-399
60% 50%
400-699
40% 30%
Mais de 700
20% 10% 0% E A C fo In
D A C fo In
P P A C fo
N C o f n I
In
ip u q E C o f In
P P fo In
P C fo n I
e d a fo id l In a u Q
Figura 12.2- Incidência de Automação por Função por Tamanho da Empresa.
Os mesmos autores consideram que, mais uma vez, apesar de aparecerem pequenas diferenças nos percentuais, o perfil da automação com foco no núcleo não se altera.
100% 90% 80%
Não Exporta
70% 60% 50%
1 a 5%
40% 30%
Mais de 5%
20% 10% 0% E A C fo In
D A C fo n I
P P A C fo In
M A C o f n I
ip u q E C o f n I
P P fo In
P C fo n I
e d a fo id l In a u Q
Figura 12.3- Incidência de Automação por Função por Quantidade de Exportação.
Os autores da pesquisa sobre integração da produção, testaram ainda outra hipótese: desta vez, se as empresas exportadoras, submetidas a um maior nível de exigência por parte de seus clientes, investem e automatizam mais, em seus processos produtivos, com vistas à um aumento de competitividade. O gráfico acima divide as empresas em três tipos: aquelas que não exportam; as que exportam de 1 a 5% da sua linha de produtos; as que exportam mais de 5% de sua linha. Apesar de existir maior informatização nas empresas exportadoras, segundo o resultado anterior, isso independe da quantidade exportada e, por vezes, constitui-se numa diferença reduzida. Além disso, temos a função de pré-projetos (CAE) mais informatizada nas empresas
239
não exportadoras do que naquelas que exportam de 1 a 5%. Assim, os autores concluem que a nossa hipótese não é conclusivamente verdadeira. Uma outra verificação relevante diz respeito às regiões do Brasil. Existe um sentimento de que, em função do Estado de São Paulo, a Região Sudeste possui maior incidência de automação do que o restante do Brasil. O gráfico a seguir aborda esta questão. 80% 70%
Nordeste
60% 50%
Sul
40% 30%
Sudeste
20% 10% 0% E A C fo In
D A C fo n I
P P A C fo n I
N C fo n I
p i fo u q n I E C
P P o f n I
P C o f In
fo n I
e d a d li a u Q
Figura 12.4- Incidência de Automação por Função por Região.
As diferenças encontradas entre as regiões, principalmente entre Sul e Sudeste não são grandes na maior parte das funções do sistema de produção, no Controle de Equipamentos, a região Nordeste aparece com um índice de automação maior do que as demais regiões (o que pode ser explicado por uma maior existência de empresas de processos contínuos no parque industrial da Bahia). Portanto, uma grande discrepância regional não se verifica na pesquisa, e mais uma vez forma-se o núcleo notadamente mais informatizado, em todas as partes do Brasil. Os autores fazem um último cruzamento: automação quanto a gêneros industriais. Foram apenas três gêneros - mecânico, alimentos e têxtil - que estão entre os mais representativos na nossa amostra nacional e têm grandes diferenças nos seus processos de produção.
240
90% 80%
Metal-Mecânico
70% 60% 50%
Produtos Alimentares
40% 30% 20%
Têxtil
10% 0% E A C o f n I
D A C fo In
P P A C o f In
p i u q E C fo In
N C o fI n
P P o fI n
P C o fI n
e d a o f d In lia u Q
Figura 12.5- Incidência de Automação por Função p or Gênero Industrial.
De acordo com o gráfico correspondente, os níveis de informatização, de automação e de integração, estão relacionados com os setores industriais. Por exemplo: indústrias de produtos alimentares estão mais automatizadas no que se refere às funções de planejamento e controle da produção; a indústria têxtil, adicionalmente às funções citadas acima, também informatizam o CAD; e as indústrias metal-mecânicas, têm um nível ainda maior de informatização de CAD, além de utilizar o CAE. Utilizando informações coletadas na pesquisa sobre Integração da Produção, podemos fazer uma análise adicional. Ao compararmos o nível de utilização da capacidade instalada, com a propensão à sua expansão, verificamos que as empresas que estão operando a plena capacidade, logicamente, planejam a expansão das suas plantas. Entretanto, o percentual das empresas que estão utilizando 70%, ou menos, de suas capacidades, e que planejam ampliações, são crescentes com o grau de ociosidade.
a d o ã ç a z il it U e d %
a d a l 40 a t s 30 In e 20 d a 10 d i c a 0 p a C
100
90
80
70