8º CONGRESSO IBEROAMERICANO DE ENGENHARIA MECANICA Cusco, 23 a 25 de Outubro de 2007



Documentos relacionados
AULA 1 Iniciando o uso do TerraView

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

DATA WAREHOUSE. Introdução

Manual do Usuário. Plano de Corte

AULA 6 - Operações Espaciais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW

DESENHO TÉCNICO AULA 01

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc.

Especificação do 3º Trabalho

1 Geometria de referências: pontos, eixos e planos

15 Computador, projeto e manufatura

Análise de Dados do Financeiro

Plano de Gerenciamento do Projeto

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

Como conduzir com sucesso um projeto de melhoria da qualidade

Apresentação Inspetor de Solda MIPS Sistemas Ltda.

DESENVOLVIMENTO DE PROGRAMA MULTIMIDIA PARA O ENSINO DEDINÂMICA DE MÚLTIPLOS CORPOS

4 O Workflow e a Máquina de Regras

Sua indústria. Seu show. Seu Futuro

Noções de. Microsoft SQL Server. Microsoft SQL Server

PRO-FAE: FERRAMENTA COMPUTACIONAL PARA AUXILIO NO PROJETO PRELIMINAR DE FAZENDAS EÓLICAS.

Sistema Banco de Preços Manual do Usuário OBSERVATÓRIO

Aula Anterior. Capítulo 2

CRIANDO MDT. Para criar o MDT Selecione o botão Modelagem ou clique na área esquerda da do programa onde se terá a opção criar Nova Modelagem.

ENGENHARIA DE SOFTWARE I

PLANEJAMENTO DO PROCESSO ASSISTIDO POR COMPUTADOR - CAPP

FAPESP FUNDAÇÃO DE AMPARO À PESQUISA DO ESTADO DE SÃO PAULO UNIVERSIDADE DE SÃO PAULO INSTITUTO DE MATEMÁTICA E ESTATÍSTICA (IME) GeoGrid

ADM041 / EPR806 Sistemas de Informação

ATENÇÃO: * Arquivos com tamanho superior a 500 KB NÃO SERÃO ACEITOS * SOMENTE serão aceitos documentos do formato: PDF

INF INTELIGÊNCIA ARTIFICIAL TRABALHO 2 LÓGICA

Passo a Passo do Orçamentos de Entrada no SIGLA Digital

Criando Quiz com BrOffice.impress

Feature-Driven Development

Planejando o aplicativo

Status. Barra de Título. Barra de Menu. Barra de. Ferramentas Padrão. Caixa de nomes. Barra de. Ferramentas de Formatação. Indicadores de Coluna

Dadas a base e a altura de um triangulo, determinar sua área.

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas

Implementação de um módulo simulador de robôs baseado em Unity3D para o SimBot - Simulador de Robôs para Lego NXT.

AULA 1 INTRODUÇÃO - ENGENHARIA DE SOFTWARE. Prof. Msc. Hélio Esperidião

3 Modelo Evolucionário para Sustentabilidade Inteligente

DA INTERPOLAÇÃO SPLINE COMO TRAJETÓRIA DA FERRAMENTA NA MANUFATURA SUPERFÍCIES COMPLEXAS ATRAVÉS DE FERRAMENTAS DOE (DESING OF EXPERIMENTS)

2. Função Produção/Operação/Valor Adicionado

Universidade Federal de Pernambuco

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Engenharia de Sistemas Computacionais

UNIVERSIDADE FEDERAL DA BAHIA - UFBA

Conceitos de Banco de Dados

Análise e Projeto Orientados por Objetos

PLANOS DE CONTINGÊNCIAS

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2

Engenharia de Software III

Modelagemde Software Orientadaa Objetos com UML

FATEC Cruzeiro José da Silva. Ferramenta CRM como estratégia de negócios

Barra de ferramentas padrão. Barra de formatação. Barra de desenho Painel de Tarefas

ScanTo3D.

Um Ambiente Gráfico para Desenvolvimento de Software de Controle para Robôs Móveis Utilizando Simulação 3D

Desenvolvimento de um software de gerenciamento de projetos para utilização na Web

5 Mecanismo de seleção de componentes

GARANTIA DA QUALIDADE DE SOFTWARE

