• Nenhum resultado encontrado

Sistema de aquisição de imagens e triangulação laser integrado a um robô para seguimento automático de trincas sinalizadas

N/A
N/A
Protected

Academic year: 2021

Share "Sistema de aquisição de imagens e triangulação laser integrado a um robô para seguimento automático de trincas sinalizadas"

Copied!
172
0
0

Texto

(1)

UNIVERSIDADE FEDERAL DE SANTA CATARINA CENTRO TECNOLÓGICO

PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA MECÂNICA

Patryk Alexandre Gonçalves

SISTEMA DE AQUISIÇÃO DE IMAGENS E TRIANGULAÇÃO LASER INTEGRADO A UM ROBÔ PARA SEGUIMENTO AUTOMÁTICO DE TRINCAS

SINALIZADAS

FLORIANÓPOLIS 2019

(2)

Patryk Alexandre Gonçalves

SISTEMA DE AQUISIÇÃO DE IMAGENS E TRIANGULAÇÃO LASER INTEGRADO A UM ROBÔ PARA SEGUIMENTO AUTOMÁTICO DE TRINCAS

SINALIZADAS

Dissertação de Mestrado apresentada ao Programa de Pós-Graduação em Engenharia Mecânica da Universidade Federal de Santa Catarina como requisito para a obtenção do Grau de Mestre em Engenharia Mecânica.

Orientador: Prof. Tiago Loureiro Figaro da Costa Pinto, Dr. Eng.

Florianópolis 2019

(3)
(4)

Patryk Alexandre Gonçalves

SISTEMA DE AQUISIÇÃO DE IMAGENS E TRIANGULAÇÃO LASER INTEGRADO A UM ROBÔ PARA SEGUIMENTO AUTOMÁTICO DE TRINCAS

SINALIZADAS

O presente trabalho em nível de mestrado foi avaliado e aprovado por banca examinadora composta pelos seguintes membros:

Prof. Tiago Loureiro Figaro da Costa Pinto, Dr. Eng. Orientador/Presidente

Universidade Federal de Santa Catarina Prof. Christian Kohler, Dr. Ing. Universidade Federal de Alagoas

Prof. Armando Albertazzi Gonçalves Jr., Dr. Eng. Universidade Federal de Santa Catarina

Prof. Henrique Simas, Dr. Eng. Universidade Federal de Santa Catarina

Certificamos que esta é a versão original e final do trabalho de conclusão que foi julgado adequado para obtenção do título de Mestre em Engenharia Mecânica.

____________________________________________

Prof. Jonny Carlos da Silva, Dr. Eng. Coordenador do Curso

_____________________________________________

Prof. Tiago Loureiro Figaro da Costa Pinto, Dr. Eng. – Orientador Universidade Federal de Santa Catarina

Florianópolis, 31 de julho de 2019.

Tiago Loureiro Figaro da

Costa Pinto:19205471852

Assinado de forma digital por Tiago Loureiro Figaro da Costa

Pinto:19205471852

Dados: 2019.09.17 11:06:33 -03'00' Assinado de forma digital por Jonny Carlos da

Silva:51451506449

(5)
(6)

Aos meus pais. O que alcancei até aqui e o que está por vir, devo-lhes.

(7)
(8)

AGRADECIMENTOS

A experiência no trabalho de mestrado foi prazerosa e enriquecedora, além de desafiadora. Aproveito esse pequeno espaço no documento para escrever de forma menos formal e agradecer algumas pessoas que permitiram essa coleção de experiências e conhecimento que levarei por onde eu for. Certamente esquecerei de alguém. Para cada pessoa citada, há pelo menos cinco outras que contribuíram de diversas maneiras. Peço desculpa antecipadamente pela falha.

Agradeço aos meus pais, que apesar das dificuldades, sempre se dedicaram além do imaginável para me amparar com seu apoio incondicional.

Agradeço ao meu orientador, professor Tiago, por acreditar no meu trabalho e por dividir suas ideias comigo. O prof. Tiago sempre esteve presente para me ajudar a encontrar um caminho quando as coisas não caminharam na direção esperada ou com seu entusiasmo quando o trabalho avançava. Minha motivação e entusiasmo vieram quase sempre dele.

Agradeço ao Pedro Buschinelli pelas conversas e conselhos e por revisar o meu texto.

Agradeço ao Élsio varela, técnico do laboratório, sempre pronto para ajudar.

Agradeço ao Claudio Schmitz, ao Julio Frantz e ao André Tonelli pela ajuda nas tentativas de conserto do controlador do robô.

No Labmetro tive a oportunidade de interagir com pessoas supercompetentes e agradáveis. Agradeço a eles, aos meus colegas de turma, enfim, todos do Labmetro pela troca que tivemos.

Agradeço aos membros da banca pela disponibilidade. Certamente sua experiência contribuirá para a entrega de um trabalho melhor.

Agradeço a todas as pessoas generosas que se deram o trabalho de me ensinar tudo o que sei sobre questões técnicas e sobre a vida.

Agradeço ao CNPq pelo apoio financeiro.

(9)

RESUMO

Um manipulador robótico, que permite realizar o processamento de pinos por atrito pelo processo Friction Hydro Pillar Processing (FHPP), foi desenvolvido em um projeto de pesquisa com o objetivo de realizar a montagem e reparos de componentes sob intensos esforços na construção de estruturas offshore. No processo de reparos de trincas por atrito é necessário que a ferramenta do robô esteja numa postura correta em relação à superfície de interesse, o que traz a necessidade de automatização do processo de medição e movimentação da ferramenta. Para propiciar essa automação, um sensor de triangulação laser foi especialmente desenvolvido pelo Labmetro. Este sensor permite a aquisição de pontos 3D e da textura em tons de cinza da região sob análise e quando integrado ao robô permite medir a geometria 3D de superfícies com geometria complexa. Este trabalho visa a integração do sensor de triangulação laser a um robô industrial e o desenvolvimento de algoritmos para o escaneamento automático de trincas sinalizadas em superfícies de forma livre. Para o desenvolvimento do trabalho, uma guia linear motorizada foi utilizada nos estágios iniciais de desenvolvimento. Em seguida um robô foi utilizado. Os algoritmos especialmente desenvolvidos realizam a fusão de dados da geometria 3D do objeto de interesse e da textura da trinca previamente sinalizada. Ensaios por liquido penetrante, por exemplo, podem realizar esta sinalização. A fusão destes dados permite determinar a próxima postura do robô de modo a continuar o escaneamento da trinca e manter a superfície de interesse dentro da faixa de medição do sistema. Foram realizados experimentos para avaliação metrológica do sensor, avaliação da medição 3D com detecção da trinca para o caso onde o sensor foi integrado à guia linear motorizada e avaliação do seguimento da trinca de forma automática para o caso do sensor integrado a um robô industrial. Os resultados mostram que a trinca pode ser detectada e a sua posição e orientação 3D podem ser definidas na superfície reconstruída para procedimentos de reparo.

(10)
(11)

ABSTRACT

A robotic manipulator, which allows to perform the stud processing by friction in a process called “Friction Hydro Pillar Processing (FHPP)”, was developed in a research project whose purpose was to realize the assembly and repairs of components under intense stress in the construction of offshore structures. In this process of crack repairing it is necessary that the robot tool be in a correct posture in relation to the surface of interest, this brings the need for automating the process of measurement and movement of the tool. To provide this automation, a laser triangulation sensor was specially developed by Labmetro. This sensor allows the acquisition of 3D points and grayscale texture of the region under analysis and when integrated to the robot allows to measure the 3D geometry of surfaces with complex geometry. This work aims at the integration of the laser triangulation sensor into an industrial robot and the development of algorithms for the automatic scanning of signalized cracks on freeform surfaces. For the work’s development, a motorized linear stage was used in the early stages of development. Then a robot was used. The specially developed algorithms perform the data fusion of the 3D geometry of the object of interest and the texture of the previously signaled crack. The fusion of these data allows to determine the next posture of the robot in order to continue the crack scanning and to maintain the surface of interest within the measuring range of the system. Experiments were carried out for the metrological evaluation of the sensor, evaluation of the 3D measurement and crack detection for the case in which the sensor was integrated to the motorized linear stage and evaluation of the automatic crack following in the case the sensor was integrated to an industrial robot. The results show that the crack can be detected, and its 3D position and orientation can be defined on the reconstructed surface for repair procedures.

(12)
(13)

LISTA DE FIGURAS

Figura 1.1 – Manipulador paralelo redundante Hexaflex. ... 24

Figura 1.2 – Sensor de triangulação laser acoplado à ferramenta do robô. ... 25

Figura 2.1 – Princípio de medição por triangulação laser com plano de luz [4]. ... 28

Figura 2.2 – Projeção perspectiva do modelo de câmera pinhole [8]. ... 29

Figura 2.3 – Restrição imposta pelo plano laser na determinação do ponto 3D. Adaptado de [8]. ... 31

Figura 2.4 – a) Padrão utilizado na calibração. b) Sensor sob procedimento de calibração. .. 32

Figura 2.5 – Pontos 3D de cada plano laser do sensor para determinação dos parâmetros do modelo do plano laser. ... 33

