Robotica Industrial

Robotica Industrial

(Parte 1 de 5)

Robótica Industrial

Apontamentos teóricos

Exercícios para aulas práticas Problemas de exame resolvidos

Vítor M. F. Santos

Departamento de Engenharia Mecânica

Universidade de Aveiro 2003-2004

1. INTRODUÇÃO1-2
1.1 ORIGEM DO TERMO 'ROBOT'1-2
1.2 ALGUMAS DEFINIÇÕES DE ROBOT E ROBÓTICA1-2
1.3 CLASSIFICAÇÃO DE ROBOTS1-3
1.3.1 Gerações (cronologicamente)1-3
1.3.2 Nível de inteligência do controlador (pela JIRSA)1-3
1.3.3 Nível de controlo dos programas no controlador1-3
1.3.4 Linguagem de programação1-3
1.4 ALGUNS MARCOS NA HISTÓRIA DA ROBÓTICA1-3
1.5 OS MANIPULADORES ROBÓTICOS1-4
1.5.1 Robótica fixa versus robótica móvel1-4
1.5.2 Elementos principais de um manipulador (ou robot industrial)1-4
1.6 O ROBOT E A AUTOMAÇÃO1-5
1.6.1 Tipos de automação1-5
1.6.2 Aplicações tradicionais dos manipuladores industriais1-6
1.7 IMPORTÂNCIA DO ROBOT INDUSTRIAL1-6
2. ESTRUTURA E TIPOLOGIA DE MANIPULADORES2-2
2.1 COMPONENTES2-2
2.1.1 Braço mecânico2-2
2.1.2 Ponta ou Garra (End-effector)2-2
2.1.3 Actuadores2-3
2.1.4 Sensores2-4
2.1.5 Controlador2-5
2.2 TIPOS DE JUNTAS2-6
2.2.1 Graus de liberdade e graus de mobilidade2-6
2.2.2 Representação e arranjo cinemático2-7
2.2.3 O braço humano2-7
2.3 ESPAÇO DE TRABALHO E TIPOS DE MANIPULADORES2-7
2.3.1 Cartesiano (P)2-8
2.3.2 Cilíndrico (RPP)2-8
2.3.3 Esférico (RRP)2-9
2.3.4 Articulado Horizontal - SCARA (RRP)2-9
2.3.5 Articulado vertical (antropomórfico) - R2-10
2.4 RESOLUÇÃO, REPETIBILIDADE, PRECISÃO2-10
3. SISTEMAS DE COORDENADAS3-2
3.1 NOÇÕES INTRODUTÓRIAS - REVISÕES3-2
3.1.1 Sistemas de eixos3-2
3.1.2 Vectores e Matrizes3-2
3.1.3 Pontos e referenciais3-6
3.2 TRANSFORMAÇÕES GEOMÉTRICAS ELEMENTARES3-7
3.2.1 Exemplos de transformações3-7
3.2.2 A notação matricial para representar transformações de um ponto a duas dimensões3-8
3.2.3 Matriz rotação para um caso geral3-1
3.2.4 Limitações da matriz de transformação para representar a translação3-12
3.3 COORDENADAS HOMOGÉNEAS3-12
3.3.1 Introdução de componentes adicionais na matriz de transformação3-12
3.3.2 Transformações compostas - produtos de matrizes de transformação3-13
3.4 MATRIZES DE TRANSFORMAÇÃO A 3 DIMENSÕES3-15
3.4.1 Generalização dos conceitos para 3 dimensões3-15
3.4.2 Componentes da matriz de transformação3-15
3.4.3 Interpretações do que significa a matriz de transformação3-16
3.4.4 Pós-multiplicação e pré-multiplicação de matrizes de transformação3-18
3.4.5 Transformações inversas3-19
3.4.6 Grafos e equações de transformação3-21
3.5.1 A componente de orientação numa transformação3-25
3.5.2 Formas de expressar a orientação3-26
4. CINEMÁTICA DIRECTA DE MANIPULADORES4-2
4.1 CINEMÁTICA DE UM MANIPULADOR4-2
4.1.1 Definição4-2
4.1.2 Espaço das juntas e espaço cartesiano4-2
4.1.3 O algoritmo da Cinemática Directa4-3
4.2 PARÂMETROS DE JUNTAS E ELOS4-3
4.2.1 Eixo de uma junta4-3
4.2.2 Os quatro parâmetros de elos e juntas4-4
4.2.3 Alguns exemplos de elos4-5
4.2.4 Os parâmetros cinemáticos variáveis4-8
4.2.5 Transformação i-1Ai associada a um elo4-9
4.3 ATRIBUIÇÃO DE SISTEMAS DE COORDENADAS4-10
4.3.1 Exemplos simples de sistemas de coordenadas4-10
4.3.2 Algoritmo de Denavit-Hartenberg4 -13
4.3.3 Representação de Denavit-Hartenberg para um PUMA de 6 DOF4-13
4.4 EXEMPLOS DE CONSTRUÇÃO DA CINEMÁTICA DIRECTA4-14
4.4.1 Um manipulador a 5 DOF (Microbot Alpha I)4-14
4.4.2 Um manipulador do tipo SCARA (4 DOF)4-16
4.5 ÂNGULOS FINAIS DE ORIENTAÇÃO EM FUNÇÃO DAS VARIÁVEIS DE JUNTA4-18
4.5.1 Comparação da matriz RPY(φ,θ,ψ) coma parte rotacional da matriz RTH4-18
4.5.2 Limitações de precisão e reformulação4-19
4.5.3 Exemplo de aplicação a um manipulador com 2 DOF em 3 dimensões4-21
5. CINEMÁTICA INVERSA5-2
5.1 O PROBLEMA5-2
5.1.1 Resolução para um manipulador R no plano5-2
5.1.2 Resolução para o manipulador R a 3D5-3
5.1.3 Métodos e condições de existência de soluções5-4
5.1.4 A redundância cinemática5-4
5.2 ALGORITMO PARA UMA HEURÍSTICA DE CINEMÁTICA INVERSA5-6
5.3 RECURSO A TRANSFORMAÇÕES INVERSAS E COMPARAÇÃO DOS ELEMENTOS MATRICIAIS5-7
5.4 SOLUÇÃO DE UMA EQUAÇÃO USUAL NO PROBLEMA DA CINEMÁTICA INVERSA5-8
5.5 ALGUMAS SOLUÇÕES ANALÍTICAS PADRÃO5-8
5.5.1 Robot planar de 3 elos5-9
5.5.2 Solução do braço antropomórfico a 3 DOF5-10
5.5.3 Solução do punho esférico5-12
5.5.4 Manipuladores com um punho esférico5-14
6. CINEMÁTICA DIFERENCIAL6-2
6.1 A PROBLEMÁTICA6-2
6.2 TRANSFORMAÇÕES DIFERENCIAIS6-2
6.2.1 Conceitos6-2
6.2.2 Metodologia de utilização6-3
6.2.3 Exemplo numérico6-4
6.3 O JACOBIANO DE UM MANIPULADOR6-5
6.3.1 Determinação do Jacobiano6-6
6.3.2 Jacobiano inverso6-7
6.3.3 Recurso à pseudo-inversa6-9
6.4 SINGULARIDADES6-9
7. INTRODUÇÃO AO PLANEAMENTO DE TRAJECTÓRIAS7-12
7.1 TIPOS DE MOVIMENTO7-12
7.2 ABORDAGENS PARA PLANEAMENTO DE TRAJECTÓRIAS7-12
7.3 PLANEAMENTO NAS JUNTAS7-13
7.3.1 Função para a continuidade da velocidade7-13
7.3.2 Planeamento nas juntas com pontos intermédios de passagem7-14
7.3.3 Alternativa a polinómios de ordem superior7-15
7.4.1 Princípios7-17
7.4.2 Problemas no planeamento do espaço operacional7-19
8. INTRODUÇÃO À VISÃO POR COMPUTADOR8-1
8. INTRODUÇÃO À VISÃO POR COMPUTADOR8-1
INTRODUÇÃO E GENERALIDADES8-2
GEOMETRIA DA FORMAÇÃO DE IMAGEM8-10