Sistemas Operacionais Gerência de Dispositivos

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8

Tecnologias CAx na Manufatura. Valter Vander de Oliveira Disciplina: Sistemas Industriais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Sistemas Operacionais

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

A sigla CAD pode representar duas definições principais, das quais muitas vezes são empregadas inadequadamente:

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto

Software. Gerenciamento de Manutenção

Algoritmos: Lógica para desenvolvimento de programação de computadores. Autor: José Augusto Manzano. Capítulo 1 Abordagem Contextual

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi

PLANEJAMENTO DA MANUFATURA

GEADA. Gerador de Expressões Algébricas em Digrafos Acíclicos. para versão 1.0, de agosto/2008. Autor: Márcio Katsumi Oikawa

Manual do Visualizador NF e KEY BEST

Características da Usinagem CNC

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS

Engenharia de Software Sistemas Distribuídos

3. No painel da direita, dê um clique com o botão direito do mouse em qualquer espaço livre (área em branco).

IW10. Rev.: 02. Especificações Técnicas

DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3

3.1 Definições Uma classe é a descrição de um tipo de objeto.

TOTVS Gestão Hospitalar Manual Ilustrado Central de Material Esterilizado. 11.8x. março de 2015 Versão: 3.0

Entendendo como funciona o NAT

CONTROLE DE QUALIDADE e VALIDAÇÃO DE PRODUTO CARTOGRÁFICO

Curva ABC. Tecinco Informática Ltda. Av. Brasil, º Andar Centro Cascavel PR

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO

A-Graph: Uma ferramenta computacional de suporte para o ensino-aprendizado da disciplina Teoria dos Grafos e seus Algoritmos

XDOC. Solução otimizada para armazenamento e recuperação de documentos

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos

Usando o Arena em Simulação

Projeto de controle e Automação de Antena

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA

Wilson Moraes Góes. Novatec

PORTAL DE COMPRAS SÃO JOSÉ DO RIO PRETO

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido

Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software

Fluxo de trabalho do Capture Pro Software: Indexação de OCR e separação de documentos de código de correção

Transcrição:

8º CONGRESSO IBEROAMERICANO DE ENGENHARIA MECANICA Cusco, 23 a 25 de Outubro de 2007 GERAÇÃO DE CAMINHOS DA FERRAMENTA SOBRE SUPERFÍCIES DE FORMA LIVRE Cristiane P. Tonetto*, Altamir Dias * Universidade Federal de Santa Catarina Departamento de Engenharia Mecânica Florianópolis, SC, 88040-900, Brasil *cris.tonetto@emc.ufsc.br, altamir@emc.ufsc.br RESUMO Durante a etapa de planejamento de trajetórias são definidos todos os detalhes do movimento a ser executado pelo robô para a realização de uma tarefa. Esses detalhes consistem em determinar quais pontos o efetuador deve seguir, além de informações adicionais como as velocidades e as acelerações em cada ponto do percurso, tanto para o efetuador final quanto para cada uma das juntas do robô. No planejamento de trajetórias é importante conhecer as propriedades geométricas do contorno do objeto, geralmente a forma das superfícies, em que as tarefas serão executadas. Sobre a superfície será gerado o caminho a ser seguido pelo robô para executar a tarefa. Este artigo tem como objetivo apresentar uma proposta de sistematização para o processo de planejamento de trajetórias em ambientes robóticos, explorando as características geométricas da superfície e descrevendo os resultados do algoritmo implementado para a geração de caminhos a ser seguido pelo efetuador do robô. PALAVRAS-CHAVE: Planejamento de trajetórias, reconstrução de superfícies, caminho da ferramenta.

