191
Sara Manuela Eira Araújo Manipulação Bimanual em Robôs Antropomórficos: Movimentos Síncronos Sara Manuela Eira Araújo Outubro de 2014 UMinho | 2014 Manipulação Bimanual em Robôs Antropomórficos: Movimentos Síncronos Universidade do Minho Escola de Engenharia

Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

  • Upload
    vandieu

  • View
    217

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Sara Manuela Eira Araújo

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Sara

Man

uela

Eira

Ara

újo

Outubro de 2014UMin

ho |

201

4M

anip

ulaç

ão B

iman

ual e

m R

obôs

Antr

opom

órfic

os: M

ovim

ento

s Sí

ncro

nos

Universidade do MinhoEscola de Engenharia

Page 2: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs
Page 3: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Outubro de 2014

Dissertação de MestradoCiclo de Estudos Integrados Conducentes ao Grau deMestre em Eletrónica Industrial e Computadores

Trabalho efetuado sob a orientação deProfessora Doutora Estela Bicho

e sob co-orientação deDoutora Eliana Oliveira da Costa e Silva

Sara Manuela Eira Araújo

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Universidade do MinhoEscola de Engenharia

Page 4: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs
Page 5: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Agradecimentos

A realização desta dissertação de mestrado contou com grandes e importantes

contributos de várias pessoas, às quais ficarei eternamente grata.

Muito especialmente, gostaria de agradecer à minha orientadora, a Professora

Doutora Estela Bicho, por me ter dado a oportunidade de fazer este trabalho tão

aliciante e inovador e me ter proporcionado um ambiente de trabalho no laboratório

excecional. Agradeço-lhe, profundamente, por todo o apoio científico, acompanha-

mento e pela confiança que depositou em mim.

À Doutora Eliana Costa e Silva, pela co-orientação neste projeto e Professora

Doutora Fernanda Costa, o meu sincero agradecimento por todo o apoio científico

e pela colaboração na solução de dúvidas que surgiram ao longo da realização do

trabalho.

Desejo agradecer também a todos os investigadores do Laboratório de Robótica

Móvel e Antropomórfica, pela excelente receção e integração no seu grupo. Ao Luís,

Toni, Gianpaolo, Rui, Flora, Emanuel, Tiago, Carlos, Miguel, Carolina e Weronika, o

meu muito obrigada. Um redobrado obrigada ao Luís pela ajuda na integração com

o sistema de planeamento de movimento anteriormente desenvolvido. Ao Toni outro

redobrado obrigada pela sua boa vontade e disponibilidade em ajudar em qualquer

assunto e ao Gianpaolo, pois foi o meu parceiro de trabalho, foi juntamente com ele

que desenvolvi este projeto.

Não poderia deixar de agradecer a todos os colegas-alunos que se disponibilizaram

para realizar algumas experiências importantes para este trabalho.

A todos os meus amigos e familiares que ao longo do ano se preocuparam comigo

i

Page 6: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

e me encorajaram, o meu enorme agradecimento.

Por último, um especial e grande obrigada aos meus pais e irmãos pelo apoio

incondicional e amizade. Ao meu namorado, Daniel, o meu enorme obrigada por

toda a paciência a aturar os meus problemas, pelo carinho e apoio que me deu. A

eles dedico este trabalho e espero que esta etapa, que agora termino possa, de algum

modo, compensar e retribuir todo o apoio e carinho que me ofereceram.

ii

Page 7: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Resumo

Manipulação Bimanual em Robôs Antropomórficos: Movimentos Síncronos

Este trabalho de mestrado consistiu na continuidade do trabalho anteriormente

desenvolvido, que permitia à plataforma robótica ARoS desempenhar movimentos

unimanuais semelhantes aos dos realizados pelos humanos (Costa e Silva, 2011;

Araújo, 2013). Assim, o novo passo consistia em dotar este robô antropomórfico de

movimentos bimanuais e também semelhantes aos dos realizados pelos humanos. Por

isso, o modelo de controlo e planeamento de movimentos bimanuais, desenvolvido

neste trabalho, conta com factos observados em investigações experimentais com

humanos.

Essencialmente, o objetivo principal era gerar movimentos nos dois braços do

robô, que de certa forma, representassem a capacidade de coordenação e cooperação

dos dois braços humanos nas tarefas de manipulação bimanual de objetos. Como tal,

desenvolveu-se um modelo de planeamento de movimento bimanual, considerando

que para uma determinada tarefa de manipulação bimanual os dois braços começam

e acabam o seu movimento ao mesmo tempo, ou seja, movimentos síncronos. O

modelo de planeamento de movimento bimanual, de uma forma geral, consiste,

primeiramente, no cálculo das posturas finais de ambos os braços e só depois de

calculadas estas posturas é que se procede para o cálculo das trajetórias livres de

colisões para os dois braços e mãos.

O modelo de planeamento de movimento bimanual síncrono, desenvolvido neste

trabalho, foi validado a partir de duas tarefas de manipulação de objetos, onde o

iii

Page 8: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

robô desempenha uma sequência de movimentos bimanuais. Na primeira tarefa

este tem que agarrar duas colunas dispostas na mesa e inseri-las na base do toy-

vehicle, enquanto que na segunda as duas colunas encontram-se incorretamente

inseridas na base do toy-vehicle e o robô tem, assim, que corrigir a disposição das

colunas. Os movimentos desempenhados pelo robô nestas duas tarefas demonstram

um comportamento semelhante ao dos humanos, demonstram que este é capaz de

movimentar os seus braços-mãos sem que estes colidam um com o outro, nem com os

obstáculos presentes no cenário e que o algoritmo é capaz de calcular os movimentos

num tempo muito reduzido.

De forma a demonstrar que o ARoS é capaz de executar uma tarefa bem mais

complexa, desenvolveu-se um modelo que permite planear uma sequência de diferentes

movimentos, tanto unimanuais como bimanuais síncronos. Assim, projetou-se uma

terceira tarefa em que o robô tem que abrir uma garrafa térmica e entornar o seu

líquido para o interior de um copo. Nesta tarefa é possível verificar que o robô consegue

planear toda a sequência de movimentos, em que cada movimento é determinado

num curto espaço de tempo. Além do mais, a forma como o robô desempenha esta

tarefa é semelhante à forma como os humanos também a desempenhariam.

iv

Page 9: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Abstract

Bimanual Manipulation in Anthropomorphic Robots: Synchronous Movements

This master thesis consisted on the continuation of the work previously undertaken

that allowed the robotic platform to perform unimanual movements similar to

those realized by humans (Costa e Silva, 2011; Araújo, 2013). Thus, the next step

consisted on endowing this anthropomorphic robot ARoS with human-like bimanual

movements. Therefore, the model of control and planning bimanual movements,

developed in this work, relies on facts and regularities observed in experimental

investigations with humans.

Essentially the main goal was to generate movements in both robotic arms,

which somehow represented the ability of coordination and cooperation between the

two human arms in bimanual object manipulation tasks. As such, it was developed

a model for planning bimanual movement, considering that for a given bimanual

manipulation task the two arms begin and end their movement at the same time,

i.e., synchronous movements. The bimanual movement planning model in a general

way consists, first, in the calculation of the two final arms postures and then, once

these postures have been computed, we proceed with the generation of collision free

trajectories for the two arms and hands.

The synchronous bimanual movement planning model, developed in this work,

was validated based on two object manipulation tasks, where the robot performs

a sequence of bimanual movements. In the first task the robot has to grasp two

columns disposed on the table and insert them in the toy-vehicle base, while in the

v

Page 10: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

second task the two columns are incorrectly inserted at the base of toy-vehicle and

the robot has to correct the disposition of the columns. The movements performed

by the robot in these two tasks showed a behaviour similar to the humans’ one,

showed that the robot is able to move its arms and hands without them colliding

with each other neither with the obstacles in the environment and that the algorithm

is capable of calculating the movements in a very short time.

In order to demonstrate that ARoS is able to perform a more complex task, we

developed a model that allows to plan a sequence of different movements: unimanual

and bimanual synchronous movements. Thus, it was projected a third task in which

the robot had to open a thermos bottle and pour the liquid into a glass. In this

task it was possible to check that the robot is able to plan the entire sequence of

movements, where each movement is calculated in a short time. Furthermore, the

way that the robot performs this task is similar to the way that humans also would

perform.

vi

Page 11: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Conteúdo

1 Introdução 1

1.1 Motivações Gerais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.1.1 A Evolução dos Robôs . . . . . . . . . . . . . . . . . . . . . . 2

1.1.2 Porquê Robôs Antropomórficos? . . . . . . . . . . . . . . . . 6

1.1.3 Manipulação Bimanual . . . . . . . . . . . . . . . . . . . . . . 8

1.2 Enquadramento e Objetivos . . . . . . . . . . . . . . . . . . . . . . . 11

1.2.1 Ponto de Partida . . . . . . . . . . . . . . . . . . . . . . . . . 11

1.2.2 De Movimentos Assíncronos para Síncronos . . . . . . . . . . 16

1.3 Estrutura da Dissertação . . . . . . . . . . . . . . . . . . . . . . . . . 17

2 Estado da Arte 19

2.1 Classificação de Tarefas Bimanuais . . . . . . . . . . . . . . . . . . . 19

2.2 Manipulação Bimanual na Robótica . . . . . . . . . . . . . . . . . . 22

2.2.1 Métodos de Planeamento de Movimentos Bimanuais . . . . . 25

2.2.1.1 Método Probabilístico RRT . . . . . . . . . . . . . . 25

2.2.1.2 Método Baseado em Comportamentos . . . . . . . . 28

2.2.1.3 Programação por Demonstração . . . . . . . . . . . 29

2.2.1.4 Método Baseado em Sistemas Dinâmicos e Campos

de Força . . . . . . . . . . . . . . . . . . . . . . . . 32

2.3 Manipulação Bimanual nos Humanos . . . . . . . . . . . . . . . . . . 34

2.3.1 Caraterísticas do Braço Humano . . . . . . . . . . . . . . . . 35

2.3.1.1 Cinemática do Braço . . . . . . . . . . . . . . . . . 36

vii

Page 12: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

2.3.1.2 Caraterísticas da Mão . . . . . . . . . . . . . . . . . 39

2.3.2 Controlo Motor Humano . . . . . . . . . . . . . . . . . . . . . 43

2.3.2.1 Caraterísticas dos Movimentos do Braço . . . . . . 45

2.3.2.2 “End-State Comfort Effect” em Tarefas Bimanuais . 47

2.3.2.3 Coordenação Motora dos Braços . . . . . . . . . . . 49

3 Plataforma Robótica ARoS 53

3.1 Construção e Caraterísticas . . . . . . . . . . . . . . . . . . . . . . . 53

3.1.1 Disposição dos Braços . . . . . . . . . . . . . . . . . . . . . . 55

3.2 Cinemática dos Braços Robóticos . . . . . . . . . . . . . . . . . . . . 57

3.2.1 Cinemática Direta do Braço Direito . . . . . . . . . . . . . . 59

3.2.2 Cinemática Inversa do Braço Direito . . . . . . . . . . . . . . 64

3.2.2.1 1o Passo: Determinar a posição e orientação do pulso 65

3.2.2.2 2o Passo: Calcular θ4 . . . . . . . . . . . . . . . . . 65

3.2.2.3 3o Passo: Determinar a posição e orientação do coto-

velo a partir de α . . . . . . . . . . . . . . . . . . . 66

3.2.2.4 4o Passo: Determinar θ1, θ2 e θ3 . . . . . . . . . . . 67

3.2.2.5 5o Passo: Determinar θ5, θ6 e θ7 . . . . . . . . . . . 68

3.2.3 Cinemática Direta do Braço Esquerdo . . . . . . . . . . . . . 69

3.2.4 Cinemática Inversa do Braço Esquerdo . . . . . . . . . . . . . 74

3.3 Mãos Robóticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

3.3.1 Cinemática Direta da Mão . . . . . . . . . . . . . . . . . . . 75

3.3.2 Cinemática Inversa da Mão . . . . . . . . . . . . . . . . . . . 77

4 Planeamento de Movimento Bimanual Síncrono 79

4.1 Visão Geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

4.2 Seleção das Posturas Finais . . . . . . . . . . . . . . . . . . . . . . . 83

4.2.1 Tipos de Grip . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

4.2.2 Postura Final das Mãos . . . . . . . . . . . . . . . . . . . . . 87

4.2.3 Postura Final dos Braços . . . . . . . . . . . . . . . . . . . . 89

4.3 Seleção das Trajetórias . . . . . . . . . . . . . . . . . . . . . . . . . . 92

viii

Page 13: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

4.3.1 Movimento Direto . . . . . . . . . . . . . . . . . . . . . . . . 92

4.3.2 Movimento de Back-and-Forth . . . . . . . . . . . . . . . . . 93

4.3.2.1 Seleção da Postura de Bounce . . . . . . . . . . . . 94

4.4 Tempo Total do Movimento . . . . . . . . . . . . . . . . . . . . . . . 96

4.5 Implementação do Software de Otimização . . . . . . . . . . . . . . . 97

4.5.1 Modelação do Corpo do ARoS e Obstáculos . . . . . . . . . . 97

4.5.2 Problemas de Otimização . . . . . . . . . . . . . . . . . . . . 99

4.5.3 Software de Otimização . . . . . . . . . . . . . . . . . . . . . 101

5 Sistema Geral de Planeamento de Movimentos 103

5.1 Software de Planeamento de Movimento . . . . . . . . . . . . . . . . 103

5.2 Simulador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

6 Validação do Modelo de Planeamento de Movimento Bimanual Sín-

crono 109

6.1 Tarefa 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

6.1.1 Implementação da Tarefa em Software . . . . . . . . . . . . . 111

6.1.1.1 Criação do Cenário em Simulador . . . . . . . . . . 111

6.1.1.2 Formulação dos Movimentos . . . . . . . . . . . . . 111

6.1.1.3 Tipos de Grip . . . . . . . . . . . . . . . . . . . . . 114

6.1.2 Desempenho do Planeamento da Tarefa - Resultados . . . . . 115

6.1.3 Comparação com o Desempenho Humano . . . . . . . . . . . 119

6.2 Tarefa 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

6.2.1 Implementação da Tarefa em Software . . . . . . . . . . . . . 121

6.2.1.1 Criação do Cenário em Simulador . . . . . . . . . . 121

6.2.1.2 Formulação dos Movimentos . . . . . . . . . . . . . 122

6.2.1.3 Tipos de Grip . . . . . . . . . . . . . . . . . . . . . 125

6.2.2 Desempenho do Planeamento da Tarefa - Resultados . . . . . 126

6.2.3 Comparação com o Desempenho Humano . . . . . . . . . . . 130

6.3 Conclusões Gerais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

ix

Page 14: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

7 Validação do Modelo de Planeamento de Movimentos Bimanuais e

Unimanuais 135

7.1 Definição da Tarefa 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

7.1.1 Sequência e Coordenação dos Movimentos . . . . . . . . . . . 136

7.2 Implementação da Tarefa em Software . . . . . . . . . . . . . . . . . 138

7.2.1 Criação do Cenário em Simulador . . . . . . . . . . . . . . . 138

7.2.2 Formulação dos Movimentos . . . . . . . . . . . . . . . . . . 139

7.2.3 Tipos de Grip . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

7.3 Desempenho do Planeamento da Tarefa . . . . . . . . . . . . . . . . 146

7.4 Conclusões . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

8 Conclusões e Trabalho Futuro 153

8.1 Conclusões . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153

8.2 Relevância Científica . . . . . . . . . . . . . . . . . . . . . . . . . . . 156

8.3 Trabalho Futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157

Bibliografia 159

x

Page 15: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Lista de Abreviaturas

Abreviatura Descrição

ARoS Anthropomorphic Robotic System - Plataforma robótica

antropomórfica da Universidade

DOF Degree Of Freedom - Grau de Liberdade

IK Inverse Kinematics - Cinemática Inversa

PMG Programa Motor Generalizado

RRT Rapidly-exploring Random Trees

SNC Sistema Nervoso Central

xi

Page 16: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs
Page 17: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Lista de Figuras

1.1 Robô humanóide MM47 . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2 WABOT-1, WABOT-2 e ASIMO(2000) . . . . . . . . . . . . . . . . 4

1.3 Exemplos de robôs antropomórficos . . . . . . . . . . . . . . . . . . . 6

1.4 “Uncanny Valley” de Mashiro Mori . . . . . . . . . . . . . . . . . . . 8

1.5 Exemplos de manipulação bimanual de objetos . . . . . . . . . . . . 10

1.6 Robô antropomórfico ARoS . . . . . . . . . . . . . . . . . . . . . . 12

1.7 Tipos de grip: ponto de partida . . . . . . . . . . . . . . . . . . . . . 14

1.8 Fluxograma do planeamento de movimento: ponto de partida . . . . 15

2.1 Classificação de movimentos bimanuais humanos . . . . . . . . . . . 20

2.2 Exemplos de diferentes configurações robóticas bimanuais . . . . . . 24

2.3 Visão geral do processo de planeamento bimanual - Grasp-RRT . . . 27

2.4 Modelo baseado no comportamento . . . . . . . . . . . . . . . . . . . 28

2.5 Esquema do ciclo de programação por demonstração . . . . . . . . . 30

2.6 Sequência das posturas chave referentes à tarefa do chá . . . . . . . 32

2.7 Metáfora da marioneta ao modelo Passive Motion Paradigm . . . . . 33

2.8 Modelo anatómico padrão dos planos imaginários do corpo humano . 35

2.9 Movimentos gerais do braço humano . . . . . . . . . . . . . . . . . . 37

2.10 Representação da cinemática do braço humano . . . . . . . . . . . . 38

2.11 Um objeto-alvo pode ser agarrado com múltiplas configurações do braço 38

2.12 Taxonomia referente às diferentes configurações de manipulação da

mão humana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

xiii

Page 18: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

2.13 Taxonomia para tarefas de manipulação da mão humana . . . . . . . 42

2.14 Perfil bell-shaped da velocidade tangencial da mão . . . . . . . . . . 45

2.15 Posture-Based Motion Planning Model . . . . . . . . . . . . . . . . . 46

2.16 Conceito do programa motor generalizado para a coordenação bimanual 50

2.17 Intermanual crosstalk model . . . . . . . . . . . . . . . . . . . . . . . 50

3.1 Representação da plataforma robótica ARoS . . . . . . . . . . . . . 54

3.2 Braços robóticos do ARoS . . . . . . . . . . . . . . . . . . . . . . . 54

3.3 Referencial de origem do mundo para o ARoS . . . . . . . . . . . . 55

3.4 Esquemático para a razão da disposição do braço esquerdo . . . . . . 56

3.5 Cinemática direta e inversa . . . . . . . . . . . . . . . . . . . . . . . 58

3.6 Braço robótico direito na posição zero e respetivos referenciais atribuídos 59

3.7 Referenciais da mão direita e do objeto-alvo . . . . . . . . . . . . . . 63

3.8 Braço robótico do ARoS e a sua redundância . . . . . . . . . . . . . 64

3.9 Representação trigonométrica para o cálculo de θ4 . . . . . . . . . . 66

3.10 Referencial para caraterizar a redundância do braço. . . . . . . . . . 66

3.11 Braço robótico esquerdo na posição zero e respetivos eixos coordenados 70

3.12 Referenciais da mão esquerda e do objeto-alvo . . . . . . . . . . . . . 73

3.13 Rotação ao longo do eixo x . . . . . . . . . . . . . . . . . . . . . . . 74

3.14 Caraterísticas das mãos robóticas do ARoS . . . . . . . . . . . . . . 75

3.15 Representação das juntas da mão robótica . . . . . . . . . . . . . . . 76

4.1 Fluxograma do processo de planeamento de movimento bimanual

síncrono . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

4.2 Classificação dos modos de manipulação de objetos com em taxonomias 86

4.3 Tipos de grip de precisão e força . . . . . . . . . . . . . . . . . . . . 87

4.4 Demonstração da relação entre as distâncias dHO e dFH em dois tipos

de grip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

4.5 Relação entre a orientação da mão e do objeto-alvo . . . . . . . . . . 90

4.6 Representação do corpo do ARoS com as suas esferas e cilindro . . . 98

4.7 Representação de alguns obstáculos em elipsoides . . . . . . . . . . . 98

xiv

Page 19: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

5.1 Fluxograma do processo de planeamento de movimentos para uma

determinada tarefa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

5.2 Fluxograma do processo de resolução dos problemas de otimização

não-lineares Pa e Pb. . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

5.3 Simulador do ARoS . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

5.4 Ilustração da semelhança do objeto real e do objeto em simulador . . 107

6.1 Demonstração do cenário para a Tarefa 1 . . . . . . . . . . . . . . . 110

6.2 Ilustração do cenário em simulador da Tarefa 1 . . . . . . . . . . . . 111

6.3 Sequência de movimentos bimanuais planeados para a Tarefa 1 . . . 112

6.4 Demonstração da orientação das mãos com os seus objetos-alvo para

a Tarefa 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

6.5 Representação da sequência e caraterísticas dos movimentos da Tarefa

1 obtidos no simulador do ARoS . . . . . . . . . . . . . . . . . . . . 116

6.6 Modelação dos braços robóticos para a Tarefa 1 . . . . . . . . . . . . 117

6.7 Comparação das posturas dos humanos vs. do robô ARoS na Tarefa 1 119

6.8 Demonstração do cenário para a Tarefa 2 . . . . . . . . . . . . . . . 120

6.9 Ilustração do cenário em simulador da Tarefa 2 . . . . . . . . . . . . 121

6.10 Sequência de movimentos bimanuais planeados para a Tarefa 2 . . . 122

6.11 Demonstração da orientação das mãos com os seus objetos-alvo para

a Tarefa 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

6.12 Representação da sequência e caraterísticas dos movimentos da Tarefa

2 obtidos no simulador do ARoS . . . . . . . . . . . . . . . . . . . . 127

6.13 Modelação dos braços robóticos para a Tarefa 2 . . . . . . . . . . . . 128

6.14 Versão 1 do comportamento humano para a realização da Tarefa 2 . 131

6.15 Versão 2 do comportamento humano para a realização da Tarefa 2 . 131

6.16 Demonstração da execução real da Tarefa 2 pelo ARoS . . . . . . . . 132

7.1 Demonstração de robôs capazes de desempenhar tarefas humanas . . 136

7.2 Ilustração do cenário em simulador da Tarefa 3 . . . . . . . . . . . . 139

7.3 Sequência de movimentos planeados para a Tarefa 3 . . . . . . . . . 140

xv

Page 20: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

7.4 Demonstração da orientação das mãos com os seus objetos-alvo para

a Tarefa 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

7.5 Representação da sequência e caraterísticas dos movimentos da Tarefa

3, obtidos no simulador do ARoS . . . . . . . . . . . . . . . . . . . . 151

xvi

Page 21: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Lista de Tabelas

2.1 Resultados do desempenho do método de planeamento IK-RRT . . . 26

3.1 Dimensões do braço robótico do ARoS . . . . . . . . . . . . . . . . 55

3.2 Limites das sete juntas do braço direito e esquerdo . . . . . . . . . . 57

3.3 Parâmetros de Denavit-Hartenberg para o braço direito de 7-DOFs . 60

3.4 Parâmetros de Denavit-Hartenberg para o braço esquerdo de 7-DOFs 71

3.5 Dimensões da mão robótica e outros parâmetros . . . . . . . . . . . 75

3.6 Parâmetros de Denavit-Hartenberg para cada dedo k da mão robótica 76

4.1 Tipos de grip que o sistema de planeamento de movimento reconhece 87

6.1 Formulação dos movimentos que compõem a Tarefa 1 . . . . . . . . 114

6.2 Descrição dos tipos de grip da Tarefa 1 . . . . . . . . . . . . . . . . . 115

6.3 Valores dos parâmetros envolvidos nos problemas de otimização da

Tarefa 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

6.4 Resultados numéricos para os problemas de otimização Pa e Pb da

Tarefa 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

6.5 Formulação dos movimentos que compõem a Tarefa 2 . . . . . . . . 125

6.6 Descrição dos tipos de grip da Tarefa 2 . . . . . . . . . . . . . . . . . 126

6.7 Valores dos parâmetros envolvidos nos problemas de otimização da

Tarefa 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

6.8 Resultados numéricos para os problemas de otimização Pa e Pb da

Tarefa 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

xvii

Page 22: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

7.1 Formulação dos movimentos que compõem a Tarefa 3 . . . . . . . . 145

7.2 Descrição dos tipos de grip da Tarefa 3 . . . . . . . . . . . . . . . . . 147

7.3 Formulação dos parâmetros dos problemas de otimização da Tarefa 3 148

7.4 Resultados numéricos para os problemas de otimização Pa e Pb da

Tarefa 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

xviii

Page 23: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1

Introdução

A robótica antropomórfica é uma área em forte crescimento. Os sistemas robóticos

deixaram de ser preferencialmente utilizados nas indústrias e estão a adotar novas

aplicações, nomeadamente, para a assistência a humanos. Assim sendo, um grande

interesse no desenvolvimento de robôs autónomos e capazes de colaborar com humanos

em tarefas partilhadas, que envolvam a manipulação de objetos tem vindo a crescer.

De acordo com alguns investigadores, por exemplo Fukuda et al. (2001), Breazeal

(2003), Duffy (2003), Schaal (2007), o aspeto antropomórfico do robô e os movimentos

semelhantes aos dos humanos são duas características fundamentais para promover a

interação entre o humano e o robô. A interpretação dos movimentos pelo humano

é facilitada e o facto do robô apresentar uma forma antropomórfica permite a este

tirar vantagem do seu corpo, já que os ambientes humanos estão adaptados à forma

do corpo humano.

A área da manipulação bimanual em robôs antropomórficos é uma recente e

importante área de investigação que tem vindo a ganhar atenção ao longo dos últimos

anos (Smith et al., 2012). Esta área depara-se com um grande desafio devido à alta

complexidade intrínseca ao controlo e coordenação dos dois braços, especialmente

quando os movimentos têm que ser semelhantes aos dos humanos e realizados num

ambiente dinâmico e não controlado.

Este capítulo introdutório inicia com uma descrição das motivações gerais que

levaram à escolha do tema. Posteriormente, é feito um enquadramento do tema desta

1

Page 24: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

dissertação, juntamente com os objetivos. Por último, é apresentada a estrutura da

dissertação.

1.1 Motivações Gerais

1.1.1 A Evolução dos Robôs

Ao longo do tempo o ser humano tem tentado encontrar soluções que lhe permitam

facilitar, de algum modo, o seu trabalho e melhorar a qualidade de vida. Com a

Revolução Industrial o Homem conseguiu um grande avanço nesse sentido, pois, deu

os primeiros passos com a criação de máquinas industriais capazes de substituir o

humano em determinados trabalhos.

O conceito dos robôs humanóides surgiu em 1921, quando o dramaturgo Checo

Karel Capek escreveu a peça de teatro Rossum’s Universal Robots, em que introduziu

pela primeira vez a palavra ”robô”, como um autómato com uma forma humana

capaz de servir e interagir com o Homem.

Entretanto, na indústria, os robôs começaram a desenvolver-se e a ganhar grande

popularidade. Estes robôs eram sistemas mecânicos programados para executar uma

determinada tarefa vezes sem conta e num ambiente muito bem estruturado, como o

da indústria. Estavam assim, longe de serem os robôs introduzidos por Karel, isto é,

com morfologia e comportamento semelhante à do humano e capazes de interagirem

com pessoas. Contudo, os robôs industriais desenvolveram-se rapidamente pois o seu

uso permitia grandes vantagens como: o aumento da produtividade, a redução dos

custos de fabricação, a melhoria da qualidade do produto, a substituição das tarefas

pesadas e desgastantes para o operador humano por um robô, entre outras. Estes

foram os principais fatores que levaram à expansão e desenvolvimento destes robôs a

uma larga variedade de aplicações industriais.

Com o avanço da tecnologia e com a familiarização com as máquinas industriais, a

visão de Karel Capek, relativamente aos robôs antropomórficos começou gradualmente

a ganhar interesse, sobretudo, nas Universidades. Estes robôs deveriam apresentar

uma forma antropomórfica, ou seja: exibir duas pernas para caminhar e dois braços

2 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 25: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

Figura 1.1: Robô humanóide MM47 desempenhando tarefas com os dois braços (imagem

da revista: Popular Mechanics, Julho de 1961).

para manipular objetos como o ser humano. A razão que levou os cientistas a

debruçarem-se na criação de robôs antropomórficos sempre foi a ideia de criarem

cópias de si mesmos, como afirma Fukuda et al. (2001).

Nos finais de 1950, o cientista e engenheiro Claus Scholz desenvolveu um robô

com um aspeto muito semelhante ao do humano, como se pode ver na figura 1.1.

Dadas as limitações da época o robô era operado por controlo remoto de modo a

poder movimentar-se e manipular objetos com os dois braços. Posteriormente, outros

se seguiram na investigação destes novos robôs, como a Universidade de Waseda que

se mostrou pioneira no desenvolvimento da robótica antropomórfica com o início do

projeto WABOT (WAseda roBOT) em 1970, que levou à criação do robô humanóide

WABOT-1 em 1973, ilustrado na figura 1.2a. Este é um robô capaz de andar com as

suas pernas e capaz de agarrar e transportar objetos com as mãos. Mais tarde, em

1984 nasceu o WABOT-2 (figura 1.2b), um robô mais avançado capaz de ler uma

pauta de música com o seu sistema de visão e tocar piano com as suas mãos.

Por outro lado, potentes empresas tecnológicas também ganharam interesse

neste tipo de robôs. Um dos casos foi a empresa HONDA que em 1986 deu os seus

primeiros passos nesta área da robótica antropomórfica, começando por estudar

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

3

Page 26: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

o princípio da locomoção com duas pernas e, posteriormente, passando para os

movimentos dos braços e das mãos. No ano de 2000, nasce o robô ASIMO, um robô

bastante avançado tecnologicamente e com uma perfeita semelhança com uma pessoa

(ver figura 1.2c).

(a) WABOT-1 (b) WABOT-2 (c) ASIMO

Figura 1.2: WABOT-1, um dos primeiros robôs antropomórficos em grande escala, cons-

tituído por um sistema de controlo dos membros superiores e inferiores e sistema de visão.

WABOT-2, um robô já mais avançado em comparação com WABOT-1, que conseguia tocar

piano. ASIMO(2000) um robô com uma aparência bastante semelhante a uma pessoa e de

grande nível tecnológico.

Consequentemente, imensos robôs antropomórficos começaram a surgir, o inte-

resse começou a ser tão grande que em 2000 se criou uma conferência internacional

direcionada para a robótica humanóide, a IEEE/RAS Conferência Internacional de

Robôs Humanóides. Todo este interesse e desenvolvimento tecnológico originou uma

enorme expansão desta área da robótica, dando assim, origem a um novo conceito:

robôs de serviço. De acordo com Schraft and Schmierer (2000) estes robôs são

plataformas robóticas que operam de forma autónoma, parcial ou totalmente, na

realização de tarefas com o intuito de proporcionar o bem-estar do humano.

A presença destes robôs de serviço pode ser visível em várias áreas do nosso

quotidiano, nomeadamente: no ambiente doméstico como robôs que aspiram a casa

e limpam piscinas autonomamente (http://www.irobot.com); nos hospitais como

robôs que transportam os medicamentos (Engelberger (1993)) e até mesmo robôs

4 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 27: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

que colaboram em intervenções cirúrgicas com os médicos (Lanfranco et al., 2004);

robôs guias em museus (Burgard et al., 1999), entre outras áreas.

Contudo, estas aplicações apenas nos trazem robôs autónomos para o nosso

ambiente, onde a interação entre o humano e o robô não existe. Mas apesar de tudo

são um grande avanço para que os robôs com capacidade de interação com humanos,

chamados de robôs sociais (Fong et al., 2003), se apresentem na sociedade humana

com o propósito de servir, cuidar, conviver e sobretudo, interagir com o humano no

seu meio (Schaal, 2007).

O interesse nestes robôs sociais tem vindo a crescer e a prova é que atualmente

já existem muitos tipos de robôs e cada um direcionado para uma determinada área,

como por exemplo:

• Para cuidados de saúde - Tem-se o caso do robô Robovie (Sabelli et al., 2011),

um robô humanóide remotamente operado para manter uma conversa com

pessoas idosas. O robô RIBA que transporta pessoas com falta de mobilidade

da cama para a cadeira ou o contrário (Mukai et al., 2010);

• Educação das crianças - Um exemplo é o robô QRIO (Tanaka et al., 2007)

que interage com crianças através de movimentos, dançando e imitando-as.

Para o caso de crianças autistas, estas parecem reagir também muito bem aos

robôs humanóides, de acordo com Robins et al. (2005);

• Trabalhos em ambientes perigosos - Tem-se o caso dos robôs criados por

Kim et al. (2006) para lidar com resíduos radioativos;

• Exploração do espaço - Como o caso do Robonaut 2 da NASA (Diftler et al.,

2011) e o SAR-401 da Russia;

• Trabalhos nas linhas de montagem das fábricas - Um exemplo deste

tipo de robôs é o Baxter (para mais informação tem-se o site: http://www.

rethinkrobotics.com) adaptado para trabalhar juntamente com as pessoas

numa fábrica. Um outro exemplo é o robô Nextage criado pela indústria

Japonesa Kawada (consultar o site: http://nextage.kawada.jp/en/)

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

5

Page 28: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

Resumindo e concluindo, é de salientar que os robôs rumam a um futuro com foco

no ambiente humano, onde terão que trabalhar e interagir com humanos. Portanto,

para o sucesso destes robôs, eles precisam de ser aceites pelo Homem, correspondendo

assim, a certos padrões sociais e comportamentais aceites pelas pessoas. Assim sendo,

a robótica terá que abraçar novas áreas de pesquisa como psicologia, neuropsicologia,

sociologia e ética de forma a estudar o comportamento humano e aplicar aos robôs

(Restivo, 2001; Schaal, 2007; Fong et al., 2003).

1.1.2 Porquê Robôs Antropomórficos?

Antropomorfismo deriva da palavra Grega “anthropos” para homem e “morphe” para

forma ou estrutura, representa a tendência em atribuir caraterísticas humanas a

objetos inanimados e animais com o propósito de ajudar a racionalizar ou interpretar

as suas ações (Duffy, 2003). A criação deste tipo de robôs antropomórficos (ver

figura 1.3) representa um grande desafio para a engenharia e ciência, mas no entanto

não deixa de ser motivadora a sua investigação. Ao longo deste subcapítulo são

apresentados alguns pontos que dão força para que se continue a investir nestes robôs

com caraterísticas humanas.

(a) QRIO (b) ASIMO (c) Rollin’ Justin (d) ARMAR III

Figura 1.3: Alguns exemplos de robôs antropomórficos: em (a) QRIO da Sony (imagem

retirada do site: http://sitedojapao.webnode.pt/tecnologias/) e em (b) ASIMO da

Honda (imagem retirada do site: http://asimo.honda.com/gallery/), robôs perfeitamente

humanoides; em (c) Rollin’ Justin, desenvolvido por Borst et al. (2009), é um robô que apesar

de não ter duas pernas não deixa de ter semelhanças com uma pessoa e em (d) ARMAR III

(Asfour et al., 2006)

6 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 29: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

Para os robôs sociais, ou antes, robôs capazes de colaborar e interagir com

humanos, o facto de serem feitos à semelhança do humano é visto como uma mais

valia, pois i) o ambiente humano é projetado e construído atendendo à morfologia

humana; ii) os humanos conseguem desempenhar uma variedade de tarefas e dotar o

robô com a mesma morfologia permite que este tenha essa mesma capacidade.

Por outro lado, para uma eficiente interação entre humano e o robô porque não

compreender primeiro a interação entre humano e humano? Pois bem, nós humanos

enquanto observamos as ações de um outro humano conseguimos interpretar e

antecipar o seu comportamento através dos movimentos do corpo como o das mãos,

da cabeça, dos olhos; das expressões faciais; dos sons, entre outros. De acordo com

Sebanz et al. (2006) a previsão das intenções do parceiro através da observação

dos seus movimentos é considerado um ponto fundamental para uma eficiente ação

conjunta entre dois indivíduos. Pois, através da visualização dos movimentos e do

comportamento do parceiro, permite ao outro indivíduo (que observa) selecionar um

comportamento complementar adequado (Bicho et al., 2011). Por conseguinte, a

interação entre humano e robô pode ser facilitada se o robô apresentar uma morfologia

e comportamento semelhante ao do humano, de modo a que o humano consiga ler e

interpretar as intenções do robô e vice-versa (Fukuda et al., 2001; Breazeal, 2003;

Duffy, 2003; Schaal, 2007). O antropomorfismo pode-se assim dizer que é uma

tentativa de criar uma espécie de linguagem para a interação entre humano e robô.

A morfologia e comportamento do robô representa um papel fundamental nas

primeiras impressões e futuras expectativas que o humano cria acerca do robô. Assim

sendo, tanto a estrutura como o comportamento do robô deve estar adequado à

função para a qual ele é destacado (Leite et al., 2013), de modo a que o humano

se sinta confortável com a sua presença. Para isso, o robô deve projetar uma

quantidade de semelhança com um humano (traduzido da expressão em Inglês:

“humanness”), mas sem deixar de mostrar aspetos que indicam que é um robô (ou

seja, mostrar uma quantidade de “robotness”). Por outras palavras, deve haver um

equilíbrio entre a quantidade de semelhança humana da estrutura do robô com as suas

capacidades cognitivas. Isto para que o humano não desenvolva falsas expectativas

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

7

Page 30: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

Figura 1.4: “Uncanny Valley” de Mashiro Mori.

em relação ao comportamento do robô (Duffy, 2003; Fong et al., 2003). Um exemplo

claro deste pensamento é o caso da robô rececionista (Gockley et al., 2005), a

cara perfeitamente humana do robô (disposta num ecrã) criou altas expectativas

aos utilizadores humanos relativamente às capacidades de diálogo da rececionista

robô. Mas, como as expectativas não foram correspondidas, o tempo que as pessoas

despendiam com a rececionista diminuiu dia após dia. Aquele robô deixou de ser

interessante para o utilizador.

De realçar, que o excesso de realismo nem sempre é bem aceite pelo humano.

Estudos conduzidos por Mashiro Mori em 1970 e posteriormente revisitados por

Dautenhahn (2002) e DiSalvo et al. (2002), indicam que a progressão de um robô não

realista para um robô muito semelhante ao humano não é linear. Ou seja, quanto

mais próximo o robô se assemelha a um humano, mais aceitação ele vai ganhar dos

humanos. No entanto, pode chegar a um ponto em que pequenas imperfeições tornam

o robô estranho ou até mesmo repulsivo, o chamado de vale misterioso (tradução do

termo original em Inglês “uncanny valley” de Mori), veja-se a figura 1.4.

1.1.3 Manipulação Bimanual

A manipulação bimanual em robôs antropomórficos é uma importante área de

investigação que tem vindo, recentemente, a ganhar bastante atenção (Smith et al.,

2012). Isto porque (e como se pode ler nos pontos anteriores), é esperado que os

8 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 31: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

robôs apresentem uma estrutura e comportamento semelhante ao do humano, de

forma a facilitar a sua integração no ambiente humano. Portanto, surge a necessidade

do desenvolvimento de modelos que possibilitem aos dois braços e às duas mãos

robóticas desempenharem movimentos humanos e de forma autónoma. Até agora, a

manipulação robótica tem tido bastante desenvolvimento e sucesso nos manipuladores

aplicados à indústria. Pois, estes estão inseridos num ambiente muito bem controlado

o que facilita todo o processo de manipulação e, para além do mais, não necessitam

de coordenar os movimentos de dois braços. Por outro lado, em ambientes complexos,

dinâmicos e repletos de obstáculos como o ambiente humano, os robôs conseguem

executar movimentos mais complicados com os dois braços e mãos, apenas quando

operados por um humano (Kemp et al., 2007). A desvantagem deste método é que

requer a disponibilização constante de uma pessoa para controlar e monitorizar.

A coordenação dos dois braços e das mãos é uma capacidade bastante complexa,

que para nós humanos é bastante óbvia, pois foi alcançada através de muitos anos

de prática e aprendizagem. Por exemplo, numa tarefa normal do dia-a-dia é normal

definir qual o objeto a manipular, que braço e mão (direito ou esquerdo) faz o quê,

de que modo é que a mão agarra o objeto, para onde olhar e quando. Assim, se

o objetivo é dotar o robô com esta capacidade humana de manipulação e se lhe

acrescentarmos: ponto 1) os vários números de graus de liberdade (DOFs), respetivos

aos braços e mãos robóticas, que se tem que controlar (e que requerem grande poder

computacional); ponto 2) as caraterísticas do objeto a manipular, ou seja, se este for