Figura 2.6 – Manipulador com todos os sistemas de coordenadas definidos. Adaptado de [11]. ... 34

Figura 2.7 – Sistema de coordenadas do vinco definido através de medição com o STL. ... 36

Figura 2.8 – Elementos para definição do SCV. ... 37

Figura 2.9 – a) Braço de medição utilizado para determinar 𝐴𝑉𝐼. b) Medição do vinco pelo STL para determinar 𝐴𝑉𝑆𝑇𝐿. ... 37

Figura 2.10 – Relação entre sistema de coordenadas. Legenda: 𝐴21 é a matriz de transformação homogênea que indica a postura do SC2 em relação ao SC1. ... 38

Figura 2.11 - Robô manipulador e o sistema de coordenadas do STL (SCSTL), da interface mecânica (SCI) e da base do robô (SCbase). ... 39

Figura 2.12 - Blocos de um sistema de reconstrução 3D completamente autônomo (* representa os aspectos de planejamento de trajetória). Adaptado de [12]. ... 40

Figura 2.13 – Métodos tradicionais de view planning sem conhecimento prévio da forma do objeto [15]. ... 42

Figura 3.1 – a) Processo de reparo por atrito. b) Processo de reparo por costura [31]. ... 45

Figura 3.2 – Sensor de triangulação laser e peça que simula a ferramenta do robô... 48

Figura 3.4 – a) Robô IRB 1600 da ABB. b) Controlador IRC5 da ABB. (Obs.: as imagens não estão em escala) ... 49

Figura 3.5 - Fluxo de dados na comunicação entre robô e PC. ... 50

Figura 3.6 – Camadas da arquitetura TCP/IP [41]. ... 51

Figura 3.7 – Modelo de implementação de clientes e servidores TCP [41]. ... 53

Figura 3.8 – Ilustração esquemática de diferentes formatos de trinca [42]. ... 54

Figura 3.9 – Aplicação de líquido penetrante [45]. ... 55

Figura 3.10 – a) Imagem com lasers ligados. b) Imagem com LEDs ligados... 56

Figura 3.11 – a) Resultado do processamento para segmentação da trinca. b) Nuvem de pontos com detecção tridimensional da trinca. ... 58

Figura 3.12 – a) Sensor montado numa GLM. b) Nuvem de pontos da superfície (branco), trinca (vermelho) e centro da trinca (amarelo). ... 58

Figura 3.13 – a) Nuvem de pontos, 𝐶𝑡 e SCSTL antes do alinhamento. b) Nuvem de pontos, 𝐶𝑡 e SCSTL após alinhamento... 61

Figura 3.14 - Procedimento iterativo feito até que toda a trinca tenha sido escaneada. (a) Aquisição após aproximação inicial; (b) alinha sensor com a superfície; (c) desloca robô para a próxima posição; (d) alinha o sensor com a superfície. ... 62

Figura 3.15 – Fluxograma do seguimento de trinca. ... 63

Figura 3.16 – Imagens em diferentes instantes do processo de escaneamento de uma superfície com trinca simulada. ... 64

(14)

Figura 3.17 – Representação de superfícies reconstruídas por (a) pontos, (b) retas, (c) curvas, (d) segmentos de superfícies e (e) sólidos [52]. ... 65 Figura 3.18 – Estruturação de um conjunto de pontos representativos de um círculo. (a)

Círculo original; (b) amostragem pontual; (c) reconstrução ordenada; (d) reconstrução não ordenada [52]. ... 66 Figura 3.19 – Reconstrução errônea devido ao não ordenamento dos pontos amostrados. . 66 Figura 3.20 – (a) Escaneamento de superfície com trinca simulada. (b) Nuvem de pontos

medida. (c) Reconstrução a partir da nuvem de pontos. ... 67 Figura 3.21 – Esquema do processo para determinação das posições para reparos. Legenda:

em vermelho, a trinca; em preto, os centros da trinca amostrados; em amarelo, os pontos onde serão realizados reparos calculados somando-se as distâncias euclidianas entre centros da trinca amostrados até atingirem o passo definido. ... 68 Figura 3.22 – Conjunto de pontos (em vermelho) utilizados para o cálculo da normal da

superfície (orientação da ferramenta). ... 68 Figura 3.23 – Representação 3D da superfície medida, trinca sinalizada, posições para

inserção de pinos e normais da superfície. ... 69 Figura 4.1 – Diagrama tipo “espinha de peixe” contendo as fontes de incerteza do sistema de

medição. ... 72 Figura 4.2 – Curva de erro do sensor com dados de calibração. ... 73 Figura 4.3 – (a) Imagem do experimento para avaliação do erro de planeza. (b) Posições

medidas do plano de referência. ... 74 Figura 4.4 – Histograma de erros entre plano ajustado e pontos medidos. ... 74 Figura 4.5 – Resolução experimental do STL. ... 75 Figura 4.6 – (a) Mesa de seno rotacionada em torno do eixo Y do SCSTL para avaliar erro de

medição de ângulo. (b) Mesa de seno rotacionada em torno do eixo X do SCSTL para

avaliar erro de medição de ângulo. ... 76 Figura 4.7 – Erros de medição de ângulo para rotações em X e Y. ... 77 Figura 4.8 – (a) Imagem do experimento. (b) Nuvem de pontos medida e esfera ajustada. .. 78 Figura 4.9 – Comparativo do diâmetro medido pelo sistema de referência (Máquina de medir

por coordenadas) e pelo sensor de triangulação laser. ... 78 Figura 4.10 – Sensor de triangulação laser integrado à guia linear motorizada. ... 79 Figura 4.11 – Nuvem de pontos resultante do escaneamento de plano. Os centros da trinca

são destacados em vermelho na representação da nuvem. ... 82 Figura 4.12 – (a) Sistema integrado em operação de escaneamento. (b) Detalhe do objeto

sob medição para testes de software. ... 82 Figura 4.13 – Nuvem de pontos resultante do escaneamento da seção externa de um duto.

... 83 Figura 4.14 - (a) Tubo de PVC com trinca simulada sendo escaneado pelo sistema integrado.

(b) Pontos 3D medidos com passo de 10 mm entre aquisições. (c) Pontos 3D medidos com passo de 5 mm entre aquisições. (d) Pontos 3D medidos com passo de 1 mm entre aquisições. ... 84 Figura 4.15 - Desvio de cada ponto amostrado em relação ao cilindro ajustado. ... 85 Figura 4.16 – Reconstrução 3D da superfície medida, trinca sinalizada e representação das

posições e orientações da ferramenta para realização de reparos. (a) Passo de 10 mm para inserção de pinos. (b) Passo de 25 mm para inserção de pinos. ... 86

(15)

LISTA DE TABELAS

Tabela 3.1 – Etapas de realização do ensaio a líquidos penetrantes. ... 55 Tabela 4.1 – Dados do experimento de medição de ângulo. (Emax_X: erro máximo na

medição de ângulo em X; Emax_Y: erro máximo na medição de ângulo em Y; Td:

Tendência; Re: repetibilidade). ... 75 Tabela 4.2 – Resultados das medições do plano. ... 80 Tabela 4.3 – Escaneamento do tubo de PVC. ... 84

(16)
(17)

LISTA DE ABREVIATURAS E SIGLAS 2D Espaço bidimensional

3D Espaço tridimensional

CAD Computer-aided design

CCD Charge-Coupled Device

DoF Graus de liberdade (Degrees of Freedom)

D-H Denavit-Hartenberg

END Ensaio não destrutivo

EngeMOVI Engenharia de Controle de Movimento, Visão e Instrumentação GLM Guia linear motorizada

INPetro Instituto do Petróleo, Gás e Energia

IP Internet Protocol

HFPP Friction Hydro Pillar Processing

Labmetro Laboratório de Metrologia e Automatização

LabVIEW Laboratory Virtual Instrument Engineering Workbench

LED Light Emitting Diode

LP Líquido penetrante

NBV Next-best-view

SC Sistema de coordenadas

SCbase Sistema de coordenadas da base do robô

SCI Sistema de coordenadas da interface mecânica do robô

SCSTL Sistema de coordenadas do sensor de triangulação laser

SCV Sistema de coordenadas do vinco

STL Sensor de triangulação laser

TCP Transmission Control Protocol

UDP User Datagram Protocol

(18)

LISTA DE SÍMBOLOS

𝑀 Ponto no espaço tridimensional em coordenadas do objeto.

𝑚 Ponto no plano imagem em coordenadas da imagem.

(𝑢, 𝑣) Coordenadas de um ponto no plano imagem em coordenadas da imagem.

(𝑋, 𝑌, 𝑍) Coordenadas de um ponto no espaço tridimensional.

𝜃 Parâmetros intrínsecos e extrínsecos da câmera.

𝑓 Comprimento focal.

(𝑢0, 𝑣0) Coordenadas do ponto central da imagem em pixel.

𝑘𝑖 Parâmetros de distorção.

𝑘𝑢 Comprimento em mm do pixel do sensor.

𝑘𝑣 Largura em mm do pixel do sensor.