Definição e áreas da visão por computador A imagem digital Técnicas de iluminação

PROCESSAMENTO A BAIXO NÍVEL8-13

Transformação geométrica Calibração da câmara

ABORDAGEM A MÉDIO NÍVEL E MORFOLOGIA8-21

Relações entre os elementos de imagem (pixels) Ferramentas para processamento espacial de imagem: filtros e técnicas.

Operadores e operações morfológicas Segmentação

Enquadramento e objectivos da disciplina

A designação robótica industrial surge do estudo dos manipuladores robóticos que são usualmente conhecidos por robots industriais. A disciplina tem como principal objectivo o de dar formação sobre os princípios da manipulação robótica e a sua fundamentação matemática. Desse modo, não se aborda uma linguagem particular para a programação de robots industriais, mas espera-se que, no final, um aluno com aproveitamento e com conhecimentos rudimentares de programação, consiga aprender e compreender uma qualquer linguagem para programar manipuladores.

A disciplina enquadra-se no período final de uma licenciatura com afinidade à automação, e pressupõe bons conhecimentos de álgebra e das grandezas e conceitos de mecânica, bem como uma razoável capacidade de lidar com objectos no espaço a três dimensões.

Antes de entrar no ponto central do programa, que são a cinemática directa, inversa e diferencial, é dado um certo destaque a sistemas de coordenadas e transformações geométricas para permitir uma progressão mais sólida pelo programa dentro.