deformável adiciona ainda mais DOFs e torna o movimento imprevisível; ponto 3) a

preocupação com o evitar colisões com obstáculos num meio dinâmico e incontrolável

e ponto 4) movimentos semelhantes aos dos humanos. Está-se perante um problema

muito complexo e considerado como um dos desafios mais exigentes da robótica

(Steffen et al., 2010).

Contudo e apesar dos grandes desafios intrínsecos à manipulação bimanual de

forma humana e autónoma, existem alguns pontos que motivam a sua investigação e

desenvolvimento, nomeadamente:

• O facto de apresentar dois braços e duas mãos possibilita ao robô uma maior

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

9

Page 32: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

destreza e habilidade para executar uma determinada tarefa do dia a dia

humano (visto que o ambiente está adaptado ao corpo humano, ou seja, a dois

braços e duas mãos). Por outro lado, permite controlar dois objetos e controlar

os objetos um em relação ao outro (Edsinger and Kemp, 2008). Por exemplo:

abrir uma garrafa requer o uso obrigatório de duas mãos, uma para segurar e

outra para remover a tampa (Steffen et al., 2010); ou até mesmo dobrar roupa

ou uma folha de papel, como no caso apresentado em Elbrechter et al. (2012).

• Se o objetivo é colocar o robô para interagir com um humano, faz todo o

sentido, que este apresente uma morfologia semelhante (dois braços e duas

mãos parecidos com os dos humanos) para que os seus movimentos sejam

mais facilmente compreendidos pela pessoa que interage com o robô (como foi

argumentado na secção anterior).

• Dois braços e mãos estendem o espaço de trabalho do robô, estendem também

a quantidade de tarefas que ele pode desempenhar e diminuem o tempo que

demora a tarefa a ser executada.

(a) (b) (c) (d)

Figura 1.5: Exemplos de robôs a manipular objetos com os dois braços-mãos de forma

autónoma. Em (a) os dois braços trabalham de forma coordenada de modo a permitir abrir

a garrafa (Steffen et al., 2010). Na figura (b) as duas mãos do robô dobram uma folha de

papel (Elbrechter et al., 2012). Na figura (c) o robô ARMAR III agarra, um objeto com as

duas mãos em simultâneo (Vahrenkamp et al., 2010). Em (d) o robô ASIMO da Honda, com

uma mão segura a garrafa e com a outra o copo.

Esta ampla gama de motivações para a construção de robôs com dois braços e

mãos levou a que se investisse e, consequentemente, se desenvolvessem várias aplica-

10 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 33: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

ções (Smith et al., 2012). Na figura 1.5 podem-se ver alguns casos que representam

“o fruto” desta investigação, robôs autonomamente a manipular objetos com as duas

mãos.

De notar então que esta é uma área bastante promissora, mas, sem futuros

avanços muitas aplicações robóticas, destinadas a existir na sociedade humana não

serão possíveis, tais como: robôs para ajuda nas tarefas domésticas; robôs para

trabalhar nas linhas de montagem das fábricas juntamente com humanos; robôs para

ajudar os idosos e outras pessoas com pouca mobilidade; para auxílio em operações

cirúrgicas; para exploração do espaço; entre outras.

1.2 Enquadramento e Objetivos

Como foi referido anteriormente, a área da manipulação bimanual em robôs antro-

pomórficos é uma jovem área de investigação em grande expansão, existindo ainda

muitos desafios a contornar e novas soluções a desenvolver. Sendo por isso, muito

motivador e excitante a realização de trabalhos de investigação e desenvolvimento

neste campo.

Com este trabalho pretende-se que os resultados possam contribuir no avanço

da nova geração de robôs para que se consiga, muito brevemente, integrar estes

robôs sociais ou se se preferir de serviços, na sociedade humana. Este projeto dá

seguimento ao trabalho anteriormente desenvolvido por investigadores do Laboratório

de Robótica Móvel e Antropomórfica da Universidade do Minho. Como tal, na secção

que se segue faz-se um ponto da situação, de um modo resumido, do trabalho

desenvolvido que serve como ponto de partida para o projeto desta dissertação.

Posteriormente, são apresentados os aspetos e objetivos a ter em consideração no

desenvolvimento e implementação do trabalho proposto nesta dissertação.

1.2.1 Ponto de Partida

O projeto da manipulação robótica iniciou-se com o trabalho de Costa e Silva (2011),

em que se desenvolveu um modelo de planeamento e controlo de um braço e de

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

11

Page 34: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

uma mão robótica do robô antropomórfico ARoS, de forma a este poder executar

movimentos unimanuais de alcançar, agarrar e manipular objetos, de modo muito

semelhante aos efetuados pelos humanos e livres de colisões. Isto numa primeira

versão, posteriormente, adaptou-se um segundo braço e mão robótica no ARoS

(concretamente o braço esquerdo) e alargou-se a gama de movimentos “human-

like” unimanuais para bimanuais coordenados assíncronos (Araújo, 2013). Por

outras palavras, o sistema de planeamento e controlo do braço robótico planeava e

movimentava um braço de cada vez.

A plataforma robótica ARoS foi projetada e construída no Laboratório de

Robótica Móvel e Antropomórfica do Departamento de Eletrónica Industrial da

Universidade do Minho (Silva, 2008). Esta consiste num tronco estático equipado

com dois braços antropomórficos (recentemente adicionado o segundo braço) com

7 graus de liberdade em cada braço (ombro - 3 DOFs, cotovelo - 1 DOF, pulso - 3

DOFs); duas mãos robóticas com três dedos cada, o que perfaz um total de 4 graus

de liberdade, por cada mão; um sistema de visão estéreo e também um ecrã disposto

no seu peito. Na figura 1.6 pode-se ver uma foto do robô.

Figura 1.6: Robô antropomórfico ARoS da Universidade do Minho

Existem muitas maneiras para permitir que o robô agarre um determinado

objeto, pois este pode ser agarrado em diferentes posições e orientações. Para além

do mais, devido às caraterísticas do braço robótico, para uma determinada posição e

orientação da mão este consegue obter uma grande variedade de possíveis posturas

12 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 35: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

do braço. Consequentemente, com a existência de requisitos como a velocidade e a

duração do movimento, faz com que sejam possíveis várias e diferentes trajetórias para

o braço e mão. Assim sendo, o modelo de planeamento de movimento desenvolvido

permite solucionar estes problemas de redundância presentes aquando da ação de

alcançar, agarrar e manipular objetos num espaço de trabalho tridimensional. O

modelo de planeamento para movimentos unimanuais foi baseado em estudos de

observação do comportamento e movimentos humanos, respetivamente dos braços e

das mãos:

• O planeamento de movimento é realizado no espaço articular ou espaço das

juntas (Graziano et al., 2002; Desmurget and Prablanc, 1997);

• As articulações movem-se em sincronia (Breteler and Meulenbroek, 2006);

• O planeamento de movimentos é dividido em dois subproblemas (Elsinger and

Rosenbaum, 2003):

1. Seleção de uma postura final;

2. Seleção da trajetória.

A seleção da postura final é calculada antes do cálculo da trajetória e varia em

função da postura inicial.

• O robô evita a colisão com os obstáculos através da sobreposição de dois

movimentos: a) um movimento direto da posição inicial à final e b) um

movimento de back-and-forth, ou seja, da posição inicial a uma intermédia (em

que não haja colisão com o/os obstáculo/s, chamada postura de bounce) e para

trás (Rosenbaum et al., 1999). Este último movimento, apresentado na alínea

b) é também chamado de movimento de bounce.

• As articulações do braço apresentam uma velocidade angular em forma de sino

(do Inglês bell-shaped) (Wada and Kawato, 2004; Rosenbaum et al., 1995).

O planeamento do movimento para um braço começa com a seleção de uma

postura final apropriada, que tem em conta: 1) a postura inicial da mão e do braço;

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

13

Page 36: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

2) a informação do Sistema Cognitivo acerca do objeto-alvo e do modo apropriado

para o agarrar e 3) a informação dada pelo sistema de visão relativamente à posição

e orientação dos objetos no cenário. O modo apropriado para agarrar o objeto, dado

à priori pelo sistema cognitivo, é escolhido de entre os quatro possíveis modos de

agarrar, ou mais comummente chamados de tipos de grip. Estes são:

• Polegar à esquerda do objeto, ver figura 1.7a;

• Polegar à direita do objeto, ver figura 1.7b;

• Polegar por cima do objeto, ver figura 1.7c;

• Polegar abaixo do objeto, ver figura 1.7d.

(a) (b) (c) (d)

Figura 1.7: Tipos de grip: ponto de partida

O processo de escolha da postura final para o braço e mão robótica do ARoS divide-

se em: a) seleção do conjunto de valores das juntas dos dedos da mão (definidos pelo

tipo de grip) e b) seleção do conjunto de valores das juntas do braço. Deste modo,

para a seleção do conjunto das juntas do braço, tem-se em conta a minimização do

custo associado ao movimento das juntas de uma posição inicial a uma final e um

conjunto de restrições que permitem definir a postura ideal, como por exemplo: os

limites máximos e mínimos de cada junta, a orientação e posição do objeto-alvo, os

obstáculos, entre outros.

Tendo-se a postura final encontrada, segue-se para a seleção da trajetória

que pode ser constituída pela sobreposição de dois movimentos: movimento direto e

movimento de bounce. Para cada junta, a trajetória respetiva ao movimento direto

da posição inicial à final é calculada. Seguidamente, de forma a verificar se existe

14 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 37: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

alguma colisão com obstáculos ao longo dessa trajetória, é usado o algoritmo da

cinemática direta para, internamente, simular todo este movimento direto. Assim

sendo, se nenhuma colisão for antecipada o movimento é executado, caso contrário,

entra em ação o movimento de bounce. Para este movimento seleciona-se uma postura

de bounce adequada de modo a permitir determinar o movimento de back-and-forth,

a ser sobreposto ao movimento direto. Para selecionar esta postura de bounce, usa-se

o mesmo critério que para a postura final, isto é, o mínimo deslocamento das juntas.

Para além deste utiliza-se um outro critério, o assegurar um movimento desde o

inicio ao fim livre de colisões, considerando algumas restrições.

Figura 1.8: Fluxograma respetivo ao planeamento de movimento de um braço e mão: ponto

de partida. Fluxograma retirado de Costa e Silva (2011)

Todo o processo acima descrito é relativo ao planeamento de movimento para

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

15

Page 38: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

um só braço e mão (ou seja, movimento unimanual). Para uma melhor compreensão,

a figura 1.8 apresenta o respetivo fluxograma.

Relativamente aos movimentos bimanuais assíncronos, estes são planeados de

forma semelhante devido ao facto de serem assíncronos. Para tal basta diferenciar

no modelo o braço esquerdo do direito. Os tipos de grip representados na figura 1.7

são válidos para a mão esquerda e direita.

1.2.2 De Movimentos Assíncronos para Síncronos

Tendo-se o ponto de situação feito, esta dissertação tem como objetivo dotar o ARoS

de movimentos bimanuais síncronos, que comparativamente com um humano, realize

tarefas de uma forma semelhante aos humanos. Para ser capaz de realizar tarefas de

um modo “human-like”, o robô tem que cumprir uma série de requisitos, tais como:

• A estrutura do robô deve ser parecida com a de uma pessoa, ser dotado de

dois braços e duas mãos para conseguir manipular objetos tão bem como uma

pessoa;

• Os movimentos dos dois braços e das duas mãos têm que ser realizados de

uma forma semelhante aos realizados pelos humanos, de forma a exibir um

comportamento socialmente aceite;

• O método de planeamento do movimento dos braços e das mãos deve ter em

consideração todos os obstáculos presentes no espaço de trabalho e também o

seu próprio corpo, isto para que o robô possa evitar colisões;

• O processo de cálculo do movimento dos dois braços e mãos, englobando

todas as caraterísticas anteriores, deve ser de tal modo rápido que permita o

planeamento e a execução de todo o movimento em tempo-real.

A necessidade de dotar o ARoS de movimentos bimanuais síncronos, vem da

necessidade de se melhorar cada vez mais as capacidades desta plataforma robótica,

de modo a permitir que possa desempenhar uma maior gama de movimentos e por

conseguinte diferentes tarefas. Assim sendo e a partir do trabalho anteriormente

16 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 39: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

desenvolvido, é necessário efetuar algumas modificações no sistema de planeamento

e controlo de movimentos. Por isso, os principais objetivos para este trabalho de

dissertação são:

• Estudar o comportamento humano, relativamente aos movimentos dos braços e

mãos para um melhor entendimento da capacidade de coordenação e cooperação

dos braços;

• Definir movimentos bimanuais e novos cenários;

• Dar mais robustez ao processo de otimização, utilizando o solver IPOPT

inserido no software de desenvolvimento MATLAB R©;

• Estender o modelo de planeamento de movimento de unimanual para bimanual;

• Modelar novas restrições temporais e espaciais a serem implementadas no

problema de otimização, a fim de satisfazer os requisitos de sincronização,

essenciais para a execução de tarefas bimanuais;

• Introduzir um comportamento humano nos movimentos dos dois braços e

das duas mãos do ARoS, isto é, o comportamento deve estar presente na

forma como o robô agarra o objeto ou os objetos e, na forma como escolhe os

movimentos atendendo ao objetivo da tarefa.

1.3 Estrutura da Dissertação

As restantes partes deste trabalho de Dissertação estão organizadas da seguinte

forma:

Capítulo 2 é constituído por três subcapítulos. O primeiro apresenta uma classifica-

ção para os movimentos referentes a tarefas de manipulação bimanual de objetos.

O segundo apresenta o estado da arte referente à manipulação bimanual na

robótica e o terceiro referente à manipulação bimanual nos humanos;

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

17

Page 40: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 1 - Introdução

Capítulo 3 apresenta importantes aspetos da plataforma robótica ARoS, nomea-

damente, caraterísticas da sua construção e os modelos da cinemática aplicada

aos seus dois braços e duas mãos robóticas.

Capítulo 4 apresenta uma descrição detalhada acerca do desenvolvimento do modelo

de planeamento de movimentos bimanuais síncronos.

Capítulo 5 apresenta o software desenvolvido para o planeamento de uma sequência

de movimentos de uma determinada tarefa e aspetos do simulador do ARoS.

Capítulo 6 descreve as tarefas de manipulação de objetos propostas para a validação

do modelo de planeamento de movimento bimanual síncrono e apresenta os

seus resultados.

Capítulo 7 descreve uma tarefa de manipulação de objetos composta por movimen-

tos bimanuais síncronos e unimanuais, proposta para validar o modelo geral de

planeamento de movimentos.

Capítulo 8 apresenta as conclusões finais de todo o trabalho desenvolvido nesta

Dissertação de Mestrado juntamente com algumas propostas para o trabalho

futuro.

18 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 41: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2

Estado da Arte

Este capítulo começa por apresentar uma classificação das tarefas bimanuais tanto

numa perspetiva dos humanos como no domínio da robótica. Posteriormente, é

apresentado o estado da arte relativamente à manipulação bimanual na robótica

e nos humanos. Isto, com o objetivo de se poder comparar estes dois casos, e

assim, tirar algumas conclusões que possibilitem o desenvolvimento de uma nova

abordagem para o planeamento e controlo dos movimentos bimanuais de uma forma

mais “human-like”.

2.1 Classificação de Tarefas Bimanuais

O objetivo deste subcapítulo é fazer um estudo de forma a capturar as caraterísticas

essenciais do comportamento bimanual humano e, posteriormente, no domínio da

robótica.

Diariamente as pessoas realizam um grande número de movimentos com os dois

braços e mãos de forma a desempenhar tarefas de manipulação de objetos. Uma

tarefa bimanual é constituída por uma série de sub-tarefas ou sub-objetivos que cada

braço-mão tem que cumprir, de forma a conseguir realizar com sucesso essa tarefa.

Assim sendo, o investigador Guiard (1987) debruçou-se sobre este tema e propôs a

seguinte classificação para os movimentos dos dois braços humanos:

Manipulação Bimanual Descoordenada - este tipo de manipulação ocorre em

19

Page 42: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

tarefas em que não é necessário que os dois braços-mãos executem movimentos

coordenados, por outras palavras, cada mão, independentemente, desempenha

parte(s) de uma tarefa. Por exemplo: quando uma mão escreve notas num

papel e a outra segura uma chávena de chá, ver figura 2.1;

Manipulação Bimanual Coordenada - ocorre em tarefas em que os braços execu-

tam os movimentos sincronizados entre eles, de forma a desempenhar diferentes

partes da mesma tarefa. Estes movimentos bimanuais coordenados podem ser

subdivididos em:

• Movimentos simetricamente coordenados - estes são movimentos

em que os dois braços-mãos, basicamente, desempenham o mesmo papel

numa determinada tarefa. Por exemplo: transportar um tabuleiro com as

duas mãos (ver figura 2.1);

• movimentos assimetricamente coordenados - estes são movimentos

em que os dois braços-mãos desempenham, numa tarefa de manipulação

de objetos, ações diferentes mas coordenadas entre si, como escrever no

teclado de um computador (ver figura 2.1).

Figura 2.1: Classificação de movimentos bimanuais humanos

No entanto, no domínio da robótica, Zacharias et al. (2011) propuseram uma

classificação de um outro ponto de vista. Essencialmente, o conceito é visualizar

20 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 43: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

o problema da manipulação bimanual dando especial atenção às relações lógicas

e geométricas de uma determinada tarefa. Para as relações lógicas propuseram a

seguinte divisão de movimentos bimanuais:

Logicamente independentes - quando uma mão desempenha um movimento

independente do movimento da outra mão e não interfere no espaço de trabalho

da outra. Pode ser comparado com movimentos bimanuais que ocorram

simultaneamente mas sem ligação entre eles, ou seja, sem dependência nem

interferência. Tem-se como exemplo o caso de se estar a escrever com uma mão

enquanto a outra segura uma chávena de chá e a leva para beber;

Logicamente dependentes - quando os dois braços-mãos obedecem a uma bem

estruturada sequência de ações. Esta categoria de movimentos bimanuais pode

ser sub-dividida em:

• Não cooperativos - quando ambos os braços-mãos não necessitam de

cooperar entre eles, no entanto devem respeitar a ordem da sequência

de sub-objetivos de uma determinada tarefa. Por exemplo, a tarefa de

abrir uma gaveta, alcançar e agarrar um objeto para depois o colocar

dentro da gaveta, não necessita obrigatoriamente dos dois braços-mãos a

cooperar entre eles. Com um braço é possível executar todos estes passos,

a desvantagem é que o processo será mais demorado;

• Cooperativos - quando ambos os braços-mãos precisam de estar tempo-

ralmente e espacialmente coordenados entre si, de forma a desempenhar

com sucesso a tarefa. Um caso para exemplificar pode ser o de retirar a

tampa de uma garrafa, onde é obrigatório o uso das duas mãos, uma para

segurar a garrafa e a outra para retirar a tampa.

Ainda na classificação de Zacharias et al. (2011), quanto à categorização dos

movimentos bimanuais e atendendo à sua relação geométrica segue-se a seguinte

proposta:

Espacialmente independentes - quando o movimento relativo a cada braço-mão

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

21

Page 44: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

não influência nem restringe o espaço de trabalho do outro. Assim sendo, não

pode existir nenhuma interferência espacial entre os dois manipuladores;

Espacialmente dependentes - quando o movimento de um braço (robótico) in-

fluência ou/e restringe a área de trabalho do outro. Podendo haver possibilidade

de colisão entre os braços-mãos.

No geral, um número de movimentos categorizados a nível lógico podem ser dife-

renciados numa classificação a nível geométrico. Todos os movimentos bimanuais

logicamente dependentes cooperativos são espacialmente dependentes.

2.2 Manipulação Bimanual na Robótica

Motivos muito fortes levam a que se desenvolvam sistemas robóticos bimanuais, como

argumentado no capítulo introdutório, nomeadamente no subcapítulo 1.1.2 e 1.1.3

desta dissertação. Basicamente, as principais razões que levaram a este interesse

podem ser descriminadas da seguinte maneira:

Semelhança com o operador - no caso de sistemas de manipulação por tele-

operação, o operador humano consegue transferir as suas habilidades bimanuais

no lado remoto de uma forma mais intuitiva;

Destreza e força - em algumas aplicações é necessária a combinação de rigidez e

força, que é muito bem conseguida com a disposição de dois braços em paralelo;

e a destreza também é aumentada;

Manipulabilidade - o facto de dispor de dois braços dá maior habilidade e destreza

para manipular objetos, estende o espaço de trabalho e a quantidade de

movimentos. O grande número de DOFs e a redundância oferece grande

performance em muitas aplicações.

Cognição humana - assim como os humanos têm uma compreensão intuitiva

da manipulação bimanual, as ações de um robô que apresente dois braços

são, então, mais fáceis de interpretar por um observador humano. Contudo,

22 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 45: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

sistemas bimanuais “human-like”, ou robôs antropomórficos têm sido largamente

utilizados em aplicações relacionadas com a interação entre humano e robô;

Forma humana - os manipuladores robóticos com uma forma humana desempe-

nham com maior facilidade uma tarefa centrada num ambiente humano, pois

este ambiente é projetado atendendo à morfologia dos seres humanos. Por esta

razão, os robôs antropomórficos estão também a ser propostos para aplica-

ções industriais com o intuito de interagir com os trabalhadores humanos ou

substitui-los, sem que seja necessário modificar a área de trabalho.

Existe uma enorme variedade de plataformas robóticas dotadas de dois braços e de

duas mãos. De facto, algumas dessas plataformas são projetadas para realizar tarefas

de manipulação de objetos e podem variar no seu tipo de configuração. Algumas

dessas plataformas são sistemas em que se colocam dois braços robóticos individuais,

a fim de partilhar o mesmo espaço de trabalho, como a plataforma apresentada na

figura 2.2a. No entanto, um notável esforço foi colocado na projeção de plataformas

com dois braços dedicados. Como é o caso do robô Motoman SDA10 (ver figura 2.2b)

e do robô Nextage (figura 2.2c), são robôs industriais capazes de executar movimentos

bimanuais, no entanto apenas apresentam morfologia semi-antropomórfica do tronco

à cabeça estando dispostos numa plataforma fixa a partir do torso. Por outro lado,

existe um outro tipo de plataforma robótica semi-antropomórfica muito semelhante,

mas com mobilidade, como é o caso do robô PR2 ilustrado na figura 2.2d. Por último,

uma plataforma completamente antropomórfica com pernas, braços, cabeça, em tudo

semelhante à morfologia duma pessoa. Este é o caso do robô da empresa Japonesa

Kawada o HRP-4 (ver figura 2.2e).

De entre todos estes tipos de configurações robóticas muitos tipos de aplicações

para os robôs são possíveis como para fins domésticos, para ajudar na educação de

crianças, no trabalho em ambientes perigosos, na exploração do espaço, em trabalhos

na indústria e entre muitos outros.

A literatura acerca de sistemas bimanuais é ampla e densa de conteúdo como se

pode verificar através do trabalho de Smith et al. (2012), em que apresentam uma

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

23

Page 46: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

(a) PRISMA Lab (b) SDA10 (c) Nextage

(d) PR2 (e) HRP-4

Figura 2.2: Exemplos de diferentes configurações robóticas bimanuais: (a) Dois braços

robóticos individuais PRISMA Lab (Caccavale et al., 2008); (b) Manipulador bimanual

industrial Motoman SDA10 (Bloss, 2010); (c) Robô semi-antropomórfico industrial Nextage

da empresa Kawada (http://nextage.kawada.jp/en/); (d) PR2, robô semi-antropomórfico

móvel (Oyama et al., 2009) e em (d) HRP-4, robô completamente antropomórfico também

da empresa Kawada (http://global.kawada.jp/mechatronics/hrp4.html).

visão detalhada deste tema destacando alguns desenvolvimentos recentes na área da

manipulação robótica, nomeadamente nos seguintes campos:

• Modelação - que diz respeito ao modo como modelar o sistema de forma a este

conseguir alcançar uma posição-alvo ou agarrar e manipular um objeto com os

dois braços-mãos;

• Controlo - que diz respeito aos métodos de controlo de força/movimento por

controlo dinâmico ou pela cinemática e controlo através do feedback visual;

• Planeamento - diz respeito aos algoritmos para planeamento de movimento,

trajetória e manipulação bimanual;

24 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 47: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

• Aprendizagem - diz respeito aos métodos que permitem fazer com que o robô

aprenda os movimentos, através da observação do comportamento humano.

Contudo e como está mais relacionado com este trabalho de dissertação, no

seguinte subcapítulo é feita uma revisão apenas dos métodos de planeamento de

movimento em plataformas robóticas bimanuais, incluindo os de aprendizagem.

2.2.1 Métodos de Planeamento de Movimentos Bimanuais

Os primeiros robôs com dois braços e mãos eram operados por humanos, portanto,

não havia a necessidade de procurar um método de planeamento de movimento

automático. No entanto com o surgimento de robôs autónomos, a pesquisa por

métodos de planeamento de movimentos bimanuais viu um crescente interesse.

Contudo, e como referido no subcapítulo 1.1.3, dotar um robô humanoide com

capacidade de manipulação bimanual autónoma é um problema bastante complexo.

Os dois braços e mãos são sistemas redundantes com um elevado número de DOFs.

Para além do mais, planear movimentos livres de colisões, no espaço euclidiano, para

um sistema robótico com um elevado número de DOFs foi, desde cedo, considerado

um desafio (Reif, 1979).

Atualmente, existe uma vasta gama de métodos para planeamento de movimentos,

assim sendo, nos subcapítulos seguintes são apresentados aqueles que se focam nos

movimentos bimanuais.

2.2.1.1 Método Probabilístico RRT

O método RRT (do Inglês Rapidly-exploring Random Trees) é das abordagens

probabilísticas mais populares aplicadas ao problema do planeamento da trajetória e

foi, primeiramente, introduzida por LaValle (1998).

Vahrenkamp et al. (2009), apresentaram um método computacionalmente efi-

ciente para o planeamento de movimentos bimanuais, combinando o processo da

cinemática inversa (IK), para determinar a configuração das juntas dos braços do

robô para uma dada posição, com o método de planeamento de trajetórias proba-

bilístico - RRT, para determinar um movimento livre de colisões. Os movimentos

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

25

Page 48: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

bimanuais abordados foram, especialmente, os de agarrar um objeto (em Inglês grasp)

ou repassar o objeto para outra mão (em Inglês conhecido como re-grasp) sem colidir

com nenhum obstáculo em todo o espaço de trabalho do robô. As capacidades da

combinação dos métodos IK com o planeamento baseado na RRT, foram demonstra-

das tanto num ambiente de simulação como num ambiente real de cozinha com o robô

ARMAR-III. Os tempos de computação respetivos a cada método estão apresentados

na tabela 2.1:

Tabela 2.1: Resultados do desempenho do método de planeamento de movimentos bimanuais

IK-RRT nos testes do robô ARMAR III num cenário real de cozinha (retirado de (Vahrenkamp

et al., 2009)).

Posteriormente, este trabalho foi estendido de forma a integrar o planeamento

de grasp e o planeamento de movimento (Vahrenkamp et al., 2010), combinando o

processo de seleção da melhor configuração para agarrar o objeto com o processo de

seleção da melhor trajetória livre de colisões para os dois braços. Como resultado

desta combinação é introduzido o processo chamado de Grasp-RRT (ver figura 2.3).

Neste processo, dois processos separados e independentes, um para cada mão, dão

início simultaneamente, com o objetivo de encontrar duas posturas apropriadas: uma

para o braço direito e outra para o esquerdo, de forma a que o robô consiga agarrar

o objeto em causa, e assim, obter duas trajetórias livres de colisões, que levem até

essa postura. Este processo está configurado para procurar e armazenar todas as

posturas e as correspondentes trajetórias, que se encontrem adequadas ao problema

em causa, até a thread principal mandar terminar. Assim que termina, são recolhidas

todas as posturas e trajetórias armazenadas e o sistema de planeamento tem agora a

função de calcular a melhor configuração para os braços e correspondentes trajetórias,

26 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 49: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

calculando um índice de qualidade para cada combinação de postura-trajetória dos

dois braços. Consequentemente, se o índice calculado ultrapassa um determinado

threshold, então, segue-se uma verificação de colisão. Finalmente, se não forem

detetadas nenhumas colisões, esta combinação de postura-trajetória para os dois

braços é retornada e executada.

Figura 2.3: Visão geral do processo de planeamento bimanual - Grasp-RRT (retirado de

(Vahrenkamp et al., 2010)).

Embora, Vahrenkamp et al. (2009) e Vahrenkamp et al. (2010) tenham apresen-

tado razoáveis bons resultados, nomeadamente, na solução do problema para alguns

movimentos bimanuais de agarrar objetos. É um facto que este método baseado

no algoritmo RRT falha quando aplicado num ambiente dinâmico, pois não está

preparado para se readaptar, em tempo-real, a mudanças no cenário. Efetivamente,

investigadores ainda estão à procura de um sistema que consiga lidar com tarefas

dinâmicas sob súbitas perturbações.

Além do mais, a utilização de métodos probabilísticos têm uma desvantagem,

geralmente reconhecida na criação de trajetórias para os dois braços, pois o facto de

ser probabilístico pode gerar movimentos não naturais e estranhos para o humano,

como descrito em Zacharias et al. (2011).

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

27

Page 50: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

2.2.1.2 Método Baseado em Comportamentos

Uma abordagem completamente diferente da anterior foi introduzida por Edsinger

and Kemp (2008). Neste trabalho é apresentado um método de controlo baseado

com comportamentos (em Inglês behaviour-based approach) que permite ao robô

humanoide Domo ajudar uma pessoa a colocar objetos numa prateleira. Esta técnica

foi inicialmente estudada para um só braço robótico e, posteriormente, estendida para

os dois braços. Basicamente, o sistema robótico tem uma série de comportamentos

pré-codificados e, consoante a situação um desses comportamentos é escolhido. O

parceiro humano pode compor a tarefa usando quatro possíveis comportamentos

(ver figura 2.4), cada comportamento tem um respetivo sinal de voz (comando:

VocalRequest). O humano pode pedir um desses comportamentos enquanto o robô

monitoriza a pessoa no cenário (respetivos comandos: PersonSeek, PersonDetetc).

Figura 2.4: Modelo baseado no comportamento (retirado de (Edsinger and Kemp, 2008)).

Esta abordagem reúne vantagens na medida em que permite um melhor e

específico feedback atendendo à situação em que se encontra a interação entre o

humano e o robô. No entanto, uma desvantagem clara desta abordagem é o facto de

se ter que implementar cada comportamento que se deseje ver realizado pelo robô.

Contudo e tal como os métodos probabilísticos (ver ponto 2.2.1.1), este método,

baseado em comportamentos ou amostras apresenta o mesmo problema atendendo

à geometria da trajetória, pois pode ser imprevisível e estranha. Assim sendo,

em Zacharias et al. (2011) este problema da geração de trajetórias human-like

28 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 51: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

é considerado. Os autores afirmam que a escolha de uma configuração human-

like para os dois braços, inicial e final, afeta fortemente o grau de human-likeness

do caminho planeado. Além do mais, não é tido em conta o aspeto temporal

(velocidade e aceleração) do movimento. É um facto de que para aceitar e perceber

os movimentos bimanuais como semelhantes aos dos realizados pelos humanos, é

importante considerar aspetos como a velocidade dos movimentos dos dois braços e

as suas interdependências (Schaal, 2007; Duffy, 2003).

2.2.1.3 Programação por Demonstração

A programação por demonstração, também conhecida como a aprendizagem por

imitação, tem sido uma abordagem usada para dar capacidade ao robô de aprender

novas ações apenas pela observação do comportamento e movimentos de uma pessoa.

Assim sendo, este método aborda o problema da geração de movimentos human-like

por parte de um robô antropomórfico, capturando caraterísticas de coordenação tem-

porais e espaciais da manipulação bimanual humana. Seguidamente são apresentados

três trabalhos relativos a esta área.

Começando pelo trabalho de Zöllner et al. (2004), estes propuseram um sistema

baseado na programação por demonstração (em Inglês Programming by Demonstration

- PbD), a fim de dotar uma plataforma robótica humanoide com a capacidade de

observar, aprender e executar tarefas geralmente feitas por humanos. A figura 2.5

ilustra todo o ciclo PbD, este permite a transferência do conhecimento da tarefa

humana para o robô através da extração de informação. Além do mais, este ciclo

destina-se a assegurar que a representação percebida pelo processo de aprendizagem

é aplicável a outros robôs. Basicamente, este ciclo de programação por demonstração

(proposta neste artigo) é composto por uma etapa inicial de perceção e interpretação,

de forma a extrair o máximo de informação possível a partir da tarefa de demonstração.

O passo seguinte, a generalização, ou seja, transformar toda a informação recolhida

numa representação generalizada e resumida, de forma a ser aplicável ao robô. Por

último, mapear a tarefa e transferir as trajetórias para o robô específico.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

29

Page 52: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

Figura 2.5: Esquema do ciclo de programação por demonstração: da demonstração humana

à execução robótica (retirado de (Zöllner et al., 2004)).

Porém, falta referir que para o controlo da execução de tarefas bimanuais

coordenadas foi desenvolvido um modelo Petri Net. Além disso, é importante notar

que este método preserva a estrutura da tarefa, devido à sua generalização, mas

carece de flexibilidade. Deste modo não permite ao sistema se adaptar a mudanças

no cenário, especialmente, no caso de complexas tarefas de manipulação bimanual.

De notar, que esta proposta de programação por demonstração foi validada com a

tarefa bimanual de abrir um frasco.

Posteriormente, em Asfour et al. (2008) é introduzido um modelo baseado no

Hidden Markov Model (HMM) para aprendizagem por imitação dos movimentos

dos braços humanos para um robô humanoide. Essencialmente, o processo consiste

em criar contínuos HMMs a partir da demonstração dos movimentos bimanuais

pretendidos, executados por várias vezes. Estes modelos são treinados tendo em

conta os traços caraterísticas do movimento, ou pontos chave de cada demonstração.

Assim, apenas são considerados e usados para a reprodução do movimento, os pontos

chave presentes em todas ou quase todas as demonstrações, os chamados de pontos

chave comuns. Asfour e os seus colegas também demonstraram a capacidade da

30 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 53: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

utilização do HMM para detetar interdependências temporais entre os braços na

execução de tarefas bimanuais. De facto, a coordenação temporal pode ser muito

útil tal como a coordenação espacial, especialmente, durante movimentos bimanuais

coordenados. Além do mais, a demonstração múltipla da execução de um determinada

tarefa é útil a fim de determinar a veracidade de que a relação temporal entre os

braços detetada é uma condição real.

Este método foi testado usando o modelo cinemático, desenvolvido para simular

a cinemática dos membros superiores humanos de 18-DOFs, em relação aos três

diferentes movimentos bimanuais: apanhar e colocar um objeto com as duas mãos,

desapertar a tampa de um frasco e verter o líquido de um recipiente para um copo.

Os resultados obtidos são encorajadores para os autores, no entanto, eles afirmam

que o método não é invariante a translações e rotações do robô, o que indica que

pode haver alterações aquando uma dessas transformações. Para além disso, esta

abordagem carece de flexibilidade, pois como é uma imitação exata da tarefa de

manipulação leva em conta os objetos manipulados durante a demonstração dos

movimentos. Por outras palavras, o desempenho da imitação diminui quando o

cenário ou os objetos são alterados.

Gribovskaya e Billard em (Gribovskaya and Billard, 2008) combinaram a técnica

de programação por demonstração com um sistema dinâmico para o controlo do

movimento. Essencialmente, o modelo proposto é composto por dois sistemas:

1) um sistema de aprendizagem em que se recolhe e processa os dados durante a

demonstração da tarefa bimanual e os traduz em restrições de coordenação; 2) um