INTRODUÇÃO O processo de planejamento de trajetórias é uma atividade muito importante na simulação de uma tarefa robótica, pois é ele que permite antecipar o comportamento dos movimentos que o robô efetuará em cada etapa da tarefa. Portanto, sem o planejamento de trajetórias a execução de tarefas poderá ter resultados imprevisíveis, demandando tempo para possíveis correções e expondo os usuários do robô a risco de acidentes. Por outro lado, uma trajetória planejada e bem definida contribui para que a tarefa seja realizada com sucesso e possibilita o reuso destas informações para tarefas futuras. Neste trabalho será explorada uma proposta metodológica de ordenar o processo de planejamento de trajetórias em ambientes robóticos. Embora isso venha sendo feito em ambientes industriais, procedimentos metodológicos são escassamente encontrados na literatura e nem sempre muito bem sistematizados, principalmente em ambientes de pesquisa. Mesmo assim, é possível encontrar alguns autores que estabelecem algumas rotinas para organizar o planejamento de trajetórias em ambientes robóticos. Por exemplo, Lozano-Peres apud Ranky e Ho[1] divide a função de planejamento de tarefas robóticas em três partes: modelagem do espaço de trabalho, especificação da tarefa e síntese de programação do manipulador. Ele define que o aspecto de modelagem do espaço de trabalho tenta encontrar a informação física do ambiente usando descrições matemáticas ou relacionais. As especificações das tarefas designam os estados de paradas ou movimentos para garantir que a tarefa seja executada completamente. A síntese de programação prescreve o comportamento do manipulador em relação à tarefa objetivo e aos sensores de entrada. A partir dessa idéia de Lozano-Peres buscou-se desenvolver um modelo que contemple detalhes do processo mais completo, envolvendo a busca de informações sobre a tarefa a ser executada, reconstrução de superfícies até a geração do caminho e da trajetória que guiará a ferramenta na tarefa a ser executada. Nesta sistematização é considerada a contribuição de vários outros autores, dentre os quais destaca-se Toledo [2], Simas [3] e Boesel e Dias [4] que propõem formas de sistematizar o planejamento de trajetórias e Feng e Li [5], Suresh e Yang [6] e Sarma e Dutta [7] que trabalham mais localizadamente em conceitos envolvendo o cálculo de propriedades das superfícies de trabalho e os métodos e os recursos matemáticos para calcular os caminhos a serem seguidos pelo efetuador final do robô. UMA METODOLOGIA EM PLANEJAR TRAJETÓRIAS O modelo geral proposto neste trabalho é mostrado na Figura 1. Ele descreve as etapas necessárias ao planejamento de trajetórias robóticas. Esse modelo servirá como referência ao longo desse artigo e cada uma das etapas será descrita com mais detalhes a seguir. Figura 1: Proposta de modelo para planejamento de trajetórias robóticas.