𝛼𝑢 Comprimento focal em pixel na direção 𝑢.

𝛼𝑣 Comprimento focal em pixel na direção 𝑣.

𝑀𝑃𝑃 Matriz de projeção perspectiva.

𝑚𝑖𝑗 Elementos da matriz de projeção perspectiva.

𝑑𝑖 Distância ao longo do eixo 𝑧𝑖−1 até a normal comum.

𝑎𝑖 Comprimento da normal comum. No caso de uma junta rotacional, este é o raio ao redor de 𝑧𝑖−1.

(19)

𝜃𝑖 Ângulo entre 𝑥𝑖−1 e 𝑥𝑖 em torno de 𝑧𝑖−1.

𝛼𝑖 Ângulo entre 𝑧𝑖−1 e 𝑧𝑖 em torno de 𝑥𝑖.

𝐴𝑖𝑖−1 Matriz homogênea que descreve a rotação e a posição do sistema de coordenadas 𝑖 em relação ao sistema de coordenadas 𝑖 − 1.

𝑅 Matriz de rotação 3x3.

𝑇 Vetor de translação 3x1.

𝑃𝑏𝑎𝑠𝑒 Nuvem de pontos expressada em relação ao sistema de coordenadas da base do

robô.

𝑃𝑆𝑇𝐿 Nuvem de pontos expressada em relação ao sistema de coordenadas do sensor.

𝐷𝑡 Vetor de direção da trinca.

𝐶𝑡 Centro da trinca correspondente ao plano laser central.

(20)
(21)

SUMÁRIO

1 INTRODUÇÃO ... 23

1.1 Apresentação do Problema e Motivação ... 23

1.2 Objetivos e Resultados Esperados... 25

1.3 Estrutura ... 25

2 REVISÃO BIBLIOGRÁFICA ... 27

2.1 Modelos Matemáticos e Calibração do Sistema de Medição ... 27

2.1.1 Sensor de Triangulação Laser ... 27

2.1.1.1 Modelo da Câmera ... 28

2.1.1.2 Modelo do Plano Laser ... 31

2.1.1.3 Calibração do STL ... 31

2.2 Robô Manipulador ... 33

2.3 Calibração Extrínseca do STL – Robô ... 35

2.4 Reconstrução Tridimensional Automática ... 40

3 DESCRIÇÃO DO SISTEMA DE MEDIÇÃO PROPOSTO... 45

3.1 Aplicações Pretendidas ... 45

3.2 Funções a Serem Atendidas pelo Sistema ... 46

3.3 Características Metrológicas ... 47

3.3.1 Sensor de Triangulação Laser ... 47

3.3.2 Robô Manipulador ... 48

3.4 Comunicação entre Robô e Computador ... 50

3.5 Caracterização da Trinca ... 54

3.6 Detecção de Trincas Sinalizadas ... 56

3.7 Seguimento de Trinca ... 59

3.8 Geração de Malha Tridimensional/Reconstrução da Superfície ... 65

3.9 Posicionamento da Ferramenta para Reparos ... 68

3.10 Discussão sobre a solução proposta... 69

4 VALIDAÇÃO EXPERIMENTAL ... 71

4.1 Fontes de Incerteza ... 71

4.2 Testes Preliminares do Sensor de Triangulação Laser ... 73

4.2.1 Calibração ... 73

4.2.2 Erro de Planeza ... 73

4.2.3 Resolução Experimental ... 75

(22)

4.2.5 Esfera ... 77 4.3 Testes Preliminares com Guia Linear Motorizada ... 79 4.4 Medições com Sensor Integrado ao Robô ... 81 4.4.1 Método de Análise dos Dados Experimentais ... 81 4.4.2 Plano com Trinca Simulada ... 81 4.4.3 Seção Externa de Tubo com Trinca Simulada... 82 4.4.4 Seção Externa de um Tubo de PVC com Trinca Simulada ... 83 4.5 Discussão ... 86

5 CONCLUSÕES... 89

5.1 Principais Resultados ... 89 5.2 Principais Limitações ... 90 5.3 Sugestões para Trabalhos Futuros ... 90

(23)

1 INTRODUÇÃO

1.1 APRESENTAÇÃO DO PROBLEMA E MOTIVAÇÃO

A grande aplicabilidade da reconstrução tridimensional a torna uma área bastante pesquisada, importante e promissora. Em várias situações no desenvolvimento de produtos, criar um modelo tridimensional (3D) a partir de um modelo físico é fundamental para inspeção e controle de qualidade. Muitas vezes o modelamento de uma peça é feito fisicamente em materiais como madeira ou resina. Nesse caso a digitalização é fundamental para que se tenha um modelo CAD do protótipo. Em outras situações, o produto é desenvolvido a partir de uma peça antiga, para a qual não se possui o modelo CAD ou desenho técnico. Assim, a reconstrução tridimensional de superfícies pode auxiliar no desenvolvimento do produto com aplicação de engenharia reversa, encurtando significativamente o tempo de desenvolvimento.

Para representar a correlação entre imagens e cenas 3D, utilizam-se conceitos da física e da matemática, tais como a óptica e a geometria projetiva. A partir desses conceitos são construídos os pilares da visão computacional [1]. A reconstrução 3D consiste na criação de uma superfície ou malha, a partir da interpolação de pontos amostrados (nuvem de pontos). As técnicas ópticas de medição possuem vantagens comparadas às técnicas mecânicas convencionais. A ausência de contato e a rapidez na medição de uma grande quantidade de pontos são vantagens atrativas na escolha do método de medição, além de apresentarem incerteza de medição que pode ser comparada a de sistemas convencionais por contato [2].

Sensores de triangulação laser (STL) são comumente utilizados na metrologia dimensional sem contato [3]. Esses sensores são capazes de obter coordenadas 3D a partir da projeção de padrões conhecidos sobre a superfície de interesse. São compostos basicamente por uma câmera e um emissor laser. Combinando informações da intersecção da luz do laser sobre a superfície a ser medida, com a matriz de projeção perspectiva da câmera, obtida durante a calibração do sensor, é possível reconstruir coordenadas 3D correspondentes aos pontos 2D na imagem obtida do laser pela câmera [4][5].

Frequentemente, a geração de modelos tridimensionais se dá por sistemas de escaneamento guiados manualmente ou por sistemas automáticos simples, os quais apresentam, no máximo, um ou dois graus de liberdade (como numa guia linear motorizada, por exemplo). Nos sistemas automáticos simples a aquisição de dados é feita seguindo um caminho pré-estabelecido e consequentemente, reconstroem somente parte do objeto ou ficam

(24)

24

restritos a objetos com geometria simples, sem áreas de oclusão em relação ao sensor. Em contraste, os sistemas de escaneamento guiados manualmente permitem reconstruir formas arbitrárias. Neste caso, o operador utiliza a visualização da parte escaneada anteriormente para completar o modelo iterativamente. Entretanto, essa pode ser uma tarefa muito maçante e demorada para um humano. Além disso, a integridade e qualidade do modelo 3D final pode depender da habilidade do operador. A integração de um STL a um robô industrial pode proporcionar a reconstrução completa de superfícies com forma livre, permitindo mais flexibilidade, velocidade e repetibilidade ao processo de medição [6].

Um manipulador com mecanismo paralelo redundante tipo hexaflex (Figura 1.1) foi desenvolvido em um projeto de pesquisa devido a uma demanda existente por soluções na montagem de componentes sob intensos esforços na construção de estruturas offshore [5][7]. Este manipulador permite realizar solda por atrito com pinos pelo processo Friction Hydro

Pillar Processing (FHPP). Um STL foi desenvolvido no Labmetro1 para atender a esta

aplicação específica. Seu design permite a medição da topologia da superfície de interesse sem a necessidade de remoção do sensor para a realização de reparos por soldagem. A Figura 1.2 mostra o sensor acoplado à ferramenta de inserção de pinos.

No processo de reparos de trinca por atrito é necessário que as cavidades e os pinos sejam alinhados corretamente para que se tenha uma qualidade satisfatória, o que traz a necessidade de automatização do processo a fim de garantir um bom nível de controle. Este trabalho visa contribuir no desenvolvimento de tal sistema e os objetivos são descritos na seção a seguir.

Figura 1.1 – Manipulador paralelo redundante Hexaflex.

(25)

Figura 1.2 – Sensor de triangulação laser acoplado à ferramenta do robô. 1.2 OBJETIVOS E RESULTADOS ESPERADOS

O objetivo geral deste trabalho é desenvolver e validar procedimentos para o escaneamento tridimensional de superfícies com formas livres, através do seguimento automático de trincas sinalizadas, utilizando um sensor de triangulação laser com característica dual (aquisição de imagens e pontos 3D) integrado a um robô industrial.

O objetivo geral será alcançado através da realização de objetivos específicos, cita-se os principais:

 Desenvolvimento da comunicação entre robô e computador;  Integração do STL a um robô industrial;

 Calibração intrínseca e extrínseca do STL;

 Processamento de imagens para detecção de trincas sinalizadas;

 Desenvolvimento de algoritmos para movimentação automática do robô pelo seguimento de trinca;

 Construção de modelo computacional da superfície medida;

 Cálculo da posição e orientação da ferramenta para realização de reparos/inserção de pinos;

 Ensaios em corpos de prova com trincas simuladas;  Avaliação metrológica dos resultados.