sistema motor que dinamicamente gera o movimento enquanto satisfaz as restrições

de coordenação dadas pelo sistema de aprendizagem. Neste trabalho os autores

defendem que para o robô realizar com sucesso uma tarefa de manipulação bimanual

alguns aspetos da coordenação dos movimentos dos dois braços devem ser tidos em

conta, como as restrições espaciais e temporais.

Atendendo ao processo geral, este inicia com o processo de aprendizagem do

robô que é feito a partir do ensino cinestésico, isto é, por um humano que guia os

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

31

Page 54: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

braços do robô através dos movimentos necessários para executar a tarefa. Os dados

são, então, recolhidos e baseado na ideia de que um dos braços é mais limitado que

o outro, são extraídas as posturas chave analisando as trajetórias do braço mais

constrangido e a posição relativa entre as duas mãos. As posturas chave do outro

braço são inferidas com base nesses dados. Assim, estas posturas coordenadas são

vistas como posições estáveis, ou antes atratores num sistema de controlo dinâmico,

que devem ser alcançadas tendo em conta uma ordem de forma a executar a tarefa

(ver figura 2.6).

Figura 2.6: Sequência das três posturas chave (posturas coordenadas estáveis) referentes

à tarefa de colocar açúcar numa chávena de chá: 1 - posição inicial, 2 - colocar açúcar na

chávena e 3 - novamente para a posição inicial (imagem retirada de (Gribovskaya and Billard,

2008)).

De forma resumida, esta abordagem tem duas vantagens: 1) as posturas chave

são formuladas como atratores do sistema dinâmico, o que torna o movimento gerado

robusto contra pequenas e rápidas perturbações; 2) a postura relativa entre as duas

mãos é selecionada como a variável que capta as restrições de coordenação durante o

processo de aprendizagem, assim, a execução do movimento é invariante (ou seja,

não se altera quando sofre alguma transformação) a translações ou rotações do robô.

2.2.1.4 Método Baseado em Sistemas Dinâmicos e Campos de Força

Em Mohan et al. (2009) e Morasso et al. (2009) foi proposto um novo e diferente

método para resolver o problema da geração de movimentos bimanuais coordenados,

32 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 55: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

combinando o método de campos potenciais artificiais (o Passive Motion Paradigm -

PMP, introduzido por Ivaldi et al. (1988)) com a dinâmica terminal do atrator.

Basicamente, a ideia do PMP é para se conseguir obter os comandos a serem

aplicados aos motores (para qualquer configuração de braços e grau de redundância),

a partir de uma “simulação interna” e um “movimento passivo” induzido por um

“campo de força virtual” aplicado em “pontos focais” do modelo do corpo do robô. De

um modo geral, este método PMP pode ser visto como uma analogia ao mecanismo

de coordenação do movimento de uma marioneta por meio das suas amarras (ver

figura 2.7).

Figura 2.7: Metáfora da marioneta ao modelo Passive Motion Paradigm (imagem retirada

de (Morasso et al., 2009)).

Contudo, o método PMP não considera nenhum mecanismo de controlo de

velocidade. Portanto e de acordo com esta necessidade, a combinação da dinâmica

terminal do atrator foi introduzida de forma a gerar movimentos suaves como os

realizados pelos seres humanos e ser possível controlar o tempo em que se alcança o

objeto-alvo. Assim sendo, a posição-alvo pretendida para o respetivo end-effector (ou

mão robótica) é transformada num estado de atrator do sistema dinâmico. Campos

de força virtuais, induzidos pelo objetivo pretendido e por outras restrições do

movimento, são aplicados ao end-effector e depois mapeados no seu correspondente

campo de força, dentro do espaço das juntas. Os campos de forças repulsivos são

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

33

Page 56: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

utilizados para implementar os limites das juntas (restrições internas) e possíveis

colisões com obstáculos (restrições externas). Estes campos de força repulsivos são

adicionados aos campos de força atrativa relativos ao alvo, no caso de forças externas

e do espaço das juntas no caso de forças internas.

Os resultados relativos a este trabalho foram obtidos implementando a arquite-

tura computacional descrita acima na plataforma robótica iCub de 53-DOFs. O teste

foi realizado através da aplicação de simples tarefas de manipulação bimanuais como:

alcançar um objeto, agarrar e transportar-lo em cenários simples. Os resultados

desta abordagem foram razoavelmente bons, destacando-se as seguintes principais

vantagens:

• A dinâmica do atrator controla o tempo que leva a atingir o alvo, sendo assim

possível e vantajoso controlar o perfil da velocidade do movimento dos braços

e gerar movimentos suaves tal como os executados pelos humanos;

• Não existe a necessidade de calcular a cinemática inversa nem a necessidade de

processos de otimização.

Contudo, falta verificar o comportamento deste método em tarefas de manipula-

ção bimanual mais complexas e na presença de cenários mais elaborados.

2.3 Manipulação Bimanual nos Humanos

O objetivo deste subcapítulo é fazer um estudo acerca do comportamento de co-

operação dos dois braços e mãos humanas aquando a manipulação de objetos. A

capacidade de cooperação e coordenação dos braços e mãos permitem ao ser humano

agarrar e manipular uma variedade de objetos, e consequentemente, desempenhar

uma vasta gama de tarefas. A responsabilidade pela realização destas ações recaí so-

bre o Sistema Motor Humano, que controla, programa e executa todos os movimentos

tanto dos braços e mãos como dos restantes membros do corpo humano.

Nos subcapítulos seguintes são apresentadas as caraterísticas dos braços e mãos

humanas tal como alguns factos importantes referentes ao controlo do sistema motor

humano, abraçando a área da psicologia e neuropsicologia.

34 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 57: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

2.3.1 Caraterísticas do Braço Humano

O corpo humano é composto por um sistema complexo de músculos, ossos e tecidos

moles que permitem o corpo humano se movimentar. Freivalds (2011) indica que os

movimentos desempenhados pelos seres humanos, sendo tridimensionais e centrados

em articulações, podem ser definidos ao longo dos três grandes planos imaginários

que dividem o corpo humano, nomeadamente: o plano sagital, o frontal e transversal

(ver figura 2.8).

Figura 2.8: Modelo anatómico padrão dos planos imaginários do corpo humano (imagem

retirada de http://en.wikipedia.org/wiki/Sagittal_plane).

O plano transversal é um plano imaginário que divide o corpo humano em duas

partes: a superior e inferior. O plano sagital é um plano vertical que divide o corpo

em duas partes: direita e esquerda, enquanto o plano frontal divide o corpo em parte

ventral e dorsal (ou seja, parte da frente e costas), como se pode ver na figura 2.8.

De acordo com a cinesiologia humana, os movimentos que os braços e mãos

conseguem executar estão dependentes das articulações do braço, isto é, do ombro,

cotovelo e pulso. Os principais movimentos do braço são considerados pela anatomia

humana como sete (Maciejasz et al., 2014; Maurel, 1999; Maurel and Thalmann,

1999; Freivalds, 2011; Biryukova et al., 2000), estes são:

Ombro - este permite executar os movimentos: i) de flexão ou extensão, isto é,

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

35

Page 58: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

elevar o braço totalmente na vertical ou puxar o braço para atrás das costas,

na perspetiva do plano sagital; ii) de adução ou abdução, elevar ou baixar o

braço até o colocar em paralelo com o corpo, na perspetiva do plano frontal;

iii) de rotação interna ou externa.

Cotovelo - a partir desta articulação/junta é possível executar os movimentos:

i) de flexão ou extensão, que corresponde à ação de elevar o antebraço numa

perspetiva do plano sagital ou baixar; ii) de supinação ou pronação, que

corresponde a rodar o antebraço e pulso (este movimento é considerado em

todo o antebraço, por isso também se pode considerar um movimento do pulso).

Pulso - a partir desta articulação/junta é possível executar os movimentos: i) de

adução ou abdução, ou seja, movimentar a palma da mão para a esquerda ou

direita; ii) de extensão ou flexão, movimentar a palma da mão para cima ou

para baixo.

Para um melhor entendimento destes movimentos, ver a figura 2.9 em que se ilustram

todos estes movimentos.

A amplitude destes movimentos pode variar de pessoa para pessoa, pois nem

todos têm a mesma flexibilidade. Como se pode reparar uma mesma articulação

consegue desempenhar mais do que um movimento diferente, isto deve-se ao facto de

existir mais do que um grau de liberdade por articulação/junta. Por isso, na secção

seguinte este tema é abordado.

2.3.1.1 Cinemática do Braço

O braço humano é um sistema composto por três segmentos (a parte superior do

braço, o antebraço e a mão) com sete graus de liberdade (DOFs) (Kim et al., 2012;

Biryukova et al., 2000). A parte superior do braço está conectada ao ombro, que

liga todo o braço ao resto do corpo humano. O cotovelo é a articulação que liga

o braço superior ao antebraço, posteriormente, este estende o cotovelo ao pulso

que liga à mão. Com o estudo da cinemática das articulações, ou seja a partir dos

movimentos do braço (apresentados anteriormente) é possível definir os sete graus

36 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 59: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

Figura 2.9: Movimentos gerais do braço humano, centrados nas respetivas articulações

(imagem retirada e editada de (Costa e Silva, 2011)).

de liberdade da seguinte forma: 3-DOFs no ombro, 2-DOFs no cotovelo (podendo

um deles estar representado no cotovelo ou pulso, pois permite um movimento no

cotovelo e pulso simultaneamente) e 2-DOFs no pulso. A figura 2.10 representa esta

cinemática aplicada ao braço humano.

O braço é um dos subsistemas do corpo humano mais redundante, isto porque

ele apresenta 7-DOFs, mas no entanto apenas precisa de 6-DOFs para posicionar e

orientar a palma da mão ou end-effector (Perry et al., 2009). Assim, o braço tem

um DOF adicional que lhe permite realizar mais movimentos. Por conseguinte, este

extra DOF é manifestado como um movimento interno dos segmentos do braço que

não move a mão, chamado assim de redundância cinemática. Dada esta redundância

muitas configurações do braço são possíveis para uma localização específica da

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

37

Page 60: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

Figura 2.10: Representação da cinemática do braço humano (imagem retirada de (Maciejasz

et al., 2014)).

mão, como se pode ver na figura 2.11. Este fenómeno é matematicamente expresso

Figura 2.11: Um objeto-alvo pode ser agarrado com múltiplas configurações do braço

(imagem retirada e editada de (Tolani et al., 2000)).

numa solução não-única da cinemática inversa do braço (Tolani et al., 2000; Badler

and Tolani, 1996), no entanto para nós humanos o sistema de controlo consegue

chegar a uma só solução (Kim et al., 2012). Por isso, uma razão para aprender

com o comportamento humano, de forma a conseguir resolver este problema da

redundância cinemática da forma mais eficiente e human-like possível e passar para

os manipuladores antropomórficos robóticos.

De notar, que esta redundância apesar dos problemas matemáticos que compre-

ende tem a vantagem de permitir ao braço muitas configurações que possibilitam a

este contornar ou se desviar de obstáculos que possam estar no caminho do braço-mão.

38 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 61: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

2.3.1.2 Caraterísticas da Mão

A mão humana é altamente complexa apresentando mais de 20-DOFs com, aproxima-

damente, 4-DOFs por dedo e 5-DOFs no polegar (Kemp et al., 2008). Composta por

cinco dedos, a mão humana é capaz de os controlar resultando, assim, numa grande

gama de movimentos de manipulação (Bullock et al., 2013). Devido a esta grande

variedade de movimentos executados pela mão alguns investigadores debruçaram-se

sobre a sua classificação. Assim sendo, Napier (1956) foi o primeiro a introduzir este

tema e a classificar os movimentos da mão em dois principais grupos:

Movimento Preênsil - movimento em que a mão agarra ou segura o objeto parci-

almente ou totalmente dentro da mão;

Movimento Não-Preênsil - movimento em que nenhuma preensão é efetuada no

objeto, ou seja, o objeto é apenas manipulado por meio de um pequeno contacto

entre ele e a mão.

O estudo de Napier considera, unicamente, o grupo de movimento preênsil em que o

divide em duas categorias: 1) power grip - quando o objeto é agarrado com força

pela mão, os dedos e a palma da mão tocam no objeto; 2) precision grip - quando o

objeto é apenas seguro pelas pontas dos dedos e o polegar oposto a estes.

Posteriormente e seguindo o trabalho de Napier, Cutkosky e Howe em (Cutkosky

and Howe, 1990) propuseram uma taxonomia com base em observações de operadores

que trabalhavam com peças e ferramentas de metal. A taxonomia mostra como

os requisitos da tarefa (como força e movimentos) e a geometria do objeto se

combinam de forma a selecionar o modo como manipular o objeto. Basicamente,

esta classificação divide-se em duas principais categorias, nomeadamente power grasp

e precision grasp, como se pode ver na figura 2.12. À medida que se vai descendo

na árvore hierárquica dos tipos de grasp, os detalhes da tarefa e a geometria do

objeto tornam-se igualmente importantes, de modo a que, na última fase da escolha

da melhor forma para manipular o objeto ambos os requisitos sejam importantes.

Uma vez que a escolha entre um power grasp (aperto de força) ou precision grasp

(aperto de precisão) tenha sido feita, a combinação de considerações relacionadas

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

39

Page 62: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

Figura 2.12: Taxonomia referente às diferentes configurações de manipulação da mão

humana, proposta por Cutkosky and Howe (1990).

com a tarefa e com a geometria do objeto entra em jogo. Por exemplo, começando

pela parte superior da figura 2.12, supõe-se que quando um power grasp é escolhido,

o seguinte passo é definir se o objeto precisa de ser agarrado ou apenas apoiado.

Se só precisa de ser apoiado, então um aperto não-preênsil com um único ponto de

contacto entre a mão e o objeto. Por outro lado, se o objeto deve ser agarrado então

um aperto preênsil é necessário. Nesta fase, entram as considerações geométricas do

objeto, de forma a decidir se o aperto é circular (em que os dedos cercam o objeto

de forma radial) ou prismático (em que os dedos e o polegar ficam opostos).

Consequentemente, muitas mais taxonomias foram sendo desenvolvidas, uma de-

las é apresentada por Bullock et al. (2013). Esta classificação descreve os movimentos

da mão para uma variedade de contextos e tem a vantagem de poder ser combinada

40 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 63: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

com outras taxonomias permitindo, assim, uma descrição mais completa de uma

específica tarefa de manipulação. Na figura 2.13 é apresentada esta classificação.

Para uma melhor compreensão, os termos usados pelos autores para descrever a

natureza de interação da mão com o objeto são seguidamente descriminados:

• Contacto - quando a mão entra em contacto com o objeto;

• Preênsil - quando o contacto entre a mão e o objeto não é apenas um único

ponto de contacto e a mão consegue agarrar o objeto de forma a estabiliza-lo

na mão (definição introduzida por Napier);

• Movimento - quando a mão se move em relação a um ponto de referencial. Este

pode ser dividido em duas categorias:

– movimento dentro da mão, partes da mão tais como os dedos, movem-se

em relação a um ponto fixo da mão;

– movimento não dentro da mão, isto é, o movimento é considerado na mão

inteira.

• Movimento em contacto - quando o objeto se move em relação à mão, podendo

o objeto sofrer uma translação ou rotação (ou até uma combinação das duas

transformações) em relação ao referencial fixo posicionado na mão, no local de

contacto com o objeto.

A grande complexidade da mão humana permite aos humanos realizar imensos

movimentos de manipulação de objetos e, com esta classificação, Bullock e os seus

colegas afirmam que é útil para a análise das estratégias de manipulação dos humanos

e, consequentemente, esta análise pode ser implementada num sistema robótico, com

as apropriadas modificações consoante a arquitetura do robô (Bullock et al., 2013).

Contudo, de acordo com Kemp et al. (2008) estes afirmam que muitas das

posturas e movimentos que os humanos utilizam para agarrar os objetos com as mãos

podem ser aproximados a 2-DOFs, se assim é, mãos mais simplificadas podem ser

suficientes para executar uma vasta gama da tarefas de manipulação.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

41

Page 64: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

Figura 2.13: Taxonomia para tarefas de manipulação da mão humana, proposta por Bullock

et al. (2013).

42 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 65: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

2.3.2 Controlo Motor Humano

Compreender como os vários graus de liberdade existentes no corpo humano, princi-

palmente nos braços e mãos, se coordenam de forma a desempenhar um determinado

movimento de manipulação, é considerado um problema central na área do controlo

motor humano. Existem importantes questões acerca de como o Sistema Nervoso

Central (SNC) considera diferentes variáveis e factores para planear um movimento

e, como é que este é capaz de atualizar o movimento ou re-planear sobre novas

condições.

Muitos estudos têm sido realizados, a partir de observações do comportamento

humano, com o objetivo de tentar compreender o funcionamento do sistema de

controlo motor. Por isso, de acordo com Emadi Andani and Bahrami (2012) é

admitido que o sistema de controlo motor é composto por uma estrutura hierárquica

com três níveis:

Planeamento Motor - nível responsável pelo planeamento do movimento;

Programação Motora - responsável por determinar os respetivos comandos moto-

res (referentes ao movimento);

Execução Motora - camada responsável por aplicar os comandos ao sistema motor.

Estes níveis podem, constantemente, interagir entre eles durante uma determinada

atividade, isto para permitir ao sistema se adaptar ou re-planear o curso do movimento

na presença de perturbações externas como obstáculos, evitando colisões.

Ainda de acordo com Emadi Andani and Bahrami (2012), existe uma variedade

de modelos computacionais que têm como objetivo modelar ou descrever os problemas

intrínsecos ao planeamento de movimento humano. No entanto, estes modelos podem

ser classificados em dois grupos principais:

Modelos baseados em Dados - nestes modelos, um conjunto de dados compor-

tamentais empíricos é usado para construir uma base de dados respetiva a

um determinado movimento. A partir desta base de dados são desenvolvi-

dos modelos cinemáticos diretos e inversos para prever o movimento, usando

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

43

Page 66: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

caraterísticas do movimento (como as posições finais e iniciais) e os dados antro-

pométricos. O desempenho e a validade destes modelos estão dependentes da

disponibilidade de dados de movimentos que possam definir bem o movimento;

Modelos baseados na Otimização - estes modelos assumem que o sistema ner-

voso central considera vários critérios (modelos) para caracterizar o movimento,

como por exemplo:

• modelo para descrever a suavidade do movimento humano tal como:

minimum jerk (Flash and Hogan, 1985), minimum angular jerk (Friedman

and Flash, 2009) e minimum torque change (Uno et al., 1989);

• modelo para descrever a variabilidade dos movimentos como: minimum

variance (Svinin and Yamamoto, 2010; Harris and Wolpert, 1998) e maxi-

mum task achievement (Miyamoto et al., 2004).

Assim, o principal objetivo destes modelos baseados na otimização é minimi-

zar alguns custos associados com o movimento. Podem ser categorizados em

duas classes, baseadas no tipo de informação usada para o planeamento de

movimento humano, nomeadamente: modelos cinemáticos e modelos dinâmi-

cos. Os modelos como minimum jerk, minimum angular jerk e smoothness

maximization (Todorov and Jordan, 1998) pertencem à classe dos modelos

cinemáticos que se preocupam com a suavidade do movimento, isto é, com a

geometria e o tempo do movimento. As variáveis de interesse são as posições

(como os ângulos das articulções do braço) e as suas respetivas velocidades e

acelerações. Por outro lado, modelos como minimum torque change e minimum

commanded torque change (Nakano et al., 1999) são modelos dinâmicos, isto é,

usam critérios cinéticos para gerar o movimento, como forças. Assim sendo, as

suas variáveis de interesse são o torque (ou binário) da articulação/junta, as

forças que atuam na mão e comandos dos músculos.

Ainda nos modelos de otimização existem aqueles que compreendem ambos

os modelos cinemáticos e dinâmicos, como é o exemplo do modelo minimum

44 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 67: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

variance (Svinin and Yamamoto, 2010; Harris and Wolpert, 1998) que é cine-

mático na sua função objetivo, mas dinâmico (ou cinético) no seu algoritmo

computacional.

Todos estes modelos são baseados em caraterísticas comportamentais presentes

nos movimentos dos braços humanos, consequentemente, no ponto seguinte algumas

destas caraterísticas são apresentadas.

2.3.2.1 Caraterísticas dos Movimentos do Braço

Baseado em observações do comportamento humano, Fitts (1954) apesar de ter apenas

estudado quatro experiências em humanos, afirmou que em qualquer movimento

humano existem regularidades na sua execução. Mais tarde, Rosenbaum et al. (1995),

Flash and Hogan (1985), Morasso (1981) estudaram o comportamento do braço

humano na simples tarefa de alcançar um objeto, estas observações levaram a concluir

que a trajetória da mão apresenta um perfil de velocidade em forma de sino (traduzido

da expressão original em Inglês bell-shaped), ver figura 2.14. De acordo com Flash

and Hogan (1985) foi , ainda, sugerido que o SNC planeia os movimentos do braço

tendo em conta um mínimo deslocamento das articulações (minimum angle jerk),

desde o início até ao fim do movimento.

Figura 2.14: Perfil bell-shaped da velocidade tangencial da mão (imagem retirada de (Flash

and Hogan, 1985)).

Contudo, Rosenbaum et al. (2001) fizeram estudos com humanos em que estes

tinham que alcançar e agarrar um objeto, foi proposta a hipótese de que o SNC planeia

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

45

Page 68: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

os movimentos tendo em conta uma série de posturas memorizadas, o Posture-Based

Motion Planning Model. Basicamente, este modelo seleciona a postura final mais

adequada à tarefa (de entre as posturas em memória) de acordo com uma hierarquia

de restrições, nomeadamente: evitar colisões, minimizar os esforço, precisão do

movimento e eficiência. Consequentemente, de acordo com Elsinger and Rosenbaum

(2003) ficou claro que a seleção da postura final mais adequada à tarefa é selecionada

primeiro e só depois vem a execução do movimento. Assim sendo, o processo de

planeamento de movimentos é dividido em duas fases: 1) seleção de uma postura

final; 2) seleção da trajetória. A figura 2.15 ilustra todo este modelo.

(a) (b) (c) (d)

Figura 2.15: Posture-Based Motion Planning Model introduzida em (Rosenbaum et al.,

2001). (a) posição inicial e respetivo alvo; (b) representação das sete posturas memorizadas

e postura inicial; (c) seleção da postura final; (d) execução do movimento. Imagem retirada

de (Rosenbaum et al., 2001).

A seleção de uma postura final mais adequada é uma caraterística importante,

pois segundo Zhang and Rosenbaum (2008) a forma como nós, humanos, agarramos

um objeto depende do que pretendemos fazer com este. Assim sendo, em simples

tarefas de manipulação de objetos, com um só braço, os humanos preferem adotar uma

posição um quanto desagradável que permita uma postura final bem mais confortável.

Esta caraterística foi descoberta graças a experiências feitas com humanos por

Rosenbaum et al. (1990), em que se chamou a este efeito: end-state comfort effect.

Posteriormente, mais investigações foram levadas a cabo por Rosenbaum e a sua

equipa, para um revisão mais detalhada ver (Rosenbaum et al., 2006). Além de

Rosenbaum, outros investigadores tal como Creem and Proffitt (2001) debruçaram-se

46 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 69: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

sobre este efeito, mas para simples tarefas unimanuais.

2.3.2.2 “End-State Comfort Effect” em Tarefas Bimanuais

As tarefas ou atividades bimanuais, em que requerem o uso dos dois braços e mãos

são tarefas que representam um problema de controlo bem mais complexo, de um

ponto de vista neuro-cognitivo. Veja-se o caso de quando é necessário que as mãos

desempenhem diferentes movimentos, cada mão tende a assimilar caraterísticas

espaciais e temporais do movimento da outra mão. De acordo com os estudos feitos

por Franz et al. (1991) esta caraterística foi demonstrada quando as pessoas (nas

experiências) eram instruídas a desenhar um círculo com uma das mãos e uma linha

com a outra mão, resultando num círculo com uns traços em linha e uma linha

com uns traços de círculo. Ou seja, houve uma assimilação dos padrões espaciais e

temporais de cada movimento. Portanto, por um lado, o SNC tem uma preferência

na sincronização espacial e temporal dos movimentos dos dois braços e mãos, mas,

por outro lado também se preocupa com a antecipação do planeamento atendendo

ao objetivo/ fim da ação, ou seja, o end-state comfort effect para ambos os braços.

Em (Hughes and Franz, 2008) foram realizadas experiências com pessoas de forma

a examinar uma possível interação entre o end-state comfort effect e as restrições de

acoplamento bimanual espaciais e temporais. Neste estudo os participantes adotam

uma idêntica posição inicial, para as duas mãos, que os permite satisfazer o efeito

de conforto final, em tarefas em que o objetivo é colocar os objetos em orientações

finais idênticas. No entanto, quando o objetivo é colocar os objetos em orientações

finais diferentes, a sensibilidade para obter posturas finais confortáveis interfere com

a tendência de adotar posturas iniciais idênticas (em ambos os braços e mãos), e

assim, nem o end-state comfort effect nem o acoplamento bimanual aparece como

uma restrição de planeamento dominante.

Adicionalmente, Weigelt et al. (2006) também realizaram estudos com o obje-

tivo de estudar o end-state comfort effect em casos de manipulação bimanual de

objetos. As experiências foram conduzidas, a fim de se realizar simples tarefas onde

os participantes tinham que alcançar, simultaneamente, duas barras e colocar as

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

47

Page 70: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

extremidades de cada barra num respetivo local da mesa. Os resultados mostraram

que os participantes quase sempre têm tendência para minimizar o desconforto para

ambas as mãos no final da tarefa, mesmo sob condições em que o end-state comfort

effect pode apenas ser alcançado através de diferentes posturas iniciais para cada

braço.

Outros estudos recentes têm sido desenvolvidos por Janssen e os seus colegas

(Janssen et al., 2011, 2010, 2009). Em (Janssen et al., 2010) concluíram que :

• Os participantes quase sempre preferem alcançar uma postura final confortável,

aquando tarefas de manipulação simples em que estes manuseiam dois objetos

com as suas mãos, mesmo tendo que selecionar uma postura inicial assimétrica

(em relação à postura da outra mão) ou estranha e ter que coordenar movimentos

diferentes entre as mãos (mesma conclusão que em (Weigelt et al., 2006));

• Perante movimentos mais complicados, os participantes já não se preocupam

com o alcançar uma postura final confortável, mas têm em conta uma melhor

postura inicial (ou intermédia);

• Movimentos em que os participantes eram livres de escolher as suas postu-

ras iniciais (para os braços), priorizavam o planeamento de posturas finais

confortáveis relativamente à simetria do movimento.

Além disso, em (Janssen et al., 2010) os autores sugerem que existe uma hierar-

quia entre as duas mãos, sendo uma mais dominante que a outra. Posteriormente,

em (Janssen et al., 2011) os autores vieram a observar que o end-state comfort

effect é mais pronunciado no braço direito em comparação com o braço esquerdo,

concluindo, assim, que o planeamento motor é uma função especializada do hemisfério

esquerdo do cérebro (hemisfério esquerdo controla os músculos do lado direito do

corpo humano). Contudo, em (Hughes et al., 2011) os resultados não confirmaram

esta hipótese de dominância do hemisfério esquerdo no planeamento de movimento,

talvez porque, e como argumentado por estes autores, a sua experiência tinha um

nível de precisão menor do que a executada por Janssen e colegas.

48 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 71: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

Esta hipótese de um braço ser mais dominante que o outro, de um hemisfério

ser mais especializado no planeamento do movimento levanta a pergunta de como é

que o cérebro humano processa toda a informação, de como é que planeia e controla

os movimentos dos dois braços e mãos e o porquê de certas assimilações temporais e

espaciais dos movimentos dos dois braços. No ponto seguinte pretende-se abordar

estas questões relativas ao processamento da coordenação dos dois braços.

2.3.2.3 Coordenação Motora dos Braços

A capacidade de coordenação motora depende de vários músculos que atuam em

torno das articulações e fazem mover um determinado membro do corpo humano. No

entanto, os principais problemas da coordenação motora centram-se na coordenação

dos movimentos de membros diferentes, como os dois braços, que neste caso é o

ponto central deste trabalho de dissertação.

A partir da investigação do comportamento humano foi possível recolher dados

que permitem fazer uma descrição do comportamento de coordenação dos dois

braços humanos. Portanto, e de acordo com Cardoso de Oliveira (2002) existem

três modelos que foram projetados segundo essas descobertas, estes são: o programa

motor generalizado (PMG), intermanual crosstalk e o modelo de sistemas dinâmicos.

Programa motor generalizado - Uma das caraterísticas dos movimentos dos

braços humanos que levou ao desenvolvimento do modelo PMG foi a forte

similaridade de caraterísticas espaciais e temporais dos movimentos dos dois

braços. Este modelo é baseado na ideia de que um plano motor comum é

responsável pelo movimento dos dois braços, ver figura 2.16.

Intermanual crosstalk model - este modelo, contrariamente ao PMG, considera

que existem dois planos motores, cada um responsável por um braço. Admite

que existem interações entre os movimentos dos dois braços em determinados

níveis do processo, resultado de entrelaçamentos (crosstalk) de sinais de controlo

dos braços, ver figura 2.17.

Sistemas dinâmicos - funções cognitivas emergem a partir de interações dentro

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

49

Page 72: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

Figura 2.16: Conceito do programa motor generalizado para representar a coordenação

dos movimentos dos braços (representado pela função F). Imagem retirada de (Cardoso de

Oliveira, 2002).

Figura 2.17: Intermanual crosstalk model, onde diferentes movimentos são planeados para

os braços em planos diferentes e podem interagir entre eles em dois níveis. Imagem retirada

de (Cardoso de Oliveira, 2002).

50 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 73: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 2 - Estado da Arte

do sistema nervoso. A atividade neuronal no sistema nervoso central parece

trabalhar num regime dinâmico metaestável. Interações neuronais são a chave

para a dinâmica do sistema nervoso e regulando essas interações, diferentes

estados dinâmicos podem ser realizados, que é a base de diferentes tendências

de acoplamento espaço-temporal entre os braços. A formalização matemática

proporciona uma descrição da organização funcional do sistema sob a forma de

um modelo computacional que automaticamente prevê o comportamento. Por-

tanto, os modelos dinâmicos da coordenação bimanual podem ser compatíveis

com os outros dois modelos descritos anteriormente.

Relativamente a este assunto não existe um consenso nesta área, pois existem

estudos controversos em cada uma destas abordagens o que torna necessário a conti-

nuação do estudo na psicologia e neuropsicologia humana, subjacente aos movimentos

bimanuais.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

51

Page 74: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs
Page 75: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3

Plataforma Robótica ARoS

Este capítulo começa por apresentar, de uma forma geral, como está construída a

plataforma robótica antropomórfica - ARoS, usada na implementação e validação

deste trabalho de dissertação. Adicionalmente, no subcapítulo seguinte é apresentado

o modelo da cinemática direta e inversa dos braços e mãos robóticas.

3.1 Construção e Caraterísticas

Como, anteriormente, foi dito na secção 1.2.1, esta plataforma foi projetada e

construída no Laboratório de Robótica Móvel e Antropomórfica do Departamento

de Eletrónica Industrial da Universidade do Minho. O ARoS, de uma forma geral,

é constituído por um torso (ou tronco) estático, equipado com dois braços e duas

mãos robóticas, um sistema de visão estéreo e um ecrã disposto no seu peito.

Devido ao facto da forma antropomórfica de um robô facilitar a interação entre

humano e robô, como discutido na secção 1.1.2, esta plataforma foi projetada com

dimensões de acordo com estudos antropométricos (Costa e Silva, 2011). O torso

tem uma altura de 1.5 metros e uma largura de 40 centímetros (ver figura 3.1a),

permitindo ao robô ter no total uma altura de 1.85 metros. A figura 3.1b ilustra o

aspeto geral da plataforma robótica.

Relativamente aos braços, cada um é constituído por diferentes segmentos rígidos

conectados por sete juntas rotacionais que permitem um movimento relativo das

53

Page 76: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

(a) (b)

Figura 3.1: Representação geral da plataforma robótica ARoS, em (a) as dimensões do

seu torso e em (b) o seu aspeto completo.

ligações vizinhas. Assim, cada braço apresenta 7-DOFs. Mais, cada braço tem um

peso de 12 kg e consegue levantar pesos a partir do seu end-effector (ou extremidade

do manipulador) num total de 3 kg. A figura 3.2 apresenta imagens do braço, uma

é a foto real do braço, figura 3.2a, enquanto as outras duas figuras 3.2b e 3.2c são

uma representação do braço direito e esquerdo com os seus pontos caraterísticos: S -

ombro, E - cotovelo, W - pulso e H - mão; os sete graus de liberdade, θ1, θ2, θ3, θ4,

θ5, θ6, θ7 do braço direito e θ12, θ13, θ14, θ15, θ16, θ17, θ18 do braço esquerdo, as suas

respetivas direções de rotação e as dimensões dos diferentes segmentos dos braços

(L1, Lu, Ll, Lh).

(a) Braço real do ARoS (b) Braço Direito (c) Braço Esquerdo

Figura 3.2: Representação dos braços robóticos do ARoS

As dimensões associadas a cada segmento do braço, ilustrado na figura 3.2b, são

54 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 77: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

Segmento Dimensão (mm) Descrição

L1 340 distância da base do braço (origem) ao ombro

Lu 395 comprimento do braço superior

Ll 370 comprimento do antebraço

Lh 95 distância do pulso à palma da mão

Tabela 3.1: Dimensões do braço robótico do ARoS.

proporcionais às do braço humano, ver tabela 3.1. Uma outra caraterística importante

é o limite máximo e mínimo que cada uma das sete juntas se pode mover. Como

ambos os braços são dispostos de maneira diferente, um no lado direito e outro no

esquerdo, a direção de rotação em algumas das juntas não são iguais para os dois.

Posto isto, no ponto seguinte abordam-se as caraterísticas da disposição dos braços,

um no lado direito e outro no lado esquerdo da plataforma robótica.

3.1.1 Disposição dos Braços

O braço robótico montado do lado direito do ARoS tem como referencial de origem

do mundo o ponto localizado na sua base, como se pode ver na figura 3.3.

Figura 3.3: Referencial de origem do mundo para o ARoS, localizado na base do braço

direito.

A razão pela qual se optou por definir a origem do mundo na base do braço direito

remonta ao trabalho de Costa e Silva (2011), que permitia facilitar o cálculo da

cinemática.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

55

Page 78: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

No entanto, o braço esquerdo tendo sido, posteriormente, introduzido no ARoS

(ver trabalho de Araújo (2013)), partilha as mesmas caraterísticas que o braço direito,

isto é, o mesmo referencial de origem, as mesmas dimensões, o mesmo número de

juntas, pois ambos os braços são iguais. Assim sendo e de forma a que os braços

apresentem movimentos simétricos, o braço esquerdo não pode estar espelhado em