Em detrimento da estática e dinâmica de manipuladores, que se reconhece ser de importância muito relevante, nomeadamente para o controlo, projecto e concepção de braços robóticos, optou-se por fazer uma introdução à visão por computador pelo facto de tal área se apresentar como das mais importantes na robótica industrial actual. Igualmente consequência desse cuidado é a relativamente pequena dimensão da atenção dada ao planeamento de trajectória. Todavia, os fundamentos e métodos principais estão contemplados e assegurados.

Na componente prática os alunos trabalharão em MatLab que se revela uma ferramenta perfeitamente indicada para estas matérias onde a manipulação de vectores e matrizes é, a modo de dizer, obrigatória.

Bibliografia

Introduction to Robotics – P. McKerrow, Addison-Wesley, 1993. Robotics: Control, Sensing, Vision, and Intelligence – K. Fu, R. Gonzalez, C. Lee, McGraw-Hill, 1987. Modeling and Control of Robot Manipulators – L. Sciavicco, B. Siciliano, McGraw-Hill, 1996. Robot Manipulators: Mathematics, Programming, and Control – R. Paul, MIT Press, 1981. Introduction to Robotics: Mechanics and Control – J. Craig, Addison-Wesley, 1989. Fundamentals of Robotics: Analisys & Control – R. J. Schilling, Prentice-Hall, 1990. Industrial Robotics: Technology, Programming, and Applications – M. P. Grover et al., McGraw-Hill, 1986.

Mechanics and Control of Robots – K. Gupta, Springer Verlag, 1997. Industrial Robotics Handbook – V. Hunt, Industrial Press Inc., 1983.

Nota

Este documento não substitui a bibliografia. Trata-se de resumos, de carácter não totalmente completo e, por vezes, de densidade variável na abordagem dos diversos assuntos.

Capítulo 1 Introdução

Robótica Industrial – V. Santos

Introdução 1-2

1.1 Origem do termo 'robot'

Em português há o termo alternativo "robô". O termo eslavo Robota significa trabalhos forçados ou escravos, e teve a sua divulgação numa peça de 1921 de Karel Čapek.