1.3 ESTRUTURA

(26)

26

1 Introdução. A contextualização, motivação e objetivos do trabalho são apresentados. 2 Revisão Bibliográfica. Este capítulo aborda temas ligados aos modelos matemáticos e a calibração do sistema de medição, apresenta também uma noção do problema de cinemática direta na robótica e ao final são apresentados aspectos de reconstrução tridimensional automática utilizando um sistema de visão computacional integrado a um mecanismo de posicionamento.

3 Descrição do Sistema de Medição Proposto. Neste capítulo discute-se as aplicações pretendidas, requisitos e funções a serem atendidas pelo sistema proposto. As características metrológicas, as técnicas e algoritmos desenvolvidos são apresentados. Ao final, alguns resultados preliminares são apresentados a fim de ilustrar as soluções de software e ainda, aspectos positivos e limitações são discutidos ao final do capítulo. 4 Validação Experimental. Este capítulo apresenta os resultados obtidos, incluindo as principais fontes de incerteza do sistema de medição integrado, os principais ensaios realizados para a validação das técnicas e algoritmos desenvolvidos e para levantamento dos erros de medição. Uma discussão sobre os resultados apresentados finaliza o capítulo.

5 Conclusões. As principais conclusões, uma compilação dos resultados e propostas para trabalhos futuros são discutidos e apresentados.

(27)

2 REVISÃO BIBLIOGRÁFICA

Este capítulo aborda temas ligados aos modelos matemáticos e a calibração do sistema de medição, apresenta também uma noção do problema de cinemática direta na robótica e ao final são apresentados aspectos de reconstrução tridimensional automática utilizando um sistema de visão computacional integrado a um mecanismo de posicionamento. 2.1 MODELOS MATEMÁTICOS E CALIBRAÇÃO DO SISTEMA DE MEDIÇÃO

Para que um STL integrado a um robô possa ser utilizado em medições, usualmente dois tipos de calibração devem ser realizados. Neste capítulo será feita uma breve discussão da técnica utilizada, focando nos pontos específicos que permitem a integração do STL com o robô.

2.1.1 Sensor de Triangulação Laser

Na triangulação laser, luz estruturada é projetada sobre o objeto a ser medido. O feixe e o plano de luz laser são as projeções mais usuais. No caso do feixe de luz a intersecção com a superfície forma a imagem de um ponto luminoso, o que permite obter informações unidimensionais do objeto, já que a posição do ponto na imagem depende somente da variação de profundidade. Projetando-se um plano de luz, tem-se no objeto uma linha ao invés de apenas um ponto, o que permite agora obter informações bidimensionais do objeto.

A Figura 2.1 mostra o princípio de medição para a projeção do tipo plano de luz perpendicular à superfície do objeto. A partir da imagem obtida é possível medir a altura e largura do mensurando representadas no esquema pelas coordenadas 𝑍 e 𝑌, respectivamente (𝑗 e 𝑖 na imagem). Para obter informações tridimensionais é preciso medir várias sessões do objeto, isso pode ser feito movimentando relativamente o sensor em relação ao mesurando [4][5].

(28)

28

Figura 2.1 – Princípio de medição por triangulação laser com plano de luz [4].

A modelagem matemática de um STL é feita de forma a descrever a relação entre a posição do plano de luz em [pixel] na imagem e a posição correspondente em [mm] no espaço objeto. Os parâmetros do modelo matemático podem ser determinados através de uma calibração. O modelo matemático do STL e sua calibração apresentados a seguir foram baseados em [3][5][8][9].

2.1.1.1 Modelo da Câmera

O modelo de câmera pinhole é o modelo dominante em visão computacional [2]. Este modelo de câmera define um mapeamento geométrico do mundo 3D para o plano da imagem 2D, conhecido como projeção perspectiva. Neste modelo um ponto 𝒎 = (𝑢, 𝑣)𝑇 na

imagem é obtido a partir de uma função não-linear do ponto 𝑴 = (𝑥, 𝑦, 𝑧)𝑇 no mundo 3D e

parâmetros intrínsecos e extrínsecos da câmera 𝜽 = (𝜽𝒊𝒏𝒕, 𝜽𝒆𝒙𝒕) [8]:

𝒎 = 𝑃(𝑴,𝜽) (2.1)

Apesar de existirem diversas abordagens para a consideração desses parâmetros, basicamente os parâmetros intrínsecos fazem referência à geometria e a óptica da câmera, como o comprimento focal 𝑓, coordenadas do ponto central da imagem em pixel 𝑢0 e 𝑣0, parâmetros de distorção 𝑘𝑖 de acordo com o modelo de distorção adotado. A geometria do

sensor de imagem envolve aspectos como o comprimento 𝑘𝑢 e largura 𝑘𝑣 do sensor definidos

como a relação do número de pixels por unidade de comprimento [mm]. Os parâmetros extrínsecos determinam a posição e a orientação da câmera em relação a um sistema de coordenadas global. O princípio de projeção perspectiva para câmera pode ser visto na Figura 2.2.

(29)

Figura 2.2 – Projeção perspectiva do modelo de câmera pinhole [8].

Da Figura 2.2, e assumindo um plano imagem virtual a uma distância 𝑓 positiva na coordenada 𝑍𝑐, é possível expressar as coordenadas de um ponto na imagem pela seguinte equação 𝑢(𝑝𝑖𝑥𝑒𝑙) = Xp(𝑚𝑚)𝑘𝑢(𝑝𝑖𝑥𝑒𝑙 𝑚𝑚 ) + 𝑢0(𝑝𝑖𝑥𝑒𝑙) 𝑣(𝑝𝑖𝑥𝑒𝑙) = Yp(𝑚𝑚)𝑘𝑣(𝑝𝑖𝑥𝑒𝑙 𝑚𝑚 ) + 𝑣0(𝑝𝑖𝑥𝑒𝑙) (2.2)

Expressando a equação acima na forma matricial, obtém-se

[𝑢𝑣] = [𝑘𝑢 0 0 𝑘𝑣 𝑢0 𝑣0] [ 𝑋𝑝 𝑌𝑝 1 ] (2.3)

Por semelhança de triângulo é possível a partir da Figura 2.2, obter a relação entre o sistema de coordenadas da imagem e o sistema de coordenadas da câmera a partir a seguinte equação [𝑋𝑝 𝑌𝑝] = [ 𝑓 0 0 𝑓] ∙ [ 𝑋𝑐 𝑍𝑐 𝑌𝑐 𝑍𝑐] (2.4)

Os parâmetros extrínsecos permitem o estabelecimento da relação geométrica entre o sistema de coordenadas da câmera e o sistema de coordenadas do mundo 3D através de uma matriz de transformação [ 𝑋𝑐 𝑌𝑐 𝑍𝑐 ] = [ 𝑟11 𝑟21 𝑟31 𝑟12 𝑟22 𝑟32 𝑟13 𝑟23 𝑟33 𝑡𝑥 𝑡𝑦 𝑡𝑧 ] ∙ [ 𝑋𝑊 𝑌𝑊 𝑍𝑊 1 ] (2.5)

Substituindo Xp e Yp indicados na equação (2.4) na equação (2.3), e levando em consideração αu= ku∙ f e αv= kv∙ f (comprimento focal em pixel nas direções u e v, respectivamente), é possível multiplicar ambos os termos da equação resultante por s, sendo s = Zc, obtem-se a seguinte equação

(30)

30 [ 𝑠 ∙ 𝑢 𝑠 ∙ 𝑣 𝑠 ] = [ 𝛼𝑢 0 𝑢0 0 𝛼𝑣 𝑣0 0 0 1 ] ∙ [ 𝑋𝑐 𝑌𝑐 𝑍𝑐 ] (2.6)

Substituindo as coordenadas do sistema de referência da câmera de acordo com a equação (2.5) na equação (2.6), a expressão (2.7) é obtida, onde MPP, é a matriz de projeção perspectiva cujos termos são combinação linear dos parâmetros intrínsecos e extrínsecos da câmera

[ 𝑠 ∙ 𝑢 𝑠 ∙ 𝑣 𝑠 ] = 𝑴𝑷𝑷 ∙ [ 𝑋𝑊 𝑌𝑊 𝑍𝑊 1 ] = [ 𝑚11 𝑚21 𝑚31 𝑚12 𝑚22 𝑚32 𝑚13 𝑚23 𝑚33 𝑚14 𝑚24 𝑚34 ] ∙ [ 𝑋𝑊 𝑌𝑊 𝑍𝑊 1 ] (2.7)

A equação (2.7) permite obter o ponto na imagem que corresponde ao ponto no espaço tridimensional. A matriz MPP não é inversível. Então, métodos que não envolvam inversão de matrizes precisam ser empregados. Desenvolvendo (2.7) explicitamente,

𝑠 ∙ 𝑢 = m11∙ 𝑋𝑊+ 𝑚12∙ 𝑌𝑊+ 𝑚13∙ 𝑍𝑊+ 𝑚14 (2.8)