Desta forma, o modelo geral, exibido graficamente na Figura 1, é divido em cinco etapas: Obter dados e informações -- é a etapa inicial focada na obtenção da informação e forma do objeto a ser fabricado ou reparado; esta etapa envolve a aquisição da forma como uma nuvem de pontos, a definição do processo de transferências dos dados e é concluída com a determinação do tipo de formato de arquivo que será utilizado para manipulação e transferência de dados. Reconstruir superfície -- os dados obtidos na etapa 1 são trabalhados algoritmicamente para gerar um modelo matemático da superfície de trabalho, visando calcular os detalhes geométricos do objeto que vão ser usados para programar a tarefa para o robô. Nesta fase, a nuvem de pontos é organizada topologicamente, a representação da superfície e sua modelagem são criadas. Determinar região de trabalho -- a região de trabalho é a região da superfície que a tarefa vai ser executada. Pode ser considerada apenas parte da superfície para o processo de planejamento da tarefa, mas em alguns casos, ela pode compreender toda a superfície do objeto. Determinar caminho e trajetória -- nesta fase é preciso escolher o tipo de caminho que o manipulador do robô deve percorrer para recobrir a região. Existem várias formas de relacionar a geometria do objeto a ser manufaturado e a do robô, possibilitando diferentes precisões no seguimento da tarefa. O caminho será descrito por curvas que seguem pontos pré-selecionados de acordo com a exatidão exigida para execução da tarefa; a curva definidora do caminho servirá de dado para a determinação da trajetória do efetuador. Executar tarefa -- consiste em passar as informações e preparar o robô. Além da trajetória, outras informações adicionais são necessárias para completar a etapa de programação da tarefa, antes de executá-la pela ação do robô. Todas estas etapas, descritas acima serão trabalhadas textualmente visando mostrar o que é preciso ser feito para implementar esta proposta metodológica no planejamento de trajetórias. OBTER DADOS E INFORMAÇÕES A primeira etapa é a aquisição de informação da região de execução da tarefa. Neste trabalho foi focalizada a determinação de uma superfície de interesse, onde a tarefa vai ser executada. A tarefa proposta neste trabalho referese a recuperação de danos causados por erosão devido a cavitação provocada pelo movimento de fluidos em turbinas hidráulicas de geração de eletricidade. Esta recuperação será feita por soldagem efetuada por robô. As informações geométricas da superfície erodida são obtidas através de métodos de aquisição de dados, geralmente medidas de pontos em coordenadas cartesianas. Dentre as várias possibilidades de aquisição de dados que capturem a forma da superfície da tarefa, as propostas mais usadas atualmente são pelo o uso de: máquinas de medição de coordenadas (CMM), técnicas óticas com câmeras e iluminação especial, varredura a laser. Por estes métodos e o tratamento adequado dos dados adquiridos, a forma da superfície pode ser registrada, por exemplo, em termos de uma nuvem de pontos descritos em coordenadas cartesianas. Para realizar um compartilhamento de dados com outros aplicativos as informações devem ser armazenadas de forma padronizada. Desta forma, para transferir dados é necessária a escolha de um formato de arquivo com uma estrutura padrão. As mais usadas para facilitar a troca de dados, são padrões universais de armazenagem de dados, dentre os quais destacam-se os seguintes formatos: IGES, STEP, ASCII. É necessário que esses padrões suportem os dados a serem transferidos para que ocorra a recomposição do objeto de interesse no sistema a ser manipulado. Caso alguma informação não seja suportada pelo formato, ao se transferir esse arquivo, ele não corresponderá aos dados originais, havendo perda de informação (incompatibilidade com o objeto de interesse original). Isso também poderá ocorrer se não for utilizado algum padrão para se arquivar os dados. A incompatibilidade entre sistemas pode implicar na perda de informação ou em algum erro ao tentar transferir os dados de sistema para sistema. As informações adquiridas são necessárias para reconstruir a representação da superfície da tarefa a ser planejada e consistem do conjunto de pontos definidos em coordenadas cartesianas, sem a necessidade de registrar dados topológicos adicionais. Desta forma, no algoritmo implementado optou-se por um formato de arquivo mais simples para armazenar os dados adquiridos do objeto (como o formato de arquivo ASCII). Ele contém as informações da superfície como uma nuvem de pontos, onde cada linha do arquivo armazena as coordenadas cartesianas na ordem (x, y, z) de cada ponto lido pelo método de aquisição de informação, como mostrado na matriz (figura 2): -59.522 34.097-33.453-59.620 27.820-33.017-59.617 8.991-33.369

-59.590 2.816-33.612-59.590-3.388-33.713 Figura 2: Estrutura de dados em ASCII, representando a nuvem de pontos de uma superfície. Conhecido o formato do arquivo, é possível se processar a informação contida nele e armazená-la em formato de listas que serão utilizadas na etapa de reconstrução de superfícies. RECONSTRUIR SUPERFÍCIE A nuvem de pontos adquirida e organizada num arquivo ASCII é usada para reconstrução de superfícies. A superfície reconstruída será a fonte de dado para a execução da tarefa. As tarefas robóticas que precisam de estudo mais preciso e principalmente que exigem controle contínuo da trajetória do efetuador final do robô são as soldagens contínuas e os processos de pintura. A execução desse tipo de tarefa exige um modelo matemático da geometria, e assim da superfície, fonte dos dados que vão permitir que o efetuador do robô siga sobre ela mais suavemente, como relatam Toledo [2], Simas [3], Feng e Li [5] e Yin [8]. Os sistemas de medição de coordenadas, em geral, conseguem fornecer o conjunto de pontos capturados da superfície de forma ordenada, pois o processo de captura de dados requer também um planejamento de aquisição dos dados e assim a geração de uma estrutura ordenada dos dados. Isso pode ser usado para acelerar o processo de construção de uma representação de superfície. Quando só a forma da superfície é necessária, as superfícies de forma livre podem ser geradas pela interpolação de pontos ordenados vindos do processo e aquisição de dados e fornecer a representação matemática compacta para a geração do caminho da ferramenta sobre a superfície. Às vezes, somente a ordenação previamente determinada não é suficiente para uma boa reconstrução da superfície. Nestes casos, então, é necessário obter uma representação topológica da estrutura de dados que representa a região a ser recuperada. Ou seja, a informação topológica fornece a localização precisa dos pontos no espaço de trabalho e também determina as relações de vizinhanças entre eles. Por isso, que nesta etapa é realizada a busca de um modelo de informação geométrica da estrutura de pontos de forma que inclua não só a ordenação de pontos, mas também suas informações de vizinhanças. Com os dados da nuvem de pontos topologicamente ordenados o passo seguinte é estabelecer formas de representá-los como uma superfície. Uma representação da forma da nuvem de pontos pode ser obtida através de malhas, onde os pontos topologicamente organizados seriam ligados por segmentos de retas. No entanto, isso forneceria uma representação wireframe ou facetada da estrutura de pontos, a qual precisaria, certamente, ser refinada para poder ser usada dentro dos requisitos necessários dos métodos de produção. Uma outra forma é fazer a reconstrução da superfície usando um sistema CAD/CAM convencional. Neste caso, a superfície é feita a partir das informações de projeto do objeto a ser trabalhado, e o projetista observando a disposição dos pontos vai manipulando-os e reconstruindo a superfície. Muitos sistemas CAD/CAM oferecem também a possibilidade de reconstrução a partir da nuvem de pontos que seria transformada em superfícies com o auxílio de aproximação por features geométricas (planos, cilindros, cones, esferas), malhas triangularizadas ou ainda, pela interpolação de pontos (através de métodos como Bézier, Hermite, B-Splines, etc). Tais métodos são muito aplicados em engenharia reversa nos sistemas CAD/CAM [9]. Figura 3: Superfície reconstruída a partir do diagrama de Voronoi (a) Wireframe e (b) Sombreada [10].