Numa evolução do mito passando pelo sonho de Čapek (entre outros) até à ficção dos tempos correntes, o conceito de robot ou servo do homem tem ocupado a mentalidade do ser humano. Um exemplo contemporâneo dessa realidade foi dado pelo grande contributo de Isaac Asimov, que chegou a definir as Leis da Robótica por volta de 1950: 1ª Lei: Um robot não pode maltratar um ser humano, ou pela sua passividade deixar que um ser humano seja maltratado. 2ª Lei: Um robot deve obedecer às ordens dadas por um ser humano, excepto se entrarem em conflito com a 1ª lei. 3ª Lei: Um robot deve proteger a sua própria existência desde que essa protecção não entre em conflito com a 1ª ou 2ª lei.

1.2 Algumas definições de Robot e Robótica

Texto da FAQ comp.robotics

"Dispositivos electromecânicos pré-programáveis para execução de uma variedade de funções."

Dicionário Webster:

"Dispositivo automático que executa funções normalmente atribuídas a humanos ou uma máquina com a forma de um humano."

ESHED Robotics, 1984

"Um robot é um braço mecânico; um manipulador concebido para levar a cabo muitas tarefas diferentes, e capaz de ser programado sucessivamente. Para levar a cabo as tarefas atribuídas, o robot move componentes, objectos, ferramentas e outros dispositivos especiais por meio de movimentos e pontos pre-programados."

Em 1986, P. McKerrow propôs para robot a seguinte definição:

"Um robot é uma máquina que pode ser programada para fazer uma variedade de tarefas, do mesmo modo que um computador é um circuito electrónico que pode ser programado para fazer uma variedade de tarefas."

McKerrow

"Robótica é a disciplina que envolve: a) o projecto, construção, controlo e programação de robots; b) o uso de robots para resolver problemas; c) o estudo dos processos de controlo, sensores e algoritmos usados em humanos, animais e máquinas, e; d) a aplicação destes processos de controlo e destes algoritmos para o projecto de robots."

The Robot Institute of America

“Um robot é manipulador multi-funcional, programável, projectado para mover materiais, componentes, ferramentas ou dispositivos especiais através de movimentos programáveis variáveis para a execução de uma variedade de tarefas.”

Standard International ISO 8373:1994(E/F) :

“Manipulating industrial robot: Automatically controlled, reprogrammable multipurpose manipulator programmable in three or more axes, which may be either fixed to place or

Robótica Industrial – V. Santos

Introdução 1-3 mobile, of use in industrial automation applications. The robot includes - the manipulator - the control system (hardware and software)”

Usualmente o termo Robótica emprega-se para indicar a disciplina associada ao uso e programação de robots, e a expressão Engenharia Robótica é mais específico e refere-se à construção de robots e dispositivos robóticos.

Nem todos os sistemas automáticos são robots; os sistemas automáticos de funções fixas, como alguns brinquedos com mobilidade ou mesmo uma máquina de Comando Numérico não são consideradas robots. Para ter esse estatuto, deverá o dispositivo ter uma capacidade de programação e, mais ainda, de alguma adaptação ao problema prático. Claramente, um robot pressupõe um sistema que interage fisicamente pelo movimento de certas componentes mecânicas.

1.3 Classificação de robots

1.3.1 Gerações (cronologicamente)

1ª-Robots executores (playback) - repetem uma sequência de instruções pré-gravada como a pintura ou soldadura. 2ª-Robots controlados por sensores - possuem malhas fechadas de realimentação sensorial.

Tomam decisões com base nos sensores. 3ª-Robots controlados por visão - a malha fechada de controlo inclui um sistema de visão (imagem que é processada) 4ª-Robots com controlo adaptativo - o robot pode reprogramar as suas acções com base nos seus sensores. 5ª-Robots com inteligência artificial - usa técnicas de inteligência artificial para tomar as suas decisões e até resolver problemas.