relação ao direito, pois os movimentos de ambos os braços seriam opostos, como

ilustrado na figura 3.4a. Para tal, o braço esquerdo sofre uma rotação, relativamente

ao referencial de origem, em torno do eixo do x de modo a ficar como representado

na figura 3.4b.

(a) Disposição espelhada dos braços, desvantagem: os movimentos

do braço esquerdo são opostos aos do direito.

(b) Inversão da orientação do braço esquerdo, vantagem: os

movimentos dos dois braços são semelhantes.

Figura 3.4: Esquemático para a razão da disposição do braço esquerdo do ARoS em

relação ao direito. Imagem retirada de (Araújo, 2013).

Com a rotação do braço esquerdo no eixo x do referencial do mundo, a direção

de rotação das juntas θ12, θ14, θ16 e θ18 do braço esquerdo é invertida relativamente

às do braço direito, pois se assim não fosse, o movimento do braço esquerdo estaria

muito limitado. Na tabela 3.2 os limites de cada junta de cada braço são definidos.

56 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 79: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

Braço Direito Braço Esquerdo

Junta Limite da junta Junta Limite da junta

(em graus) (em graus)

θ1 [-165, 165] θ12 [-165, 165]

θ2 [-115, 106] θ13 [-115, 106]

θ3 [-165, 165] θ14 [-165, 165]

θ4 [-115, 106] θ15 [-115, 106]

θ5 [-165, 165] θ16 [-165, 165]

θ6 [-120, 120] θ17 [-120, 120]

θ7 [-165, 165] θ18 [-165, 165]

Tabela 3.2: Limites das sete juntas do braço direito e esquerdo.

De notar, que para além desta inversão do braço esquerdo, este sofre uma

translação em relação ao referencial de origem. Esta translação dá-se porque a base

do braço esquerdo não está localizada no mesmo ponto que a base do direito, mas a

100 mm ao longo do eixo y do referencial de origem do mundo (ver figura 3.3).

Posto isto, têm-se todos os dados necessários para o cálculo das cinemáticas

direta e inversa. No seguinte ponto este tema é abordado tanto para o braço direito

como para o esquerdo.

3.2 Cinemática dos Braços Robóticos

A cinemática é uma ciência do movimento que trata o movimento sem abordar as

forças que o causam. No entanto, segundo Craig (2005) a cinemática de manipuladores

refere-se a todas as propriedades geométricas e temporais do movimento.

A posição de um braço robótico pode ser representada tanto no espaço das juntas

como no espaço cartesiano. O espaço das juntas refere-se à representação da posição

e orientação do braço por meio do conjunto dos ângulos das juntas do manipulador.

Enquanto que o espaço cartesiano refere-se à representação da posição e orientação

de um certo ponto (por exemplo o end-effector), por meio de três coordenadas para

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

57

Page 80: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

definir a orientação e outras três coordenadas para definir a posição. Ao problema

do cálculo da posição e orientação do end-effector de um determinado manipulador,

relativamente a um referencial de origem e a partir da informação do ângulo das

juntas do braço, dá-se o nome de cinemática direta (figura 3.5a). Por outro lado,

o processo inverso do cálculo de todos os conjuntos possíveis de ângulos das juntas,

que possibilitam atingir uma determinada posição e orientação do end-effector do

manipulador robótico, dá-se o nome de cinemática inversa (figura 3.5b). Este

último é um processo bem mais complicado pois para uma determinada posição e

orientação do end-effector podem existir várias possíveis posturas do braço, ou seja,

vários conjuntos de ângulos das juntas devido à redundância do braço robótico.

(a) Problema da cinemática direta (b) Problema da cinemática inversa

Figura 3.5: Em (a) a cinemática direta consiste na passagem da representação no espaço das

juntas para o espaço cartesiano enquanto em (b) a cinemática inversa consiste na passagem

do espaço cartesiano para o espaço das juntas. Imagem retirada e editada de (Craig, 2005).

Os braços robóticos do ARoS apresentam ligações rígidas que estão conectadas

por juntas, que por sua vez rodam e permitem posicionar e orientar os segmentos

do braço que se ligam a estas juntas. De forma a lidar com a complexa geometria

destes braços robóticos e compreender o mecanismo dos movimentos dos braços do

ARoS, desenvolveu-se o processo de cálculo da cinemática direta e inversa para o

braço e mão direita no trabalho de Costa e Silva (2011). No entanto, nos seguintes

subcapítulos explicam-se estes dois processos aplicados em cada um dos dois braços

58 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 81: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

e mãos.

3.2.1 Cinemática Direta do Braço Direito

O primeiro passo para o cálculo da cinemática direta do braço direito é definir um

referencial de origem, que neste caso está localizado bem na base do manipulador

direito (ver figura 3.3). Seguidamente e de forma a facilitar todo o processo coloca-se

o braço na posição zero (como ilustrado na figura 3.6) e estabelece-se para cada junta

do braço i (em que i = 1, . . . , 7) o referencial, xiyizi, de acordo com a convenção

Denavit-Hartenberg (para uma melhor explicação consultar (Craig, 2005).

Figura 3.6: Braço robótico direito na posição zero e respetivos referenciais atribuídos de

acordo com a convenção Denavit-Hartenberg.

De acordo com a figura 3.6, o primeiro conjunto de eixos coordenados, respetivamente,

x0y0z0, está localizado na base do braço direito e é considerado o referencial de origem

do mundo para o ARoS. O segundo e terceiro referencial, respetivamente, x1y1z1 e

x2y2z2, estão localizados no ombro (S) e representam os dois graus de liberdade θ1 e

θ2. O quarto e quinto referenciais estão localizados no cotovelo (E) são referentes a

θ3 e θ4. O sexto e sétimo referenciais estão localizados no pulso (W) e são relativos

a θ5 e θ6. Finalmente temos o referencial x7y7z7 localizado no centro da palma da

mão robótica (H) e que concerne o θ7.

Os parâmetros de Denavit-Hartenberg, que são:

ai−1 - distância de zi−1 a zi, medida ao longo de xi−1;

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

59

Page 82: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

αi−1 - o ângulo entre zi−1 e zi, medido sobre xi−1;

di - distância de xi−1 a xi, medida ao longo de zi;

θi - ângulo entre xi−1 e xi, medido sobre zi.

i αi−1 ai−1 di θi

(em graus) (em mm) (em mm) (em graus)

1 90 0 L1 θ1

2 90 0 0 θ2

3 -90 0 Lu θ3

4 90 0 0 θ4

5 -90 0 Ll θ5

6 90 0 0 θ6

7 -90 0 Lh θ7

Tabela 3.3: Parâmetros de Denavit-Hartenberg para o braço direito de 7-DOFs.

Estes parâmetros,apresentados na tabela 3.3, descrevem as transformações que

ocorrem quando se muda do referencial i−1 para o referencial i (em que i = 1, . . . , 7).

As transformações que definem a relação do referencial i para o i− 1 são dadas a

partir da seguinte expressão geral da matriz de transformação:

i−1Ti = Rotx(αi−1)Transx(ai−1)Trans(di)Rotz(θi) (3.1)

=

cos θi −senθi 0 ai−1

cos(αi−1)senθi cos(αi−1) cos θi −sen(αi−1) −sen(αi−1)disen(αi−1)senθi sen(αi−1) cos θi cos(αi−1) cos(αi−1)di

0 0 0 1

(3.2)

Portanto, a transformação desde a base do braço direito (origem do mundo W)

à primeira junta é definida na matriz 3.3. As juntas i = 2, 4, 6, visto apresentarem

transformações iguais, apresentam a mesma construção da matriz individual, ver

matriz 3.4. O mesmo se aplica às juntas i = 3, 5, 7, onde as suas matrizes individuais

60 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 83: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

estão definidas na matriz 3.5:

0T1 =

cos θ1 −senθ1 0 0

0 0 −1 −L1

senθ1 cos θ1 0 0

0 0 0 1

(3.3)

i−1Ti =

cos θi −senθi 0 0

0 0 −1 0

senθi cos θi 0 0

0 0 0 1

(3.4)

i = 2, 4, 6

i−1Ti =

cos θi −senθi 0 0

0 0 1 Li

−senθi − cos θi 0 0

0 0 0 1

(3.5)i = 3, 5, 7

L3 = Lu, L5 = Ll, L7 = Lh

Multiplicando todas as matrizes anteriores i−1Ti (com i=1,. . . ,7) é possível

obter a matriz respetiva à transformação em todo o manipulador direito, desde o

referencial de origem (W), ou junta 0, até à sua extremidade:

WT7 = WT11T2

2T33T4

4T55T6

6T7 (3.6)

Esta matriz geral permite obter a posição e orientação do end-effector do manipulador

relativamente ao referencial de origem. A posição x, y e z é dada pelos três primeiros

elementos da quarta coluna da matriz 3.7, enquanto a orientação φ, ψ e θ é obtida

das três primeiras linhas da matriz 3.7:

WT7 =

Rot3×3(φ, ψ, θ) Trans3×1(x, y, z)

01×3 1

(3.7)

=

r11 r12 r13 r14

r21 r22 r23 r24

r31 r32 r33 r34

0 0 0 1

(3.8)

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

61

Page 84: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

Assim sendo, a posição da mão direita (H) em x, y e z corresponde aos

elementos r14, r24 e r34 da matriz 3.8, onde:

H = (xmao, ymao, zmao)> =

(−(δ1c5 − β3s5)s6 + δ2c6)Lh + δ2Ll − c1s2Lu

(−δ5s6 + β5c6)Lh + β5Ll − c2Lu − L1

(−(δ3c5 − β4s5)s6 + δ4c6)Lh + δ4Ll − s1s2Lu

(3.9)

No entanto, as coordenadas Cartesianas 3D referentes à posição de outros pontos

do braço podem ser calculadas a partir de transformações da cinemática direta. A

posição dos diferentes pontos do braço, nomeadamente, ombro (S), cotovelo (E) e

pulso (W) é dada pelas seguintes equações:

S = WT1S1 (3.10)

E = WT3E3 (3.11)

W = WT5W5 , (3.12)

onde S1 = E3 = W 5 = (0, 0, 0, 1)>. Assim, cada um destes pontos do braço acima

mencionados apresenta as seguintes expressões da cinemática direta:

S = (xombro, yombro, zombro)> =

0

−L1

0

(3.13)

E = (xcotovelo, ycotovelo, zcotovelo)> =

−c1s2Lu

−c2Lu − L1

−s1s2Lu

(3.14)

W = (xpulso, ypulso, zpulso)> =

δ2Ll − c1s2Lu

β5Ll − c2Lu − L1

δ4Ll − s1s2Lu

(3.15)

Quanto à orientação da mão direita, apenas interessam os dados respetivos à

rotação na matriz WT7 ( 3.7), nomeadamente as três primeiras colunas:

x7 =

((δ1c5 − β3s5)c6 + δ2s6)c7 − (δ1s5 + β3c5)s7

(δ5c6 + β5s6)c7 − δ6s7

((δ3c5 − β4s5)c6 + δ4s6)c7 − (δ3s5 + β4c5)s7

(3.16)

62 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 85: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

y7 =

−((δ1c5 − β3s5)c6 + δ2s6)s7 − (δ1s5 + β3c5)c7

−(δ5c6 + β5s6)s7 − δ6c7

−((δ3c5 − β4s5)c6 + δ4s6)s7 − (δ3s5 + β4c5)c7

(3.17)

z7 =

−(δ1c5 − β3s5)s6 + δ2c6

−δ5s6 + β5c6

−(δ3c5 − β4s5)s6 + δ4c6

, (3.18)

onde:

β1 = c1c2c3 − s1s3, β2 = s1c2c3 + c1s3,

β3 = c1c2s3 + s1c3, β4 = s1c2s3 − c1c3,

β5 = s2c3s4 − c2c4, β6 = −s2c3c4 − c2s4,

δ1 = β1c4 − c1s2s4, δ2 = β1s4 − c1s2c4,

δ3 = β2c4 − s1s2s4, δ4 = −β2s4 − s1s2c4,

δ5 = β6c5 + s2s3s5, δ6 = −β6s5 − s2s3c5,

ci = cos(θi) e si = sen(θi), com i = 1, . . . , 7.

De forma a se obter uma relação entre a posição e orientação da mão direita e a

posição e orientação do objeto-alvo, relacionam-se os referenciais, x7y7z7 e xtarytarztar,

como ilustra a figura 3.7.

Figura 3.7: Referenciais da mão direita e do objeto-alvo relativamente ao referencial de

origem do mundo. A posição, H, da mão direita é dada pela origem do referencial e a rotação

pelos eixos x7, y7 e z7. A posição do objeto-alvo, Xtar, é dada pela origem do seu referencial

e a orientação é dada pelos seus eixos xtar, ytar e ztar.

Estas relações variam de acordo com o tipo de grip usado (ver na figura 1.7

alguns tipos de grip).

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

63

Page 86: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

3.2.2 Cinemática Inversa do Braço Direito

Considere-se que a posição e orientação da mão robótica do ARoS é: H = (x7, y7, z7,

φ7, ψ7, θ7), e se quer calcular o conjunto dos ângulos das juntas do braço, respetiva-

mente (θ1, . . . , θ7), que permitem ao braço posicionar a sua mão no ponto definido

em H. Para tal e como primeiro passo na solução do problema da cinemática inversa

é necessário solucionar o problema da redundância do braço robótico, que tal como o

braço humano, apresenta 7-DOFs e onde um deles é considerado como um extra grau

de liberdade. Este extra DOF permite que o braço, mais precisamente o cotovelo,

para uma determinada posição e orientação da mão possa se posicionar ao longo de

uma circunferência imaginária, centrada num eixo entre o ombro e o cotovelo, como

se pode ver na figura 3.8.

Figura 3.8: Braço robótico do ARoS e a sua redundância: para uma determinada posição

e orientação do end-effector existe uma vasta gama de possíveis posturas para o braço.

Esta redundância em termos da cinemática inversa resulta numa vasta gama

de possíveis posturas que o braço pode adotar de forma a se conseguir posicionar

e orientar num determinado ponto. E como tal, de forma a resolver o problema

das múltiplas possíveis soluções, seleciona-se um determinado α, pois para cada α

corresponde uma única solução da cinemática inversa.

Seguidamente, são apresentados os passos para o desenvolvimento do algoritmo

da cinemática inversa dado um determinado α.

64 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 87: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

3.2.2.1 1o Passo: Determinar a posição e orientação do pulso

Dada a posição e orientação de um objeto-alvo:

Xtar = (xtar, ytar, ztar, φtar, ψtar, θtar)> , (3.19)

relaciona-se a posição da mão robótica (ou palma da mão) com a posição do objeto-

alvo relativamente à orientação pretendida1. Deste modo, a posição da mão é definida

na seguinte equação:

H = (xtar, ytar, ztar)> + xtarLobj , (3.20)

onde

xtar = (cos(φtar) cos(ψtar), sen(φtar) cos(ψtar),−sen(ψtar))> (3.21)

e Lobj é a distância da palma da mão robótica ao centro do objeto.

A partir da equação 3.20 é possível calcular a posição do pulso:

W = H + xtarLh , (3.22)

onde Lh é o comprimento do segmento da mão (ver figura 3.2).

3.2.2.2 2o Passo: Calcular θ4

O passo seguinte consiste em calcular o ângulo do cotovelo, pois este é independente

do valor de α. Assim, e representando o braço de uma forma que permita o seu

estudo trigonométrico, como ilustrado na figura 3.9 é possível através do Teorema do

Cosseno calcular o valor de θ4 do seguinte modo:

L2SW = L2

u + L2l − 2LuLl cos(π − θ4) (3.23)

⇔ θ4 = −arcsen(−L2

u − L2l + L2

SW

2LuLl

)(3.24)

Note-se que admitimos apenas uma solução de θ4, visto que o braço humano

não permite que o cotovelo se mova na direção oposta à representada na figura 3.9.1A orientação depende do tipo de grip com que se pretende que o robô agarre o objeto (fig. 3.7).

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

65

Page 88: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

Figura 3.9: Representação trigonométrica para o cálculo de θ4 a partir do Teorema do

Cosseno (imagem retirada de (Costa e Silva, 2011)).

Figura 3.10: Representação do referencial do centro da circunferência (C), respetiva à

caraterística redundante do braço robótico e representação trigonométrica do braço para

aplicação do Teorema do Cosseno ao triângulo [SEW](imagens retiradas de (Costa e Silva,

2011)).

3.2.2.3 3o Passo: Determinar a posição e orientação do cotovelo a partir

de α

Como já referido anteriormente, o cotovelo roda em torno de um eixo referente

à distância entre o ombro (S) e o pulso (W), posicionando-se ao longo de uma

circunferência “imaginária” (ver figura 3.8). De forma a determinar a posição

e orientação do cotovelo, define-se um referencial no centro dessa circunferência

(vSW , u, v), como se pode ver na figura 3.10. Com vSW como um vetor unitário desde

a posição do ombro à do pulso e paralelo ao plano da base do braço xWy, u como

66 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 89: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

um vetor normal a vSW , e v como o produto de u e vSW :

v = u× vSW (3.25)

Novamente, a partir do Teorema do Cosseno (ver figura 3.10) calcula-se o cos(β):

L2l = L2

u + L2SW − 2LuLSW cos(β) (3.26)

⇔ cos(β) =(L2u + L2

SW − L2l

2LuLSW

)(3.27)

O centro (C) e o raio (R) da circunferência são descritos do seguinte modo:

C = S + cos (β)LuvSW (3.28)

R = Lu

√1− cos2 (β) (3.29)

A posição do cotovelo (E), dado um determinado α é então descrita na seguinte

equação:

E = C +R [cos (α) u+ sen(α)v] (3.30)

Relativamente à orientação do cotovelo, sabe-se que a sua rotação é perpendicular

ao plano que contém S, E e W, por isso, x4, y4 e z4 é dado por:

x4 = y4 × z4, y4 = vEW , z4 = vSW × vCE (3.31)

3.2.2.4 4o Passo: Determinar θ1, θ2 e θ3

De forma a calcular θ1, θ2 e θ3 define-se a matriz de rotação respetiva ao conjunto

das juntas do ombro ao cotovelo, onde compreende estes DOFs. Esta matriz de

rotação 3× 3, nomeadamente 0R4, apresenta como colunas os vetores x4, y4, z4:

0R4 =[x4 y4 z4

](3.32)

Note-se que estes vetores foram anteriormente apresentados em 3.31.

Dado que θ4 foi já determinado em 3.24 e sabendo a matriz de rotação, 3R4,

apresentada na matriz de transformação 3.4. Pode-se proceder ao seguinte raciocínio,

de forma a obter a matriz de rotação, respetiva às juntas θ1, θ2 e θ3:

0R4 = 0R33R4 (3.33)

⇔ 0R3 = 0R4(

3R4)>

(3.34)

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

67

Page 90: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

Por outro lado multiplicando as matrizes individuais de rotação de cada uma

das três primeiras juntas, obtém-se:

0R3 = 0R11R2

2R3 (3.35)

=

c1c2c3 − s1s3 −c1c2s3 − s1c3 −c1s2

−s2c3 s2s3 −c2

s1c2c3 + c1s3 −s1c2s3 + c1c3 −s1s2

(3.36)

Relacionando ambos os resultados de 3.34 e 3.36, são obtidas duas soluções

para θ2:

θ2 = arctan2

(+−√

1− (r23)2,−r23

)(3.37)

Para cada uma destas soluções, θ1 e θ3 podem ser determinados segundo as seguintes

equações:

θ1 = arctan2

(−r33s2,−r13

s2

)(3.38)

θ3 = arctan2

(−r22s2,−r21

s2

)(3.39)

De notar que quando sen(θ2) = 0 é atingido um ponto de singularidade. Para

solucionar este problema a primeira junta do ombro deve ser zero (θ1 = 0) e a

terceira junta deve ser usada para controlar a orientação do braço superior (θ3 =

arctan2 (r31, r32)).

3.2.2.5 5o Passo: Determinar θ5, θ6 e θ7

De forma a calcular θ5, θ6 e θ7 define-se a matriz de rotação respetiva ao conjunto das

juntas do ombro ao pulso, que compreende estes DOFs. Esta matriz de rotação 3× 3,

nomeadamente 0R7, apresenta como colunas os vetores x7, y7, z7:

0R7 =[x7 y7 z7

](3.40)

Note-se que estes vetores são de acordo com o tipo de grip que se pretende usar e

com a posição e orientação do objeto-alvo.

Sabendo que a matriz 0R7 pode ser definida do seguinte modo:

0R7 = 0R44R7 (3.41)

68 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 91: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

e dado que a matriz 0R4 já é conhecida, calcula-se a matriz 4R7:

4R7 =(

0R4)T 0R7 (3.42)

Por outro lado multiplicando as matrizes individuais de rotação de cada uma

das três últimas juntas e obtém-se:

4R7 = 4R55R6

6R7 (3.43)

=

c5c6c7 − s5s7 −c5c6s7 − s5c7 −c5s6

s6c7 −s6s7 c6

−s5c6c7 − c5s7 s5c6s7 − c5c7 s5s6

(3.44)

Relacionando ambos os resultados de 3.42 e 3.44, são obtidas duas soluções

para θ6:

θ6 = arctan2

(+−√

1− (r23)2, r23

)(3.45)

Para cada uma destas soluções, θ5 e θ7 podem ser determinados segundo as seguintes

equações:

θ5 = arctan2

(r33s6,−r13

s6

)(3.46)

θ7 = arctan2

(−r22s6,r21s6

)(3.47)

De notar que quando sen(θ6) = 0 é atingido um ponto de singularidade. Para

solucionar este problema a primeira junta do pulso deve ser zero (θ5 = 0) e a sétima

junta deve ser usada para controlar a orientação da mão (θ7 = arctan2 (r12, r32)).

3.2.3 Cinemática Direta do Braço Esquerdo

Para o desenvolvimento do cálculo da cinemática direta do braço esquerdo, procede-se

de forma análoga à do braço direito, no entanto, é necessário considerar a transfor-

mação que o braço esquerdo sofre para se posicionar devidamente (Araújo, 2013).

Isto quer dizer que, primeiramente, estabelece-se o referencial de origem do mundo

(W), respetivamente xW yW zW . Este referencial encontra-se localizado na base do

manipulador direito, como ilustra a figura 3.11. Seguidamente, coloca-se o braço na

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

69

Page 92: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

posição zero e estabelece-se para cada junta do braço robótico os seus respetivos refe-

renciais, xiyizi (com i = 12, . . . , 18), de acordo com a convenção Denavit-Hartenberg

(Craig, 2005).

Figura 3.11: Braço robótico esquerdo na posição zero e respetivos eixos coordenados de

acordo com a convenção Denavit-Hartenberg.

De acordo com a figura 3.11, tem-se a origem do mundo (W), posteriormente, a

uma distância de LW0 do referencial de origem encontram-se os eixos x0y0z0 que

representam a base do braço esquerdo. No ombro (S) são considerados os referenciais

x12y12z12 e x13y13z13 que representam, respetivamente θ12 e θ13. O cotovelo (E)

está representado com outros dois referenciais, nomeadamente x14y14z14 e x15y15z15,

referentes a θ14 e θ15. Os referenciais de θ16 e θ17 estão dispostos no pulso (W). Por

último, o referencial de θ18 está localizado no cento da palma da mão (H).

Os parâmetros de Denavit-Hartenberg são apresentados na tabela 3.4. Posterior-

mente e segundo estes parâmetros, definem-se as matrizes de transformação referentes

a cada junta. Assim sendo, a transformação desde a origem do mundo (W) à base

do braço esquerdo é definida na matriz 3.48. A transformação da base à primeira

junta do braço é definida na matriz 3.49. As juntas 13, 15 e 17 visto apresentarem

transformações iguais, apresentam matrizes individuais iguais, ver matriz 3.50. O

mesmo se aplica às juntas 14, 16 e 18, onde as suas matrizes individuais estão

definidas na matriz 3.51.

70 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 93: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

i αi−1 ai−1 di θi

(em graus) (em mm) (em mm) (em graus)

0 180 0 LW0 -

12 90 0 L1 θ12

13 90 0 0 θ13

14 -90 0 Lu θ14

15 90 0 0 θ15

16 -90 0 Ll θ16

17 90 0 0 θ17

18 -90 0 Lh θ18

Tabela 3.4: Parâmetros de Denavit-Hartenberg para o braço esquerdo de 7-DOFs.

WT0 =

1 0 0 0

0 cos (180) sen (180) 100

0 −sen (180) cos (180) 0

0 0 0 1

(3.48)

0T12 =

cos θ12 −senθ12 0 0

0 0 −1 − L1

senθ12 cos θ12 0 0

0 0 0 1

(3.49)

i−1Ti =

cos θi −senθi 0 0

0 0 −1 0

senθi cos θi 0 0

0 0 0 1

(3.50)i = 13, 15, 17

i−1Ti =

cos θi −senθi 0 0

0 0 −1 −Li

−senθi − cos θi 0 0

0 0 0 1

(3.51)i = 14, 16, 18

L3 = Lu, L5 = Ll, L7 = Lh

Com a multiplicação de todas as matrizes anteriores, obtém-se a matriz respetiva

à transformação de todo o braço esquerdo:

WT18 = WT00T12

12T1313T14

14T1515T16

16T1717T18 (3.52)

A posição dos diferentes pontos do braço, nomeadamente, ombro (S), cotovelo

(E), pulso (W) e mão (H) é dada pelas seguintes equações:

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

71

Page 94: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

S = WT12S12 (3.53)

E = WT14E14 (3.54)

W = WT16W16 (3.55)

H = WT18H18 (3.56)

, onde S12 = E14 = W 16 = H18 = (0, 0, 0, 1)>. Resultando, assim, nas seguintes

expressões da cinemática direta:

S = (xombro, yombro, zombro)> =

0

L1 + 100

0

(3.57)

E = (xcotovelo, ycotovelo, zcotovelo)> =

−c12s13Lu

c13Lu + L1 + 100

s12s13Lu

(3.58)

W = (xpulso, ypulso, zpulso)> =

−c12s13Lu + Llµ1

c13Lu + Llµ2 + L1 + 100

s12s13Lu + Llµ3

(3.59)

H = (xmao, ymao, zmao)> =

Lhµ4 − c12s13Lu + Llµ1

−Lhµ6 + c13Lu + Llµ2 + L1 + 100

Lhµ7 + s12s13Lu + Llµ3

(3.60)

Quanto à orientação da mão esquerda, esta é obtida através da matriz WT18

(presente em 3.52), onde se consideram os dados referentes à rotação de modo a

extrair:

x18 =

c18µ9 + s18µ1o

c18o11 − s18o12

c18o13 + s18o14

(3.61)

y18 =

c18o15 − s18o

−c18o15 − s18o11

c18o3 − s18o4

(3.62)

z18 =

c17µ5 + s17o6

c17µ2 − s17o8

c17µ3 + s17o10

, (3.63)

72 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 95: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

onde:

µ1 = s15s12s14 − c12c13c14 − c12c15s13

µ2 = c13c15 − c14s13s15

µ3 = s15 (c12s14 + c13c14s12) + c15s12s13

µ4 = c17µ5 + s17o17

µ5 = s15 (s12s14 − c12c13c14)− c12c15s13

µ6 = s17o8 − c17µ2

µ7 = c17µ3 + s17o10

µ8 = c15 (s12s14 − c12c13c14) + c12s13s15

µ9 = s17µ5 − c17o6

µ10 = s16µ8 − c16 (c14s12 + c12c13s14)

o11 = c17o8 + s17µ2

o12 = s16 (c13s15 + c14c15s13) + c16s13s14

o13 = s17µ3 − c17o10

o14 = s16o16 − c16 (c12c14 − c13s12s14)

o15 = s16o8 − c16 (s12c14 + c12c13s14)

o3 = s16o16 − c16 (c12c14 − c13s12s14)

o = s17µ5 − c17o6

o4 = s17µ3 − c17o10

o6 = c16µ8 + s16 (c14s12 + c12c13s14)

o8 = c16 (c13s14 + c14c15s13)− s13s14s16

o10 = c16o16 + s16 (c12c14 − c13s12s14)

o16 = c15 (c12s14 + c13c14s12)− s12s13s15

ci = cos(θi) si = sen(θi), i = 12, . . . , 18

De forma a se obter a posição e orientação da extremidade do braço robótico

relativamente ao objeto-alvo, relacionam-se os referenciais da mão, x18y18z18, e do

objeto, xtarytarztar, como ilustra a figura 3.12. De realçar que estas relações variam

Figura 3.12: Referenciais da mão esquerda e do objeto-alvo. A posição, H, da mão esquerda

é dada pela origem do referencial e a rotação pelos eixos x18, ˆy18 e ˆz18. A posição do

objeto-alvo, Xtar, é dada pela origem do seu referencial e a orientação é dada pelos seus

eixos xtar, ytar e ztar.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

73

Page 96: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

de acordo com o tipo de grip que se pretende usar.

3.2.4 Cinemática Inversa do Braço Esquerdo

Considere-se que a posição e orientação do end-effector do manipulador é H =

(x18, y18, z18, φ18, ψ18, θ18) e se quer calcular o conjunto dos ângulos das juntas do

braço esquerdo, respetivamente (θ12, . . . , θ18).

Para resolver este problema da cinemática inversa procede-se de igual forma

como para o braço direito, fazendo apenas algumas modificações. Estas alterações

são:

• Devido à transformação sofrida pelo braço esquerdo relativamente ao braço

direito explicada na secção 3.1.1, é necessário proceder a uma translação e

rotação. A rotação ao longo do eixo x corresponde à inversão do valor de y do

objeto-alvo, como se pode ver na figura 3.13.

Figura 3.13: Rotação ao longo do eixo x para representar a transformação ocorrida no

braço esquerdo.

A translação ao longo do eixo y corresponde à adição da distância entre a

origem do mundo (W) e a base do braço esquerdo ( LW0) ao valor de y do

ponto de destino. Com isto, a posição e orientação do alvo é dado por:

Xtar = (xtar,−ytar + LW0, ztar, φtar, ψtar, θtar)> (3.64)

• Calculados os valores dos ângulos das juntas usando o algoritmo da cinemática

inversa do braço direito e considerando o novo valor de coordenadas do alvo

(como anteriormente descrito), o valor das juntas ímpares tem que ser invertido

como já mencionado na secção 3.1.1.

74 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 97: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

3.3 Mãos Robóticas

As mãos robóticas do ARoS são as BK-8-series de Barrett-Hand. Cada uma tem

três dedos, cada dedo tem duas juntas com um limite de movimento de 140 graus

e 48 graus (ver figura 3.14a), no entanto apenas se considera 1-DOF para cada

dedo. Adicionalmente os dedos F1 e F2 rodam em sincronia, ao longo da base da

mão robótica num limite de 180 graus, este movimento é chamado de spread (ver

figura 3.14b).

(a) (b)

Figura 3.14: Caraterísticas e dimensões das mãos robóticas do ARoS.

Na tabela 3.5 e figura 3.14 as dimensões da mão são descritas.

Parâmetros AW A1 A2 A3 D3 φ2 φ3

Dimensões 25 mm 50 mm 70 mm 50 mm 9.5 mm 2.46 graus 50 graus

Tabela 3.5: Dimensões da mão robótica e outros parâmetros.

3.3.1 Cinemática Direta da Mão

De forma a obter as coordenadas dos pontos da mão, nomeadamente os pontos dos

dedos é necessário descrever a cinemática direta da mão (trabalho de Costa e Silva

(2011)). Para tal e como o procedido para os dois braços do ARoS, preenche-se a

tabela com os parâmetros de Denavit-Hartenberg (ver tabela 3.6) de acordo com as

juntas da mão: θ8 para o spread e θ9, θ10 e θ11 para cada DOF dos três dedos (ver a

figura 3.15).

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

75

Page 98: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

Figura 3.15: Representação das juntas da mão robótica θmao = (θ8, θ9, θ10, θ11)>. Imagem

retirada de (Costa e Silva, 2011).

Para cada dedo k (com k = 1, 2, 3), a tabela com os parâmetros de Denavit-

Hartenberg é a descrita em 3.6 e as suas correspondentes matrizes de transformação

são as apresentadas em 3.65, 3.67, 3.66 e 3.68. A partir destas matrizes de

transformação é possível obter a posição da ponta do dedo k, que é dada pela

equação 3.69.

i αi−1 ai−1 di θi

(em graus) (em mm) (em mm) (em graus)

k,8 0 rkAw 0 a = rkθ8 − 90jkk,9 90 A1 0 b = φ2 + θ8+k

k,10 0 A2 0 c = φ3 + 13θ8+k

k,11 -90 A3 D3 0

Tabela 3.6: Parâmetros de Denavit-Hartenberg para cada dedo k da mão robótica,

onde r = (−1, 1, 0)> e j = (−1,−1, 1)>

7Tk,8 =

ca −sa 0 rkAW

sa ca 0 0

0 0 1 0

0 0 0 1

(3.65) k,8Tk,9 =

cb −sb 0 A1

0 0 −1 0

sb cb 0 0

0 0 0 1

(3.66)

76 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 99: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

k,9Tk,10 =

cc −ca 0 A2

sc cc 0 0

0 0 1 0

0 0 0 1

(3.67) k,10Tk,11 =

1 0 0 A3

0 0 1 D3

0 −1 0 0

0 0 0 1

(3.68)

Fk =(WT7

7Tk,8k,8Tk,9

k,9Tk,10k,10Tk,11

)11Fk , (3.69)

onde 11Fk = (0, 0, 0, 1)> e WT7 é a transformação geral do braço direito.

De notar que este algoritmo é válido para cada uma das mãos, apenas difere

na matriz geral de transformação do braço, sendo que para o braço esquerdo na

expressão anterior (equação3.69) a matriz de transformação do braço é a WT18,

apresentada em3.52.

3.3.2 Cinemática Inversa da Mão

Para o processo da cinemática inversa da mão (trabalho de Costa e Silva (2011))

apenas se considera uma postura da mão em que esta tem os dedos F1 e F2 opostos

ao dedo F3, consequentemente θ8 = 0 e todos os ângulos das juntas dos dedos são

iguais, ou seja, θ9 = θ10 = θ11. Para esta postura da mão define-se a distância entre

os dedos dFF (como representado na figura 3.15), como a distância do ponto médio

entre F1 e F2 a F3. Por outro lado, define-se dFH como a distância da palma da mão

às pontas dos dedos. Ambas estas distâncias são funções de θ9 e são dadas por:

dFF = 2[A3 cos

(θ′′9

)−D3 sen

(θ′′9

)+A2 cos

(θ′9

)+A1

](3.70)

dFH = A3 sen(θ′′9

)+D3 cos

(θ′′9

)+A2 sen

(θ′′9

), (3.71)

onde θ′9 = θ9 + φ2; θ′′9 = 3

4θ9 + φ2 + φ3 θ′′9 e φ2, φ3, Ak (com k = 1, 2, 3) e D3 são

parâmetros apresentados na tabela 3.5.

De forma a se obter θ9 (consequentemente θ10 e θ11) pelas equações anteriores,

estabelece-se que a distância dFF deve ser igual ao diâmetro do objeto-alvo ( dobj):

2[A3 cos

(θ′′9

)−D3 sen

(θ′′9

)+A2 cos

(θ′9

)+A1

]= dobj (3.72)

De notar que este cálculo da cinemática inversa é aplicado aos valores da

juntas da mão direita, no entanto para a mão esquerda e como esta tem as mesmas

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

77

Page 100: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 3 - Plataforma Robótica ARoS

caraterísticas, isto é, possui 4-DOFs denotados por θ19, θ20, θ21, θ22, o cálculo é o

mesmo apenas se trocam as juntas da mão direita pelas da esquerda do seguinte

modo:

θ8 → θ19 = 0

θ9 → θ20

θ10 → θ21

θ11 → θ22

78 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 101: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4

Planeamento de Movimento

Bimanual Síncrono

Neste capítulo é descrito o sistema de movimento bimanual síncrono. Este modelo

de planeamento, essencialmente, é a extensão do modelo unimanual apresentado na

secção 1.2.1, para um modelo bimanual, em que conta com ideias e conceitos do

Controlo Motor Humano.

Primeiramente, numa visão geral, começa-se por apresentar os factos que inspi-

raram a extensão do modelo de planeamento de movimentos e os pontos essenciais

constituintes do modelo. Nos subcapítulos seguintes são descritos os aspetos relativos

ao planeamento de movimentos bimanuais síncronos de forma “human-like” e livres

de colisões. Por último, representa-se de uma forma matemática os problemas de

otimização do modelo e dão-se alguns detalhes acerca do software de otimização

usado para a resolução destes problemas.

4.1 Visão Geral

De forma a dotar o ARoS de movimentos bimanuais, a partir do sistema de planea-

mento de movimentos unimanuais e bimanuais assíncronos, descrito na secção 1.2.1,

algumas modificações são necessárias. Para tal, nesta secção é proposta a extensão

do modelo de planeamento de movimento unimanual para bimanual.

79

Page 102: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

Como o principal objetivo são movimentos bimanuais, torna-se importante

investigar a capacidade humana de coordenação dos membros superiores. Por isso

e como apresentado no Capítulo do Estado da Arte da Manipulação Bimanual nos

Humanos, respetivamente na secção 2.3.2.3, existem três modelos que explicam certos

processos neuronais subjacentes à coordenação bimanual humana: o programa motor

generalizado (PMG), intermanual crosstalk e o modelo de sistemas dinâmicos. No

entanto, não existe um consenso entre eles, pois cada um destes processos explica

certos comportamentos de coordenação dos braços. Contudo, a forte tendência

de sincronização temporal e espacial dos movimentos dos dois braços é altamente

suportada pela ideia de que uma única unidade é responsável pela manipulação

bimanual (Schmidt, 1975) - modelo PMG. O que torna este modelo vantajoso na

medida em que o número de DOFs independentes a controlar é reduzido e o sistema

torna-se, assim, mais eficiente como de acordo com Cardoso de Oliveira (2002).

Adicionalmente e aquando de movimentos simultâneos por parte dos dois braços, este

modelo propõe que as caraterísticas comuns ao movimento dos dois braços, como o

tempo 1, sejam especificados antes de executar o movimento (Schmidt et al., 1979).

Adicionalmente, outros estudos como os realizados por Kelso et al. (1979b,a),

demonstram que os humanos perante a simples tarefa de alcançar dois objetos a

diferentes distâncias, iniciam e acabam o movimento dos dois braços ao mesmo tempo,

diferindo de velocidade entre eles e atingindo os picos de velocidade e aceleração

quase no mesmo instante. O que sugere que o cérebro humano controla ambos os

braços como se estes representassem uma única unidade. Porém, outros estudos

mais atuais de Kazennikov and Wiesendanger (2005); Perrig et al. (1999); Weiss and

Jeannerod (1998) reafirmam esta teoria constatando que as pessoas perante tarefas

bimanuais assimétricas do dia a dia humano tendem a sincronizar os movimentos

dos dois braços.

1De acordo com Schmidt et al. (1979) e com base nos estudos de Kelso et al. (1979b,a), é tentador

assumir que uma das caraterísticas comuns aos dois braços é o tempo do movimento, quando estes

se movem simultaneamente, mas não existe uma certeza, pois alguns estudos indicam que o tempo

do movimento aumenta quando o movimento é re-planeado.

80 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 103: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

“Goal-synchronization is a tipical feature of bimanual everyday skills.”

(Kazennikov and Wiesendanger, 2005)

Portanto, considerando os factos relacionados com as observações aos movimentos

e comportamento dos braços humanos, perante a realização de tarefas bimanuais,

optou-se por estender o modelo de planeamento de movimento unimanual (Costa e

Silva, 2011) para bimanual síncrono, num só modelo de modo a considerar os

dois braços no mesmo planeamento de movimento. Assim, de um modo geral, o

modelo de planeamento de movimentos bimanuais síncronos apresenta as seguintes

caraterísticas:

• O planeamento do movimento do braço-mão direito e esquerdo é realizado no

espaço das juntas, a configuração das variáveis das juntas é representada por

um vetor com 22 elementos: θ = (θ1, θ2, . . . , θ22)> em que θR = (θ1, . . . , θ11)>

são as juntas do braço e mão direita e θL = (θ12, . . . , θ22)> são as juntas do

braço e mão esquerda.

• As juntas dos braços apresentam uma velocidade angular com uma forma bell-

shaped, significando isto, que os movimentos são suaves, começando e acabando

com velocidade zero e alcançando o pico da velocidade a meio do movimento.

O que indica que o movimento é gerado tendo em conta um mínimo custo

de deslocamento das juntas, da posição inicial à final, como de acordo com

Rosenbaum et al. (2001, 1995) que propõe o critério minimum angular jerk2

para explicar este comportamento. Por sua vez serve de inspiração ao modelo

de planeamento de movimento proposto neste trabalho.

• O movimento dos dois braços é sincronizado e estes atingem o pico de velocidade

aproximadamente no mesmo momento (Kelso et al., 1979b,a; Kazennikov and

Wiesendanger, 2005; Perrig et al., 1999; Weiss and Jeannerod, 1998).

2Princípio apresentado por vários outros autores como: Friedman and Flash (2009); Wada and

Kawato (2004).

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

81

Page 104: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

• O planeamento de movimento, inspirado no Posture-Based Motion Planning

Model de Rosenbaum et al. (2001) continua a ser dividido em dois problemas,

mas agora cada um dos problemas engloba o tratamento de ambos os braços e

mãos robóticas. Ou seja:

1. Seleção de duas posturas finais, uma postura final para o braço-mão

direito e outra para o esquerdo.

2. Seleção de duas trajetórias livres de colisões e suaves, referentes ao

movimento do braço-mão direito e esquerdo desde a postura inicial à

postura final.

A seleção das posturas finais é calculada antes do cálculo das trajetórias e estas

variam em função das posturas iniciais do braço-mão direito e esquerdo.

O processo do planeamento de movimento bimanual síncrono encontra-se es-

quematizado na figura 4.1. O planeamento começa, primeiro, por selecionar as

posturas finais para o braço direito e esquerdo com base nas posturas iniciais dos

braços, nos tipos de grip pretendidos para cada uma das mãos3, no objeto-alvo (ou

posição de destino) para cada braço4 e com base em todos os objetos presentes no

cenário.

Calculadas as posições finais apropriadas procede-se para o cálculo das traje-

tórias para ambos os braços e mãos. Como tal e de forma a produzir trajetórias livres

de colisões, da postura inicial à postura final calculada, é determinada a postura de

bounce que permite o cálculo do movimento de back-and-forth, a ser sobreposto

ao movimento direto. O movimento direto é um movimento da posição inicial à

final que considera apenas aspetos como a velocidade e a forma suave do movimento,

ou seja, é responsável pela forma bell-shaped.

3Os tipos de grip são previamente definidos consoante a tarefa a realizar, num próximo subcapítulo

serão apresentadas as posturas desenvolvidas que permitem a mão agarrar um determinado objeto

de diferentes formas.4De notar que pode ser apenas definido um alvo para ambos os braços robóticos ou dois alvos

diferentes, um para o braço direito e outro para o esquerdo.

82 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 105: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

Como as trajetórias geradas por este sistema de planeamento de movimento são

predefinidas com um tempo normalizado, então, antes de se executar o movimento é

necessário calcular o tempo total, que neste caso é igual para ambos os braços direito

e esquerdo.

Figura 4.1: Fluxograma do processo de planeamento de movimento bimanual síncrono.

4.2 Seleção das Posturas Finais

As posturas finais apropriadas para cada braço e mão doARoS, θf = (θ1,f , θ2,f , . . . , θ22,f )>,

onde θR,f = (θ1,f , . . . , θ11,f )> representa o vetor dos valores dos ângulos das juntas

do braço e mão direita e θL,f = (θ12,f , . . . , θ22,f )> o vetor dos valores dos ângulos das

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

83

Page 106: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

juntas do braço e mão esquerda, são calculadas a partir de um conjunto de possíveis

posturas admissíveis para os dois braços, Θf ⊂ R14, que:

• Permitam os objetos serem agarrados, ou o braço se posicionar num deter-

minado ponto com o tipo de grip escolhido para a mão direita, θmaoR,f =

(θ8,f , θ9,f , θ10,f , θ11,f )>, e mão esquerda, θmaoL,f = (θ19,f , θ20,f , θ21,f , θ22,f )>.

Os valores destas juntas da mão são determinados consoante o tipo de grip,

como se pode ver na secção 4.2.2;

• Minimizem o custo associado ao movimento das juntas do braço direito e es-

querdo, da postura inicial, (θ1,0, . . . , θ7,0, θ12,0, . . . , θ18,0)>, à final5, (θ1,f , . . . , θ7,f ,

θ12,f , . . . , θ18,f )>, com base no princípio do minimun angular jerk. Isto pode

ser formulado através do seguinte problema de otimização:

minΘf⊂R14

7∑k=1

λk(θk,0 − θk,f )2 +18∑

k=12λk(θk,0 − θk,f )2, (4.1)

em que λk > 0 representa um fator de custo associado a cada junta k com k =

1, . . . , 7 e k = 12, . . . , 18. As 14 juntas são respetivas aos braços direito e

esquerdo (7 juntas do braço direito e 7 juntas do esquerdo).

O problema em determinar, (θ1,0, . . . , θ7,0, θ12,0, . . . , θ18,0)>, pertencente ao

conjunto de admissíveis posturas Θf ⊂ R14 é ultrapassado reformulando o

problema 4.1 como um problema de otimização com restrições, nomeadamente:

restrição 1: os limites físicos das juntas dos braços robóticos;

restrição 2: uma relação entre a posição de cada mão robótica com a posição

do respetivo objeto-alvo.

restrição 3: uma relação entre a orientação do alvo com a orientação de cada

uma das mãos, determinada pelo tipo de grip desejado para as mãos;

restrição 4: evitar que cada um dos braços e mãos colidam com o objeto-alvo

do outro braço, no instante final do movimento;

5Note-se que de 1 a 7 são as juntas do braço direito e de 8 a 14 as do braço esquerdo

84 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 107: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

restrição 5: evitar que algum dos dois braços e mãos colidam com os obstá-

culos presentes no cenário e com o corpo do robô, no instante final do

movimento;

restrição 6: evitar que os braços e mãos, no momento final do movimento,

colidam um com o outro.

A restrição 1 é formulada com base nos limites das juntas dos braços (valores

anteriormente apresentados no subcapítulo 3.1.1 na tabela 3.2). Por outro lado,

as restrições 2 e 3 são não-lineares e são altamente dependentes da forma como se

pretende que as mãos robóticas agarrem o correspondente objeto. Assim sendo, no

subcapítulo seguinte, respetivamente 4.2.1 são definidos os diferentes tipos de grip

que foram considerados para este trabalho. Quanto às restrições 4, 5 e 6, estas são

definidas com base na forma como o corpo do ARoS e como os objetos presentes no

cenário são modelados (ver mais à frente na secção 4.5.1).

Portanto, este é considerado um problema de otimização não-linear com restrições,

que designamos por Pa. Nas secções seguintes a definição das restrições é explicada

em maior detalhe.

4.2.1 Tipos de Grip

De acordo com o Estado da Arte na Manipulação Bimanual nos Humanos e relativa-

mente às caraterísticas da mão, pode-se concluir que os humanos desempenham uma

série de movimentos com as suas mãos de forma a manipular qualquer tipo de objeto.

Assim, de acordo com a taxonomia proposta por Bullock et al. (2013) numa tarefa

de manipulação pode existir ou não contacto entre a mão com o objeto. Interessando

mais para este projeto as tarefas de manipulação de objetos, então e complementando

a taxonomia anterior (que é mais dedicada ao movimento da mão) com a taxonomia

de Cutkosky and Howe (1990), as ações que requerem o contacto entre objeto e mão

podem ser divididos em apertos de força ou precisão. Os modos de agarrar com

força podem ser subdivididos em posturas preênseis, em que o objeto é agarrado

pela mão de forma a estabilizar o objeto. Ou então, posturas não-preênseis em que

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

85

Page 108: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

existe apenas um pequeno contacto da mão com o objeto. Os modos de agarrar com

precisão são entendidos como aqueles em que a mão opta por agarrar ou tocar no

objeto com a ponta dos dedos. De forma a complementar todas estas definições,

veja-se na figura 4.2, onde se encontram ilustrados exemplos dos diferentes modos de

manipulação de objetos.

Figura 4.2: Classificação dos modos de manipulação de objetos com base nas taxonomias

de Bullock et al. (2013) e Cutkosky and Howe (1990).

Relativamente à mão do ARoS, esta é bem mais simples que a mão humana,

no entanto a classificação anterior é propositada para se fazer uma descrição dos

diferentes modos de manipulação de objetos que se atribui às mãos do robô. Assim

sendo, para o robô os tipos de grip considerados de precisão podem ainda ser

subdivididos em side grip, above grip e diagonal grip como demonstra a figura 4.3,

respetivamente em (a), (b) e (c). Por outro lado, os tipos de grip de força-preênseis

podem ser subdivididos em side grip (ver figura 4.3d) e above grip.

Existem outros tipos de grip para as mãos robóticas do ARoS em que vão dife-

rindo das anteriores apenas pela posição do polegar. Na tabela 4.1 são apresentados

todos os tipos de grip que o sistema de planeamento de movimentos considera. De

notar que a tabela apresenta os nomes em Inglês e o nome full refere-se às grips de

força.

86 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 109: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

(a) Side grip

de precisão

(b) Above grip de precisão (c) Diagonal grip

de precisão

(d) Side grip de

força

Figura 4.3: Tipos de grip de precisão e força.

GT Descrição GT Descrição

111 Precision Side thumb left 211 Full Side thumb left

112 Precision Side thumb right 212 Full Side thumb right

113 Precision Side thumb up 213 Full Side thumb up

114 Precision Side thumb down 214 Full Side thumb down

121 Precision Above 221 Full Above

122 Precision Below 222 Full Below

311 Precision Diagonal

Tabela 4.1: Tipos de grip que o sistema de planeamento de movimento reconhece. GT

representa o número pela qual é conhecida no sistema de planeamento.

4.2.2 Postura Final das Mãos

Para se obter a posição e orientação final das mãos é necessário ter em conta os tipos

de grip respetivos a cada uma e a posição e orientação do alvo pretendido para cada

mão. Esta informação permite formular uma relação entre a mão e o objeto-alvo que,

subsequentemente, é fornecida ao problema de otimização Pa (para a seleção das

posturas finais) na forma de duas restrições, respetivamente, restrição 1 e 2.

Relativamente à configuração da mão robótica, neste trabalho considera-se que

para todos os casos a junta da mão direita θ8 = 0 e o DOF de cada um dos três

dedos deve ter o mesmo valor no instante final do movimento, ou seja θ9 = θ10 = θ11.

O mesmo se aplica à mão esquerda em que θ19 = 0 e θ20 = θ21 = θ22.

Pelo cálculo da cinemática inversa da mão (apresentado na secção 3.3.2) e sabendo

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

87

Page 110: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

o valor da distância entre os dedos, dFF , consegue-se determinar θ9 = θ10 = θ11

e θ20 = θ21 = θ22. Para tal e consoante o tipo de grip (ver tabela 4.1 onde se

apresentam os diferentes tipos de grips) estabelece-se a distância dFF do seguinte

modo:

dFF =

dobj se GT ∈ {∗11, ∗12, ∗2∗, 311}

hobj se GT ∈ {∗13, ∗14}, (4.2)

com ∗ ∈ {1, 2}, dobj e hobj como sendo o diâmetro e a altura do objeto, respetiva-

mente. Por conseguinte, calculam-se os valores de θ9 e θ20 pela equação da cinemática

inversa, eq. 3.72.

Para se determinar a postura do braço robótico é necessário calcular a distância

da palma da mão ao centro do objeto, dHO. Assim, para os tipos de grip de precisão

esta distância é calculada atendendo à distância dFH , em que esta é determinada a

partir da equação 3.71. De forma a se demonstrar a relação entre as distâncias dHOe dFH consoante o tipo de grip, na figura 4.4 são apresentados apenas dois casos

de diferentes tipos de grips de precisão, juntamente com a representação destas

distâncias.

(a) Side grip de

precisão

(b) Diagonal grip

de precisão

Figura 4.4: Demonstração da relação entre as distâncias dHO e dF H em dois tipos de grip:

side e diagonal grip de precisão.

Por outro lado, para as grips de força, dHO depende unicamente da dimensão do

objeto. De seguida são apresentadas todas as equações referentes ao cálculo da

distância dHO, segundo os tipos de grip reconhecidos pelo sistema de planeamento

88 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 111: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

de movimento:

dHO =

dFH(θ9,20) se GT ∈ {11∆}hobj

2 + dFH(θ9,20) − δ se GT ∈ {12∗}dFH(θ9,20)−δ

cos(30◦) se GT ∈ {311}dobj

2 se GT ∈ {21∆}hobj

2 se GT ∈ {22∗}

, (4.3)

com ∗ ∈ {1, 2}, ∆ ∈ {1, 2, 3, 4} e δ > 0 sendo apenas uma margem de tolerância.

4.2.3 Postura Final dos Braços

Definida a postura da mão direita e esquerda, segue-se para o cálculo da postura

dos braços. Como já referido anteriormente este cálculo é para encontrar uma

solução ótima para as juntas dos dois braços (θ1,f , . . . , θ7,f , θ12,f , . . . , θ18,f )> (em

que (θ1,f , . . . , θ7,f )> são as do braço direito e (θ12,f , . . . , θ18,f )> as do esquerdo), de

entre as imensas possibilidades, Θf ⊂ R14. De forma a se escolher as posturas

mais apropriadas, o modelo de seleção tem como objetivo encontrar as posturas que

apresentam o mínimo custo de deslocamento das juntas, de uma postura inicial a uma

final (função objetivo 4.1) e verifiquem as seis restrições apresentadas anteriormente

na secção 4.2. Por isso, de seguida estas restrições são explicadas em maior detalhe:

Restrição 1: A postura final de cada braço deve ter as suas juntas compreendidas

nos seus limites. Sendo que θk,min e θk,max, são os limites mínimo e máximo

das juntas do braço direito (k = 1, . . . , 7) e do braço esquerdo (k = 12, . . . , 18):

θk,f ∈ [θk,min, θk,max] . (4.4)

Restrição 2: A posição da mão robótica direita, HR = (xmao, ymao, zmao)>, e

esquerda, HL = (xmao, ymao, zmao)>, relativamente à posição do seu objeto-

alvo direito, XR,tar, e esquerdo, XL,tar, é dada em função da distância da palma

da mão ao centro do objeto direito dHO,R e esquerdo dHO,L (demonstração do

cálculo destas distâncias em 4.2.2). Assim sendo, para o braço direito a sua

postura final terá que estar de acordo com a seguinte relação:

HR(θ1,f , . . . , θ7,f ) + dHO,R zR,7(θ1,f , . . . , θ7,f )−XR,tar = 0 , (4.5)

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

89

Page 112: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

enquanto que para o braço esquerdo, a sua postura final terá que satisfazer a

seguinte restrição:

HL(θ12,f , . . . , θ18,f ) + dHO,L zL,18(θ12,f , . . . , θ18,f )−XL,tar = 0 . (4.6)

De notar que a posição, H, e orientação, z7 e z18, de cada mão robótica é

calculada com base no algoritmo da cinemática direta (ver na secção 3.2.1 a

cinemática direta aplicada ao braço direito e na secção 3.2.3 a cinemática direta

do braço esquerdo).

Restrição 3: Conforme o tipo de grip pretendido para cada uma das mãos é pos-

sível estabelecer uma relação de orientação entre a mão e o objeto a agarrar.

Considere-se os seguintes três casos de grips, apresentados na figura 4.5. Em

cada exemplo estão ilustrados os eixos de orientação da mão e do objeto-alvo.

De acordo com esses eixos é possível definir uma relação para cada um dos

casos:

• Mão direita com side grip: xR,7 = zR,tar;

• Mão esquerda com side grip: xL,18 = −zL,tar;

• Mão direita com diagonal grip: yR,7 = xR,tar.

(a) Mão direita - side

grip

(b) Mão esquerda - side

grip

(c) Mão direita - Di-

agonal grip

Figura 4.5: Relação entre a orientação da mão e do objeto-alvo dependendo do tipo de

grip.

Deste modo, esta restrição permite restringir a postura final de cada um dos

braços, consoante a orientação final da mão que se pretende. De salientar

90 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 113: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

que são possíveis muitas outras configurações para a mão e consequentemente

outras relações de orientação mão-objeto.

Restrição 4: Para evitar que cada um dos braços e mãos colidam com o objeto-alvo

do braço oposto no momento final do movimento, definem-se os pontos de cada

braço-mão e as suas respetivas dimensões e verifica-se se colide com o objeto:

‖PR,i (θ1,f , . . . , θ11,f )−Otar,L‖2 > ζtar,R (4.7)

‖PL,i (θ12,f , . . . , θ22,f )−Otar,R‖2 > ζtar,L , (4.8)

onde PR,i e PL,i são respetivamente os pontos, i, do braço-mão direito e esquerdo.

Otar,L e Otar,R representam as posições do alvo esquerdo e direito. ζtar,R e

ζtar,L são constantes estabelecidas para representarem uma distância mínima

entre o braço-mão e o objeto-alvo do braço oposto.

Restrição 5: De forma a evitar que os braços e mãos, no instante final, colidam com

os obstáculos e o corpo do robô, de semelhante forma como para a restrição

anterior, definem-se os pontos dos braços e mãos, representam-se as posições e

dimensões dos obstáculos e do corpo do robô e verifica-se se existe colisão:

‖PR,i (θ1,f , . . . , θ11,f )−Oj‖2 > ζobs,R (4.9)

‖PL,i (θ12,f , . . . , θ22,f )−Oj‖2 > ζobs,L , (4.10)

onde PR,i e PL,i são respetivamente os pontos, i, do braço-mão direito e

esquerdo. Oj representa as posições dos obstáculos, j. ζobs,R e ζobs,L são

constantes estabelecidas para representar uma distância de segurança entre o

braço e o obstáculo.

Restrição 6: Para evitar colisões entre os braços e mãos na postura final destes,

verifica-se se há colisão a partir dos pontos de cada um dos braços do seguinte

modo:

‖PL,i (θ12,f , . . . , θ22,f )− PR,i (θ1,f , . . . , θ11,f )‖2 > γ , (4.11)

em que γ é uma constante que representa uma distância de segurança entre os

diferentes pontos dos braços e mãos.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

91

Page 114: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

A modelação dos pontos dos braços e mãos robóticas, do corpo do ARoS e

dos obstáculos é descrita mais à frente no capítulo 4.5.1.

Tendo-se as duas posturas finais dos braços e mãos segue-se para o planeamento

do movimento, da posição inicial à final. No seguinte capítulo o processo de seleção

das trajetórias é explicado.

4.3 Seleção das Trajetórias

Para que as trajetórias dos dois braços e mãos, de uma postura inicial, θ0 =

(θ1,0, , . . . , θ22,0)>, a uma final, θf = (θ1,f , , . . . , θ22,f )>, seja suave e livre de coli-

sões, o movimento total das juntas do braço-mão direito e esquerdo (com total de

juntas igual a nj = 22) ao longo do tempo t é dado pela sobreposição de um movi-

mento direto (Tdireto) e de um movimento de back-and-forth (Tbkfor) (Rosenbaum

et al., 1999):

θ (t) = T (t; θf , θb) = θ0 + Tdireto (t; θf ) + Tbkfor (t; θb) , (4.12)

onde t ∈ [0, T ], em que T ∈ R+ é o tempo total do movimento e t é discretizado num

número NT de passos igualmente espaçados de ti = i∆, onde ∆ = TNT

é o tamanho

do passo e i = 0, 1, . . . , NT . Posto isto, θ (ti) representa o movimento total das

juntas θ (t) no momento ti.

4.3.1 Movimento Direto

O movimento direto é concebido para produzir um perfil de velocidade bell-shaped

(ou se preferir, suave) em todas as juntas dos braços e mãos, de uma posição inicial a

uma final. Para tal, de forma a gerar a trajetória baseada no princípio do minimum

angular jerk, implica minimizar as alterações da aceleração angular. Assim, este

movimento é dado pelo seguinte polinómio de quinta ordem (para mais detalhes ver

92 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 115: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

(Costa e Silva, 2011)):

Tdireto (t; θf) = (θf − θ0)(10τ3 − 15τ4 + 6τ5)

+ ω0T(τ − 6τ3 + 8τ4 − 3τ5)+ ωfT

(−4τ3 + 7τ4 − 3τ5)

+ 12α0T

2 (τ2 − 3τ3 + 3τ4 − τ5)+ 12αfT

2 (τ3 − 2τ4 + τ5) ,(4.13)

onde θ0 = (θ1,0, θ2,0, . . . , θ22,0)> são os valores iniciais dos ângulos das juntas do

braço-mão direito e esquerdo no instante inicial (t = 0) e θf = (θ1,f , θ2,f , . . . , θ22,f )>

são os valores finais dos ângulos das juntas dos braços-mãos no momento final (t = T )

e em que τ = tT ∈ [0, 1] é o tempo normalizado. Os parâmetros ω0 e α0 ∈ Rnj

são vetores que representam a velocidade e aceleração inicial das juntas dos dois

braços, respetivamente. Enquanto que os parâmetros ωf e αf ∈ Rnj são vetores que

representam a velocidade e aceleração final das juntas dos dois braços, respetivamente.

4.3.2 Movimento de Back-and-Forth

De forma a evitar colisões ao longo das trajetórias dos dois braços e mãos propõe-se

um movimento de back-and-forth que, essencialmente, consiste num movimento de

“forth”: da postura inicial, θ0, à postura de bounce, θb, seguido de um movimento de

“back”: da postura de bounce de volta à postura inicial. De tal modo que a trajetória

gerada por este movimento de back-and-forth para o conjunto das juntas dos braços

e mãos é dado por:

Tbkfor (t; θb) = (θb − θ0) sen2(πτϑ

), (4.14)

em que ϑ = − ln2lntb onde o parâmetro tb ∈ ]0, 1[ é usado para controlar quando a

postura de bounce, θb, é alcançada e, consequentemente, o movimento “forth” finaliza

e começa o movimento de “back”.

Para calcular este movimento é necessário calcular a postura de bounce, θb,

postura essa que permita que não ocorram colisões em todo o movimento dos dois

braços. Assim sendo, no próximo ponto é explicado o processo de seleção desta

postura.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

93

Page 116: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

4.3.2.1 Seleção da Postura de Bounce

Para a seleção da postura de bounce aplica-se o mesmo critério que para a seleção das

posturas finais dos braços, isto é: o mínimo deslocamento das juntas, ou antes, o prin-

cípio do minimum angular jerk. No entanto, uma correta postura de bounce é aquela

que: 1) permite um movimento livre de colisões do início ao fim, sempre dentro dos