Uma terceira saída seria desenvolver algoritmos específicos para reconstruir superfícies a partir de nuvem de pontos. Nesta pesquisa é utilizado um processo de reconstrução de superfícies baseado na organização da estrutura da nuvem de pontos pela técnica do diagrama de Voronoi [10, 11]. O diagrama de Voronoi foi usado para organizar topologicamente a nuvem de pontos. O diagrama, quando representado graficamente no espaço 3D, pode inclusive ser usado como uma representação ilustrativa da superfície. A Figura 3 ilustra uma superfície reconstruída através de um conjunto de pontos representativos da superfície original. Em (a), é ilustrada a representação em wireframe da superfície usando simplesmente a ligação dos pontos por segmentos de retas, e em (b) a mesma representação sombreada. As duas representações são obtidas através da ordenação da nuvem de pontos e pela construção do diagrama de Voronoi. A construção do diagrama de Voronoi, quando mapeada no espaço 3D, possibilita uma forma de visualização aproximada da superfície original. Detalhes sobre a teoria do diagrama de Voronoi e a implementação do algoritmo reconstrutor de superfícies podem ser encontradas em Tonetto e Dias [11]. A pesquisa desenvolvida por Tonetto e Dias [10, 11] teve como objetivo principal a utilização do diagrama de Voronoi para a ordenação topológica do conjunto de pontos, que pode ser utilizada para obter uma representação matemática de superfícies, por exemplo, por B-Splines. Assim, a vantagem da ordenação do conjunto de pontos pelo diagrama de Voronoi é que fica mais fácil construir uma superfície de forma livre, além de poder manipular dinamicamente a estrutura de dados para eventuais correções da representação. O algoritmo implementado utiliza a teoria de superfícies B-Splines uniforme para a reconstrução de superfícies [10]. A representação por B-Spline foi escolhida por ter algumas vantagens sobre as outras representações, como a interpolação dos pontos dados (obtidas através do algoritmo inverso), o controle local da forma da superfície e a flexibilidade de desacoplar o grau da curva, ou da superfície do número de pontos de controle, e ainda, por se tratar de uma generalização de outras representações [12]. A Figura 4 ilustra uma superfície B-Spline reconstruída pelo algoritmo desenvolvido nesta pesquisa, a partir de um conjunto de pontos ordenado topologicamente pelo diagrama de Voronoi. Figura 4: Superfície B-Spline reconstruída Tonetto [10]. Esse tipo de representação fornece uma forma mais suave da superfície. A superfície B-Spline é necessária para calcular de forma mais exata as propriedades em operações de manufatura, como o planejamento do caminho e trajetória, operações de recobrimentos, cálculo e simulação de propriedades mecânicas como curvatura, volume e análise de tensão. Contudo, ressalta-se que qualquer das propostas evidenciadas nesta secção pode ser usada no escopo do planejamento de tarefas robóticas, dependendo da informação a ser obtida para auxiliar a sua execução. DETERMINAR REGIÃO DE TRABALHO Geralmente, em processos de aquisição de dados a região mapeada para execução da tarefa é maior do que a região onde a tarefa vai ser realizada. Assim, em uma das etapas da metodologia é preciso selecionar a região de interesse, pois dependendo da tarefa ela pode ser feita sobre toda ou parte da superfície do objeto a ser recuperado ou produzido. Pode-se, então, imaginar a região da tarefa como resultado do cálculo de intersecções entre duas superfícies, ou seja, existe a princípio uma superfície original da peça a ser trabalhada (que pode ser fornecida por

parâmetros de projeto quando há registro através de sistemas CAD/CAM) e a região a ser trabalhada é resultado da reconstrução da superfície adquirida em termos de nuvem de pontos. A superfície de trabalho é, portanto, resultado do cálculo de intersecção entre a superfície original e a superfície adquirida por métodos de captura de dados. Essa diferença é que constitui a região de interesse a ser manipulada posteriormente. Quando não há registro da superfície original por um sistema CAD/CAM, a superfície original precisa ser reconstruída a partir da própria nuvem de pontos adquirida. A coleta de dados é realizada para capturar superfícies danificadas, geralmente é feita com uma margem de segurança de leitura de pontos, medindo regiões circundantes além da região de interesse. Estas regiões circundantes podem ser usadas para criar uma representação aproximada da superfície original. A Figura 5 ilustra um exemplo de seleção de uma região a ser usada para reconstrução da superfície por soldagem robótica (a superfície foi reconstruída pela metodologia usada nesta pesquisa). O contorno vermelho indica a região onde será planejada a tarefa. Esta metodologia pode ser ampliada para determinar a região a ser recuperada, principalmente em casos de erosões de pás de turbinas hidráulicas de usinas elétricas, onde é comum a superfície da pá apresentar várias erosões. Figura 5: Região de trabalho. DETERMINAR CAMINHO E TRAJETÓRIA Conhecida a forma geométrica da superfície, suas propriedades podem ser agora usadas para obter o caminho sobre ela que o efetuador do robô deve seguir para concretizar a tarefa. A partir dos trabalhos de Chen et al [13], Suresh e Yang [6] e Sarma e Dutta [7], três técnicas principais de geração de caminho da ferramenta são considerados: iso-paramétrico, iso-planar e iso-scallop. Esses três métodos foram implementados: Geração do caminho da ferramenta no espaço paramétrico Este algoritmo é bem simples e usa a relação entre o espaço paramétrico e o espaço de trabalho para determinar o caminho da ferramenta. Portanto, como ilustra a Figura 6, um caminho em zig-zag pode ser definido no espaço paramétrico. As curvas que a ferramenta deve seguir ficam totalmente determinadas pelos parâmetros u e v do espaço paramétrico, como mostra a Figura 6. Embora seja um método fácil para planejar movimentos do efetuador, esta metodologia falha na definição da precisão que o caminho deve seguir ao longo da superfície, não respeitando parâmetros como o passo constante entre as passadas da ferramenta.