𝑠 ∙ 𝑣 = m21∙ 𝑋𝑊+ 𝑚22∙ 𝑌𝑊+ 𝑚23∙ 𝑍𝑊+ 𝑚24 (2.9) 𝑠 = m31∙ 𝑋𝑊+ 𝑚32∙ 𝑌𝑊+ 𝑚33∙ 𝑍𝑊+ 𝑚34 (2.10)

tem-se três equações, mas somente duas são linearmente independentes. Fazendo-se (2.8) − (2.10) ∙ u e (2.9) − (2.10) ∙ v, tem-se as equações linearmente independentes

{−𝑚𝑚11∙ 𝑋𝑊+ 𝑚12∙ 𝑌𝑊+ 𝑚13∙ 𝑍𝑊− 𝑚31∙ 𝑢 ∙ 𝑋𝑊 32∙ 𝑢 ∙ 𝑌𝑊− 𝑚33∙ 𝑢 ∙ 𝑍𝑊− 𝑢 ∙ 𝑚34+ 𝑚14= 0}

{−𝑚𝑚21∙ 𝑋𝑊+ 𝑚22∙ 𝑌𝑊+ 𝑚23∙ 𝑍𝑊− 𝑚31∙ 𝑣 ∙ 𝑋𝑊 32∙ 𝑣 ∙ 𝑌𝑊− 𝑚33∙ 𝑣 ∙ 𝑍𝑊− 𝑣 ∙ 𝑚34+ 𝑚24 = 0}

(2.11)

A equação (2.11) representa a reta que liga o ponto no espaço tridimensional ao ponto na imagem, passando pelo centro de projeção. Como há três incógnitas e somente duas equações, infinitos pontos tridimensionais podem ser definidos sobre esta reta. Uma vez que o propósito é obter o ponto no espaço que corresponde ao ponto na imagem, mais informação é necessária. Essa informação pode ser obtida a partir da interseção da projeção com um plano, no caso, o plano laser, descrito a seguir.

(31)

2.1.1.2 Modelo do Plano Laser

Parte da informação 3D da forma do objeto é perdida na formação da imagem 2D pela câmera, logo não é possível reconstruir o objeto a partir de uma única imagem sem nenhuma informação adicional.

O plano matemático (equação (2.12)) definido pelo laser é a informação adicional necessária para determinar o ponto tridimensional de interesse:

𝐴 ∙ 𝑋𝑊+ 𝐵 ∙ 𝑌𝑊+ 𝐶 ∙ 𝑍𝑊+ 𝐷 = 0 (2.12)

Portanto, um ponto M tridimensional identificado na imagem como ponto 𝑚 obedece às equações do modelo de câmera apresentado e também pertence ao plano laser (Figura 2.3).

Figura 2.3 – Restrição imposta pelo plano laser na determinação do ponto 3D. Adaptado de [8]. Em outras palavras, a partir do ponto 𝑚 = (𝑢, 𝑣) na imagem, só existe um ponto 𝑀 = (𝑋𝑊, 𝑌𝑊, 𝑍𝑊) que pertence à reta que une 𝑚 ao centro de projeção 𝑂𝑐 (Figura 2.3) e à equação do plano, simultaneamente:

[ 𝑚11− 𝑚31∙ 𝑢 𝑚12− 𝑚32∙ 𝑢 𝑚13− 𝑚33∙ 𝑢 𝑚21− 𝑚31∙ 𝑣 𝑚22− 𝑚32∙ 𝑣 𝑚23− 𝑚33∙ 𝑣 𝐴 𝐵 𝐶 ] . [ 𝑋𝑊 𝑌𝑊 𝑍𝑊 ] = [ 𝑚34∙ 𝑢 − 𝑚14 𝑚34∙ 𝑣 − 𝑚24 −𝐷 ] (2.13) 2.1.1.3 Calibração do STL

A calibração do STL consiste na determinação dos parâmetros intrínsecos e extrínsecos da câmera e, por consequência, dos elementos mij da matriz de projeção

perspectiva de (2.7). Os coeficientes da equação do plano também são obtidos durante essa calibração.

Na referência [8] um padrão tridimensional foi utilizado para calibração do sensor. Em contraste, neste trabalho de mestrado um padrão plano (Figura 2.4a) foi utilizado para calibração do STL, devido à longa faixa de medição do sensor (50 mm em Z). Além de tornar

(32)

32

possível calibrar uma maior faixa de medição, esse tipo de padrão 2D tem menor custo e é mais fácil de fabricar em relação à um padrão 3D.

O padrão possui marcas calibradas nas direções 𝑋 e 𝑌 e deslocamentos conhecidos em 𝑍 são feitos com o auxílio de uma mesa micrométrica (Figura 2.4b).

(a) (b)

Figura 2.4 – a) Padrão utilizado na calibração. b) Sensor sob procedimento de calibração.

Os círculos pretos no centro do padrão definem o sistema de coordenadas do sensor (SCSTL), a origem e os eixos X e Y são definidos, o eixo Z é o vetor perpendicular à estas

direções. Uma transformação é feita no SCSTL de forma a fazer o plano YZ coincidente com

plano laser central, dessa forma, X é matematicamente perpendicular aos planos laser.

Para cada posicionamento da mesa, uma imagem do padrão (calibração dos parâmetros da câmera e laser) e outra imagem com a projeção das linhas laser (determinação dos planos matemáticos para cada um dos três planos laser projetados pelo sensor) são adquiridas. As variações em X e Y ao SCSTL são obtidas das distâncias entre os centros dos

círculos no padrão. As variações em Z são impostas por uma mesa micrométrica, portanto, conhecidas. Incrementos de 5 mm são feitos entre aquisições dentro da faixa de medição de 50 mm do sensor.

Portanto, da imagem da projeção das linhas laser no padrão, tem-se os pontos 𝒎 = (𝑢, 𝑣), além disso, a coordenada 𝑍𝑊 de 𝑴 = (𝑋𝑊, 𝑌𝑊, 𝑍𝑊) é conhecida para cada

posicionamento do padrão. Logo, da equação (2.11), calculam-se as demais incógnitas 𝑋𝑊 e 𝑌𝑊. Isso é feito para cada posicionamento do padrão e resulta nos pontos 3D dos planos laser como mostrado na Figura 2.5. A equação do plano matemático (2.12) para cada um dos planos é obtida, completando assim o levantamento dos parâmetros do modelo matemático do STL.

(33)

Figura 2.5 – Pontos 3D de cada plano laser do sensor para determinação dos parâmetros do modelo do plano laser.

A exatidão da medição depende de modelos matemáticos bem elaborados que considerem todas as imperfeições relevantes, assim como da correta interpretação da linha formada pela luz do laser sobre o objeto medido e sua detecção [4], como a linha laser capturada na imagem tem largura maior do que um único pixel, a detecção do centro da linha laser deve ser feita. O processamento e detecção dos centros dos círculos do padrão de calibração, assim como o processamento e detecção do centro da linha laser são importantes fontes de incertezas. Ainda pode-se citar a incerteza de posicionamento do padrão em Z, a trajetória das guias da mesa micrométrica, além da planeza do padrão utilizado na calibração. 2.2 ROBÔ MANIPULADOR

A fim de descrever a cinemática do robô, o modelo sugerido por Denavit-Hartenberg (D-H) será utilizado [10].

Um manipulador consiste basicamente numa sequência de elos ligados entre si por juntas. Para representar a posição e orientação da extremidade do manipulador com relação a um referencial inercial (normalmente a base do robô), inicialmente, é preciso definir sistemas de coordenadas para cada elo da cadeia cinemática. A representação de D-H consiste num método sistemático para atribuição de um referencial a cada elo da cadeia cinemática (a Figura 2.6 mostra um manipulador com todos os sistemas de coordenadas definidos, da base até o órgão terminal) por meio de quatro parâmetros geométricos: 𝑑𝑖, 𝑎𝑖, 𝜃𝑖, 𝛼𝑖. Os dois

primeiros são os comprimentos dos elos entre dois sistemas de coordenadas sucessivos, enquanto os outros dois são ângulos de rotação de um SC em relação ao outro. Através desses

(34)

34

quatro parâmetros independentes pode-se obter a relação geométrica entre um SC e o anterior. Essa relação é definida por uma matriz homogênea 4x4:

𝐴𝑖𝑖−1 = [𝑅𝑖 𝑇𝑖

0 1] ; 𝑋̅𝑖−1= 𝐴𝑖

𝑖−1. 𝑋̅

𝑖 (2.14)

onde 𝑅𝑖 é uma matriz de rotação 3x3 e 𝑇𝑖 é um vetor de translação 3x1.

Figura 2.6 – Manipulador com todos os sistemas de coordenadas definidos. Adaptado de [11].

Através de (2.14), um ponto conhecido no 𝑆𝐶𝑖 pode ser descrito no 𝑆𝐶𝑖−1. O uso de

matrizes homogêneas exige que o vetor 𝑋̅ de (2.14) tenha dimensão 4x1 (o ponto (𝑋, 𝑌, 𝑍) no SC correspondente mais um quarto componente igual a 1). Esse tipo de representação permite que ambas, rotação e translação, sejam representadas por uma única matriz, o que torna a formulação mais simples e compacta.