limites físicos das juntas e 2) apresenta um custo mínimo de deslocamento das juntas

do braço direito e esquerdo, da postura inicial(θ1,0, . . . , θnj

2 ,0, θ12,0, . . . , θ11+nj

2 ,0

)>à postura de bounce

(θ1,b, . . . , θnj

2 ,b, θ12,b, . . . , θ11+nj

2 ,b

)>, que por sua vez pode ser

matematicamente escrito da seguinte forma:

minΘb⊂Rnj

nj2∑

k=1λk(θk,0 − θk,b)2 +

11+nj2∑

k=12λk(θk,0 − θk,b)2, (4.15)

onde Θb ⊂ Rnj representa o conjunto das possíveis posturas admissíveis para os

braços que permitem uma trajetória livre de colisões para cada uma das juntas k e

λk > 0 é um fator de custo atribuído a cada junta.

O número de juntas, nj, depende do tipo de movimento a planear e pode ser

de 14 (apenas as juntas dos braços) ou 18 juntas (as juntas dos braços mais duas

juntas de cada mão). Por exemplo, casos como os movimentos de alcançar objetos

ou retornar à postura de repouso são formulados com nj = 18, porque tanto a

trajetória das juntas dos braços como as juntas dos dedos devem ser planeadas ao

longo do movimento. Assim para cada braço calculam-se as suas sete juntas: direito

(θ1, . . . , θ7) e esquerdo (θ12, . . . , θ18) mais duas juntas de cada mão: θ8 = 0 e θ9 para

a mão direita e θ19 = 0 e θ20 para a mão esquerda. Note-se que, para cada mão,

apenas basta calcular o valor da junta da mão direita θ9 e da mão esquerda θ20, pois

as outras duas juntas dos dedos de cada mão são iguais.

No entanto, para os casos de transporte de objetos e de inserção, estes devem

ser formulados com nj = 14, porque a trajetória dos dedos não necessita de ser

calculada.

De modo a selecionar uma única postura de bounce ótima para o braço direito

e esquerdo de entre todas as possíveis posturas, Θb ⊂ Rnj , o problema de otimiza-

ção 4.15 é reformulado como um problema de otimização com restrições nas suas

94 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 117: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

variáveis, nomeadamente:

Restrição 1: Os valores das juntas dos braços, ao longo do movimento, devem estar

dentro dos seus limites. Sendo que θk,min e θk,max, são os limites mínimo e

máximo das juntas do braço-mão direito e esquerdo:

Tk (t; θf , θb) ∈ [θk,min, θk,max] , (4.16)

onde k = 1, . . . , nj2 e k = 12, . . . , 11 + nj2 com t ∈ [0, T ].

Restrição 2: Os valores das juntas dos braços e mãos no instante tb devem estar

dentro dos limites:

θk,b ∈ [θk,min, θk,max] , (4.17)

com k = 1, . . . , nj2 e k = 12, . . . , 11 + nj2 .

Restrição 3: Os braços e mãos não podem colidir com o objeto-alvo do outro braço.

Para tal, ao longo do movimento é verificado se existe colisão entre algum dos

pontos dos braços-mãos e os objetos em causa:

‖PR,i (t)−Otar,L‖2 > εtar,R (t) (4.18)

‖PL,i (t)−Otar,R‖2 > εtar,L (t) , (4.19)

onde PR,i (t) e PL,i (t) são respetivamente os pontos, i, do braço-mão direito

e esquerdo para uma determinada postura T (t; θf , θb), com t ∈ [0, T ]. Otar,Le Otar,R representam as posições do alvo esquerdo e do alvo direito. εtar,R (t)

e εtar,L (t) são funções no tempo, estabelecidas para representar a distância

mínima entre os pontos dos braços-mãos e o objeto-alvo do braço oposto.

Restrição 4: Os braços e mãos não podem colidir com os obstáculos nem com o

corpo do robô. Por isso, ao longo do movimento é verificado se existe colisão

verificando a intersecção dos pontos dos braços e mãos, dada uma postura

T (t; θf , θb), com os obstáculos e o corpo do robô:

‖PR,i (t)−Oj‖2 > εobs,R (t) (4.20)

‖PL,i (t)−Oj‖2 > εobs,L (t) , (4.21)

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

95

Page 118: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

onde Oj representa as posições dos obstáculos, j. εobs,R (t) e εobs,L (t) são

funções no tempo, estabelecidas para representar a distância de segurança entre

o braço e o obstáculo ao longo do movimento.

Restrição 5: Para evitar colisões entre os dois braços e mãos ao longo do movimento,

verifica-se a colisão a partir da interseção dos pontos de cada braço, assim:

‖PL,i (t)− PR,i (t)‖2 > ψ (t) , (4.22)

em que ψ (t) é uma função no tempo que representa uma distância de segurança

entre os diferentes pontos dos braços.

Este problema de otimização permitirá encontrar a postura de bounce mais

adequada para a trajetória do braço direito e esquerdo. A este problema de otimização

não-linear com restrições dá-se o nome de problema Pb.

4.4 Tempo Total do Movimento

Como se pode ter reparado, a partir da leitura anterior referente ao cálculo da

trajetória para o braço-mão direito e esquerdo, este é gerado com base num tempo

normalizado (Costa e Silva, 2011). Com isto, o tempo total do movimento é calculado

com base no trabalho de Rosenbaum et al. (2001), em que baseado na Lei de Fitts,

existe um tempo ótimo, Tk, aplicado ao deslocamento angular de cada junta, ∆θk :

Tk = NT∆θk,maxωk,max

+ λk ln (1 + ∆θk) , (4.23)

onde λk é um fator de custo da junta k (em que k = 1, . . . , 7 e k = 12, . . . , 18), NT

o número de steps do movimento, ωk,max é a máxima velocidade angular admitida

para cada junta k. ∆θk, e ∆θk,max são dados, respetivamente, por 4.24 e 4.25:

∆θk =7∑i=1|θk,i − θk,i−1|+

18∑i=12|θk,i − θk,i−1| (4.24)

∆θk,max = maxi=1,2,...,NT

|θk,i − θk,i−1| . (4.25)

Garantindo-se, assim, que a máxima velocidade angular de cada junta nunca é

atingida.

96 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 119: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

Baseado na ideia de que todas as juntas do braço começam e acabam o seu

movimento ao mesmo tempo (Breteler and Meulenbroek, 2006) e que o movimento

dos dois braços também é sincronizado (Kelso et al., 1979b,a), o tempo total do

movimento é a média ponderada dos tempos ótimos para cada uma das juntas do

braço esquerdo e direito:

T =

7∑k=1

λk∆θkTk +18∑

k=12λk∆θkTk

7∑k=1

λk∆θk +18∑

k=12λk∆θk

. (4.26)

4.5 Implementação do Software de Otimização

Nesta secção é apresentada a formulação matemática dos problemas de otimização

não-lineares com restrições, nomeadamente, Pa e Pb (descritos anteriormente).

Contudo, primeiramente, é descrito como são considerados e modelados os vários

pontos dos braços e mãos do ARoS (tão falados em cima), tal como a representação

do seu corpo e dos obstáculos, no problema de otimização. Seguidamente são

especificados então os problemas de otimização tal como o software usado para a sua

resolução.

4.5.1 Modelação do Corpo do ARoS e Obstáculos

O corpo do ARoS é representado por trinta esferas que modelam os braços e mãos

(ver figura 4.6a e figura 4.6b), estas esferas são centradas em pontos com localizações

obtidas através do cálculo da cinemática direta dos braços e mãos, com base num

conjunto de valores de ângulos das juntas. O raio destas esferas é estabelecido

consoante as dimensões reais do braço e dedos. Quanto ao corpo, e como se pode ver

na figura 4.6c, este é representado por um cilindro elíptico de forma a abranger todo

o seu corpo.

Os objetos presentes no cenário e definidos como obstáculos são representados

como elipsoides, ou seja, todo o objeto é envolvido numa elipsoide e a área desta é

que conta para o sistema de planeamento de movimento. Na figura 4.7 podem-se ver

alguns exemplos de objetos contidos nas elipsoides.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

97

Page 120: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

(a) (b) (c)

Figura 4.6: Representação do corpo do ARoS com as suas 30 esferas que modelam (a) os

braços, (b) as mãos e (c) o cilindro elíptico que modela o corpo.

Figura 4.7: Representação de alguns obstáculos em elipsoides.

Esta modelação é feita para definir as restrições dos problemas de otimização

que se encontram explicadas nas secções anteriores neste capítulo. Contudo, quando

a restrição se refere aos pontos dos braços e mãos para uma determinada postura

θR e θL, que se encontra representada por: PR,i (θR) e PL,i (θL), é o mesmo que

dizer que são o centro das esferas i (com i = 1, 2, . . . , 30) de cada um dos braços e

mãos. Por outro lado, os objetos quando são vistos como obstáculos, nas restrições

(acima descritas) são representados por Oj , significando isto o centro da elipsoide

de cada objeto j (o valor de j varia consoante os obstáculos presentes no cenário).

De salientar que nestas restrições entram não só os centros destas variáveis como as

suas dimensões dadas pela fórmula da sua figura geométrica. Para um maior detalhe

acerca da formulação destas restrições consulte o trabalho de Costa e Silva (2011).

98 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 121: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

4.5.2 Problemas de Otimização

Pela leitura das secções 4.2 e 4.3, onde é explicado o processo de seleção das posturas

finais e da seleção das trajetórias para o braço direito e esquerdo, pode-se ver que

existem dois problemas de otimização, nomeadamente:

problema Pa - que consiste na seleção da postura mais apropriada e livre de

colisões para o braço direito e esquerdo, no instante final do movimento. Por

outras palavras, deve retornar um vetor de quatorze elementos com os valores

dos ângulos das juntas (sete para cada braço), (θ1,f , . . . , θ7,f , θ12,f , . . . , θ18,f )>.

problema Pb - seleção da postura de bounce mais apropriada, que permita um

movimento do início ao fim sem colisões, isto é, um vetor de nj elementos com

os valores dos ângulos das juntas,(θ1,b, . . . , θnj

2 ,b, θ12,b, . . . , θ11+nj

2 ,b

)>(com nj

igual ao valor total de juntas do braço-mão direito e esquerdo).

Cada um destes problemas é formulado a partir de uma função objetivo e de

um conjunto de restrições.

Quanto ao problema Pa, a sua função objetivo encontra-se definida em 4.1, tal

como as suas restrições são explicadas na secção 4.2.3. No entanto, de seguida é

apresentada a formulação matemática deste problema de otimização não-linear com

restrições:

(Pa) minΘf⊂R14

7∑k=1

λk(θk,0 − θk,f )2 +18∑

k=12λk(θk,0 − θk,f )2, λk ≥ 0 (4.27)

s.t. ‖cA,1 (θA,f )‖2 ≤ β (4.28)

‖cA,2 (θA,f )‖2 ≤ δ (4.29)

hA,f (θA,f , ζtar) ≥ 0 (4.30)

hA,f (θA,f , ζobs) ≥ 0 (4.31)

qf (θfL, θfR, γ) ≥ 0 (4.32)

θA,m ≤ θA,f ≤ θA,M (4.33)

Para cada restrição A ∈ {R,L} sendo que θR,f = (θ1,f , . . . , θ11,f )> e θL,f =

(θ12,f , . . . , θ22,f )>. θA,m e θA,M representam os limites mínimos e máximos de cada

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

99

Page 122: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

uma das juntas do braço direito e esquerdo a serem usados para definir a restrição 4.33