Figura 6: Geração de caminho no espaço paramétrico. Geração do caminho da ferramenta no espaço de trabalho Duas propostas principais têm sido usadas para a geração de caminho da ferramenta no espaço de trabalho: o método iso-planar e o método iso-scallop. A geração do caminho da ferramenta iso-planar é determinada considerando-se intersecção entre a superfície B-Spline reconstruída e um plano que definirá o caminho da ferramenta. A curva gerada pela intersecção do plano com a superfície B-Spline estabelece um caminho sobre a superfície. Os planos de intersecção são transladados em uma dada direção, cuja distância é estabelecida pelo passo da ferramenta para execução da tarefa. A Figura 7(a), ilustra a malha de curvas obtida pelo procedimento de geração do caminho iso-planar no espaço de trabalho. (a) (b) Figura 7: (a) Caminho iso-planar gerado sobre o espaço de trabalho; (b) caminho iso-scallop gerado sobre o espaço de trabalho. A direção do plano de corte influencia nos resultados da geração do caminho da ferramenta. No entanto, a decisão da escolha da direção de um plano ótimo é um problema de difícil resolução segundo Suresh e Yang [6]. No algoritmo proposto, a direção do plano é fixa e é paralela ao plano XZ do sistema de coordenadas de trabalho. A geração do caminho da ferramenta iso-scallop é realizada também sobre uma superfície B-Spline reconstruída, tendo como objetivo o cálculo do caminho segundo parâmetros de execução da tarefa. Isso possibilita executar a tarefa com precisão e acabamento superficial, ao manter, por exemplo, a distância constante da altura da rugosidade em uma operação de usinagem. A metodologia usa a curva de uma das fronteiras da superfície como o caminho inicial, e os demais caminhos são determinados paralelos entre si a partir dos parâmetros exigidos para executar a tarefa (mantêm distância constante em relação ao caminho anterior) de forma a manter a rugosidade constante. A abordagem utilizada para o cálculo dos caminhos paralelos foi baseada no método proposto por Suresh e Yang [6]. Considerando-se o primeiro caminho dado, para cada ponto desse caminho são encontrados os pontos que estão a uma distância L, dada pelo passo da ferramenta desejada, gerando um conjunto de pontos paralelos ao primeiro caminho. A união desses pontos paralelos originará uma curva paralela ao caminho anterior. Repetindo-se recursivamente essa operação, é possível construir todos os caminhos paralelos, de forma que o recobrimento da superfície possa ser dado por caminhos que estão a uma distância constante entre si. A Figura 8(b) ilustra a geração do caminho iso-scallop da ferramenta.