Uma matriz global para cada postura do robô dependendo dos parâmetros geométricos pode ser obtida a partir de transformações homogêneas consecutivas, partindo-se da base até o último sistema (interface mecânica ou efetuador final).

O modelo de D-H estabelece quatro transformações sucessivas a fim de relacionar o 𝑆𝐶𝑖 ao 𝑆𝐶𝑖−1. A primeira delas consiste em aplicar uma rotação 𝜃𝑖 no eixo 𝑧𝑖−1 a fim de

alinhar o eixo 𝑥𝑖−1 com o eixo 𝑥𝑖. A segunda consiste na translação de uma distância 𝑑𝑖 ao longo do eixo 𝑧𝑖−1 a fim de fazer 𝑥𝑖−1 e 𝑥𝑖 coincidirem. A terceira consiste na translação de uma distância 𝑎𝑖 ao longo do eixo 𝑥𝑖 a fim de fazer as origens dos eixos 𝑥 coincidirem. A

quarta transformação consiste em aplicar uma rotação 𝛼𝑖 no eixo 𝑥𝑖 a fim de fazer os sistemas de coordenadas coincidirem. Cada uma dessas transformações pode ser expressa por uma

(35)

matriz homogênea. O resultado dessas quatro transformações matriciais básicas é a matriz 𝐴𝑖𝑖−1. 𝐴𝑖𝑖−1= 𝑇𝑧,𝑑. 𝑅𝑧,𝜃. 𝑇𝑥,𝑎. 𝑅𝑥,𝛼 = [ 1 0 0 1 0 0 0 0 0 0 0 0 1 𝑑𝑖 0 1 ] . [ cos 𝜃𝑖 −sin 𝜃𝑖 sin 𝜃𝑖 cos 𝜃𝑖 0 0 0 0 0 0 0 0 1 0 0 1 ] . [ 1 0 0 1 0 𝑎𝑖 0 0 0 0 0 0 1 0 0 1 ] . [ 1 0 0 cos 𝛼𝑖 0 0 −sin 𝛼𝑖 0 0 sin 𝛼𝑖 0 0 cos 𝛼𝑖 0 0 1 ] ; 𝐴𝑖𝑖−1= [

cos 𝜃𝑖 −sin 𝜃𝑖. cos 𝛼𝑖

sin 𝜃𝑖 cos 𝜃𝑖. cos 𝛼𝑖

sin 𝜃𝑖. sin 𝛼𝑖 cos 𝜃𝑖. 𝑎𝑖

−cos 𝜃𝑖. sin 𝛼𝑖 sin 𝜃𝑖. 𝑎𝑖

0 sin 𝛼𝑖 0 0 cos 𝛼𝑖 𝑑𝑖 0 1 ] (2.15)

A matriz homogênea 𝐻𝑖0, que especifica a localização do i-ésimo SC em relação ao

sistema de coordenadas da base, resulta da multiplicação em cadeia da matriz de transformação 𝐴𝑖𝑖−1 (2.16):

𝐻𝑖0 = 𝐴10. 𝐴21. 𝐴32… 𝐴𝑖𝑖−1 (2.16)

E da mesma forma, um ponto 𝑋̅6 escrito no sistema de coordenadas da interface mecânica SC6 pode ser escrito do ponto de vista do SC0 (𝑋̅0) da seguinte forma

𝑋̅0 = 𝐻60. 𝑋̅6 (2.17)

Quando se trabalha com o controlador de um robô industrial esses aspectos são apresentados ao usuário num nível mais alto de abstração em termos de postura do robô. Daqui para frente o SC0, que corresponde ao sistema de coordenadas da base do robô, será

citado como SCbase, e o SC6, o qualcoincide com a interface mecânica do robô, será citado

como SCI.

2.3 CALIBRAÇÃO EXTRÍNSECA DO STL – ROBÔ

O ponto tridimensional (𝑋𝑊, 𝑌𝑊, 𝑍𝑊) obtido através de (2.13) está expressado no

sistema de coordenadas do STL (SCSTL), definido na calibração. Para a reconstrução completa

de uma superfície, são necessários diversos posicionamentos do sensor e, portanto, é necessário que os pontos 3D medidos a partir do SCSTL sejam transformados para um sistema

de referência fixo, por exemplo, o sistema de coordenadas da base do robô (SCbase).

A calibração extrínseca permite transformar o SCSTL para o sistema de coordenadas

(36)

36

permite transformar cada nuvem de pontos adquirida no SCSTL para o SCbase e desta maneira

representar a superfície de interesse a partir de diferentes posturas e aquisições do sensor. No entanto o SCSTL, intrinsecamente definido na calibração do sensor, é um SC

virtual e não pode ser apalpado por um sistema de medição. Desta forma, um SC auxiliar definido por uma peça especial (essa sim apalpada por um sistema de medição) pode ser utilizado para se determinar a transformação desejada.

Em essência, a técnica de calibração da matriz que transforma o SCSTL para o SCI

consiste basicamente em realizar a medição de um alvo especial contendo um vinco. É possível definir um sistema de coordenadas no vinco (SCV) com apenas uma aquisição com o

sensor de triangulação laser (Figura 2.7). Dessa forma, sabe-se a postura do vinco em relação ao SCSTL. Este mesmo sistema de coordenadas do vinco deve ser determinado a partir de um

braço de medição.

Figura 2.7 – Sistema de coordenadas do vinco definido através de medição com o STL.

Os elementos matemáticos para definição do SCV podem ser vistos na Figura 2.8. A

medição da postura da peça vinco pelo STL e pelo braço de medição segue procedimento matemático idêntico e está sintetizado abaixo (deve-se medir com o braço de medição regiões semelhantes àquelas medidas pelas linhas laser):

a. Medir pontos para definir plano Z (definido eixo Z); b. Medir pontos para definir plano 3 do vinco;

c. Medir pontos para definir plano 4 do vinco;

d. Construir reta Z3 (intersecção do Plano Z com o Plano 3); e. Construir reta Z4 (intersecção do Plano Z com o Plano 4);

(37)

f. Definir Origem: intersecção da reta Z3 com a reta Z4; g. Definir eixo X: bissetriz da reta Z3 com a reta Z4; h. Definir eixo Y: produto vetorial do eixo Z com eixo X

Figura 2.8 – Elementos para definição do SCV.

Na Figura 2.9 pode-se ver o ambiente e equipamentos utilizados durante uma calibração. O sistema de coordenadas do braço de medição deve estar alinhado ao SCI. A

relação entre os sistemas de coordenadas é mostrada na Figura 2.10.

(a) (b)

Figura 2.9 – a) Braço de medição utilizado para determinar 𝐴𝑉𝐼. b) Medição do vinco pelo STL para

(38)

38

Figura 2.10 – Relação entre sistema de coordenadas. Legenda: 𝐴21 é a matriz de transformação

homogênea que indica a postura do SC2 em relação ao SC1.

Na Figura 2.10 as setas verdes representam transformações conhecidas através de medição do vinco com o STL (𝐴𝑉𝑆𝑇𝐿) e com o braço de medição (𝐴

𝑉

𝐼). A seta vermelha

representa a transformação a ser determinada, ou seja, a transformação do sistema de coordenadas do sensor para o sistema de coordenadas da interface mecânica do robô. Da figura é possível estabelecer a seguinte relação entre as transformações homogêneas que indicam a relação entre os sistemas coordenados de interesse:

𝐴𝐼𝑉 = 𝐴𝑆𝑇𝐿𝐼 ∙ 𝐴𝑉𝑆𝑇𝐿 (2.18)

isolando a matriz à determinar, tem-se

𝐴𝑆𝑇𝐿𝐼 = 𝐴𝐼𝑉∙ (𝐴𝑉𝑆𝑇𝐿)−1 (2.19)

De posse da matriz 𝐴𝑆𝑇𝐿𝐼 é possível definir no controlador do robô, uma ferramenta

que corresponde ao STL. Dessa forma a posição e orientação do robô é dada com relação ao sistema de coordenadas da ferramenta criada, ou seja, tem-se 𝐴𝑆𝑇𝐿𝑏𝑎𝑠𝑒. A Figura 2.11 mostra um

robô manipulador e o sistema de coordenadas do sensor (SCSTL), da interface mecânica (SCI)

e da base do robô (SCbase). Note-se na Figura 2.11 que o SCSTL equivale à existência de um

(39)

Figura 2.11 - Robô manipulador e o sistema de coordenadas do STL (SCSTL), da interface mecânica

(SCI) e da base do robô (SCbase).

Assim, se uma determinada nuvem de pontos é expressada em relação ao SCSTL

(PSTL) e a relação entre este SC e o SCbase é conhecida (𝐴𝑆𝑇𝐿𝑏𝑎𝑠𝑒), expressa-se PSTL em relação ao

SCbase pela seguinte equação