que restringe o cálculo das posturas finais a estes limites. Adicionalmente, a restrição

não-linear presente em 4.28 é para estabelecer uma distância entre as mãos (direita

e esquerda) e os seus respetivos objetos-alvo, enquanto que a restrição 4.29 é para

orientar as mãos consoante os tipos de grip. Note-se que uma desejada posição e

orientação da mão pode ser regulada pelas constantes β > 0 e δ > 0, respetivamente.

Relativamente à prevenção de colisões:

• em 4.30 é definida a restrição não-linear para o braço-mão direito e esquerdo,

referente à colisão entre o braço e o objeto-alvo do braço oposto. Esta não-

colisão é assegurada por uma distancia mínima estabelecida pela constante

ζtar > 0;

• a restrição não-linear presente em 4.31 serve para prevenir colisões entre os

braços-mãos, no instante final do movimento, com os obstáculos presentes

no cenário a uma distância mínima regulada pela constante ζobs > 0. Estes

obstáculos podem ser os objetos dispostos no espaço de trabalho do robô, a

mesa e o corpo do ARoS.

• por último, a restrição definida por 4.32, garante que os dois braços e mãos

não colidam entre eles, a um distância mínima dada pela constante γ > 0.

Relativamente ao problema Pb este tem a sua função objetivo definida em 4.15 e

as suas restrições enumeradas na secção 4.3.2.1. No entanto, a formulação matemática

deste problema de otimização não-linear é seguidamente apresentada em 4.39. Onde

para cada restrição A ∈ {R,L} sendo que θA,f = (θ1,f , . . . , θ11,f , θ12,f , . . . , θ22,f )> e

θR,b = (θ1,b, . . . , θ11,b, θ12,b, . . . , θ22,b)>. A restrição representada por 4.35 serve para

limitar o valor das juntas dos dois braços e mãos (direito e esquerdo) ao longo de

todo o movimento, enquanto que a apresentada em 4.39 é para limitar a postura de

bounce. O resto das restrições são para prevenir colisões durante todo o movimento,

e estas são representadas por:

• 4.36 para que cada braço-mão direito e esquerdo não colida com o objeto-alvo

100 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 123: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

do braço oposto nem com o seu objeto-alvo, a uma distância mínima regulada

pela função no tempo εtar (ti) > 0;

• 4.37 para assegurar que os braços-mãos, ao longo do movimento, não colidam

nem com os obstáculos presentes no cenário nem com o corpo do robô, a uma

distância mínima controlada pela função no tempo εobs (ti) > 0.

• e finalmente, 4.38 para garantir que os dois braços e mãos não colidam entre

eles, a uma distância regulada pela função no tempo ψ (ti) > 0.

(Pb) minΘb⊂Rnj

nj2∑

k=1λk(θk,0 − θk,b)2 +

11+nj2∑

k=12λk(θk,0 − θk,b)2, λk ≥ 0 (4.34)

s.t. θA,m ≤ θA (ti, θA,f , θA,b) ≤ θA,M (4.35)

hA,b (θA (ti, θA,f , θA,b) , εtar (ti)) ≥ 0 (4.36)

hA,b (θA (ti, θA,f , θA,b) , εobs (ti)) ≥ 0 (4.37)

qf (θL (ti, θL,f , θL,b) , θR (ti, θR,f , θR,b), ψ (ti)) ≥ 0 (4.38)

θA,m ≤ θA,b ≤ θA,M (4.39)

, com ti = 0, . . . , T,

4.5.3 Software de Otimização

Um problema matemático de otimização não-linear de grande dimensão, como os

apresentados acima, podem ser resolvidos com o uso de poderosas ferramentas

numéricas, ou mais comummente chamados em Inglês de optimization solvers. O

servidor NEOS (acrónimo em Inglês de “Network-Enabled Optimization System”)

apresenta uma espécie de Estado da Arte em softwares de otimização, em que no seu

site: http://www.neos-server.org/neos/solvers/ é possível encontrar uma vasta

gama de solvers dedicados a diferentes problemas de otimização. No entanto, para

além do software de otimização é necessário a linguagem matemática de programação

apropriada para escrever o problema de otimização de grande dimensão.

Com isto e para este trabalho optou-se por utilizar o solver IPOPT (acrónimo em

Inglês de “Interior Point OPTimizer”), que é direcionado para encontrar soluções

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

101

Page 124: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 4 - Planeamento de Movimento Bimanual Síncrono

para problemas de otimização não-lineares de grande dimensão. Mais detalhe acerca

deste software pode ser encontrado no seu site: https://projects.coin-or.org/

Ipopt ou em (Wächter and Biegler, 2006). A razão por escolher utilizar o IPOPT

de entre outros solvers como KNITRO, SNOPT e LOQO foi porque no trabalho

desenvolvido por Costa e Silva (2011), ou seja, na versão anterior para o planeamento

de movimento unimanual, os testes realizados com estes solvers apresentavam tempos

de computação maiores dos que os apresentados pelo IPOPT.

Quanto à linguagem matemática de programação usada para codificar os dois

problemas não-lineares de otimização de grande dimensão, Pa e Pb, é usada a

linguagem AMPL. Esta linguagem permite o interface com o IPOPT e também

permite, de uma forma compacta e percetível, escrever o modelo matemático em

questão. Para mais detalhes consultar o site: http://ampl.com/.

102 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 125: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 5

Sistema Geral de Planeamento

de Movimentos

Neste capítulo pretende-se mostrar todo o sistema geral de planeamento de movi-

mentos para uma determinada tarefa. Com isto, na primeira secção é dada uma

explicação acerca do funcionamento do software desenvolvido para planear os mo-

vimentos a serem enviados aos braços do robô ARoS. Posteriormente, na secção

seguinte é demonstrado o aspeto do simulador tal como as suas caraterísticas.

5.1 Software de Planeamento de Movimento

O sistema de planeamento de movimento é desenvolvido em MATLAB R©, este sistema

para uma determinada tarefa e cenário consegue calcular, planear e simular os

movimentos necessários para desempenhar com sucesso a tarefa.

Partindo do princípio que uma determinada tarefa é dividida numa sequência

de movimentos bimanuais ou unimanuais, o processo de cálculo desses movimentos é

executado tantas vezes quanto o número de movimentos necessários. Assim, para uma

determinada tarefa caraterizam-se os seus movimentos de bimanuais ou unimanuais

e, consequentemente, procede-se ao seu cálculo:

• Para movimentos bimanuais síncronos, o processo utilizado é o desenvolvido

neste trabalho e que de uma forma muito geral encontra-se esquematizado no

103

Page 126: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 5 - Sistema Geral de Planeamento de Movimentos

fluxograma da figura 4.1;

• Para movimentos unimanuais, o processo utilizado pertence ao trabalho anteri-

ormente desenvolvido e apresentado na secção 1.2.1.

Todo o processo termina quando o total de movimentos de uma tarefa esteja completo.

A figura 5.1 ilustra todo este processo de planeamento de movimentos para uma

determinada tarefa, onde o movimento n vai desde o segundo movimento ao total de

movimentos.

Figura 5.1: Fluxograma do processo de planeamento de movimentos para uma determinada

tarefa, em que movimento n representa o movimento 2, 3 e por aí fora, até o número total

de movimentos.

À medida que o movimento é calculado, este vai sendo executado, e isto de

executar o movimento pode ter dois significados: a) executar o movimento em

simulador e/ou b) executar o movimento no robô real, que consiste no envio das

104 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 127: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 5 - Sistema Geral de Planeamento de Movimentos

tramas com a informação do tempo de cada step e dos valores angulares de cada

junta para todo o movimento.

Contudo, para a resolução dos problemas Pa e Pb, subjacentes ao planeamento

de cada movimento, estes são resolvidos com a ajuda do solver anteriormente apre-

sentado, o IPOPT, que se encontra inserido numa toolbox gratuita do MATLAB R©,

a OPTI Toolbox (mais informações em http://www.i2c2.aut.ac.nz/Wiki/OPTI/).

Como na secção 4.5.3 já foi introduzido, para o interface com o IPOPT é utilizada a

linguagem matemática AMPL para escrever o problema de otimização. Para este

interface com o IPOPT, essencialmente, é necessário escrever o modelo matemático

em AMPL, ou seja um ficheiro com extensão “.mod” e no software em MATLAB R© é

necessário inicializar todas as variáveis importantes para o modelo, criando assim os

ficheiros de extensão “.dat”. Subsequentemente dão-se as instruções à OPTI Toolbox

Figura 5.2: Fluxograma do processo de resolução dos problemas de otimização não-lineares

Pa e Pb.

para que com o solver IPOPT se encontre uma solução para o problema codificado em

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

105

Page 128: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 5 - Sistema Geral de Planeamento de Movimentos

AMPL, escrito num ficheiro “.mod” e com as suas variáveis num ficheiro “.dat”. Este

processo encontra-se esquematizado no fluxograma presente na figura 5.2. Note-se

que este fluxograma é referente ao processo de cálculo de movimento tanto para

bimanual como para unimanual e serve de complemento ao fluxograma anterior,

presente na figura 5.1, onde poderia estar inserido nos dois retângulos do movimento

bimanual síncrono e movimento unimanual.

5.2 Simulador

O simulador 3D do ARoS, construído em MATLAB R©, é constituído por um painel

que possibilita a visualização dos movimentos do robô e por um outro painel que

permite controlar manualmente os movimentos dos dois braços e mãos, como mostra

a figura 5.3.

(a) Painel de visualização de movimentos (b) Painel de controlo

Figura 5.3: Simulador do ARoS com o seu painel de visualização de movimentos e o painel

de controlo.

De modo a que os movimentos simulados sejam o mais próximos da realidade,

o robô é desenhado conforme a sua construção e dimensões reais. O aspeto base

do painel de visualização de movimentos é com o robô disposto atrás de uma mesa,

mesa essa que serve para suportar os objetos a serem manipulados, como ilustra a

figura 5.3a. Os braços do ARoS são dispostos na sua “home position” sempre que

106 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 129: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 5 - Sistema Geral de Planeamento de Movimentos

inicia um movimento, isto é, na sua posição de repouso. Os braços movimentam-se

consoante o envio dos valores dos ângulos das juntas ou então também existe a

possibilidade de controlar os valores através de um painel dedicado para o controlo

manual dos dois braços e mãos, como ilustra a figura 5.3b.

A construção de um cenário para uma determinada tarefa, requer que todos os

objetos sejam também construídos com as medidas e aspeto o mais parecido com o

real. Para desenhar os objetos recorre-se a um software próprio de desenho em 3D, o

SolidWorks R©. Neste software desenham-se os objetos e, posteriormente, de forma a

poderem integrar o simulador do ARoS, os objetos são convertidos numa estrutura

com as coordenadas dos seus vértices. Na figura 5.4 são apresentados alguns dos

objetos utilizados nos cenários criados para este trabalho. O que se pretende com

esta imagem é mostrar apenas as semelhanças entre o objeto real e o objeto em

simulador.

(a) Garrafa tér-

mica

(b) Coluna azul

(c) base do “toy vehicle”

Figura 5.4: Ilustração da semelhança do objeto real e do objeto em simulador.

Este simulador permite, assim, visualizar todos os movimentos do robô antes de

serem enviados para a plataforma robótica real. O que possibilita antever qualquer

problema no movimento simulado e, consequentemente, se necessário voltar à parte

do software responsável pelo planeamento do movimento e corrigir ou melhorar o

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

107

Page 130: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 5 - Sistema Geral de Planeamento de Movimentos

movimento, de forma a tornar o movimento o mais “human-like” possível.

108 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 131: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6

Validação do Modelo de

Planeamento de Movimento

Bimanual Síncrono

Com este capítulo pretende-se demonstrar todos os passos que permitam validar

o modelo de planeamento de movimento bimanual síncrono e “human-like”, de-

senvolvido neste trabalho de dissertação. Como tal, para validar o modelo existe

a necessidade de se pensar numa tarefa a ser realizada pelo robô antropomórfico

ARoS, de forma a se poder demonstrar a execução da sequência de movimentos

que constitui a tarefa. Com esse intuito, este capítulo é dividido na explicação e

apresentação dos resultados de duas tarefas de manipulação bimanual síncrona de

objetos, nomeadamente, Tarefa 1 e Tarefa 2. Por último são retiradas as conclusões

finais aos resultados destas duas tarefas.

6.1 Tarefa 1

Neste subcapítulo é feita a descrição da Tarefa 1 tal como a apresentação dos

resultados. Primeiramente, explica-se em que consiste esta tarefa de manipulação

bimanual de objetos e o seu respetivo cenário. Posteriormente, são fornecidas

informações acerca do modo como se implementou toda esta tarefa no software

109

Page 132: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 1

de planeamento de movimentos e os respetivos resultados. Por fim, é feita uma

comparação com a forma como os humanos realizam a mesma tarefa.

Começando então pela explicação da tarefa, em que o ARoS terá que desempe-

nhar movimentos bimanuais síncronos, propõe-se o cenário presente na figura 6.1a,

onde o robô ARoS tem disposto à sua frente peças do “toy vehicle”, nomeada-

mente, duas colunas, uma azul e outra vermelha e a base com uns buracos coloridos,

propositados para encaixar as respetivas colunas de cor.

(a) Início

(b) Fim

Figura 6.1: Demonstração do cenário para a Tarefa 1. Em (a) é ilustrado o momento inicial

de toda a tarefa e em (b) o objetivo final.

A tarefa, como já se deve estar a imaginar, consiste em agarrar as duas colunas,

proceder à sua inserção nos buracos correspondentes, de forma a que as barras

coloridas de cada coluna fiquem juntas com o buraco. Por fim, os braços devem

retornar às suas posições de repouso, com o objetivo de finalizar a tarefa como ilustra

a figura 6.1b.

Obviamente que o ARoS terá que executar uma sequência de movimentos de

forma a atingir todas as fases da tarefa (alcançar e agarrar as colunas, inseri-las e re-

tornar à posição de repouso). Consequentemente, e com o intuito de validar o modelo

de planeamento de movimentos bimanuais síncronos, cada movimento dos braços

será com ambos em sincronia, ou seja, ambos começam e terminam o movimento

ao mesmo tempo. Por outras palavras, pode-se considerar cada movimento como

110 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 133: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 1

um movimento bimanual simetricamente coordenado, pois cada braço desempenha

basicamente as mesmas ações e ao mesmo tempo. No entanto, esta tarefa não requer,

especialmente, que ambos os braços desempenhem a tarefa coordenadamente.

6.1.1 Implementação da Tarefa em Software

6.1.1.1 Criação do Cenário em Simulador

De forma a se poder calcular, planear e simular toda a Tarefa 1 procede-se, primei-

ramente, à criação do cenário no simulador em MATLAB R©.

O cenário é desenhado consoante o cenário real que se pretende (figura 6.1a).

Por isso, dispõem-se todos os objetos necessários sobre a mesa, ficando o cenário

como mostra a figura 6.2. Onde, cada elemento constituinte do cenário é posicionado

e orientado consoante o referencial de origem do mundo, W, disposto na base do

braço robótico direito.

Figura 6.2: Ilustração do cenário em simulador da Tarefa 1.

6.1.1.2 Formulação dos Movimentos

A Tarefa 1, essencialmente, é construída a partir da sequência de três movimentos:

1) da posição inicial o ARoS deve alcançar e agarrar a coluna azul com a mão

direita e a coluna vermelha com a mão esquerda; agarradas as colunas 2) deve

transportar as colunas até o local de inserção e inserir as colunas nos buracos

certos, por fim 3) deve voltar à posição de descanso (posição inicial). A figura 6.3

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

111

Page 134: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 1

exemplifica toda esta sequência de movimentos a partir de quatro imagens.

(a) Posição inicial

(b) Alcançar e agarrar

(c) Transportar e

inserir

(d) Voltar à posição

inicial

Figura 6.3: Sequência de movimentos bimanuais planeados para a Tarefa 1.

Com base nisto, é necessário formular cada um destes movimentos de acordo

com o procedimento de planeamento de movimento bimanual síncrono. Assim sendo,

seguidamente, explora-se cada um dos movimentos:

1o Movimento - Alcançar e Agarrar: Nesta ação, cada um dos braços e mãos

movem-se das suas posturas de repouso às posturas que permitam agarrar cada

um do objeto-alvo correspondente, com um determinado tipo de grip. Neste

caso, ambas as mãos agarram o objeto de forma semelhante, com um side grip

de precisão (no próximo ponto 6.1.1.3 este tipo de grip é definido). Quanto à

formulação deste movimento nos seus problemas de otimização, este apresenta:

• dois problemas do tipo Pa: P1a1 para a seleção de duas posturas finais,

θ1f1 ∈ R14 (uma para o braço direito e outra para o esquerdo), que

garantam que a mão direita e esquerda agarram corretamente o objeto e

P1a2 para a seleção de duas posturas quase finais (ou muito próximas das

finais dos respetivos braços), θ1f2 ∈ R14, para garantir que cada braço-mão

não colida com o seu objeto-alvo antes de o agarrar. São calculadas apenas

as juntas dos braços direito e esquerdo (14 juntas: 1 a 7 braço direito,

12 a 18 braço esquerdo), visto que as juntas dos dedos das mãos já são

calculadas consoante o tipo de grip escolhido;

• um problema do tipo Pb: P1b para a seleção das posturas de bounce

112 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 135: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 1

mais adequadas, θ1b ∈ R18, que permita um movimento livre de colisões,

das posturas iniciais às posturas definidas por P1a2 (θ1f2), para ambos

os braços e mãos (18 juntas: 1 a 9 braço-mão direita, 12 a 20 braço-mão

esquerda).

Ao todo este movimento é composto por dois movimentos: um movimento

composto (direto+back-and-forth) da postura de repouso à postura definida

em P1a2 (θ1f2) e um movimento direto da postura P1a2 à postura definida em

P1a1 (θ1f1).

2o Movimento - Transportar e Inserir: o movimento de transportar as colunas,

do local em que estão dispostas na mesa, ao local de inserção e inseri-las, é

composto por:

• dois problemas do tipo Pa: P2a1 para a seleção das posturas finais dos

braços, θ2f1 ∈ R14, que garantem a correta inserção de cada uma das

colunas e P2a2 para a seleção de duas posturas (para o braço direito e

esquerdo), θ2f2 ∈ R14, muito próximas das calculadas em P2a1, de forma

a permitir uma maior facilidade e precisão na inserção das colunas;

• um problema do tipo Pb: P2b para a seleção da postura de bounce,

θ2b ∈ R14, que permita um movimento completo livre de colisões para

cada um dos braços e mãos. De notar que este movimento não necessita

de calcular valores para as juntas dos dedos, pois como é um movimento

de transporte de objetos convém que os dedos não se mexam para os

objetos não caírem.

Este movimento é constituído por um movimento composto da postura definida

em P1a1 (θ1f1) à postura de P2a2 (θ2f2) e um movimento direto da postura

definida em P2a2 à postura P2a1 (θ2f1).

3o Movimento - Retornar à Postura de Repouso: de forma a retornar à pos-

tura de repouso (uma postura já conhecida), as mãos do ARoS devem largar

os objetos nos seus locais e voltar. Este movimento é composto por:

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

113

Page 136: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 1

• um problema do tipo Pa: P3a1 para selecionar duas posturas próximas

do local onde cada um dos objetos está inserido, θ3f1 ∈ R14, para assim

evitar qualquer colisão com o objeto no momento em que larga a coluna;

• um problema do tipo Pb: P3b para calcular a postura de bounce, θ3b ∈ R18,

mais adequada ao movimento de retorno. Como este movimento de retorno

requer que os dedos se movam, então a postura de bounce é calculada com

base em 18 juntas (respetivas aos dois braços e mãos).

Essencialmente, este movimento é composto por um movimento direto da

postura definida em P2a1 à postura P3a1 e um movimento composto de P3a1

à postura de repouso.

A tabela 6.1 apresenta, de um modo mais resumido, tudo que se foi dito

acima relativamente à composição de cada um dos três movimentos constituintes da

Tarefa1.

Movimento Braço-Alvo Braço-Tipo de Seleção Seleção PosturaGrip Postura Final de Bounce

1 Alcançar e direito-Coluna direito-Side P1a1+P1a2 P1bagarrar Azul nj: 14 14 18

esquerdo-Coluna esquerdo-SideVermelha

2 Transportar e - - P2a1+P2a2 P2binserir - - nj: 14 14 14

3 Retornar à - - P3a1 P3bpostura inicial - - nj: 14 18

Tabela 6.1: Formulação dos movimentos que compõem a Tarefa 1.

6.1.1.3 Tipos de Grip

O modo como o robô agarra e pega nas colunas é fundamental para a correta inserção

destas nos buracos da base do toy vehicle. Como já dito anteriormente, cada uma das

mãos agarra a respetiva coluna num modo preciso e em side grip, porque este tipo

de grip para além de permitir a inserção das colunas, facilita o modo como agarra as

colunas.

114 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 137: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 1

Na figura 6.4 é demonstrada a relação de orientação entre as mãos e os seus

objetos-alvo, determinada pelo side grip escolhido para cada mão. Consoante estas

(a) Mão direita: side grip (b) Mão esquerda: side grip

Figura 6.4: Demonstração da orientação (a) da mão direita com a coluna azul nas duas

fases da Tarefa 1 e (b) da mão esquerda com a coluna vermelha.

relações é estabelecida uma expressão matemática para formular a restrição não-linear

do problema de otimização do tipo Pa, respetiva à orientação da mão em relação ao

objeto-alvo (restrição essa definida em 4.29). Assim, na tabela 6.2 são apresentadas

as equações que definem a orientação da mão robótica direita e esquerda:

Tipo de Grip Restrição Não-Linear

Mão direita - Side Grip ‖xR7 (θR,f )− ztarR (θR,f )‖2 ≤ δ

Mão esquerda - Side Grip ‖xL18 (θL,f ) + ztarL (θL,f )‖2 ≤ δ

Tabela 6.2: Descrição dos tipos de grip da Tarefa 1

6.1.2 Desempenho do Planeamento da Tarefa - Resultados

Neste ponto, são apresentados os resultados do planeamento da tarefa bimanual 1.

Estes resultados foram obtidos usando um computador Intel R© CoreTM i7-4770 CPU@

3.40GHz a correr no Windows 8 de 64-bits, com uma placa gráfica AMD Radeon

HD 6570 e 8GB de memória RAM. Todos os problemas de otimização do tipo Pa e

Pb, apresentados na tabela 6.1, foram codificados em AMPL e resolvidos usando o

IPOPT 3.11, fornecido pela toolbox gratuita do MATLAB R©, a OPTI Toolbox.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

115

Page 138: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 1

Para esta Tarefa 1, composta por três movimentos, o sistema de planeamento de

movimento bimanual síncrono propõe movimentos dos dois braços-mãos sincronizados

no tempo, livres de colisões, suaves e semelhantes aos movimentos realizados pelos

braços humanos. O resultado de cada um dos movimentos encontra-se ilustrado na

figura 6.5, onde é possível visualizar as trajetórias tal como a velocidade linear de

cada uma das duas mãos, obtidas no Simulador do ARoS em MATLAB.

(a) Movimento 1

(b) Movimento 2

(c) Movimento 3

Figura 6.5: Representação da sequência e caraterísticas dos movimentos da Tarefa 1 obtidos

no simulador do ARoS. Em (a) é demonstrada as trajetórias dos dedos da mão direita e

esquerda e a velocidade linear de cada mão para o movimento 1. Em (b) são representadas

as trajetórias dos dedos das duas mãos e a velocidade linear de cada mão no movimento 2.

Por fim, em (c) é demonstrada a trajetória dos dedos de ambas as mãos e a velocidade linear

das mãos para o movimento 3.

De acordo com a figura 6.5 é possível verificar que os picos de velocidade da

mão direita e esquerda são atingidos quase ao mesmo tempo (o que era esperado

para este planeamento de movimento bimanual síncrono) e ambas as mãos começam

e terminam o movimento ao mesmo tempo, com velocidade e aceleração inicial e

final igual zero, ou seja, na trajetória do movimento direto (dada em 4.13) é definido

ω0 = 0, ωf = 0, α0 = 0 e αf = 0. De salientar que o último pico de velocidade

116 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 139: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 1

presente nos painéis a e b da figura 6.5 é correspondente ao movimento direto da

posição próxima da final à final do movimento 1 e 2, respetivamente. Por outro

lado, para o movimento 3 o primeiro pico de velocidade presente na figura 6.5c é

correspondente ao movimento direto da posição inicial a uma próxima.

Quanto às trajetórias, estas são livres de colisões, pois em toda a Tarefa 1

os braços do ARoS não colidem nem com o seu corpo, nem com a mesa e nem

com os obstáculos, que neste caso, é apenas a base do toy-vehicle. Para tal, os

braços-mãos do ARoS são modelados com 24 esferas como está representado na

figura 6.6. As esferas representam não todo o braço, mas sim apenas a partir do

pulso pois para esta tarefa não existe a necessidade de se verificar se todo o braço

colide com obstáculos. Além do mais, as trajetórias de ambos os braços podem ser

calculadas sem a necessidade de se verificar a colisão entre os dois braços e mãos,

visto que esta tarefa é espacialmente independente.

Figura 6.6: Modelação dos braços robóticos para a Tarefa 1, com 24 esferas representando

o pulso, mão e dedos.

Na implementação dos problemas do tipo Pa e Pb, associada a cada um dos

três movimentos, os valores dos parâmetros envolvidos no modelo de otimização

(nomeadamente na secção 4.5.2) encontram-se especificados na tabela 6.3.

Para além dos parâmetros dos problemas do tipo Pb definidos nesta tabela

faltam as funções no tempo, εtar (t) e εobs (t), que respetivamente, diminui ao longo

do movimento de modo a permitir agarrar os objetos-alvo e aumenta de forma a

garantir uma trajetória sem colisões, à medida que se aproxima dos obstáculos.

O IPOPT é invocado através da OPTI Toolbox usando os seus parâmetros

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

117

Page 140: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 1

Movimento Problemas de Parâmetros Problemas de Parâmetrosotimização Pa otimização Pb

β δ ζtar ζobs λk T tb λk

Alcançar e P1a1 1 10−5 10 5 1 P1b 1 0.5 1agarrar P1a2 1 10−5 10 5 1 1 0.5 1

Transpotar e P2a1 1 10−5 10 5 1 P2b 1 0.5 1inserir P2a2 1 10−5 10 5 1 1 0.5 1

Retornar à P3a1 1 10−5 10 5 1 P3b 1 0.5 1postura inicial

Tabela 6.3: Valores dos parâmetros envolvidos nos problemas de otimização da Tarefa 1.

por defeito, à exceção da informação das derivadas de segunda ordem, que são

aproximadas usando o método quasi-Newton BFGS de memória limitada e uma

tolerância relativa de convergência da função objetivo igual a 10−2. A tabela 6.4

mostra os resultados numéricos para todos os problemas do tipo Pa e Pb da Tarefa

1, onde N é o número de variáveis (ou antes o número de juntas nj), NT o número

de steps do movimento, Mineq é o número de restrições de desigualdade, Obj é o

valor da função objetivo e CPU é o tempo computacional em segundos.

Movimento 1 Movimento 2 Movimento 3

P1a1 P1a2 P1b P2a1 P2a2 P2b P3a1 P3b

N 14 14 18 14 14 14 14 18

NT - - 15 - - 20 - 10

Mineq 60 60 930 60 60 588 106 775

Obj 17.997 0.610 0.022 4.106 3.362 0.021 0.077 0.034

CP U 0.54 s 0.27 s 0.41 s 0.54 s 0.20 s 0.27 s 0.18 s 0.65 s

Tempo Total 1.22 s 1.01 s 0.83 s

Tabela 6.4: Resultados numéricos para os problemas de otimização Pa e Pb da Tarefa 1.

De acordo com os resultados da tabela anterior, é evidente que o IPOPT é capaz

de encontrar uma solução ótima para cada um dos problemas num tempo menor

que 0.7 segundos. O tempo maior para um movimento é de 1.22 segundos, sendo

que o tempo de espera aproximado entre o inicio do planeamento de movimento e a

execução do movimento pelo ARoS é o tempo do primeiro movimento (1.22 s).

118 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 141: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 1

6.1.3 Comparação com o Desempenho Humano

De forma a se poder comparar o desempenho do ARoS na execução desta Tarefa

1 com o desempenho dos Humanos, realizaram-se alguns testes com um grupo de

alunos. Os alunos foram dispostos no mesmo cenário proposto ao robô e foi-lhes

pedido para agarrarem as duas colunas e as inserirem nos respetivos buracos da base

do toy-vehicle, ou seja, a coluna azul no buraco azul e a vermelha no vermelho. Todo

este movimento tinha que ser feito com os dois braços ao mesmo tempo.

Obviamente que esta tarefa não impõe nenhuma dificuldade na sua execução

e todos os intervenientes humanos neste teste conseguiram executar com sucesso

os movimentos. No entanto, apenas foi possível fazer uma comparação em termos

de posturas e comportamento, pois para se compararem os tempos requeria que os

testes fossem bem mais especializados. Contudo, pode-se dizer que procederam de

modo semelhante ao robô ARoS, com a mão direita agarraram a coluna azul e com a

mão esquerda agarraram a coluna vermelha e procederam à inserção destas nos seus

respetivos buracos. Esta comparação é demonstrada na figura 6.7, onde se comparam

as posturas no momento em que se agarram as colunas e se inserem. Para assistir

ao vídeo completo do ARoS a desempenhar esta Tarefa 1 segue-se o seguinte link:

http://marl.dei.uminho.pt/public/videos/ARoS_bim_syn_task1.html.

(a) Momento de agarrar (b) Momento de inserção

Figura 6.7: Comparação das posturas dos humanos vs. do robô ARoS na Tarefa 1.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

119

Page 142: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 2

6.2 Tarefa 2

Nesta secção é feita a descrição da Tarefa 2 e a apresentação dos resultados, onde

primeiramente se começa por explicar em que consiste esta tarefa de manipulação

bimanual de objetos e o seu respetivo cenário. Posteriormente, são fornecidas

informações acerca do modo como se implementou toda esta tarefa no software

de planeamento de movimento e os respetivos resultados. Por fim, é feita uma

comparação com a forma como os humanos realizam a mesma tarefa.

Começando pela explicação da tarefa, em que esta, tal como a tarefa anterior,

tem como objetivo fazer o robô executar movimentos síncronos com os dois braços,

com o intuito de validar o modelo de movimento bimanual desenvolvido neste trabalho.

No entanto, de forma a diferir da tarefa 1 e se poder validar o algoritmo de colisão

entre os braços, propõe-se neste subcapítulo uma tarefa um pouco mais complexa

que a anterior, a Tarefa 2.

O cenário para esta tarefa encontra-se ilustrado na figura 6.8a, onde o robô

antropomórfico ARoS tem à sua frente peças do toy-vehicle. As duas colunas azul e

vermelha encontram-se inseridas nos buracos incorretos da base, ou seja, a coluna

azul no buraco vermelho e a coluna vermelha no buraco azul.

(a) Início

(b) Fim

Figura 6.8: Demonstração do cenário para a Tarefa 2. Em (a) é ilustrado o momento inicial

de toda a tarefa e em (b) o objetivo final.

120 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 143: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 2

O que se pretende, então, com esta tarefa é que o robô proceda à correção

da disposição das colunas trocando-as de lugar, como mostra a figura 6.8b. Para

o sucesso desta tarefa o ARoS terá que agarrar cada uma das colunas com uma

respetiva mão, proceder à troca das colunas e voltar à postura de repouso. Todos estes

movimentos serão com ambos os braços em sincronia e como tal acresce dificuldade

ao movimento da troca das colunas que terá que ser previamente bem definido.

De relembrar que este movimento para além de pretender validar o planeamento

de movimento bimanual síncrono, pretende verificar se o algoritmo responde correta-

mente à colisão entre os braços. Como tal, esta tarefa foi pensada com esse propósito

pois, a troca das colunas requer que haja um cruzamento entre os braços. Por outras

palavras, esta é uma tarefa espacialmente dependente.

6.2.1 Implementação da Tarefa em Software

6.2.1.1 Criação do Cenário em Simulador

De forma a se poder calcular, planear e simular toda a Tarefa 2 procede-se, primei-

ramente, à criação do cenário no simulador em MATLAB R©.

O cenário é desenhado consoante o cenário real que se pretende (figura 6.8a).

Por isso, dispõem-se todos os objetos necessários sobre a mesa, ficando o cenário

como mostra na figura 6.9. Onde cada elemento constituinte do cenário é posicionado

e orientado consoante o referencial de origem do mundo, W, disposto na base do

braço robótico direito.

Figura 6.9: Ilustração do cenário em simulador da Tarefa 2.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

121

Page 144: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 2

6.2.1.2 Formulação dos Movimentos

A Tarefa 2, essencialmente, é constituída pela sequência de três movimentos: 1) da

posição inicial o ARoS deve alcançar e agarrar a coluna azul com a mão direita

e a coluna vermelha com a mão esquerda; agarradas as colunas 2) deve trocar as

colunas e inserir as colunas nos buracos certos, por fim 3) deve voltar à posição

de descanso (posição inicial). A figura 6.10 exemplifica toda esta sequência de

movimentos a partir de quatro imagens:

(a) Posição inicial

(b) Alcançar e

agarrar

(c) Trocar e

inserir

(d) Voltar à posição ini-

cial

Figura 6.10: Sequência de movimentos bimanuais planeados para a Tarefa 2.

Esta tarefa pode ser resolvida de duas formas, uma que é a apresentada aqui em

que inicialmente o robô opta por cruzar os braços e seguidamente proceder à troca e

inserção das colunas ou, então, pode primeiramente agarrar as colunas diretamente e

só depois é que cruza os braços, de forma a proceder à troca e inserção. A maneira

que se optou aqui nesta tarefa deveu-se ao efeito visualizado no comportamento

humano, o “end-state comfort effect” (explicado no Estado da Arte na secção 2.3.2.2),

que diz que os humanos preferem optar por uma postura inicial estranha ou antes

complicada para que no fim da tarefa possa finalizar com uma postura bem mais

simples dos braços. O que se aplica muito bem nesta tarefa, pois a primeira postura,

respetiva ao agarre das colunas na figura 6.10b, é bem complicada para os braços.

No entanto, permite facilitar o resto do processo de troca e inserção das colunas na

base do toy-vehicle e acabar com uma postura final dos braços simplificada, como na

figura 6.10c.

122 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 145: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 2

A formulação de cada dos movimentos de acordo com o algoritmo de planeamento

de movimento bimanual síncrono é seguidamente apresentada:

1o Movimento - Alcançar e Agarrar: Neste movimento, os braços-mãos movem-

se das suas posturas de repouso às posturas que permitam agarrar cada um

dos objetos-alvo correspondente (braço direito - coluna azul e braço esquerdo -

coluna vermelha), com um determinado tipo de grip. Para este caso, cada uma

das mãos tem um diferente tipo de grip, a mão esquerda agarra o objeto em

side grip de precisão, enquanto a mão direita em diagonal grip1 de precisão para

permitir que os braços se possam cruzar, agarrar os objetos e não colidirem.

Na próxima secção 6.2.1.3 estes tipos de grip utilizados neste movimento e no

resto dos movimentos são explicados em maior detalhe. Quanto à formulação

deste movimento nos seus problemas de otimização, este apresenta:

• dois problemas do tipo Pa: P1a1 para a seleção de duas posturas finais,

θ1f1 ∈ R14 (uma para o braço direito e outra para o esquerdo), que

garantam que a mão direita e esquerda agarram corretamente o objeto e

P1a2 para a seleção de duas posturas quase finais (ou muito próximas das

finais dos respetivos braços), θ1f2 ∈ R14, para garantir que cada braço-mão

não colida com o seu objeto-alvo antes de o agarrar. Note-se que apenas

são calculadas as juntas dos braços direito e esquerdo (14 juntas: 1 a 7

braço direito, 12 a 18 braço esquerdo), visto que as juntas dos dedos das

mãos já são calculadas consoante o tipo de grip escolhido;

• um problema do tipo Pb: P1b para a seleção da postura de bounce mais

adequada, θ1b ∈ R18, que permita um movimento livre de colisões, da

postura inicial à postura definida por P1a2 (θ1f2), para ambos os braços

e mãos e por isso consideram-se 18 juntas, de 1 a 9 braço-mão direita e

de 12 a 20 braço-mão esquerda.

Portanto, este movimento é composto por dois movimentos: um movimento1A diagonal grip foi desenvolvida propositadamente para esta tarefa, de forma a permitir ao

braço direito do ARoS agarrar a coluna na situação em que os braços se cruzam.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

123

Page 146: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 2

composto (direto+back-and-forth) da postura de repouso à postura definida

em P1a2 e um movimento direto da postura P1a2 à postura definida em P1a1.

2o Movimento - Trocar e Inserir: o movimento de trocar as colunas e inseri-las

envolve:

• três problemas do tipo Pa: P2a1 para a seleção da postura para o braço

direito e esquerdo, θ2f ∈ R14, que permite retirar cada coluna do buraco

onde está inserida. P2a2 para a seleção de duas novas posturas dos braços,