RESULTADOS A metodologia proposta neste artigo foi implementada através de uma interface computacional para visualizar os vários tipos de informações necessárias na reconstrução das superfícies e no planejamento de caminhos a ser trilhado pelo efetuador final do robô. O protótipo desenvolvido possui as seguintes capacidades: entrar com dados do conjunto de pontos no formato de arquivos ASCII com estrutura definida; reconstruir e visualizar superfícies a partir de três formas diferentes: o diagrama de Voronoi, a triangularização de Delaunay e a representação B-Splines; permitir a geração de caminhos da ferramenta no espaço paramétrico e no espaço de trabalho, com entrada de valores para o avanço e passo da ferramenta; visualizar as superfícies em wireframe e sombreadas; abrir e salvar arquivos em formatos compatíveis com outros programas, como Blender e Pro/ENGINEER; permitir a manipulação da visualização utilizando a interface padrão via mouse (controle de zoom, rotação e translação). O protótipo desenvolvido é composto de duas janelas interativas, uma que oferece as opções de trabalho e outra para manipulação e visualização do objeto. A Figura 8 ilustra a execução do programa mostrando a superfície B- Spline reconstruída e o caminho gerado. Dessa forma, o único parâmetro de entrada inicial do programa é uma nuvem de pontos adquirida a partir da qual as superfícies necessárias a reconstrução são formadas; foi implementado, ainda, a entrada de parâmetros de programação de tarefas, como o avanço da ferramenta e o passo da mesma para execução da tarefa. Figura 8: Resultados obtidos pelo algoritmo. O caminho calculado refere-se a apenas uma passada para recobrir a superfície, usando qualquer uma das três técnicas de geração de caminho dentro das especificações de projeto desejadas. O algoritmo foi desenvolvido utilizando-se a linguagem de programação JAVA (Sun - Java(TM) Development Kit (JDK) 5.0) [14]. Foi necessário utilizar algumas bibliotecas extras disponíveis de forma livre na internet, sendo uma chamada Jama-1.0.2 [15], que adiciona funcionalidades relativas à manipulação e operação de matrizes, e outra chamada java3d-1.4.0.01 [14], utilizada para visualização e manipulação dos objetos 3D e a biblioteca CyberVRML97 para salvar os resultados do aplicativo no formato de arquivo VRML [16]. Os resultados obtidos pelo programa podem ser salvos no formato OBJ e VRML e o caminho pode ser salvo como uma lista de pontos, podendo ser exportado para outros programas como Blender e Pro/ENGINEER.