Dispositivos manuais - operados por pessoas Robots de sequências fixas Robots de sequências variáveis - onde o operador pode mudar a sequência com facilidade. Robots executores (playback) - onde o operador humano guia o robot a executar uma tarefa fixa.

Robots controlados numericamente - o operador fornece apenas o programa do movimento, em vez de o ensinar manualmente Robots inteligentes - percebem e interagem com alterações no ambiente.

1.3.3 Nível de controlo dos programas no controlador

Inteligência artificial - instruções de alto nível que serão decompostas pelo sistema em funções de mais baixo nível.

Modo de controlo - os movimentos do sistema são modelizados incluindo as interacções dinâmicas entre os diferentes mecanismos. As trajectórias são planeadas à partida, bem como os pontos de contacto com os elementos a trabalhar (manipular). Deste modelo é formulada uma estratégia e os comandos de controlo são enviados para próximo nível mais baixo.

Servo-sistema - os actuadores controlam os parâmetros do dispositivo usando os dados sensoriais nas malhas de controlo.

1.3.4 Linguagem de programação

Sistema guiados - O operador indica os movimentos que o robot deve fazer Programação ao nível do robot - O utilizador escreve um programa a especificar as sequências de movimentos que o robot terá de executar.

Programação ao nível de tarefa - o programador especifica apenas as acções a tomar sobre os objectos que o robot manipulará.

1.4 Alguns marcos na história da robótica

1801 – J. Jacquard inventou um tear programável 1959 – Primeiro robot comercial introduzido pela Planet Corporation. Era controlado por finsde-curso e excêntricos

Robótica Industrial – V. Santos

Introdução 1-4

1960 – Primeiro robot “Unimate”. Princípios de controlo numérico e actuadores hidráulicos.

No ano seguinte foi instalado na Ford. 1968 – Um robot móvel desenvolvido no Stanford Research Institute: “Shakey”. Câmara de vídeo e sensores de contacto. 1971 – O braço de Stanford desenvolvido pela Universidade de Stanford com actuação eléctrica. 1973 – Primeira linguagem de programação de robots: WAVE seguida em 1974 pela linguagem AL. As duas deram lugar mais tarde ao aparecimento da VAL, linguagem comercial da Unimation 1978 – PUMA introduzido pela Unimation 1979 – SCARA desenvolvido na Univerisdade de Yamanashi com introdução comercial em 1981. 1981 – Robot com actuação directa (“direct drive”) desenvolvido na CMU 1983 – Projecto para uma linha flexível de montagem automatizada com o uso de robots. 1997 – A Honda anuncia o primeiro robot humanóide que sobe escadas.

1.5.1 Robótica fixa versus robótica móvel

As três categorias principais de robots são - Os manipuladores - robots industriais

- Os veículos auto-guiados (AGV)

- Os robots móveis

As principais diferenças entre estas categorias incidem nos seguintes pontos: - Conhecimento contínuo da posição (verdade nos braços),

- Aplicações distintas (manipulação e transporte),

- Necessidade de percepção do ambiente (crucial nos móveis),

- tipo de programação usada (normalmente mais exigente nos robot móveis).

1.5.2 Elementos principais de um manipulador (ou robot industrial)

O braço é a parte do manipulador que está normalmente associada ao posicionamento (x, y, z) no espaço físico cartesiano, ou operacional. O punho afecta essencialmente a orientação (θ,φ,ψ) da garra, pinça ou outros end-effector.

Todavia, é muito comum que haja efeitos cruzados – o braço afectar também a orientação e o punho afectar a posição cartesiana Estes componentes de um manipulador são constituídos por partes rígidas, os elos (links), ligadas entre si pelas juntas (joints)

Elo

Elo Junta

Figura 1.1 - Elos e junta de um manipulador

Unidade capaz de gerar informação de activação de um ou mais actuadores com base num algoritmo de controlo. Esse algoritmo pode levar em linha de conta o comando desejado, o estado corrente do actuador,

Robótica Industrial – V. Santos