𝑃𝑏𝑎𝑠𝑒 = (𝐴𝑏𝑎𝑠𝑒𝑆𝑇𝐿 ∙ (𝑃𝑆𝑇𝐿)𝑇)𝑇 (2.20) onde 𝑃𝑆𝑇𝐿 = [ 𝑋1𝑆𝑇𝐿 𝑌1𝑆𝑇𝐿 𝑋2𝑆𝑇𝐿 𝑌 2𝑆𝑇𝐿 𝑍1𝑆𝑇𝐿 1 𝑍2𝑆𝑇𝐿 1 ⋮ ⋮ 𝑋𝑛𝑆𝑇𝐿 𝑌𝑛𝑆𝑇𝐿 ⋮ ⋮ 𝑍𝑛𝑆𝑇𝐿 1] e 𝑃𝑏𝑎𝑠𝑒= [ 𝑋1𝑏𝑎𝑠𝑒 𝑌1𝑏𝑎𝑠𝑒 𝑋2𝑏𝑎𝑠𝑒 𝑌2𝑏𝑎𝑠𝑒 𝑍1𝑏𝑎𝑠𝑒 1 𝑍2𝑏𝑎𝑠𝑒 1 ⋮ ⋮ 𝑋𝑛𝑏𝑎𝑠𝑒 𝑌𝑛𝑏𝑎𝑠𝑒 ⋮ ⋮ 𝑍𝑛𝑏𝑎𝑠𝑒 1]

Dessa forma é possível concatenar as nuvens de pontos obtidas com o sensor em diferentes posturas do robô.

A partir deste ponto, uma superfície poderia ser escaneada pelo sistema integrado pelo robô e o STL, a partir da movimentação manual realizada por um operador do robô para as posturas de escaneamento até que se tenha um modelo completo da superfície de interesse. Entretanto, o que se pretende neste trabalho é que as posturas para o escaneamento da superfície sejam determinadas automaticamente, sem a necessidade de um operador. A seção a seguir apresenta alguns aspectos de reconstrução tridimensional automática presentes na literatura.

(40)

40

2.4 RECONSTRUÇÃO TRIDIMENSIONAL AUTOMÁTICA

Nesta seção será apresentada uma breve visão geral dos problemas envolvidos na reconstrução 3D automática de objetos. A superfície de interesse é analisada a fim de se determinar, a partir da aquisição atual, onde explorar na próxima aquisição, então o ponto de vista para observar a área correspondente é calculado e, por fim, o mecanismo de posicionamento move o sensor para a pose determinada.

Considere-se então que a reconstrução tridimensional automática compreenda três grandes blocos: (i) construção do modelo 3D - essencialmente lida com os aspectos de visão computacional; (ii) view planning (também chamado de next-best-view ou NBV) [6][12][13][14][15][16] - consiste em determinar as poses do sensor a partir das quais se farão as aquisições; (iii) movimentação do mecanismo de posicionamento do sensor para a pose desejada, o que traz aspectos de planejamento de trajetória [17].

Na Figura 2.12 o bloco (i) pode ser visto composto por duas fases principais: (a) scan e (b) integração. Uma aquisição (scan) é feita a partir da pose do sensor e os pontos 3D de cada aquisição são combinados (integração) em um único objeto. O ciclo 3D é iterado até que o modelo completo seja construído ou determinado critério seja satisfeito. Um exemplo disso é o caso de um scanner portátil manipulado por um operador humano, como o FastSCAN do Polhemus [18]. Nota-se que os passos (ii) e (iii) são realizados pelo operador, ou seja, não há automação. Para automatizar esse processo, os passos (ii) e (iii) são adicionados como visto na Figura 2.12.

Figura 2.12 - Blocos de um sistema de reconstrução 3D completamente autônomo (* representa os aspectos de planejamento de trajetória). Adaptado de [12].

O problema de NBV consiste em determinar a melhor pose do sensor para se realizar as aquisições. O propósito principal de um algoritmo de NBV é assegurar que toda a

(41)

superfície de um objeto será escaneada. A preferência é minimizar o número de aquisições feitas para reconstruir o objeto, uma vez que processar essas aquisições e integrá-las num único modelo, usualmente demandam significativo tempo de processamento devido ao alto esforço computacional. Este passo, obviamente, depende do mecanismo de posicionamento no qual o sensor é montado. A maioria dos trabalhos publicados são baseados em sistemas com mobilidade limitada o que permite modelos com qualidade e cobertura limitados a determinada classe de objetos [15][19][20][21][22]. Também assumem que o ponto de vista desejado é acessível. Para um sistema completamente autônomo há necessidade de um mecanismo com pelo menos seis graus de liberdade (6-DoF), como um robô manipulador. O desafio, contudo, é manter o NBV computacionalmente viável, já que o espaço de possíveis pontos de vista aumenta consideravelmente. Além disso, o planejamento da trajetória é necessário para movimentar o robô evitando colisões com obstáculos.

Um dos primeiros trabalhos de view planning foi o realizado em 1985 por [22]. Ele foi o primeiro a usar o termo next-best-view. Desde então muitos trabalhos foram realizados. Para resolver o problema de NBV é preciso determinar as áreas alvo no objeto a serem escaneadas, e suas direções de visualização correspondentes. O objetivo é identificar e escanear seções não vistas anteriormente. Os algoritmos de NBV podem ser divididos em duas categorias: métodos baseados em modelo, quando existe um modelo CAD do objeto disponível, e métodos não baseados em modelos, quando nenhum conhecimento prévio da forma do objeto está disponível. Estes últimos são divididos em duas categorias: baseados em elementos volumétricos [22][23][24] e baseados em elementos de superfície [19][25][20]. Se a área alvo for um elemento de superfície, a direção de visualização é geralmente calculada a partir de alguma análise na área alvo, como a estimativa da normal, por outro lado se a área alvo é um elemento volumétrico, a direção de visualização aponta para uma posição do sensor no espaço de pontos de vista, que geralmente tem 6DoF (depende do mecanismo de posicionamento). Uma boa revisão acerca dos diferentes métodos de view planning pode ser encontrada em [15]. É conveniente classificar os métodos existentes de view planning de acordo com forma com que o método lida com três espaços S, V, I. S é o espaço do objeto, embora ligado à geometria 3D da superfície, é passível de parametrização 2D. V é o espaço de posturas do sensor e depende do mecanismo de posicionamento. I é a região 3D capaz de ser visualizada pelo sensor em toda a faixa do sistema de posicionamento. A Figura 2.13 sintetiza as principais abordagens do problema de view planning não baseado em modelos. Os termos não foram traduzidos na figura com o intuito de facilitar a pesquisa dos termos originais, já

(42)

42

que grande parte da literatura acerca do tema é produzida em inglês. Alguns métodos combinam várias técnicas.

Figura 2.13 – Métodos tradicionais de view planning sem conhecimento prévio da forma do objeto [15].

Muitos autores descreveram o problema generalizado (6-DoF) na formulação teórica inicial de seus trabalhos. No entanto, poucos mantiveram a formulação no desenvolvimento dos algoritmos. Na maioria dos casos o problema foi restringido a 1 ou 2 DoF. Normalmente, o espaço de busca para próximas posturas é representado por pontos de vista amostrados sobre um cilindro [26] ou uma esfera [24][27]. Os pontos de vista são limitados por um stand-off fixo, de modo que o volume de medição do sensor envolva todo o objeto. Portanto, as visualizações sempre apontam para o centro do cilindro ou esfera, reduzindo o problema de 6 para 2 DoF. Essas abordagens não levam em consideração o fato importante de que o desempenho do sensor depende do stand-off. Além disso, essas abordagens não podem ser aplicadas a objetos, cujo tamanho excede o campo de visão da câmera.

Trabalhos que consideram o problema generalizado (6 DoF) esbaram no problema do tempo de processamento. Em [12] o tempo de espera entre dois scans é de vários minutos. Em [28] o tempo para escaneamento de um pequeno objeto (168mm x 168mm x 286mm) é superior a 19 horas.

Em outra linha, muitos trabalhos propuseram e implementaram planejamento de trajetória (path planning) baseados em STL para sistemas eye-in-hand (sensor posicionado no efetuador final do robô) em ambientes desconhecidos, porém não consideram a construção de modelo tridimensional e as restrições associadas, como sobreposição entre as poses do sensor

(43)

aspectos de view e path planning para um sistema de reconstrução 3D com 6-DoF completamente autônomo.

Os trabalhos referenciados contribuem para uma melhor compreensão do problema de view planning, todavia, carecem de uma base teórica abrangente. Grande parte dos trabalhos na área têm se baseado em uma variedade de técnicas heurísticas sem um alicerce teórico comum.

(44)
(45)

3 DESCRIÇÃO DO SISTEMA DE MEDIÇÃO PROPOSTO

Neste capítulo discute-se as aplicações pretendidas, requisitos e funções a serem atendidas pelo sistema proposto. As características metrológicas, as técnicas e algoritmos desenvolvidos são apresentados. Ao final, alguns resultados preliminares são apresentados a fim de ilustrar as soluções de software e ainda, aspectos positivos e limitações são discutidos ao final do capítulo.

3.1 APLICAÇÕES PRETENDIDAS