CONSIDERAÇÕES Este estudo sistematiza cada etapa necessária para o desenvolvimento da implementação de uma interface para trabalhar as informações no processo de planejamento de trajetórias. Na proposta apresentada e no protótipo desenvolvido, é feito o uso de métodos de reconstrução de superfícies. A representação da superfície é feita a partir de uma nuvem de pontos adquiridos do próprio objeto de trabalho. Ela possibilita o planejamento e a geração de caminhos para o desenvolvimento da tarefa desejada em robôs manipuladores. As superfícies obtidas são representações geométricas da superfície original; a interface gerada produz várias visualizações aproximadas da superfície original e da superfície a ser trabalhada, compondo-a através de segmentos de superfícies B-Splines. No estudo são considerados outros aspectos, como a formulação matemática usada em cada etapa, bem como os algoritmos propostos para se ter uma visão completa da superfície do objeto de trabalho. Os próximos passos incluem a simulação de soldagem por camadas e a introdução de módulos de simulação de cinemática inversa a partir dos caminhos obtidos. Esta interface foi pensada ser disponibilizada dentro da concepção de Software Livre, e os algoritmos e seus códigos-fonte estão disponíveis em: http://www.labcadcam.ufsc.br/~cris.tonetto/ http://sourceforge.net/projects/plantra REFERÊNCIAS 1. P.G. Ránky and C. Y. Ho, Robot Modelling: Control and Applications with Software, IFS (Publications) Ltd. UK, Springer-Verlag Berlin, 1985. 2. L.B. Toledo, Uma interface CAD/CAM para a programação fora de linha de robôs industriais, Dissertação, Florianópolis-SC, Universidade Federal de Santa Catarina, Fev. 2000. 3. H. Simas, Planejamento de Trajetória de Soldagem para Robôs Redundantes Operando em Ambientes Confinados, Qualificação de Doutorado, Universidade Federal de Santa Catarina, Florianópolis, março 2005. 4. D. Boesel and A. Dias, Reconstrução de superfícies no planejamento de trajetórias de tarefas de robôs através de diagrama de Voronoi, 7 Congresso Iberoamericano de Ingenieria Mecanica, México D.F., Out. 2005. 5. H. Feng and H. Li, Constant scallop-height tool path generation for three-axis sculptured surface machining, Computer-Aided Design, Elsevier Ltd, n.34, pp. 647 654, 2001. 6. K. Suresh and D. C. H. Yang, Constant Scallop-height Machining of free-form Surfaces, Journal of Engineering for Industry, vol. 116, pp. 253 259, May 1994. 7. R. Sarma and D. Dutta, The Geometry and Generation of NC Tool Paths, Journal of Mechanical Design, vol. 119, pp. 253 258, June 1997. 8. Z. Yin, Rough and finish tool-path generation for NC machining of freeform surfaces based on a multiresolution method, Computer-Aided Design Elsevier, n. 36,pp. 1231 1239, Jan. 2004. 9. H. Pottmann and S. Leopoldseder and M. Hofer and T. Steiner and W. Wang, Industrial geometry: recent advances and applications in CAD, Computer-Aided Design Elsevier, n.37, pp. 751 -- 766, 2005. 11. Tonetto, C. P., Uma proposta de sistematização do processo de planejamento de trajetórias para o desenvolvimento de tarefas de robôs manipuladores, Dissertação de Mestrado, Universidade Federal de Santa Catarina, Florianópolis-SC, 2007. 12. Tonetto, C. P., Dias, A., Rebuilding surfaces through Voronoi diagram, Flexible Automation and Intelligent Manufacturing -- FAIM2007, Philadelphia, USA, 2007. 13. D. Qiulin and B. J. Davies, Surface engineering geometry for computer-aided design and manufacture, Ellis Horwood limited, Chichester - United Kingdom, 1987. 14. Y. D. Chen and J. Ni and S.M. Wu, Real-Time CNC Tool Path Generation for Machining IGES Surfaces, Journal of Engineering for Industry, vol. 115, pp. 480-486, nov. 1993. 16. Sun-JAVA, Disponível em: http://java.sun.com/ 17. Jama-Matrix, Disponível em: http://math.nist.gov/javanumerics/jama/ 18. CyberVRML97, Disponível em: http://www.cybergarage.org/vrml/cv97/cv97java/index.html