Introdução 1-5 e o próprio ambiente. Os algoritmos mais comuns recorrem ao chamado controlo PID (proporcional-integraldiferencial).

Quando não existente em separado, o controlador chega a incluir a unidade de potência, ou seja, o elemento que liga directamente ao actuador fornecendo-lhe a energia que necessita com base numa informação de baixo teor energético, como são os sinais eléctricos à saída de muitos controladores.

Por vezes, o controlador faz parte de um sistema maior de interligação com o utilizador exterior, como é o caso de um computador pessoal. Nestes casos o controlador pode assumir a forma de uma carta de expansão do próprio computador, ou ser um dispositivo exterior que comunica com o computador de uma forma padrão, como por exemplo, uma ligação série RS232.

Esta integração num computador, devido ao abundante número de ferramentas de interface disponíveis, permite mais facilmente especificar os comandos desejados para o controlador, ou até de os gerar de forma automática, como fazem muitos programas (software).

Dispositivos que geram e impõem movimento a uma qualquer parte mecânica pelo desenvolvimento de forças e binários baseada num princípio físico de conversão de energia. Podem ser, por exemplo, motores eléctricos, cilindros hidráulicos, ou pneumáticos, electro-imanes, etc. Têm muitas vezes associados elementos adicionais de transmissão mecânica. Fazem a actuação

Elementos destinados à medição do estado interno do manipulador bem como à percepção do ambiente exterior. Principais tipos de sensores usados num manipulador: codificadores, fins-de-curso, sensores de força, detectores de proximidade capacitivos e indutivos, etc. Fazem a percepção.

Controlador (decide que medida de actuação deve ser imposta)

Unidade de potência (fornece energia ao actuador com base nas ordens do controlador)

Actuador (gera deslocamento linear ou rotacional)

Fonte de energia para os actuadores

Sensor

Comando desejado

Figura 1.2 - Um sistema de controlo tradicional

1.6.1 Tipos de automação A automação pode ser de dois tipos fundamentais: rígida e flexível (programada)

Robótica Industrial – V. Santos

Introdução 1-6

Figura 1.3 - Automação rígida Figura 1.4 - Automação flexível

Rígida – cada componente do sistema tem sempre a mesma função ou conjunto limitado de funções sem possibilidade de alteração de modo simples, obrigando à existência de vários componentes por vezes afins

Flexível- a multiplicidade de componentes da automação rígida é reduzida pelo introdução de um sistema mais versátil: caso dos manipuladores

1.6.2 Aplicações tradicionais dos manipuladores industriais

exemplos mais importantes de construtores e marcas são: ABB, KUKA , STAUBLI, ADEPT, PUMA,

As aplicações tradicionais mais importantes são as seguintes: manipulação de materiais, soldadura (spot welding), pintura a spray. Há muitos construtores de robots manipuladores no mundo actual: alguns

Pintura a spray

Soldadura a arco Acabamento - polimento de superfície

Figura 1.5 - Algumas aplicações industriais de manipuladores

1.7 Importância do robot industrial

O robot industrial vê a sua importância surgir a vários níveis: • Técnica: Vantagem e versatilidade

• Humana: Tarefas pesadas ou desagradáveis para humanos

• Económica: Um mesmo equipamento pode ter múltiplas funções e substituir vários equipamentos distintos.

Robótica Industrial – V. Santos

Introdução 1-7

A atestar a importância do robot industrial vêm os números expressos nos gráficos das figuras seguintes que mostram como o parque robótico mundial tem evoluído muito nos últimos 10 anos na indústria (Fonte: Revista Robótica 1999)

Figura 1.6 - Número de robots vendidos por ano e número estimado de robots industriais em serviço.

Figura 1.7 - Número de robots por 10 0 trabalhadores na indústria

Capítulo 2

Estrutura e Tipologia de Manipuladores

Robótica Industrial – V. Santos

Estrutura e Tipologia de Manipuladores 2-2

(Parte 1 de 5)

Comentários