Na indústria existe grande preocupação quanto ao o número de paradas de um equipamento para manutenção, assim como o tempo de duração da parada. Técnicas que utilizam processos automatizados de medição para inspecionar superfícies de forma livre, buscam atender essa demanda. Para citar uma aplicação específica, destaca-se aqui o auxílio às técnicas de reparo de trincas por atrito.

O processo de reparo de trincas por atrito ou FHPP (Friction Hydro Pillar

Processing) consiste em realizar um furo cônico ou cilíndrico na região da trinca. Em seguida,

o furo é preenchido pela fusão com um pino também cônico ou cilíndrico. No processo, o pino é submetido a elevadas cargas axiais e elevada rotação, causando seu forjamento dentro do furo devido ao calor gerado pelo atrito [29][30][31]. A Figura 3.1 mostra o processo de reparo de trinca por atrito e processo de reparo por costura (Friction Stitch Welding) [32], que nada mais é que o próprio processo FHPP, executado de tal forma que o reparo se dê através de uma sequência de reparos ao longo de uma linha, reparando assim, todo o comprimento de uma trinca.

(a) (b)

(46)

46

Diferentemente dos processos a arco elétrico, a soldagem por fricção não é significativamente afetada pela pressão ambiente, uma vez que todo o processo ocorre em estado sólido [32]. Por esse motivo, a soldagem por fricção já tem sido empregada com sucesso no reparo e manutenção de estruturas e conexões nas indústrias offshore e naval a alguns anos. Ainda nos processos convencionais a arco, quando executados em baixo d’água, as moléculas de água se dissociam fazendo com que hidrogênio e oxigênio sejam absorvidos pela poça de fusão, o que pode levar a uma sensível redução na tenacidade do cordão de solda e a possibilidade de fissuração a frio. Sob este aspecto a soldagem por fricção pode levar vantagem na soldagem subaquática.

O STL utilizado nesse trabalho foi projetado no Labmetro para operar solidário a um sistema robótico que realizará as tarefas de abrir a cavidade à profundidade requerida, preenchê-la pelo processo de solda por atrito, remover a cabeça remanescente do consumível, fresar e dar acabamento à superfície e finalmente reposicionar o sistema para a próxima operação.

Atualmente, o alinhamento da ferramenta com normal da superfície para realização do processo de reparo por soldagem FHPP é realizado de forma visual pela movimentação do mecanismo robótico da Figura 1.1. Dessa forma, o requisito de alinhamento da ferramenta com a normal da superfície foi estimado em ± 1°. No processo de reparos de trinca por atrito é necessário que as cavidades e a inserção de pinos sejam alinhados corretamente para que se tenha uma qualidade satisfatória, o que traz a necessidade de automatização do processo a fim de garantir um bom nível de controle. Este trabalho visa contribuir no desenvolvimento de tal sistema.

3.2 FUNÇÕES A SEREM ATENDIDAS PELO SISTEMA

O sistema proposto incorpora diversas funções que visam possibilitar a medição automática de superfícies livres através do seguimento de trincas sinalizadas. Também permite determinar a posição e orientação da ferramenta para realização de reparos na trinca.

Desenvolveu-se um software integrado, de tal forma que todas as partes do processo de medição (calibração, aquisição de dados, processamento, comunicação com robô e visualização dos resultados) sejam executadas no mesmo ambiente de programação, o que traz maior facilidade de operação ao sistema, uma característica que torna o sistema flexível e compatível com a maioria das aplicações nas áreas de engenharia.

O software foi desenvolvido integralmente com o LabVIEW, uma linguagem de programação gráfica desenvolvida pela National Instruments. Os programas em LabVIEW

(47)

são chamados de instrumentos virtuais (VIs do inglês Virtual Instruments). Isto é assim porque, em princípio, cada programa (VI) pode ser executado como subprograma (subVI) por qualquer outro ou pode, simplesmente, ser executado separadamente. Múltiplos VIs podem ser utilizados para criar aplicações de grandes dimensões, de fato, grandes projetos podem ter centenas de VIs. Os principais campos de aplicação do LabVIEW são a realização de medições e a automação. A programação é feita de acordo com o modelo de fluxo de dados, o que traz vantagens para a aquisição de dados e sua manipulação. Por exemplo, processos paralelos podem ser criados com facilidade. Vale destacar que, para projetos de grande dimensão, é muito importante planejar a sua estrutura desde o início, antes de passar à realização dos VIs. Mais informações sobre técnicas de programação em LabVIEW nas referências [33][34].

3.3 CARACTERÍSTICAS METROLÓGICAS

Nas subseções abaixo descreve-se brevemente as principais especificações técnicas do sensor de triangulação laser e do robô industrial utilizados no trabalho.

3.3.1 Sensor de Triangulação Laser

O STL, visto na Figura 3.2, foi desenvolvido no Labmetro para atender a uma aplicação específica. Seu design permite a medição da topologia da superfície de interesse sem a necessidade de remoção do sensor para a realização de reparos por soldagem. Desta forma, a câmera e os LEDs podem ser utilizados para a inspeção e documentação do processo de inserção de pinos. A configuração óptica foi concebida de acordo com requisitos pré-estabelecidos, como faixa de medição de 50 mm em Z, utilizando uma câmera com resolução de 1280 x 960 pixels e uma lente com comprimento focal de 12 mm; comprimento da linha laser de aproximadamente 100 mm; projeção de três linhas com planos laser paralelos e com 15 mm de distância entre si; distância vertical de 180 mm do sensor à superfície e incerteza de medição em Z na ordem de ± 0,16 mm.

(48)

48

Figura 3.2 – Sensor de triangulação laser e peça que simula a ferramenta do robô.

Uma característica especial do sensor que deve ser enfatizada é a projeção de três linhas laser, o que permite, a partir de uma única aquisição, conhecer a posição e orientação da superfície e ainda, medir o triplo de pontos por aquisição.

Além disso, o sensor pode ser programado via software para adquirir imagens com a projeção laser para medição 3D e, adquirir imagens da superfície em tons de cinza para detecção dos pontos 3D pertencentes à trinca através da textura. Este procedimento será explicado em detalhes na seção 3.6.

3.3.2 Robô Manipulador

O robô utilizado no trabalho foi o IRB1600 [35] (Figura 3.3) produzido pela ABB, um robô do tipo serial com seis graus de liberdade. Tem capacidade de manusear uma carga de 6 kg e alcance de 1200 mm; sua repetibilidade de posição é ± 0,02 mm de acordo com a ISO 9283. O robô encontra-se nas instalações do INPetro (Instituto do Petróleo, Gás e Energia) no Sapiens Parque e conta com o controlador IRC5.

(49)

(a) (b)

Figura 3.3 – a) Robô IRB 1600 da ABB. b) Controlador IRC5 da ABB. (Obs.: as imagens não estão em escala)

Dentre as principais características do controlador IRC5 [36], citam-se:

 Segurança: a segurança do operador é um ponto importante no IRC5, cumprindo todas as regulações relevantes.

 O software utilizado para controle do robô possui uma estrutura orientada a objeto. Uma linguagem de programação de alto nível, conhecida como RAPID é utilizada [37].

 Comunicação: o IRC5 suporta a comunicação com computador (mais detalhes sobre a solução de comunicação aparecem mais à frente no texto).

Além disso a ABB conta com um software (RobotStudio) que permite a simulação e que a programação seja feita off-line. O RobotStudio é construído no VirtualController, que se trata de uma cópia exata do software real que roda em um robô na linha de produção. Isso permite que sejam realizadas simulações realistas através do uso de programação e arquivos de configuração idênticos aos utilizados no chão da oficina [38].

Isso permite programar o robô sem a necessidade do robô e controlador físicos, o que pode trazer benefícios, como a redução do risco de acidentes, a não necessidade de parada do robô real e o aumento da produtividade.

Referências

Documentos relacionados

Discussion The present results show that, like other conditions that change brain excitability, early environmental heat exposure also enhanced CSD propagation in adult rats.. The

Os Coordenadores Setoriais, enquanto professores, procuram dar o exemplo, mas deixam claro que encontram, no seu percurso como extensionistas, esse elemento dificultador;  O

c.4) Não ocorrerá o cancelamento do contrato de seguro cujo prêmio tenha sido pago a vista, mediante financiamento obtido junto a instituições financeiras, no

Os autores relatam a primeira ocorrência de Lymnaea columella (Say, 1817) no Estado de Goiás, ressaltando a importância da espécie como hospedeiro intermediário de vários parasitos

A Lei nº 2/2007 de 15 de janeiro, na alínea c) do Artigo 10º e Artigo 15º consagram que constitui receita do Município o produto da cobrança das taxas

Capítulo 7 – Novas contribuições para o conhecimento da composição química e atividade biológica de infusões, extratos e quassinóides obtidos de Picrolemma sprucei

No presente estudo, catorze animais (34,15%) apresentavam algum tipo de parentesco procedente de oito diferentes propriedades rurais (26,66%), ora relacionado à vaca, ora ao touro,

Atualmente os currículos em ensino de ciências sinalizam que os conteúdos difundidos em sala de aula devem proporcionar ao educando o desenvolvimento de competências e habilidades