θ2f2 ∈ R14, que permitem levar as colunas até perto do local correto de

inserção e P2a3 para calcular as posturas para os dois braços, θ2f3 ∈ R14,

que permitem inserir cada coluna no seu buraco correto;

• um problema do tipo Pb: P2b para a seleção da postura de bounce,

θ2b ∈ R14, que permita um movimento completo livre de colisões para

cada um dos braços e mãos da postura selecionada em P2a1 à postura

selecionada em P2a2. De notar que este movimento não necessita de

calcular valores para as juntas dos dedos, pois como é um movimento de

transporte de objetos convém que os dedos não se mexam para os objetos

não caírem.

Ao todo este movimento é composto por um movimento direto da postura P1a1

à postura P2a1, um movimento composto (direto+back-and-forth) da postura

P2a1 à postura P2a2 e um movimento direto da postura P2a2 a P2a3.

3o Movimento - Retornar à Postura de Repouso: de forma a retornar à pos-

tura de repouso (uma postura já conhecida), as mãos do ARoS devem largar

os objetos nos seus locais e voltar. Este movimento envolve:

• um problema do tipo Pa: P3a1 para selecionar duas posturas para

os braços próximas do local onde cada um dos objetos está inserido,

θ3f1 ∈ R14, para assim evitar qualquer colisão com o objeto no momento

em que larga a coluna;

124 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 147: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 2

• um problema do tipo Pb: P3b para calcular a postura de bounce, θ3b ∈ R18,

mais adequada ao movimento de retorno. Como este movimento de retorno

requer que os dedos se movam, então a postura de bounce é calculada com

base em 18 juntas (respetivas aos dois braços e mãos).

Essencialmente, este movimento é composto por um movimento direto da

postura definida em P2a3 à postura P3a1 e um movimento composto de P3a1

à postura de repouso.

A tabela 6.5 apresenta, de um modo mais resumido, tudo o que foi dito acima,

relativamente, à composição de cada um dos três movimentos constituintes da

Tarefa2.

Movimento Braço-Alvo Braço-Tipo de Seleção Seleção PosturaGrip Postura Final de Bounce

1 Alcançar e direito-Coluna direito-Diagonal P1a1+P1a2 P1bagarrar Azul nj: 14 14 18

esquerdo-Coluna esquerdo-SideVermelha

2 Trocar e - - P2a1+P2a2+P2a3 P2binserir - - nj:14 14 14 14

3 Retornar à - - P3a1 P3bpostura inicial - - nj: 14 18

Tabela 6.5: Formulação dos movimentos que compõem a Tarefa 2.

6.2.1.3 Tipos de Grip

O modo como o robô agarra e pega nas colunas é fundamental para a correta inserção

destas nos buracos da base do toy vehicle. Como já dito anteriormente, nesta Tarefa

2 a mão direita agarra a coluna em modo diagonal grip e a mão esquerda em side

grip, ambas de precisão. Os modos são escolhidos de modo a permitir facilitar todo

o processo, quer de agarre quer de inserção das duas colunas.

Na figura 6.11 é demonstrada a relação de orientação entre as mãos e os seus

objetos-alvo, determinada pelo tipo de grip escolhido para cada mão.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

125

Page 148: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 2

(a) Mão direita: diagonal grip (b) Mão esquerda: side grip

Figura 6.11: Demonstração da orientação (a) da mão direita com a coluna azul nas duas

fases da Tarefa 2 e (b) da mão esquerda com a coluna vermelha.

Consoante estas relações é estabelecida uma expressão matemática para formular

a restrição não-linear do problema de otimização do tipo Pa, respetiva à orientação

da mão em relação ao objeto-alvo (restrição essa definida em 4.29). Assim, na

tabela 6.6 são apresentadas as expressões que definem a orientação da mão robótica

direita e esquerda:

Tipo de Grip Restrição Não-Linear

Mão direita - Diagonal Grip ‖yR7 (θR,f )− xtarR (θR,f )‖2 ≤ δ

Mão esquerda - Side Grip ‖xL18 (θL,f ) + ztarL (θL,f )‖2 ≤ δ

Tabela 6.6: Descrição dos tipos de grip da Tarefa 2

6.2.2 Desempenho do Planeamento da Tarefa - Resultados

Neste ponto, são apresentados os resultados do planeamento da tarefa bimanual 2.

Estes resultados foram obtidos usando um computador Intel R© CoreTM i7-4770 CPU@

3.40GHz a correr no Windows 8 de 64-bits, com uma placa gráfica AMD Radeon

HD 6570 e 8GB de memória RAM. Todos os problemas de otimização do tipo Pa e

Pb, apresentados na tabela 6.5, foram codificados em AMPL e calculados usando o

IPOPT 3.11, fornecido pela toolbox gratuita do MATLAB R©, a OPTI Toolbox.

Para esta Tarefa 2, composta por três movimentos: (movimento 1) alcançar

e agarrar, (movimento 2) trocar e inserir as colunas e (movimento 3) retornar à

126 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 149: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 2

posição de repouso; o sistema de planeamento de movimento bimanual síncrono

propõe movimentos dos dois braços-mãos sincronizados no tempo, livres de colisões,

suaves e semelhantes aos movimentos realizados pelos braços humanos. O resultado

de cada um dos movimentos encontra-se ilustrado na figura 6.12, onde é possível

visualizar as trajetórias tal como a velocidade linear de cada uma das duas mãos,

obtidas no Simulador do ARoS em MATLAB.

(a) Movimento 1

(b) Movimento 2

(c) Movimento 3

Figura 6.12: Representação da sequência e caraterísticas dos movimentos da Tarefa 2

obtidos no simulador do ARoS. Em (a) é demonstrada as trajetórias dos dedos da mão direita

e esquerda e a velocidade linear de cada mão para o movimento 1. Em (b) são representadas

as trajetórias dos dedos das duas mãos e a velocidade linear de cada mão no movimento 2.

Por fim, em (c) é demonstrada a trajetória dos dedos de ambas as mãos e a velocidade linear

das mãos para o movimento 3.

De acordo com a figura 6.12 é possível verificar que os picos de velocidade da

mão direita e esquerda são atingidos quase ao mesmo tempo (o que era esperado

para este planeamento de movimento bimanual síncrono) e ambas as mãos começam

e terminam o movimento ao mesmo tempo, com velocidade e aceleração inicial e

final igual zero, ou seja, na equação do movimento direto (equação presente em 4.13)

é definido ω0 = 0, ωf = 0, α0 = 0 e αf = 0. De salientar que o último pico de

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

127

Page 150: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 2

velocidade presente nas figuras 6.12a e 6.12b é correspondente ao movimento direto

da posição próxima da final à final do movimento 1 e 2, respetivamente. Por outro

lado, para o movimento 2, na figura 6.12b, e movimento 3, na figura 6.12c, o primeiro

pico de velocidade é correspondente ao movimento direto da posição inicial a uma

próxima.

Quanto às trajetórias, estas são livres de colisões, pois em toda a Tarefa 2 os

braços do ARoS não colidem nem com o seu corpo, nem entre os braços e mãos, nem

com os obstáculos, que neste caso, são apenas a mesa e a base do toy-vehicle. Para

tal, os braços-mãos do ARoS são modelados com 10 esferas como está representado

na figura 6.13. As esferas representam não todo o braço, mas sim apenas a partir do

pulso pois para esta tarefa não existe a necessidade de se verificar se todo o braço

colide com obstáculos. Porém as mãos robóticas são apenas representadas por duas

esferas nos dedos e isto para exigir uma menor carga computacional ao sistema de

otimização. Apesar desta redução de esferas para se verificarem colisões, o resultado

permanece aceitável para os objetivos deste trabalho.

Figura 6.13: Modelação dos braços robóticos para a Tarefa 2, com 10 esferas representando

o pulso, mão e dedos.

Na implementação dos problemas do tipo Pa e Pb, de cada um dos três mo-

vimentos, os valores de certos parâmetros usados nos problemas de otimização

(nomeadamente na secção 4.5.2) encontram-se dispostos na tabela 6.7. Para além

dos parâmetros dos problemas do tipo Pb definidos nesta tabela faltam especificar as

funções no tempo de algumas das suas restrições, como: εtar (t) que diminui ao longo

do movimento de modo a permitir que os braços ao se cruzarem passem perto dos da

128 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 151: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 2

coluna-alvo do braço oposto, εobs (t) que aumenta de forma a garantir uma trajetória

sem colisões, à medida que se aproxima dos obstáculos e ψobs (t) que diminui ao

longo do tempo para o caso do planeamento do movimento de alcançar e agarrar

as colunas (objetos-alvo), de forma a permitir que os braços e mãos possam estar

próximos um do outro. Por outro lado, ψobs (t) permanece com um valor constante,

valor esse mínimo no movimento anterior, para o movimento de troca (ou transporte)

das colunas.

Movimento Problemas de Parâmetros Problemas de Parâmetrosotimização Pa otimização Pb

β δ ζtar ζobs λk T tb λk

Alcançar e P1a1 1 10−4 10 5 1 P1b 1 0.5 1agarrar P1a2 1 10−4 10 5 1

Trocar e P2a1 1 10−5 10 5 1 P2b 1 0.5 1inserir P2a2 1 10−5 10 5 1

Trocar e P2a3 1 10−5 10 5 1

Retornar à P3a1 1 10−3 10 5 1 P3b 1 0.5 1postura inicial

Tabela 6.7: Valores dos parâmetros envolvidos nos problemas de otimização da Tarefa 2.

O IPOPT é invocado através da OPTI Toolbox usando os seus parâmetros

por defeito, à exceção da informação das derivadas de segunda ordem, que são

aproximadas usando o método quasi-Newton BFGS de memória limitada e uma

tolerância relativa de convergência da função objetivo igual a 10−2. A tabela 6.8

Movimento 1 Movimento 2 Movimento 3

P1a1 P1a2 P1b P2a1 P2a2 P2a3 P2b P3a1 P3b

N 14 14 18 14 14 14 14 14 18

NT - - 20 - - - 10 - 10

Mineq 63 63 661 63 63 28 900 28 230

Obj 15.886 0.102 0.137 0.102 1.40 0.124 0.028 0.024 0.145

CP U 0.23 s 0.31 s 0.68 s 0.58 s 0.20 0.16 s 1.40 s 0.14 s 0.19 s

Tempo Total 1.22 s 2.34 s 0.33 s

Tabela 6.8: Resultados numéricos para os problemas de otimização Pa e Pb da Tarefa 2.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

129

Page 152: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 2

mostra os resultados numéricos para todos os problemas do tipo Pa e Pb da Tarefa

2, onde N é o número de variáveis (ou antes o número de juntas nj), NT o número

de steps do movimento, Mineq é o número de restrições de desigualdade, Obj é o

valor da função objetivo e CPU é o tempo computacional em segundos.

De acordo com os resultados da tabela anterior, é evidente que o IPOPT é capaz

de encontrar uma solução ótima para cada um dos problemas num tempo menor

que 0.7 segundos. O tempo maior para um movimento é de 2.34 segundos e quanto

ao tempo de espera aproximado entre o inicio do planeamento de movimento e a

execução do movimento pelo robô ARoS tem-se o tempo do primeiro movimento,

que neste caso é de 1.22 segundos.

6.2.3 Comparação com o Desempenho Humano

De forma a se poder comparar o desempenho do ARoS na execução desta Tarefa 2

com o desempenho dos Humanos, realizaram-se alguns testes com um grupo de alunos.

Os alunos foram dispostos no mesmo cenário proposto ao robô e foi-lhes pedido para

arranjarem maneira de corrigir a disposição das colunas nos seu buracos de cores

correspondentes. Para além disto, o importante é realizarem todos os movimentos

necessários com as duas mãos ao mesmo tempo.

Os resultados a esta tarefa (e como era de esperar!) foram dois. Num dos

resultados um conjunto de alunos optou por, inicialmente, agarrar diretamente as

colunas, isto é, com o braço do lado da coluna, e só depois com as colunas já agarradas

é que pensou em cruzar os braços para trocar as colunas. A figura 6.14 apresenta a

sequência de movimentos captados por algumas fotos tiradas aos alunos que optaram

por esta solução. Relativamente a estas fotos é possível verificar que eles agarram as

colunas mas depois aquando do processo de troca este é um pouco dificultado, as

colunas colidem uma com a outra e o momento da inserção é bem mais complicado,

pois com os braços cruzados acresce a dificuldade na precisão da inserção das colunas.

No entanto, um outro grupo de alunos opta por cruzar, primeiramente, os braços

no agarre das colunas e depois na troca descruza os braços e insere, como ilustrado

na figura 6.15. Este grupo de alunos ao preferir uma postura inicial desconfortável,

130 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 153: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 2

Figura 6.14: Versão 1 do comportamento humano para a realização da Tarefa 2.

consequentemente, terá uma postura final facilitada - “end-state-comfort effect”.

Pelas imagens da figura 6.15 é possível visualizar que a inserção das colunas é bem

mais precisa que a anterior e é efetuada ao mesmo tempo pelos braços.

Figura 6.15: Versão 2 do comportamento humano para a realização da Tarefa 2.

Contudo o comportamento doARoS para esta tarefa é semelhante a esta segunda

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

131

Page 154: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 2

versão da execução da tarefa pelos alunos. De forma a comparar os movimentos

veja-se na figura 6.16 a sequência de movimentos captados aquando da execução real

da tarefa pelo robô. No entanto, para assistir ao vídeo completo segue-se o seguinte

link: http://marl.dei.uminho.pt/public/videos/ARoS_bim_syn_task2.html.

Figura 6.16: Demonstração da execução real da Tarefa 2 pelo ARoS.

6.3 Conclusões Gerais

Neste capítulo foram apresentadas duas tarefas de manipulação bimanual de objetos,

com o objetivo de validar o modelo de planeamento de movimento bimanual síncrono

desenvolvido neste trabalho e formulado no Capítulo 4. Modelo esse que toma

inspiração de conceitos elaborados a partir de estudos feitos em humanos para a

compreensão da coordenação motora dos membros superiores dos humanos. Como

tal, o perfil de velocidade das mãos traçado pelo modelo de planeamento, apresentado

nas respetivas secções dos resultados da Tarefa 1 e Tarefa 2, nomeadamente nas

figuras 6.5 e 6.12, demonstra que o modelo é capaz de gerar trajetórias “human-like”,

pois apresentam velocidade em forma “bell-shaped” o que indica que o movimento

é gerado tendo em conta o princípio do minimun angular jerk. Por outro lado,

132 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 155: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 6 - Validação do Modelo de Planeamento deMovimento Bimanual Síncrono - Tarefa 2

os movimentos dos dois braços são sincronizados no tempo e atingem o pico de

velocidade quase no mesmo instante. De relembrar que todas estas caraterísticas

foram anteriormente formuladas e atribuídas como um sinal de “human-likeness” no

movimento gerado (na secção 4.1).

Os testes realizados ao grupo de alunos serviu apenas para verificar e comparar

certas posturas ao longo dos movimentos das Tarefas 1 e 2, pois por razões técnicas

era difícil determinar o tempo que a pessoa leva a calcular os movimentos. Por isso,

uma comparação em termos de tempos foi impossível. De certo modo, o planeamento

de movimentos do ARoS selecionou as posturas mais adequadas ao movimento e

mais parecidas com as das pessoas.

Contudo, para além das trajetórias geradas cumprirem com os requisitos de

“human-likeness”, estas são totalmente livres de colisões. Por outro lado, e a partir

dos resultados dos tempos computacionais da resolução dos problemas de otimização

de cada tarefa, presentes nas tabelas 6.4 e 6.8 é possível afirmar que o sistema de

planeamento de movimento é suficientemente rápido para permitir que no futuro

se implemente um sistema de re-planeamento em tempo real (no caso de alterações

no cenário). Para além dos baixos tempos computacionais o robô ARoS, desde o

planeamento de movimento até à execução, apenas tem que esperar pelo tempo de

planeamento do primeiro movimento, que para estas duas tarefas não ultrapassou os

1.22 segundos. Pois enquanto o robô executa o movimento já se encontra a planear o

seguinte, o que facilita a implementação do sistema de re-planeamento.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

133

Page 156: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs
Page 157: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7

Validação do Modelo de

Planeamento de Movimentos

Bimanuais e Unimanuais

Neste capítulo é demonstrada a capacidade do software de planeamento de movimen-

tos para a resolução de uma sequência de diferentes movimentos, tanto bimanuais

síncronos como unimanuais. De forma a permitir ao ARoS desempenhar uma tarefa

com um grau de complexidade bem mais alto do que as tarefas anteriores.

Sendo assim, neste capítulo é proposta uma tarefa de complexidade elevada,

em que esta é explicada e formulada de acordo com o software de planeamento de

movimento desenvolvido. Posteriormente, são apresentados os resultados obtidos,

como a trajetória, a velocidade das mãos robóticas e os resultados em termos

de tempos computacionais. Consequentemente, é feita uma conclusão acerca dos

resultados obtidos.

7.1 Definição da Tarefa 3

Existe uma grande variedade de tarefas que se encaixam neste perfil de tarefas “mais

complexas” e com diferentes tipos de movimentos. No entanto, na área da robótica

humanóide existe um grande interesse em aplicar os robôs juntamente com as pessoas

135

Page 158: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

e daí surgem várias aplicações para estes robôs, nomeadamente, para ajuda em

tarefas domésticas, nas linhas de montagem das fábricas, na educação das crianças,

para cuidados de saúde, entre outros. Com isto, e focando nas aplicações robóticas

para a ajuda doméstica, as tarefas com bastante interesse para os investigadores

desta área são com base na manipulação de objetos do meio ambiente humano. Por

isso, colocar um robô antropomórfico a desempenhar tarefas do dia a dia humano

está em grande crescimento, em termos de investigação. Por exemplo a tarefa de

abrir uma garrafa, pegar no copo e entornar o líquido da garrafa no copo é aliciante

nesta área, pois já existem alguns robôs como o ASIMO da Honda (figura 7.1a) e o

HRP-2 (figura 7.1b) que conseguem desempenhar esta tarefa.

(a) ASIMO (b) HRP-2

Figura 7.1: Demonstração de robôs capazes de desempenhar tarefas humanas. Em (a) o robô

abre a garrafa e entorna o líquido para o copo (imagem retirada de http://world.honda.

com/ASIMO/technology/2011/performing/index.html). Em (b) o robô HRP-2 deita o

líquido da garrafa num copo (imagem retirada de http://i-heart-robots.blogspot.pt/

2007/04/robotic-home-invades-japan.html).

Portanto, esta foi a tarefa escolhida para demonstrar a capacidade do sistema

de planeamento de movimentos bimanuais síncronos e unimanuais. Foi escolhida não

só pela sua complexidade de movimentos, mas também pelo seu grande interesse

científico.

7.1.1 Sequência e Coordenação dos Movimentos

Esta Tarefa 3 é, logicamente, uma tarefa bimanual altamente cooperativa em que

requer que cada um dos dois braços desempenhem uma bem estruturada sequência

136 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 159: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

de movimentos, respetivamente:

1. Alcançar e agarrar a garrafa - movimento unimanual;

2. Abrir a garrafa - movimento bimanual assimétrico;

3. Colocar a tampa da garrafa na mesa e levar a garrafa para uma

posição mais confortável - movimento bimanual assimétrico;

4. Alcançar e agarrar o copo - movimento unimanual;

5. Transportar o copo e a garrafa para uma posição próxima - movimento

bimanual assimétrico;

6. Entornar o líquido da garrafa no copo - movimento bimanual assimétrico;

7. Parar com o movimento anterior e estabilizar a posição da garrafa

e do copo - movimento bimanual assimétrico;

8. Pousar a garrafa e oferecer o copo a alguém - movimento bimanual

assimétrico.

Dentro destes oito movimentos, uns são unimanuais e outros bimanuais. Quanto

aos unimanuais estes são simples, são realizados apenas com um braço-mão. No

entanto, os movimentos bimanuais, estes sim, são mais complexos, são coordenados

espacialmente e temporalmente entre si e ambos os movimentos de cada braço são

assimétricos, pois cada braço-mão tem objetivos específicos e diferentes.

Posto isto, e como o objetivo é que o robô execute a tarefa o mais parecido com

uma pessoa, cada um destes movimentos bimanuais assimétricos deve ser explicado

consoante observações levadas a cabo por estudos na área do Controlo Motor Humano.

Sendo assim:

• Uma das caraterísticas destes movimentos bimanuais é que são sincronizados.

Pois, como já explicado anteriormente no capítulo referente ao planeamento

de movimento bimanual síncrono na secção 4.1, os dois braços perante tarefas

cooperativas tendem a sincronizar os movimentos (Perrig et al., 1999; Weiss

and Jeannerod, 1998).

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

137

Page 160: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

• Uma outra caraterística é saber qual o papel de cada um dos braços-mãos nesta

tarefa. O trabalho de Theorin (2009) baseado em observações de situações

do quotidiano das pessoas, explora este mesmo problema, em que afirma que

as pessoas perante a tarefa de abrir uma garrafa escolhem a mão direita ou

esquerda para agarrar a garrafa atendendo ao objetivo da tarefa. Ou seja,

se o objetivo é apenas pegar na garrafa e a abrir, então, é a mão esquerda

(não-dominante) que agarra a garrafa e a mão direita (dominante) que a abre.

Por outro lado se o objetivo é beber da garrafa então é a mão direita que

agarra a garrafa e a esquerda que retira a tampa, pois para este caso existe um

próximo movimento (o de beber) que requer grande precisão.

Portanto, de acordo com estas observações o planeamento para os movimentos

bimanuais é síncrono e o robô ARoS, visto que para além de abrir a garrafa terá

que entornar o seu conteúdo num copo (ação de precisão), então, terá que agarrar a

garrafa com a mão direita e retirar a sua tampa com a mão esquerda.

7.2 Implementação da Tarefa em Software

Neste capítulo são explicados os aspetos essenciais para a implementação da tarefa

no software de planeamento de movimento.

Antes de mais, é de notar que devido à forma e robustez das mãos do ARoS

este não pode manipular todo o tipo de objetos, especialmente, abrir uma garrafa

normal. Por isso, esta tarefa é realizada com uma garrafa térmica, pois estas são

mais fortes e a sua tampa é bem maior que as típicas garrafas.

7.2.1 Criação do Cenário em Simulador

De forma a se poder calcular, planear e simular toda esta Tarefa 3 procede-se

primeiramente à criação do cenário no simulador em MATLAB R©.

O cenário é desenhado consoante o cenário real que se pretende. Por isso,

dispõem-se todos os objetos necessários sobre a mesa, nomeadamente, o copo e a

garrafa térmica, ficando o cenário como mostra a figura 7.2. Onde cada elemento

138 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 161: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

constituinte do cenário é posicionado e orientado consoante o referencial de origem

do mundo, W, disposto na base do braço robótico direito.

Figura 7.2: Ilustração do cenário em simulador da Tarefa 3.

7.2.2 Formulação dos Movimentos

A sequência apresentada, anteriormente, para descrever a tarefa de abrir uma garrafa

e entornar o líquido da garrafa no copo, está definida numa sequência geral ou

até standard de movimentos. Obviamente que a Tarefa 3 aplicada ao ARoS tem

outras especificações devido ao modo como é formulado o modelo de planeamento

de movimento. Com isto, esta tarefa é composta pela sequência dos movimentos

apresentados na figura 7.3, em que o movimento 1) consiste em mover o braço

direito do ARoS da sua posição de descanso de forma a este alcançar e agarrar a

garrafa térmica; no movimento 2) o robô transporta a garrafa com o braço-mão

direito até uma posição onde o braço esquerdo possa agarrar a tampa; o seguinte

movimento 3) é para remover a tampa da garrafa, onde o robô terá que rodar

a garrafa e a tampa de modo a desapertar esta; o movimento 4) consiste num

movimento bimanual em que o robô pousa a tampa na mesa e com a outra mão

transporta a garrafa para uma posição mais confortável; o movimento 5) é um

movimento unimanual, pois é quando a mão esquerda alcança e agarra o copo;

o movimento 6) consiste no transporte da garrafa e do copo para uma posição

em que estejam próximos; o movimento 7) é para verter o líquido da garrafa no

copo; o movimento 8) é para parar de verter o líquido no copo, estabilizando a

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

139

Page 162: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

posição do copo e da garrafa; seguindo-se o movimento 9) para colocar a garrafa

na mesa e por fim o movimento 10) em que o robô oferece o copo a alguém e

retorna com o braço direito (livre) à posição de descanso.

Figura 7.3: Sequência de movimentos planeados para a Tarefa 3.

140 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 163: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

A formulação de cada um destes movimentos, de acordo com o procedimento

de planeamento de movimento bimanual síncrono e unimanual é seguidamente

apresentada:

1o Movimento: Neste movimento, o braço direito move-se da sua postura de

repouso a uma postura que permita agarrar a garrafa térmica com o tipo

de grip em full side, ou seja de força. No próximo ponto este tipo de grip

é abordado. Quanto à formulação deste movimento nos seus problemas de

otimização, este apresenta:

• dois problemas do tipo Pa: P1a1 para a seleção da postura final para o

braço direito, θR1f1 ∈ R7, que permita este agarrar a garrafa com o tipo

de grip pretendido; e P1a2 para a seleção de uma postura quase final

(próxima do alvo), θR1f2 ∈ R7;

• um problema do tipo Pb: P1b para a seleção da postura de bounce mais

adequada, θR1b ∈ R9, que permita um movimento livre de colisões da

postura inicial à postura P1a2.

Este movimento é composto por dois movimentos: um movimento composto

(direto+back-and-forth) da postura de repouso à postura definida em P1a2 e

um movimento direto da postura P1a2 à postura definida em P1a1.

2o Movimento: Este movimento de transportar a garrafa com o braço direito e

agarrar a tampa com o esquerdo, em modo full side, é formulado por:

• dois problemas do tipo Pa: P2a1 para selecionar duas posturas finais

para o braço direito e esquerdo, θ2f ∈ R14, e P2a2 para selecionar outras

duas posturas próximas das anteriores, θ2f2 ∈ R14;

• um problema do tipo Pb: P2b para a seleção da postura de bounce mais

adequada, θ2b ∈ R16, que permita um movimento livre de colisões das

posturas anteriores dos braços às posturas definidas em P2a2. Note-se

que neste movimento estão em causa 16 juntas, pois 7 são do braço direito

que faz um movimento de transporte e 9 são respetivas ao braço esquerdo.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

141

Page 164: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

Este movimento é composto por dois movimentos: um movimento composto

(direto+back-and-forth) das posturas iniciais dos braços (ou anteriores ao

movimento) à postura definida em P2a2 e um movimento direto da postura

P2a2 à postura definida em P2a1.

3o Movimento: Neste movimento ambos os braços têm de trabalhar juntamente

para conseguir desenroscar a tampa da garrafa. Este movimento é dividido em

três movimentos de rotação:

• Rotação 1 - consiste em fazer com que ambos os braços rodem a partir do

eixo vertical (eixo do z) os seus objetos em sentidos opostos, o braço-mão

direita roda a garrafa num sentido contrário ao do braço-mão esquerda que

roda a tampa. Este movimento é composto por um problema do tipo Pa e

Pb, respetivamente: P3a1 para selecionar duas posturas para cada um dos

braços que permitam rodar verticalmente os objetos, θ3f1 ∈ R14, e P3b1

para selecionar as duas posturas de bounce, θ3b1 ∈ R14, que permitam um

movimento bastante preciso, pois não se quer que o robô execute forças

que entortem a garrafa neste movimento.

• Rotação 2 - este movimento de rotação é para permitir que os braços

voltem ao ponto inicial antes da primeira rotação, isto, para permitir

que se prossiga com mais outras rotações. Assim, este movimento conta

com a postura final definida anteriormente por P2a1 e uma postura de

bounce selecionada por P3b2, θ3b2 ∈ R14, que permita que ao longo do

movimento os braços executem um movimento preciso. Note-se que neste

movimento a mão esquerda deve abrir os seus dedos de modo a não tocar

na tampa.

• Rotação 3 - esta rotação 3 é semelhante à primeira rotação onde os

braços-mãos rodam a garrafa e a tampa em sentidos opostos de maneira

a desapertar a tampa. Assim, a postura final é a determinada na rotação

1, definida por P3a1 e é calculada por P3b3 uma postura de bounce,

θ3b3 ∈ R14, que permita um movimento preciso entre os dois braços e os

142 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 165: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

seus objetos-alvo.

4o Movimento: o quarto movimento, para colocar a tampa na mesa e a garrafa

num local mais confortável, é definido por:

• dois problemas do tipo Pa: P4a1 para selecionar duas posturas, θ4f1 ∈

R14, que permitam ao braço esquerdo subir com a tampa e ao braço direito

descer com a garrafa, de modo a separar estes e P4a2 para selecionar

duas posturas, θ4f2 ∈ R14, que permitam ao braço direito posicionar a

garrafa num outro local e ao braço esquerdo colocar a tampa na mesa.

• um problema do tipo Pb: P4b para selecionar as posturas de bounce,

θ4b ∈ R14, que permitam aos braços se moverem sem colisões.

5o Movimento: consiste em alcançar e agarrar o copo com a mão esquerda (movi-

mento unimanual) e é composto por:

• três problemas do tipo Pa: P5a1 para selecionar uma postura que permita

ao braço esquerdo largar a tampa na mesa, P5a2 e P5a3 para selecionar

a postura para o braço esquerdo próxima do novo objeto-alvo e final (a

agarrar o copo).

• um problema do tipo Pb: P5b para a postura de bounce, θ5b ∈ R9,

que permita um movimento livre de colisões da postura P5a1 à postura

definida em P5a2.

6o Movimento: movimento de transporte do copo e da garrafa até uma posição

propícia para se proceder ao resto da tarefa (entornar o líquido da garrafa no

copo). Este movimento é composto por:

• dois problemas do tipo Pa: P6a1 e P6a2 para selecionar duas posturas

para o braço esquerdo e direito finais e intermédias, respetivamente.

• um problema do tipo Pb: P6b para a postura de bounce que permita

um movimento livre de colisões da postura inicial (ou anterior a este

movimento) à postura definida em P6a1.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

143

Page 166: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

7o Movimento: consiste na sequência de dois movimentos diretos que permitam

aos braços posicionar tanto o copo como a garrafa de forma a verter o líquido

da garrafa no copo. Por isso, definem-se dois conjuntos de duas posturas pelos

problemas P7a1 e P7a2.

8o Movimento: este movimento é para parar de verter o líquido no copo, estabili-

zando verticalmente a garrafa e o copo. Por isso define-se apenas um problema

do tipo Pa, P8a1, para selecionar as posturas finais do braço esquerdo e di-

reito. O movimento é calculado através de um movimento direto das posições

anteriores de cada braço a esta final definida por P8a1.

9o Movimento: movimento unimanual para colocar a garrafa na mesa. Consiste no

cálculo do problema P9a1 para selecionar a postura para o braço direito que

permita a este colocar a garrafa na mesa e do problema P9b para a postura

de bounce.

10o Movimento: último movimento que consiste em posicionar a mão direita do

robô na sua posição de repouso e com a mão esquerda oferecer o copo a alguém.

Este movimento é definido por:

• um problema do tipo Pa: P10a1 para selecionar a postura para o braço

esquerdo, θ10f1 ∈ R7, que permita oferecer o copo;

• um problema do tipo Pb: P10b para as posturas de bounce, θ10b ∈ R16,

que permitam um movimento livre de colisões das posturas iniciais dos

braços (ou anteriores a este movimento) às posturas finais definidas em

P10a1 para o braço esquerdo e postura de repouso (já conhecida) para o

braço direito. Note-se que esta postura é definida por 16 juntas, isto é, 9

são respetivas ao braço direito e 7 juntas são do braço esquerdo.

De uma forma mais resumida, a tabela 7.1 apresenta tudo o que foi dito acima

relativamente à implementação de cada um dos dez movimentos constituintes da

Tarefa 3.

144 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 167: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

Movimento Braço-Alvo Braço-Tipo de Seleção Seleção PosturaGrip Postura Final de Bounce

1 Alcançar e direito-Garrafa direito-Side P1a1+P1a2 P1bagarrar nj: 7 7 9

2 Transportar direito-Garrafa direito-Side P2a1+P2a2 P2be agarrar esquerdo-Tampa esquerdo-Side nj: 14 14 16

garrafa

3 Remover - - P3a1 P3b1+P3b2+P3b3a tampa - - nj: 14 14 14 14

4 Colocar tampa - - P4a1+P4a2 P4bna mesa - - nj: 14 14 14

5 Alcançar e - - P5a1+P5a2+P5a3 P5bagarrar copo esquerdo-Copo esquerdo-Side nj: 7 7 7 9

6 Transportar copo - - P6a1+P6a2 P6be garrafa - - nj: 14 14 14

7 Entornar líquido - - P7a1+P7a2no copo - - nj: 14 14

8 Posicionar copo - - P8a1e garrafa - - nj: 14

9 Colocar garrafa - - P9a1 P9bna mesa - - nj: 7 7

10 Finalizar direito-Repouso direito-Repouso P10a1 P10bmovimento - - nj: 7 16

Tabela 7.1: Formulação dos movimentos que compõem a Tarefa 3.

7.2.3 Tipos de Grip

Todos os tipos de grip presentes nesta tarefa são de força ou full e do tipo side. O

tipo side grip de precisão já foi, anteriormente, apresentado nas tarefas 1 e 2, no

entanto, o tipo side grip de força permite à mão agarrar de um modo preenchido o

objeto, dependendo unicamente do diâmetro deste. Na figura 7.4 é possível visualizar

a orientação de cada mão consoante o tipo de grip desejado e os seus objetos-alvo,

nas duas fases da tarefa: a primeira fase é correspondente à abertura da garrafa

térmica enquanto a segunda fase é correspondente ao processo de entornar o líquido

da garrafa no copo. A primeira fase é demonstrada na figura 7.4a e é possível verificar

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

145

Page 168: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

que existe uma rotação dos braços-mãos e seus objetos-alvos em sentidos opostos. A

segunda fase encontra-se ilustrada na figura 7.4b e é possível visualizar a rotação

para inclinar a garrafa térmica e o copo.

(a) Abertura da garrafa em side grip (b) Inclinação do copo e garrafa em side grip

Figura 7.4: Demonstração da orientação (a) das mãos direita e esquerda para a remoção

da tampa e (b) das duas mãos para permitir verter o líquido da garrafa no copo.

Nos dois exemplos demonstrados na figura anterior os eixos coordenados das

mãos encontram-se muito bem orientados com os eixos dos objetos-alvo, isto, para

permitir que os braços executem corretamente os movimentos de rotação ao longo de

toda a tarefa. Por isso, a implementação das restrições de orientação das mãos com

os alvos nos problemas do tipo Pa são mais restritas. Para cada mão escrevem-se

duas equações como as apresentadas na tabela 7.2.

7.3 Desempenho do Planeamento da Tarefa

Neste ponto, são apresentados os resultados do planeamento da tarefa bimanual 3.

Estes resultados foram obtidos usando um computador Intel R© CoreTM i7-2670QM

146 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 169: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

Tipo de Grip Restrição Não-Linear

Mão direita - Side Grip‖xR7 (θR,f )− ztarR (θR,f )‖2 ≤ δR1

‖yR7 (θR,f )− xtarR (θR,f )‖2 ≤ δR2

Mão esquerda - Side Grip‖xL18 (θL,f ) + ztarL (θL,f )‖2 ≤ δL1

‖yL18 (θL,f )− xtarL (θL,f )‖2 ≤ δL2

Tabela 7.2: Descrição dos tipos de grip da Tarefa 3

CPU@ 2.20GHz a correr no Windows 7 de 64-bits, com uma placa gráfica NVIDIA

GeForce GT 525M e 4GB de memória RAM. Todos os problemas de otimização do

tipo Pa e Pb, apresentados na tabela 7.1, foram codificados em AMPL e calculados

usando o IPOPT 3.11, fornecido pela toolbox gratuita do MATLAB R©, a OPTI

Toolbox.

Para esta Tarefa 3 composta, essencialmente, por dez movimentos, o sistema de

planeamento de movimentos propõe movimentos unimanuais e bimanuais síncronos,

livres de colisões e semelhantes aos realizados pelos humanos. O resultado de cada

um dos movimentos pode ser visualizado na figura 7.5, onde para além de se poder

ver o traçado das trajetórias dos dedos das mãos do ARoS é possível ver o perfil da

velocidade linear de cada uma das mãos no respetivo movimento. De acordo com

esta figura é possível verificar que o sistema de planeamento de movimento consegue

calcular com sucesso toda a bem definida sequência de ações. De notar que para os

movimentos mais precisos como o de abrir a garrafa e entornar o líquido no copo,

estes têm velocidades pequenas pois devem ser executados pelo robô com um maior

cuidado.

Como nas tarefas anteriores, estabelece-se uma velocidade e aceleração inicial e

final do movimento direto como zero, ou seja, na equação 4.13 do movimento direto é

definido ω0 = 0, ωf = 0, α0 = 0 e αf = 0. Por outro lado, para evitar colisões entre

os braços-mãos do robô com o corpo e obstáculos no cenário, o ARoS é modelado

com cinco esferas em cada braço-mão, desde o pulso até aos dedos como na Tarefa 2

(ver figura 6.13). Obviamente que se poderiam considerar mais esferas, mas como se

pretende um algoritmo rápido e eficiente e visto que com a implementação das esferas

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

147

Page 170: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

nos braços e mãos desta forma funciona (validado pela tarefa 2), então, opta-se por

continuar a implementar assim os braços do robô.

Quanto à implementação dos problemas de otimização do tipo Pa e Pb, de cada

um dos dez movimentos da Tarefa 3, os valores dos parâmetros descritos no modelo

de otimização (nomeadamente na secção 4.5.2) encontram-se dispostos na tabela 7.3.

Movimento Parâmetros ParâmetrosPa Pb

β δ ζtar ζobs λk T tb λk εtar (t) εobs (t)

Alcançar e P1a1 1 10−5 - 5 1 P1b 1 0.5 1 - 10 a 5agarrar P1a2 1 10−5 - 5 1

Transportar P2a1 1 10−5 - 5 1 P2b 1 0.5 1 30 a 10 20e agarrar P2a2 1 10−5 - 5 1

Remover P3a1 1 10−5 - - 1 P3b1 1 0.5 1 β (t) = 1 δ (t) = 10−4

a tampa P3b2 1 0.5 1 β (t) = 1 δ (t) = 10−4

P3b3 1 0.5 1 β (t) = 1 δ (t) = 10−4

Colocar tampa P4a1 1 10−5 - 5 1 P4b 1 0.5 1 - 10na mesa P4a2 1 10−5 - 5 1

Alcançar e P5a1 1 10−5 - - 1 P5b 1 0.5 1 5 a 10 5 a 0agarrar copo P5a2 1 10−5 - 10 1

P5a3 1 10−5 - 10 1

Transportar copo P6a1 1 10−5 1 1 1 P6b 1 0.5 1 - 10e garrafa P6a2 1 10−5 1 1 1

Entornar líquido P7a1 1 10−5 - 1 1no copo P7a2 1 10−5 - 1 1

Posicionar copo P8a1 1 10−5 - 1 1e garrafa

Colocar garrafa P9a1 1 10−5 - 5 1 P9b 1 0.5 1 - 10 a 20na mesa

Finalizar P10a1 1 10−5 - 5 1 P10b 1 0.5 1 5 a 30 5 a 20movimento

Tabela 7.3: Formulação dos parâmetros dos problemas de otimização da Tarefa 3.

O IPOPT é invocado através da OPTI Toolbox usando os seus parâmetros

por defeito, à exceção da informação das derivadas de segunda ordem, que são

aproximadaa usando um método quasi-Newton BFGS de memória limitada e uma

148 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 171: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

tolerância relativa de convergência da função objetivo igual a 10−2. A tabela 7.4

mostra os resultados numéricos para todos os problemas do tipo Pa e Pb da Tarefa

3, onde N é o número de variáveis (ou antes o número de juntas , nj), NT o número

de steps do movimento, Mineq é o número de restrições de desigualdade, Obj é o

valor da função objetivo e CPU é o tempo computacional em segundos.

Movimento Problemas de N NT Mineq Obj CP U Tempo totalOtimização

1 Alcançar e P1a1 7 - 13 0.428 0.60 s0.97 sagarrar P1a1 7 - 13 0.105 0.19 s

P1b 9 20 505 0.062 0.18 s

2 Transportar P2a1 14 - 30 0.084 0.16 s0.71 se agarrar P2a2 14 - 30 0.065 0.14 s

P2b 16 20 845 0.139 0.41 s

3 Remover P3a1 14 - 12 0.608 0.79 s1.22 sa tampa P3b1 14 10 156 0.285 0.43 s

P3b2 14 10 156 0.285 0.48 s 0.48 sP3b3 14 10 156 0.784 1.19s 1.19 s

4 Colocar tampa P4a1 14 - 30 0.160 0.26 s1.17 sna mesa P4a2 14 - 30 0.374 0.54 s

P4b 14 20 584 0.157 0.37 s

5 Alcançar e P5a1 7 - 8 0.294 0.43 s

1.06 sagarrar copo P5a2 7 - 14 0.103 0.17 sP5a3 7 - 14 0.094 0.17 sP5b 9 20 584 0.094 0.29 s

6 Transportar copo P6a1 14 - 30 0.397 0.59 s0.95 se garrafa P6a2 14 - 30 0.129 0.22 s

P6b 14 20 470 0.047 0.14 s

7 Entornar líquido P7a1 14 - 30 0.175 0.28 s0.58 sno copo P7a2 14 - 30 0.193 0.30 s

8 Posicionar copo P8a1 14 - 30 0.192 0.32 s0.32 se garrafa

9 Colocar garrafa P9a1 7 - 14 0.059 0.12 s0.31 sna mesa P9b 7 20 282 0.082 0.19 s

10 Finalizar P10a1 7 - 14 0.068 0.14 s1.02 smovimento P10b 16 20 1000 0.229 0.88 s

Tabela 7.4: Resultados numéricos para os problemas de otimização Pa e Pb da Tarefa 3.

De acordo com os resultados da tabela anterior, é possível afirmar que o IPOPT

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

149

Page 172: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

chegou a uma solução ótima para cada um dos problemas num tempo menor que 0.9

segundos e o tempo total de cálculo de um movimento completo não ultrapassou os

1.22 segundos. Sendo que o tempo aproximado de espera entre o inicio do planeamento

de movimento e a execução do movimento pelo robô é de 0.97 segundos, o tempo do

primeiro movimento.

7.4 Conclusões

Devido à alta complexidade desta Tarefa 3, esta foi basicamente pré-programada.

Isto é, no caso do movimento de abrir a garrafa térmica o robô executa 3 rotações que

permitem desenroscar a tampa da garrafa, no entanto, este movimento requer que

haja alguma leitura da força que a tampa exerce sobre a mão, de forma a verificar

se esta está ou não solta da garrafa (o que não acontece). O mesmo se aplica ao

movimento de verter o líquido da garrafa no copo, pois este movimento requer que

haja algum feedback por parte do sistema de visão para verificar se o líquido está

realmente a cair no copo.

Contudo, esta tarefa encontra-se apenas na fase inicial, sendo aqui apresentada

a primeira versão da formulação, implementação e simulação da sequência dos seus

movimentos. No entanto, é visto como um grande passo para o início da investigação

e desenvolvimento de tarefas complexas.

Relativamente aos resultados anteriormente apresentados (para esta tarefa) é

possível verificar o sucesso do sistema geral de planeamento de movimentos “human-

like” para uma sequência de diferentes movimentos, unimanuais e bimanuais síncronos

e é possível afirmar que o sistema é suficientemente rápido para permitir que no

futuro se implemente um sistema de re-planeamento em tempo-real. De notar que

este movimento ainda não foi aplicado ao robô real, mas apenas executado em

simulador. O vídeo da execução completa desta tarefa, em simulador pode ser

visualizado no seguinte link:http://marl.dei.uminho.pt/public/videos/ARoS_

bim_syn_task3_sim_2nd.html.

150 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 173: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 7 - Validação do Modelo de Planeamento deMovimentos Bimanuais e Unimanuais

(a) Movimento 1 (b) Movimento 2 (c) Movimento 3

(d) Movimento 4(e) Movimento 5(f) Movimento 6(g) Movimento 7

(h) Movimento 8 (i) Movimento 9 (j) Movimento 10

Figura 7.5: Representação da sequência e caraterísticas dos movimentos da Tarefa 3, obtidos

no simulador do ARoS.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

151

Page 174: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs
Page 175: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 8

Conclusões e Trabalho Futuro

Neste capítulo é, inicialmente, feita uma conclusão geral acerca dos resultados obtidos

neste trabalho de dissertação e acerca do cumprimento dos objetivos propostos,

seguido do contributo deste projeto para a comunidade científica. Por último são

descritas algumas sugestões acerca do trabalho futuro.

8.1 Conclusões

O principal objetivo do trabalho apresentado nesta Dissertação residiu no desenvolvi-

mento da extensão do sistema de planeamento de movimentos unimanuais para um

sistema de planeamento de movimentos bimanuais, capaz de gerar no robô antropo-

mórfico ARoS um comportamento dos braços semelhantes aos dos realizados pelos

humanos. Para tal, foi abordada uma área completamente diferente à da robótica,

a da psicologia e neuropsicologia humana, com fim de se estudar o comportamento

de cooperação e coordenação bimanual humana. Consequentemente, graças a este

estudo foi possível desenvolver um procedimento de planeamento de movimento

bimanual síncrono que foi aplicado a duas tarefas de manipulação bimanual de

objetos. Tarefas essas elaboradas e pensadas de forma a possibilitar a validação do

sistema de movimentos bimanuais síncronos. Os resultados apresentados no Capítulo

6, relativos a estas duas tarefas, revelam que o modelo de planeamento de movimento

bimanual foi extendido com sucesso, os movimentos dos braços são sincronizados no

153

Page 176: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 8 - Conclusões e Trabalho Futuro

tempo, suaves tal como os dos humanos e livres de colisões. Foi também possível

verificar que a execução dos movimentos dos braços do robô foram muito semelhantes

aos dos observados nas experiências feitas com os alunos. Além do mais, com estas

experiências foi possível visualizar, para a segunda tarefa, o efeito do “end-state

comfort” (efeito mencionado no Estado da Arte) que demonstra a correta opção

na definição e implementação dos movimentos desta segunda tarefa no modelo de

planeamento de movimento aqui desenvolvido.

Para além de movimentos bimanuais síncronos, desenvolveu-se e testou-se neste

trabalho um modelo geral de planeamento de trajetórias, tanto unimanuais como

bimanuais síncronos de forma a permitir à plataforma robótica desempenhar uma

tarefa de manipulação bem mais complexa e centrada num ambiente humano, isto

é, com objetos do dia a dia de uma pessoa como um copo e uma garrafa térmica.

Os resultados para esta terceira tarefa de abrir uma garrafa térmica e deitar o seu

líquido para o copo revelam que com sucesso todos os movimentos foram possíveis,

foram calculados, embora que pré-programados pois o robô abre a garrafa sabendo à

priori qual o número de rotações para desenroscar a tampa e o momento no qual

deve entornar o líquido no copo sem qualquer feedback visual. Contudo é um bom

começo na investigação desta tarefa de complexidade bastante elevada.

O desenvolvimento deste projeto requereu um grande envolvimento e dedicação,

pois para além de se ter que desenvolver o trabalho proposto, foi necessário dedicar

um bom tempo ao estudo de todo o trabalho anteriormente feito que permitia ao

ARoS executar movimentos unimanais e bimanuais assíncronos. Por outro lado,

o facto de se ter que considerar outras áreas como a psicologia e neuropsicologia

humana não foi propriamente fácil pois é uma área completamente diferente.

Quanto às dificuldades encontradas ao longo da implementação do novo modelo

(movimentos bimanuais síncronos) é de realçar que o procedimento de cálculo das

posturas, ou seja, a resolução dos problemas de otimização, são bastante ou até

mesmo muito sensíveis aos conjuntos de valores iniciais para as juntas dos braços

e mãos, vulgarmente chamados de “initial guess”. Ou seja, nem sempre o IPOPT

encontra uma solução com um determinado initial guess, sendo por isso, necessário

154 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 177: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 8 - Conclusões e Trabalho Futuro

proceder a alguns ajustes a estes valores iniciais das juntas.

Um outro aspeto importante a salientar, é o facto de que dependendo do

movimento este terá que ter um determinado modelo para o cálculo das suas posturas

finais, intermédias (ou seja, problemas do tipo Pa) e posturas de bounce. Isto porque

o movimento depende de muitos fatores como: a) a forma como a mão ou as mãos

agarram o ou os objetos, b) a forma do objeto, c) se é um movimento espacialmente

dependente sendo necessário verificar a colisão entre os braços, d) se é unimanual ou

bimanual e entre outros.

No entanto, seguidamente são apresentados os objetivos propostos no início do

trabalho e descritos no Capítulo 1, concretamente na secção 1.2.2 e é revelado se

estes foram ou não atingidos:

• Como primeiro objetivo, o estudo do comportamento de coordenação e coo-

peração dos braços humanos pode-se dizer que foi conseguido. Pelo menos

aplicaram-se alguns conceitos observados aquando a execução de certas tarefas

de manipulação bimanual, que se baseia no sincronismo do movimento de

ambos os braços, mesmo quando estes têm objetivos diferentes. Obviamente,

que o ser humano é altamente complexo e o processo subjacente ao controlo

motor dos braços ainda tem muito para ser investigado, como se prova com a

leitura do Estado da Arte referente à manipulação bimanual em humanos;

• Graças ao estudo anterior foi possível se definirem novas tarefas a serem

realizadas pelo robô e consequentemente novos cenários para colocar em prática

os novos movimentos;

• Um outro objetivo deste trabalho era dar mais robustez ao processo de oti-

mização. Por sua vez, este foi conseguido com a utilização da OPTI Toolbox

do MATLAB, que permitiu utilizar o solver IPOPT integrado diretamente no

software desenvolvido em MATLAB R©;

• A extensão do modelo de planeamento de movimento unimanual para bimanual

foi alcançada, essencialmente, com a implementação de ideias do Controlo Motor

Humano no modelo de planeamento de movimento. Assim, a partir da ideia de

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

155

Page 178: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 8 - Conclusões e Trabalho Futuro

que os braços se movem em sincronia, isto é, iniciam e acabam o movimento

ao mesmo tempo, foi possível desenvolver um modelo de planeamento de

movimento bimanual síncrono;

• Um movimento bimanual síncrono requer certos e determinados requisitos como

o tempo da execução do movimento ser igual para os dois braços. Mais, o facto

de se estarem ambos a movimentar requer uma restrição ao movimento que

impeça que estes colidam um com o outro. Com isto, a extensão do modelo de

planeamento de movimento contou com a implementação de novas restrições

temporais e espaciais nos problemas de otimização. No entanto, como se pode

ver nos resultados obtidos nos dois Capítulos 6 e 7, os movimentos das tarefas de

manipulação são temporalmente sincronizados e na tarefa 2 pode-se confirmar

o sucesso da restrição espacial que evita que os braços colidam um com o outro;

• Por último, todos os movimentos realizados pelo robô são semelhantes aos dos

realizados pelos humanos, pois as curvas de velocidade e outras caraterísticas

observadas nas trajetórias/movimentos dos braços do robô são semelhantes às

observadas nos movimentos dos braços humanos. Como prova disto têm-se os

resultados obtidos para as tarefas 1, 2 e 3. Contudo, até foram realizados testes

em humanos, em que estes tiveram que desempenhar as mesmas tarefas 1 e 2

com o objetivo de verificar se estes procediam do mesmo modo que o robô.

8.2 Relevância Científica

Em termos científicos este trabalho tem uma grande relevância para a comunidade de

cientistas que se debruçam sobre a área da robótica antropomórfica, mais precisamente

acerca da manipulação. Pois, a área da manipulação bimanual está atualmente em

grande destaque, visto que os robôs humanóides são esperados coexistir, num futuro

próximo, com os humanos (como falado no Capítulo 1).

No entanto, os resultados deste trabalho, nomeadamente, das tarefas 1 e 2

foram apresentados no artigo “Nonlinear optimization for human-like synchronous

movements of a dual arm-hand robotic system”, que foi aceite para ser apresentado

156 Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

Page 179: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Capítulo 8 - Conclusões e Trabalho Futuro

na conferência: International Conference on Numerical Analysis and Applied Mathe-

matics, relacionada com o simpósio: Numerical Optimization and Applications (NOA

2014), em Rhodes na Grécia durante 22 a 28 de Setembro de 2014.

Os resultados da tarefa 3 são também esperados que se apresentem num artigo.

8.3 Trabalho Futuro

Embora se tenham examinado e implementado todos os objetivos do projeto, o tempo

impediu que se melhorassem alguns aspetos no modelo de planeamento de movimento.

Por isso, é de interesse apresentar estes melhoramentos como trabalho que se possa

realizar no futuro, com o objetivo de tornar todo o sistema mais eficiente e robusto.

Como primeiro melhoramento, adicionar à Tarefa 3 um método que permita ao

robô medir a força que a tampa da garrafa térmica exerce sobre a mão robótica, de

modo a permitir verificar se a tampa se encontra separada da garrafa. Por conseguinte

testar todo o movimento no robô real.

Um outro melhoramento no modelo de planeamento de movimento, passa por

dar algum feedback ao sistema:

• Implementando a comunicação do sistema de visão, em tempo real, com o

sistema de planeamento de movimento, de modo a que o sistema de visão possa

fornecer os valores atualizados das posições dos objetos-alvos e dos obstáculos

no cenário. Permitindo, assim, ao modelo de planeamento re-planear novos

movimentos sob mudanças no cenário;

• Recolhendo os valores dos ângulos das juntas dados pelos encoders dos respetivos

motores, a fim de corrigir certos erros que se vão acumulando ao longo dos

movimentos dos braços.

Devido à dificuldade encontrada quanto aos valores da initial guess a usar nos

problemas de otimização, existe a necessidade de se desenvolver um algoritmo que

consoante a informação de como agarrar o objeto-alvo (tipo de grip) e da posição do

objeto-alvo retorne a melhor initial guess a aplicar aos problemas de otimização em

causa.

Manipulação Bimanual em RobôsAntropomórficos: Movimentos Síncronos

157

Page 180: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs
Page 181: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Bibliografia

Araújo, J. P. F. (2013). From unimanual to bimanual manipulation in the anthropo-

morphic robot aros. Master’s thesis, Universidade do Minho.

Asfour, T., Azad, P., Gyarfas, F., and Dillmann, R. (2008). Imitation learning

of dual-arm manipulation tasks in humanoid robots. International Journal of

Humanoid Robotics, 5(02):183–202.

Asfour, T., Regenstein, K., Azad, P., Schroder, J., Bierbaum, A., Vahrenkamp,

N., and Dillmann, R. (2006). Armar-iii: An integrated humanoid platform for

sensory-motor control. In Humanoid Robots, 2006 6th IEEE-RAS International

Conference on, pages 169–175. IEEE.

Badler, N. I. and Tolani, D. (1996). Real-time inverse kinematics of the human arm.

Center for Human Modeling and Simulation, page 73.

Bicho, E., Erlhagen, W., Louro, L., and Costa e Silva, E. (2011). Neuro-cognitive

mechanisms of decision making in joint action: A human–robot interaction study.

Human Movement Science, 30(5):846–868.

Biryukova, E., Roby-Brami, A., Frolov, A., and Mokhtari, M. (2000). Kinematics

of human arm reconstructed from spatial tracking system recordings. Journal of

Biomechanics, 33(8):985–995.

Bloss, R. (2010). Robotics innovations at the 2009 assembly technology expo.

Industrial Robot: An International Journal, 37(5):427–430.

159

Page 182: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Borst, C., Wimböck, T., Schmidt, F., Fuchs, M., Brunner, B., Zacharias, F., Giordano,

P. R., Konietschke, R., Sepp, W., Fuchs, S., et al. (2009). Rollin’justin-mobile

platform with variable base. In ICRA, pages 1597–1598.

Breazeal, C. (2003). Toward sociable robots. Robotics and Autonomous Systems,

42(3):167–175.

Breteler, M. D. K. and Meulenbroek, R. G. (2006). Modeling 3d object manipulation:

synchronous single-axis joint rotations? Experimental Brain Research, 168(3):395–

409.

Bullock, I. M., Ma, R. R., and Dollar, A. M. (2013). A hand-centric classification

of human and robot dexterous manipulation. Haptics, IEEE Transactions on,

6(2):129–144.

Burgard, W., Cremers, A. B., Fox, D., Hähnel, D., Lakemeyer, G., Schulz, D., Steiner,

W., and Thrun, S. (1999). Experiences with an interactive museum tour-guide

robot. Artificial Intelligence, 114(1):3–55.

Caccavale, F., Chiacchio, P., Marino, A., and Villani, L. (2008). Six-dof impe-

dance control of dual-arm cooperative manipulators. Mechatronics, IEEE/ASME

Transactions on, 13(5):576–586.

Cardoso de Oliveira, S. (2002). The neuronal basis of bimanual coordination: recent

neurophysiological evidence and functional models. Acta psychologica, 110(2):139–

159.

Costa e Silva, E. O. (2011). Reaching, grasping and manipulation in anthropomorphic

robot systems. Ph.D. thesis, Universidade do Minho.

Craig, J. J. (2005). Introduction to robotics: mechanics and control. Pearson/Prentice

Hall Upper Saddle River, NJ, USA:.

Creem, S. H. and Proffitt, D. R. (2001). Grasping objects by their handles: a

necessary interaction between cognition and action. Journal of Experimental

Psychology: Human Perception and Performance, 27(1):218.

160

Page 183: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Cutkosky, M. R. and Howe, R. D. (1990). Human grasp choice and robotic grasp

analysis. In Dextrous robot hands, pages 5–31. Springer.

Dautenhahn, K. (2002). Design spaces and niche spaces of believable social robots.

In Robot and Human Interactive Communication, 2002. Proceedings. 11th IEEE

International Workshop on, pages 192–197. IEEE.

Desmurget, M. and Prablanc, C. (1997). Postural control of three-dimensional

prehension movements. Journal of Neurophysiology, 77(1):452–464.

Diftler, M. A., Mehling, J., Abdallah, M. E., Radford, N. A., Bridgwater, L. B.,

Sanders, A. M., Askew, R. S., Linn, D. M., Yamokoski, J. D., Permenter, F., et al.

(2011). Robonaut 2-the first humanoid robot in space. In Robotics and Automation

(ICRA), 2011 IEEE International Conference on, pages 2178–2183. IEEE.

DiSalvo, C. F., Gemperle, F., Forlizzi, J., and Kiesler, S. (2002). All robots are not

created equal: the design and perception of humanoid robot heads. In Proceedings of

the 4th conference on Designing interactive systems: processes, practices, methods,

and techniques, pages 321–326. ACM.

Duffy, B. R. (2003). Anthropomorphism and the social robot. Robotics and Autono-

mous Systems, 42(3-4):177–190.

Edsinger, A. and Kemp, C. C. (2008). Two arms are better than one: A behavior

based control system for assistive bimanual manipulation. In Recent progress in

robotics: Viable robotic service to human, pages 345–355. Springer.

Elbrechter, C., Haschke, R., and Ritter, H. (2012). Folding paper with anthropo-

morphic robot hands using real-time physics-based modeling. In Humanoid Robots

(Humanoids), 2012 12th IEEE-RAS International Conference on, pages 210–215.

IEEE.

Elsinger, C. L. and Rosenbaum, D. A. (2003). End posture selection in manual

positioning: evidence for feedforward modeling based on a movement choice method.

Experimental Brain Research, 152(4):499–509.

161

Page 184: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Emadi Andani, M. and Bahrami, F. (2012). Comap: A new computational interpre-

tation of human movement planning level based on coordinated minimum angle

jerk policies and six universal movement elements. Human Movement Science,

31(5):1037–1055.

Engelberger, J. F. (1993). Health-care robotics goes commercial: the helpmate

experience. Robotica, 11(06):517–523.

Fitts, P. M. (1954). The information capacity of the human motor system in

controlling the amplitude of movement. Journal of Experimental Psychology,

47(6):381.

Flash, T. and Hogan, N. (1985). The coordination of arm movements: an experimen-

tally confirmed mathematical model. The journal of Neuroscience, 5(7):1688–1703.

Fong, T., Nourbakhsh, I., and Dautenhahn, K. (2003). A survey of socially interactive

robots. Robotics and Autonomous Systems, 42(3):143–166.

Franz, E. A., Zelaznik, H. N., and McCabe, G. (1991). Spatial topological constraints

in a bimanual task. Acta psychologica, 77(2):137–151.

Freivalds, A. (2011). Biomechanics of the upper limbs: mechanics, modeling and

musculoskeletal injuries. CRC press.

Friedman, J. and Flash, T. (2009). Trajectory of the index finger during grasping.

Experimental Brain Research, 196(4):497–509.

Fukuda, T., Michelini, R., Potkonjak, V., Tzafestas, S., Valavanis, K., and Vukobra-

tovic, M. (2001). How far away is artificial man. Robotics Automation Magazine,

IEEE, 8(1):66–73.

Gockley, R., Bruce, A., Forlizzi, J., Michalowski, M., Mundell, A., Rosenthal, S.,

Sellner, B., Simmons, R., Snipes, K., Schultz, A. C., et al. (2005). Designing robots

for long-term social interaction. In Intelligent Robots and Systems, 2005.(IROS

2005). 2005 IEEE/RSJ International Conference on, pages 1338–1343. IEEE.

162

Page 185: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Graziano, M. S., Taylor, C. S., Moore, T., and Cooke, D. F. (2002). The cortical

control of movement revisited. Neuron, 36(3):349–362.

Gribovskaya, E. and Billard, A. (2008). Combining dynamical systems control and

programming by demonstration for teaching discrete bimanual coordination tasks

to a humanoid robot. In Human-Robot Interaction (HRI), 2008 3rd ACM/IEEE

International Conference on, pages 33–40. IEEE.

Guiard, Y. (1987). Asymmetric division of labor in human skilled bimanual action:

The kinematic chain as a model. Journal of Motor Behavior, 19(4):486–517.

Harris, C. M. and Wolpert, D. M. (1998). Signal-dependent noise determines motor

planning. Nature, 394(6695):780–784.

Hughes, C. M. and Franz, E. A. (2008). Goal-related planning constraints in bimanual

grasping and placing of objects. Experimental Brain Research, 188(4):541–550.

Hughes, C. M., Reißig, P., and Seegelke, C. (2011). Motor planning and execution

in left-and right-handed individuals during a bimanual grasping and placing task.

Acta Psychologica, 138(1):111–118.

Ivaldi, F. M., Morasso, P., and Zaccaria, R. (1988). Kinematic networks. Biological

Cybernetics, 60(1):1–16.

Janssen, L., Beuting, M., Meulenbroek, R., and Steenbergen, B. (2009). Combi-

ned effects of planning and execution constraints on bimanual task performance.

Experimental Brain Research, 192(1):61–73.

Janssen, L., Crajé, C., Weigelt, M., and Steenbergen, B. (2010). Motor planning

in bimanual object manipulation: Two plans for two hands? Motor Control,

14(2):240–254.

Janssen, L., Meulenbroek, R. G., and Steenbergen, B. (2011). Behavioral evidence

for left-hemisphere specialization of motor planning. Experimental Brain Research,

209(1):65–72.

163

Page 186: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Kazennikov, O. V. and Wiesendanger, M. (2005). Goal synchronization of bimanual

skills depends on proprioception. Neuroscience Letters, 388(3):153–156.

Kelso, J., Southard, D. L., and Goodman, D. (1979a). On the nature of human

interlimb coordination. Science, 203(4384):1029–1031.

Kelso, J. S., Southard, D. L., and Goodman, D. (1979b). On the coordination of

two-handed movements. Journal of Experimental Psychology: Human Perception

and Performance, 5(2):229.

Kemp, C. C., Edsinger, A., and Torres-Jara, E. (2007). Challenges for robot

manipulation in human environments. IEEE Robotics and Automation Magazine,

14(1):20.

Kemp, C. C., Fitzpatrick, P., Hirukawa, H., Yokoi, K., Harada, K., and Matsumoto,

Y. (2008). Humanoids. Springer Handbook of Robotics, pages 1307–1333.

Kim, H., Miller, L. M., Byl, N., Abrams, G., and Rosen, J. (2012). Redundancy reso-

lution of the human arm and an upper limb exoskeleton. Biomedical Engineering,

IEEE Transactions on, 59(6):1770–1779.

Kim, K., Park, J., Lee, H., and Song, K. (2006). Teleoperated cleaning robots

for use in a highly radioactive environment of the dfdf. In SICE-ICASE, 2006.

International Joint Conference, pages 3094–3099. IEEE.

Lanfranco, A. R., Castellanos, A. E., Desai, J. P., and Meyers, W. C. (2004). Robotic

surgery: a current perspective. Annals of surgery, 239(1):14.

LaValle, S. M. (1998). Rapidly-exploring random trees a new tool for path planning.

Leite, I., Martinho, C., and Paiva, A. (2013). Social robots for long-term interaction:

a survey. International Journal of Social Robotics, 5(2):291–308.

Maciejasz, P., Eschweiler, J., Gerlach-Hahn, K., Jansen-Troy, A., Leonhardt, S., et al.

(2014). A survey on robotic devices for upper limb rehabilitation. Journal of

Neuroengineering and Rehabilitation, 11(3).

164

Page 187: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Maurel, W. (1999). 3d modeling of the human upper limb including the biomechanics

of joints, muscles and soft tissues.

Maurel, W. and Thalmann, D. (1999). A case study on human upper limb model-

ling for dynamic simulation. Computer methods in biomechanics and biomedical

engineering, 2(1):65–82.

Miyamoto, H., Nakano, E., Wolpert, D. M., and Kawato, M. (2004). Tops (task

optimization in the presence of signal-dependent noise) model. Systems and

Computers in Japan, 35(11):48–58.

Mohan, V., Morasso, P., Metta, G., and Sandini, G. (2009). A biomimetic, force-field

based computational model for motion planning and bimanual coordination in

humanoid robots. Autonomous Robots, 27(3):291–307.

Morasso, P. (1981). Spatial control of arm movements. Experimental Brain Research,

42(2):223–227.

Morasso, P. G., Mohan, V., Metta, G., and Sandini, G. (2009). Motion planning and

bimanual coordination in humanoid robots.

Mukai, T., Hirano, S., Nakashima, H., Kato, Y., Sakaida, Y., Guo, S., and Hosoe, S.

(2010). Development of a nursing-care assistant robot riba that can lift a human in

its arms. In Intelligent Robots and Systems (IROS), 2010 IEEE/RSJ International

Conference on, pages 5996–6001. IEEE.

Nakano, E., Imamizu, H., Osu, R., Uno, Y., Gomi, H., Yoshioka, T., and Kawato, M.

(1999). Quantitative examinations of internal representations for arm trajectory

planning: minimum commanded torque change model. Journal of Neurophysiology,

81(5):2140–2155.

Napier, J. R. (1956). The prehensile movements of the human hand. Journal of

Bone and Joint Surgery, 38(4):902–913.

Oyama, A., Konolige, K., Cousins, S., Chitta, S., Conley, K., and Bradski, G. (2009).

Come on in, our community is wide open for robotics research. RSJ.

165

Page 188: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Perrig, S., Kazennikov, O., and Wiesendanger, M. (1999). Time structure of a

goal-directed bimanual skill and its dependence on task constraints. Behavioural

Brain Research, 103(1):95–104.

Perry, J. C., Powell, J. M., and Rosen, J. (2009). Isotropy of an upper limb

exoskeleton and the kinematics and dynamics of the human arm. Applied Bionics

and Biomechanics, 6(2):175–191.

Reif, J. H. (1979). Complexity of the mover’s problem and generalizations extended

abstract. In Proceedings of the 20th Annual IEEE Conference on Foundations of

Computer Science, pages 421–427.

Restivo, S. (2001). Bringing up and booting up: Social theory and the emergence

of socially intelligent robots. In Systems, Man, and Cybernetics, 2001 IEEE

International Conference on, volume 4, pages 2110–2117. IEEE.

Robins, B., Dautenhahn, K., Te Boekhorst, R., and Billard, A. (2005). Robotic

assistants in therapy and education of children with autism: can a small humanoid

robot help encourage social interaction skills? Universal Access in the Information

Society, 4(2):105–120.

Rosenbaum, D. A., Cohen, R. G., Meulenbroek, R. G., and Vaughan, J. (2006).

Plans for grasping objects. In Motor Control and Learning, pages 9–25. Springer.

Rosenbaum, D. A., Loukopoulos, L. D., Meulenbroek, R. G., Vaughan, J., and Engel-

brecht, S. E. (1995). Planning reaches by evaluating stored postures. Psychological

Review, 102(1):28.

Rosenbaum, D. A., Marchak, F., Barnes, H. J., Vaughan, J., Slotta, J. D., and Jor-

gensen, M. J. (1990). Constraints for action selection: Overhand versus underhand

grips.

Rosenbaum, D. A., Meulenbroek, R. G., Vaughan, J., and Jansen, C. (1999). Coordi-

nation of reaching and grasping by capitalizing on obstacle avoidance and other

constraints. Experimental Brain Research, 128(1-2):92–100.

166

Page 189: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Rosenbaum, D. A., Meulenbroek, R. J., Vaughan, J., and Jansen, C. (2001). Posture-

based motion planning: applications to grasping. Psychological Review, 108(4):709.

Sabelli, A. M., Kanda, T., and Hagita, N. (2011). A conversational robot in an

elderly care center: an ethnographic study. In Human-Robot Interaction (HRI),

2011 6th ACM/IEEE International Conference on, pages 37–44. IEEE.

Schaal, S. (2007). The new robotics: towards human centered machines. HFSP

Journal, 1(2):115–126.

Schmidt, R. A. (1975). A schema theory of discrete motor skill learning. Psychological

Review, 82(4):225.

Schmidt, R. A., Zelaznik, H., Hawkins, B., Frank, J. S., and Quinn Jr, J. T.

(1979). Motor-output variability: a theory for the accuracy of rapid motor acts.

Psychological Review, 86(5):415.

Schraft, R. and Schmierer, G. (2000). Service robots products, scenarios, visions. Ak

Peters Series. A K Peters.

Sebanz, N., Bekkering, H., and Knoblich, G. (2006). Joint action: bodies and minds

moving together. Trends in cognitive sciences, 10(2):70–76.

Silva, R. (2008). Design e construcão de um robô antropomórfico. Master’s thesis,

Universidade do Minho.

Smith, C., Karayiannidis, Y., Nalpantidis, L., Gratal, X., Qi, P., Dimarogonas,

D. V., and Kragic, D. (2012). Dual arm manipulation: A survey. Robotics and

Autonomous Systems, 60(10):1340–1353.

Steffen, J., Elbrechter, C., Haschke, R., and Ritter, H. (2010). Bio-inspired motion

strategies for a bimanual manipulation task. In Humanoid Robots (Humanoids),

2010 10th IEEE-RAS International Conference on, pages 625–630. IEEE.

Svinin, M. and Yamamoto, M. (2010). On the motion planning of human-like reaching

movements by a minimum variance model. In TENCON 2010-2010 IEEE Region

10 Conference, pages 933–938. IEEE.

167

Page 190: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Tanaka, F., Cicourel, A., and Movellan, J. R. (2007). Socialization between toddlers

and robots at an early childhood education center. Proceedings of the National

Academy of Sciences, 104(46):17954–17958.

Theorin, A. (2009). To select one hand while using both: neural mechanisms

supporting flexible hand dominance in bimanual object manipulation.

Todorov, E. and Jordan, M. I. (1998). Smoothness maximization along a predefined

path accurately predicts the speed profiles of complex arm movements. Journal of

Neurophysiology, 80(2):696–714.

Tolani, D., Goswami, A., and Badler, N. I. (2000). Real-time inverse kinematics

techniques for anthropomorphic limbs. Graphical Models, 62(5):353–388.

Uno, Y., Kawato, M., and Suzuki, R. (1989). Formation and control of optimal

trajectory in human multijoint arm movement. Biological Cybernetics, 61(2):89–

101.

Vahrenkamp, N., Berenson, D., Asfour, T., Kuffner, J., and Dillmann, R. (2009).

Humanoid motion planning for dual-arm manipulation and re-grasping tasks.

In Intelligent Robots and Systems, 2009. IROS 2009. IEEE/RSJ International

Conference on, pages 2464–2470. IEEE.

Vahrenkamp, N., Do, M., Asfour, T., and Dillmann (2010). Integrated grasp and

motion planning. In Robotics and Automation (ICRA), 2010 IEEE International

Conference on, pages 2883–2888. IEEE.

Wächter, A. and Biegler, L. T. (2006). On the implementation of an interior-point

filter line-search algorithm for large-scale nonlinear programming. Mathematical

Programming, 106(1):25–57.

Wada, Y. and Kawato, M. (2004). A via-point time optimization algorithm for

complex sequential trajectory formation. Neural Networks, 17(3):353–364.

Weigelt, M., Kunde, W., and Prinz, W. (2006). End-state comfort in bimanual object

manipulation. Experimental Psychology, 53(2):143.

168

Page 191: Sara Manuela Eira Araújo Manipulação Bimanual em Robôs

Weiss, P. and Jeannerod, M. (1998). Getting a grasp on coordination. Physiology,

13(2):70–75.

Zacharias, F., Schlette, C., Schmidt, F., Borst, C., Rossmann, J., and Hirzinger, G.

(2011). Making planned paths look more human-like in humanoid robot manipu-

lation planning. In Robotics and Automation (ICRA), 2011 IEEE International

Conference on, pages 1192–1198. IEEE.

Zhang, W. and Rosenbaum, D. A. (2008). Planning for manual positioning: the

end-state comfort effect for manual abduction–adduction. Experimental Brain

Research, 184(3):383–389.

Zöllner, R., Asfour, T., and Dillmann, R. (2004). Programming by demonstration:

dual-arm manipulation tasks for humanoid robots. In IROS, pages 479–484.

169