• Save
Apostila de Robotica
Upcoming SlideShare
Loading in...5
×
 

Apostila de Robotica

on

  • 3,903 views

 

Statistics

Views

Total Views
3,903
Slideshare-icon Views on SlideShare
3,678
Embed Views
225

Actions

Likes
10
Downloads
0
Comments
0

1 Embed 225

http://robotizando.com 225

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Apostila de Robotica Apostila de Robotica Document Transcript

    • UNIVERSIDADE FEDERAL DE SANTA CATARINA ´ ¸ ˜PROGRAMA DE POS-GRADUACAO EM ENGENHARIA ´ ELETRICA ´ ´ CURSO DE ROBOTICA MOVEL PROF. EDSON ROBERTO DE PIERI Florianopolis, Marco de 2002. ´ ¸
    • Sum´ rio a1 Introdu¸ ao c˜ 1 1.1 Historico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ´ 1 1.2 Robo Movel: uma definicao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ˆ ´ ¸˜ 5 1.3 Classificacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ 6 1.3.1 Segundo a Anatomia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.3.2 Segundo o Tipo de Controle . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.3.3 Segundo a Funcionalidade . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.4 Desafios em Robotica Movel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ´ ´ 12 1.4.1 Navegacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ 12 1.4.2 Reconhecimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.4.3 Aprendizado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.4.4 Cooperacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ 13 1.4.5 Cognicao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ 13 1.5 Exerc´cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ı 132 Sensores 15 2.1 Definicao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ 17 2.2 Classificacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ 17 2.3 Crit´ rios para Avaliacao de Sensores . . . . . . . . . . . . . . . . . . . . . . . . e ¸˜ 19 2.3.1 Sensibilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.3.2 Linearidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.3.3 Faixa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.3.4 Tempo de resposta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.3.5 Precis˜ o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 20 2.3.6 Repetibilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 ii
    • 2.3.7 Resolucao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ 20 2.3.8 Tipo de Sa´da . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ı 20 2.4 Sensores Internos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.4.1 Dead Reckoning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.5 Sensores Externos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 2.5.1 Sensores de Proximidade . . . . . . . . . . . . . . . . . . . . . . . . . . 31 2.5.2 Sensores de Distˆ ncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 39 2.5.3 Sensores de Tato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 2.5.4 Sensores de Deslizamento . . . . . . . . . . . . . . . . . . . . . . . . . . 46 2.5.5 Sensores de Forca e Torque . . . . . . . . . . . . . . . . . . . . . . . . . ¸ 47 2.6 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 2.7 Exerc´cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ı 493 Atuadores 50 3.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ 50 3.2 Tipos de Atuadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.2.1 Pneum´ ticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 52 3.2.2 Hidr´ ulicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 54 3.2.3 El´ tricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 54 3.2.4 Outras tecnologias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 3.3 Exerc´cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ı 654 Controle 66 4.1 Cinem´ tica do Robo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a ˆ 66 4.1.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ 66 4.1.2 Cinem´ tica Direta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 66 4.1.3 Cinem´ tica Inversa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 70 4.2 Dinˆ mica do Robo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a ˆ 73 4.3 Controle Cinem´ tico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 76 4.3.1 Funcoes do controle cinem´ tico . . . . . . . . . . . . . . . . . . . . . . . ¸˜ a 76 4.3.2 Tipos de trajetorias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ´ 78 4.3.3 Geracao de trajetorias cartesianas . . . . . . . . . . . . . . . . . . . . . . ¸˜ ´ 80 4.3.4 Interpolacao de trajetorias . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ ´ 80 iii
    • 4.3.5 Amostragem de trajetorias cartesianas . . . . . . . . . . . . . . . . . . . ´ 81 4.4 Controle Dinˆ mico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 82 4.4.1 Controle Monoarticular . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 4.4.2 Controle PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 4.4.3 Controle PID com pr´ -alimentacao . . . . . . . . . . . . . . . . . . . . . e ¸˜ 84 4.4.4 Controle Adaptativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 4.5 Exerc´cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ı 865 Arquitetura de Robos Moveis ˆ ´ 87 5.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ 87 5.2 Definicoes e Classificacoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ ¸˜ 87 5.2.1 Arquiteturas Centralizadas e Distribu´das . . . . . . . . . . . . . . . . . ı 88 5.2.2 Arquiteturas Reativas, Deliberativas e H´bridas . . . . . . . . . . . . . ı 90 5.2.3 Arquiteturas baseadas em comportamento e arquiteuras baseadas em modulos funcionais ´ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 5.3 Exemplos de arquiteturas para robos moveis . . . . . . . . . . . . . . . . . . . ˆ ´ 96 5.3.1 Arquitetura de subsuncao . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ 96 5.3.2 Arquitetura AuRA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 5.4 Exerc´cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 ı6 Modelagem do Ambiente 103 6.1 Mapas baseados em c´ lulas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 e 6.1.1 Modelagem por enumeracao . . . . . . . . . . . . . . . . . . . . . . . . 104 ¸˜ 6.1.2 Modelagem por Quadtrees e Octrees . . . . . . . . . . . . . . . . . . . . 105 6.2 Modelo Topologico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 ´ 6.2.1 Modelo Topologico de Lugares . . . . . . . . . . . . . . . . . . . . . . . 106 ´ 6.2.2 Modelo Topologico de Marcas . . . . . . . . . . . . . . . . . . . . . . . 107 ´ 6.3 Exerc´cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 ı7 Planejamento de Trajetoria ´ 108 7.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 ¸˜ 7.2 O Problema B´ sico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 a 7.3 O Espaco de Configuracao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 ¸ ¸˜ 7.4 Abordagens de Planejamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 iv
    • 7.4.1 Abordagem Roadmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 7.4.2 Decomposicao em C´ lulas . . . . . . . . . . . . . . . . . . . . . . . . . . 110 ¸˜ e 7.4.3 Campo Potencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 7.5 Extensoes ao Problema B´ sico . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 ˜ a 7.5.1 Multiplos Objetos Moveis . . . . . . . . . . . . . . . . . . . . . . . . . . 112 ´ ´ 7.5.2 Restricoes Cinem´ ticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 ¸˜ a 7.5.3 Incerteza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 7.5.4 Objetos Mov´veis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 ı 7.6 Complexidade Computacional . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 7.7 Reducao da Complexidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 ¸˜ 7.7.1 Projecao no espaco de Configuracao . . . . . . . . . . . . . . . . . . . . 120 ¸˜ ¸ ¸˜ 7.7.2 Fatiamento no espaco de Configuracao . . . . . . . . . . . . . . . . . . 121 ¸ ¸˜ 7.7.3 Simplificacao da forma do objeto . . . . . . . . . . . . . . . . . . . . . . 121 ¸˜ 7.7.4 Focalizando a Atencao em um Subconjunto do Espaco de Trabalho . . 122 ¸˜ ¸ 7.8 Relacionamento com outros problemas . . . . . . . . . . . . . . . . . . . . . . 122 7.8.1 Interacao com Controle de Movimento em Tempo Real . . . . . . . . . 123 ¸˜ 7.8.2 Interacao com o Sensoreamento . . . . . . . . . . . . . . . . . . . . . . 124 ¸˜ 7.8.3 Interacao com o planejamento em n´vel de tarefa . . . . . . . . . . . . . 125 ¸˜ ı8 Gloss´ rio a 127 v
    • Lista de Figuras 1.1 O primeiro robo movel: Shakey . . . . . . . . . . . . . . . . . . . . . . . . . . . ˆ ´ 3 1.2 Robos da atualidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ˆ 5 1.3 Ciclo de interacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ 6 1.4 Classificacao segundo a anatomia . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ 6 1.5 Exemplo de robos aqu´ ticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ˆ a 7 1.6 Exemplo de robo com rodas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ˆ 7 1.7 Exemplos de robos com esteiras . . . . . . . . . . . . . . . . . . . . . . . . . . . ˆ 8 1.8 Exemplos de robos com pernas . . . . . . . . . . . . . . . . . . . . . . . . . . . ˆ 9 1.9 Classificacao segundo a funcionalidade . . . . . . . . . . . . . . . . . . . . . . ¸˜ 9 1.10 Exemplo de robo de servico: aspirador de po . . . . . . . . . . . . . . . . . . . ˆ ¸ ´ 10 1.11 Exemplo de robo de servico de campo: colheitadeira autonoma . . . . . . . . ˆ ¸ ˆ 11 1.12 Exemplo de robo de campo: Dante, para exploracao de vulcoes . . . . . . . . ˆ ¸˜ ˜ 11 1.13 Exemplo de robo pessoal: o c˜ ozinho Aibo . . . . . . . . . . . . . . . . . . . . ˆ a 11 2.1 Diferenca entre repetibilidade e acur´ cia. (Fonte: [6]) . . . . . . . . . . . . . . ¸ a 20 2.2 Sensor Potenciometro. (Adaptado de [20]) . . . . . . . . . . . . . . . . . . . . . ˆ 22 2.3 Sensor Sincronizador.(Adaptado de [20]) . . . . . . . . . . . . . . . . . . . . . 23 2.4 Resolvedor (Adaptado de [20]) . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.5 Sensor LVDT. (Adaptado de [6]) . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.6 Interruptor otico. (Adaptado de [6]) . . . . . . . . . . . . . . . . . . . . . . . . ´ 27 2.7 Codificador otico incremental(Adapado de [20]) . . . . . . . . . . . . . . . . . ´ 28 2.8 Codificador otico absoluto. (Adaptado de [20]) . . . . . . . . . . . . . . . . . . ´ 29 2.9 Acelerometro(Adaptado de [6]) . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 2.10 Sensor t´ ctil passivo.(Adaptado de [20]) . . . . . . . . . . . . . . . . . . . . . . a 32 2.11 Sensor ativo em forma de antena. (Adaptado de [20]) . . . . . . . . . . . . . . 32 vi
    • 2.12 Amortecedor T´ ctil. (Adaptado de [6]) . . . . . . . . . . . . . . . . . . . . . . . a 332.13 Sensor Reed Swithch magn´ tico.(Adaptado de [20]) . . . . . . . . . . . . . . . e 342.14 Sensor de efeito Hall com im˜ permanente (a) linhas de fluxo na ausˆ ncia de a e um corpo ferro-magn´ tico nas proximidades do sensor; (b) linhas de fluxo e quando h´ um corpo ferro-magn´ tico nas proximidades. (Adaptado de [6]) . a e 352.15 Esquema de um sensor de proximidade por micro-ondas. (Adaptado de [20]) 372.16 Sensor otico oposto. (Adaptado de [20]) . . . . . . . . . . . . . . . . . . . . . . ´ 382.17 Sensor otico retrorefletor. (Adaptado de [20]) . . . . . . . . . . . . . . . . . . . ´ 382.18 Sensor otico Difuso. (Adaptado de [20]) . . . . . . . . . . . . . . . . . . . . . . ´ 392.19 Sistemas de triangulacao determinam a distˆ ncia B para o alvo colocado no ¸˜ a ponto È¿ , medindo os angulos ˆ e nos pontos Ƚ e Ⱦ .(Adaptado de [20]) . . 402.20 Esquema de Triangulacao Ativa.(Adaptado de [20]) . . . . . . . . . . . . . . . ¸˜ 412.21 Esquema de Triangulacao passiva ou triangulacao estereoscopica passiva uti- ¸˜ ¸˜ ´ lizando cˆ meras de v´deo ou sensores oticos ou de micro-ondas.(Adaptado a ı ´ de [20]) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422.22 Sensor de tato analogico.(Adaptado de [20]) . . . . . . . . . . . . . . . . . . . . ´ 452.23 Pele Artificial. (Adaptado de [6] . . . . . . . . . . . . . . . . . . . . . . . . . . . 453.1 Grande variedade de dispositivos hidr´ ulicos e pneum´ ticos . . . . . . . . . . a a 513.2 Exemplo de um robo com acionamento pneum´ tico . . . . . . . . . . . . . . . ˆ a 523.3 Outro robo industrial que utiliza o ar comprimido como energia . . . . . . . . ˆ 523.4 Cilindro pneum´ tico em alum´nio . . . . . . . . . . . . . . . . . . . . . . . . . a ı 533.5 Outros modelos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533.6 Exemplos de pistoes hidr´ ulicos . . . . . . . . . . . . . . . . . . . . . . . . . . ˜ a 543.7 Outros modelos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543.8 Motor AC trif´ sico comum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 563.9 T´pico motor AC monof´ sico . . . . . . . . . . . . . . . . . . . . . . . . . . . . ı a 563.10 Corte parcial de um motor DC . . . . . . . . . . . . . . . . . . . . . . . . . . . 573.11 Exemplos de motores DC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583.12 Motor relutˆ ncia vari´ vel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a a 603.13 Im˜ permanente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 603.14 Modelo h´brido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ı 603.15 Exemplo de um motor de passo . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 vii
    • 3.16 Outro modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613.17 Servomotor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613.18 Fibras de um pol´mero eletroativo . . . . . . . . . . . . . . . . . . . . . . . . . ı 623.19 Prototipo de um robo “alado” . . . . . . . . . . . . . . . . . . . . . . . . . . . . ´ ˆ 633.20 Exemplo de um motor piezoel´ trico . . . . . . . . . . . . . . . . . . . . . . . . e 634.1 Diagrama de relacao entre cinem´ tica direta e inversa . . . . . . . . . . . . . . ¸˜ a 674.2 Exemplo de um robo planar com dois graus de liberdade . . . . . . . . . . . . ˆ 684.3 Matriz jacobiana direta e inversa . . . . . . . . . . . . . . . . . . . . . . . . . . 734.4 Funcionamento do controle cinem´ tico a . . . . . . . . . . . . . . . . . . . . . . 774.5 Atuacao de um controle cinem´ tico em um robo com dois graus de liberdade ¸˜ a ˆ 784.6 Diagrama de blocos que representa o comportamento dinˆ mico de uma a articulacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ¸˜ 834.7 Esquema de algoritmo de controle baseado em PID . . . . . . . . . . . . . . . 844.8 Esquema de algoritmo de controle baseado em PID com pr´ -alimentacao . . . e ¸˜ 855.1 Esquema gen´ rico de uma Arquiteura Reativa . . . . . . . . . . . . . . . . . . e 915.2 Planejamento hier´ rquico usado em arquiteturas deliberativas . . . . . . . . . a 925.3 Um exemplo simples da arquitetura de subsuncao . . . . . . . . . . . . . . . . ¸˜ 995.4 Arquitetura h´brida AuRA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 ı6.1 Modelagem por enumeracao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 ¸˜6.2 Decomposicao do ambiente utilizando quadtrees . . . . . . . . . . . . . . . . . 105 ¸˜6.3 Modelo topologico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 ´7.1 O caminho produzido pelo planejador e a entrada para o gerador de ´ trajetoria que determina as dependˆ ncias de tempo dos parˆ metros de ´ e a configuracao. A sa´da do gerador, as configuracoes desejadas Õ como funcao ¸˜ ı ¸˜ ¸˜ do tempo, alimentam o controlador. O controlador computa a forca ¸ a ser exercida por cada atuador a partir dos desvios da configuracao atual Õ , con- ¸˜ forme medida pelos sensores, relativa a Õ . . . . . . . . . . . . . . . . . . . . . 124 `8.1 Obtencao de um C-Obst´ culo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 ¸˜ a viii
    • Cap´tulo 1 ıIntrodu¸ ao c˜ Quando falamos em robos v´ rias imagens de filmes de ficcao cient´fica voltam a mente. ˆ a ¸˜ ı `Filmes como o Jornada nas Estrelas e O Exterminador do Futuro nos apresentam um fenotipo ´do que o desenvolvimento tecnologico visa alcancar: robos com capacidades humanas de ´ ¸ ˆaprendizado e racioc´nio. ı Ainda estamos longe de criar m´ quinas autonomas, adapt´ veis e inteligentes, mas a ˆ aavancos nas areas de inteligˆ ncia artificial e controle e o desenvolvimento de novos tipos ¸ ´ ede materiais, nos tˆ m permitido o desenvolvimento de robos para os mais variados fins. e ˆ1.1 Historico ´ O desejo de construir m´ quinas que imitem os movimentos de seres humanos e animais aacompanha as civilizac oes desde a antiguidade. Os eg´pcios constru´am homens mecˆ nicos ¸˜ ¨ ı ı aem forma de est´ tuas com articulacoes moveis e ajust´ veis. Da Gr´ cia antiga, tem-se a a ¸˜ ´ a edescricao de est´ tuas munidas de tubos falantes e a partir do s´ culo IV a.C., marionetes ¸˜ a eacionadas por sistemas de polias e pesos. No s´ culo XVI, os ent˜ o chamados autˆ matos, em geral bonecos mecˆ nicos acionadas e a o apor sistemas de cordas que imitavam algumas atividades humanas, chamavam a atencao ¸˜para a possibilidade de descrever a natureza humana. Em 1589, Bernardino Baldi, abadede Guastalla, publicou um ensaio contendo reflexoes sobre a natureza e potencialidades dos ˜automatos [38]. ˆ No s´ culo XVII, marcados pelo pensamento dualista de Descartes com sua c´ lebre frase e ePenso, logo existo, muitos filosofos passaram a se questionar sobre os limites do mecanicismo: ´
    • ¸˜1. Introducao 2afinal, se automatos eram capazes de descrever a natureza e os animais, seriam adequados ˆpara explicar a natureza humana? A construcao de automatos cresceu no s´ culo XVIII, sendo que alguns se tornaram bas- ¸˜ ˆ etante conhecidos, como o pato mecˆ nico de Jacques de Vaucanson, em ½ a ¼ e os trˆ s bonecos e- um escriv˜ o, um desenhista e uma tocadora - constru´dos pelos irm˜ os Droz na Su´ca, em a ı a ı¸½ ¿¿ [38]. No final do s´ culo XVIII a revolucao industrial e a consequente adocao do modelo me- e ¸˜ ¨ ¸˜canicista de Taylor e Fayol proporcionaram a mudanca definitiva das formas de producao, ¸ ¸˜levando o uso das m´ quinas para a industria: iniciava-se a era da producao em larga escala. a ´ ¸˜ A palavra robo tem sua origem na palavra tcheca robota, que significa trabalho escravo, ˆmon´ tono e foi utilizada pela primeira vez em ½ o ¾½, pelo dramaturgo Karel Capeck no contode ficcao Rossum’s Universal Robots. ¸˜ Em 1936, Charles Chaplin satiriza o processo de automacao pesada em seu filme Tempos ¸˜Modernos. Em 1939, Issac Asimov, considerado o pai da robotica, popularizou o termo robo em seu ´ ˆlivro I Robot, no qual estabelece as famosas trˆ s leis da robotica, que s˜ o: e ´ a ¯ Um robo jamais deve causar dano a um ser humano nem, atrav´ s de omiss˜ o, permitir ˆ e a que isto aconteca. ¸ ¯ Um robo deve sempre obedecer o ser humano, a menos que isto entre em conflito com ˆ a primeira lei. ¯ Um robo deve proteger-se de danos, a menos que isto entre em conflito com a primeira ˆ ou a segunda lei. Apos a invens˜ o do transistor em ½ ´ a , os robos passaram a ser controlados por compu- ˆtadores. A primeira patente para um robo industrial controlado por computador foi registra- ˆda em ½ por George Devol. Devol criou uma memoria computadorizada e um sistema de ´controle chamado Universal Automation. Mais tarde, co-fundou a companhia de robos indus- ˆtriais - UNIMATION. Em ½ ½ o primeiro robo UNIMATE, que usava comando num´ rico ˆ eprogram´ vel, foi instalado na linha de montagem da General Motors: estava iniciada era da aautomacao industrial. ¸˜ Em ½ ¿, surge o primeiro sistema para vis˜ o de robos. E em ½ a ˆ , o primeiro robo de ˆpintura, cuja trajetoria era treinada e armazenada. ´
    • ¸˜1. Introducao 3 Os robos moveis surgiram em ½ ˆ ´ carregando conceitos da mecˆ nica e da robotica fixa. a ´A princ´pio, com o avanco nas areas de sensores, processamento de imagens e inteligˆ ncia ı ¸ ´ eartificial, dotar um robo movel com capacidades para atuar em ambientes dinˆ micos parecia ˆ ´ aser algo simples, por´ m, logo percebeu-se a grande complexidade envolvida no desenvolvi- emento de sistemas moveis que fossem robustos e adapt´ veis. ´ a Em ½ , Nilsson [34] descreve o primeiro sistema robotico movel que utiliza quadtrees1 ´ ´para representar o ambiente e grafos de visibilidade para o planejamento da trajetoria. Em ´1972, o robo Shakey - fruto do trabalho de Nilsson na SRI International, hoje Instituto de Pes- ˆquisa de Stanford - foi introduzido como o primeiro robo movel controlado por inteligˆ ncia ˆ ´ eartificial. Figura 1.1: O primeiro robo movel: Shakey ˆ ´ Problemas relacionados com as questoes de movimentos rotacionais e translacionais tor- ˜navam cr´tica a modelagem do ambiente. Em ½ ı ¿, Lozano-P´ rez [31] introduziu a id´ ia de e euma “regi˜ o de incerteza”, criada atrav´ s do crescimento dos obst´ culos. Assim, utilizando a e agrafos de visibilidade para o planejamento de trajetoria, o robo poderia ser tratado como um ´ ˆsimples ponto no espaco de configuracao. Este m´ todo foi o primeiro m´ todo exato aplicado ¸ ¸˜ e eao problema do planejamento de trajetoria. ´ Ainda em ¿, Brooks [12] introduziu o m´ todo freeway como uma alternativa a modela- e `gem do espaco livre e ao planejamento de trajetoria, utilizando o conceito de cones genera- ¸ ´lizados. Estes m´ todos, baseados em um mapa do ambiente, chamados de arquiteturas de- eliberativas ou planejadas, sofriam s´ rias restricoes com relacao a criacao e manutencao e ¸˜ ¸˜ ¸˜ ¸˜do mapa do ambiente. Para minimizar os problemas advindos do mundo real, foram 1 Estrutura em forma de arvore que e gerada atrav´ s da decomposicao de um ambiente bidimensional pelo ´ ´ e ¸˜refinamento sucessivo das c´ lulas. e
    • ¸˜1. Introducao 4assumidas simplificacoes, como o ambiente est´ tico e totalmente conhecido. Com estas ¸˜ asimplificacoes, o problema e contornado, mas a aplicacao de robos permanece restrita a ¸˜ ´ ¸˜ ˆambientes imut´ veis. a Buscando generalizar as aplicacoes de robos moveis e inspirando-se no comportamento ¸˜ ˆ ´de insetos, Brooks [13] introduz, em ½ , uma arquitetura reativa, denominada arquitetu-ra de subsun¸ao (do inglˆ s Subsumption), na qual o robo age baseando-se na leitura de seus c˜ e ˆsensores. Esta arquitetura baseia-se na decomposicao da inteligˆ ncia em comportamentos ¸˜ eindividuais, gerando modulos que coexistem e cooperam para a emergˆ ncia de comporta- ´ ementos mais complexos. Esta arquitetura e um marco nas pesquisas de m´ todos reativos e ´ eascendeu novamente a esperanca de construir robos moveis aptos a interagir em ambientes ¸ ˆ ´dinˆ micos. a Ainda em , Khatib [30, 27] introduziu o m´ todo dos campos potenciais, no qual o robo e ˆtransforma-se em uma part´cula sob a influˆ ncia de campos eletromagn´ ticos, constitu´dos ı e e ıpelos obst´ culos e pelo ponto objetivo. Neste mesmo ano a Honda comeca a trabalhar no a ¸desenvolvimento de seu robo humanoide (figura 1.8 (b)). ˆ ´ Entre e , Arkin escreveu v´ rios artigos descrevendo uma arquitetura reativa base- aada em esquemas motores, que mais tarde amadureceu em uma arquitetura h´brida, a qual ıdenominou AuRA - Autonomous Robot Architecture. Em 89, Arkin [2] compara as abordagensplanejada e reativa e salienta as vantagens da arquitetura h´brida. ı Em ½ ¼, Kumpel [28] apresenta um artigo descrevendo o projeto MARIE - Mobile Au-tonomous Robot in an Industrial Environment. Este projeto integra mapas geom´ tricos e to- epologicos e usa um m´ todo hier´ rquico para navegacao, onde, globalmente, utiliza mapas ´ e a ¸˜para encontrar o caminho e sensores para desvio local dos obst´ culos. a Ainda em ¼, Brooks [14] propoe alguns melhoramentos a arquitetura de subsuncao e ˜ ` ¸˜apresenta uma s´ rie de robos, desenvolvidos no MIT, que utilizam esta arquitetura. e ˆ Dois anos mais tarde, Mataric [33] ressalta a necessidade de alguma representacao do ¸˜ambiente para dotar o robo de capacidades mais elaboradas do que somente a navegacao ˆ ¸˜aleatoria e propoe um m´ todo reativo, mas que utiliza um mapa, constru´do atrav´ s das ´ ˜ e ı emarcas (landmarks) detectadas no ambiente, dentro de uma arquitetura de subsuncao. O ¸˜mapa e atualizado sempre que o robo detecta mudancas no ambiente. ´ ˆ ¸ No mesmo ano, Zelinsky [41] propoe um m´ todo simples para mapeamento do ambi- ˜ eente em tempo de execucao, utilizando sensores de contato. Por este m´ todo, o ambiente e ¸˜ e ´
    • ¸˜1. Introducao 5mapeado em uma quadtree, onde a menor c´ lula tem o tamanho do diˆ metro do robo. O e a ˆcaminho e, inicialmente, dado por uma linha reta e durante a execucao desta trajetoria, s˜ o ´ ¸˜ ´ aobtidas leituras dos sensores utilizadas para atualizar a estrutura da quadtree sobre a qualo caminho e replanejado. ´ Em 1994, a NASA em conjunto com a Carnegie Mellon University e Observatorio de ´Vulcoes do Alaska desenvolveram um robo hex´ pode chamado Dante (figura 1.12) para ˜ ˆ ainspecionar vulcoes ativos, em julho de 1997 o Soujourner (figura 1.2 (b)) toca o solo de ˜Marte e em janeiro de 2000, a Carnegie Mellon apresenta um robo com quatro rodas para ˆbusca de amostras de meteoritos na Ant´ rtica (figura 1.2 (a)). O robo coleta as amostras de a ˆpedras e as classifica utilizando t´ cnicas de inteligˆ ncia artificial. e e (a) Robo para busca de ˆ (b) Sojourner amostras de meteoritos na Ant´ rtica a Figura 1.2: Robos da atualidade ˆ Enfim, nos ultimos ½¼ anos, a robotica movel desenvolveu-se muito e hoje temos os mais ´ ´ ´variados tipos de robos, para os mais variados tipos de tarefas. ˆ1.2 Robo Movel: uma defini¸ ao ˆ ´ c˜ Um robo movel e um dispositivo mecˆ nico montado sobre uma base n˜ o fixa, que age ˆ ´ ´ a asob o controle de um sistema computacional, equipado com sensores e atuadores que opermitem interagir com o ambiente [32]. A interacao com o ambiente se d´ atrav´ s de ciclos de percep¸ao-a¸ao que consistem em ¸˜ a e c˜ c˜trˆ s passos fundamentais: e ¯ Obtencao de informacoes acerca do ambiente atrav´ s dos sensores; ¸˜ ¸˜ e
    • ¸˜1. Introducao 6 ¯ Processamento das informa¸oes obtidas e selecao de acoes que ser˜ o executadas; c˜ ¸˜ ¸˜ a ¯ Execucao das acoes planejadas atrav´ s do acionamento dos atuadores. ¸˜ ¸˜ e O robo realiza diversos ciclos de percepcao-acao, modificando o estado do ambiente em ˆ ¸˜ ¸˜busca da realizacao da tarefa [36]. ¸˜ Sensores Percepção AMBIENTE Atuadores Ação Figura 1.3: Ciclo de interacao ¸˜1.3 Classifica¸ ao c˜ Diversas taxonomias tem sido utilizadas para classificar robos moveis, contudo, n˜ o h´ , ˆ ´ a aainda, nenhuma que seja definitiva. De uma forma geral, podemos agrupar os robos exis- ˆtentes de acordo com trˆ s aspectos: anatomia, tipo de controle e funcionalidade. e1.3.1 Segundo a Anatomia Quanto a anatomia os robos podem ser classificados em trˆ s grandes grupos (figura 1.4): ˆ eos robos a´ reos, os aqu´ ticos e os terrestres. ˆ e a Robôs Móveis Aéreos Aquáticos Terrestres Rodas Esteiras Pernas Figura 1.4: Classificacao segundo a anatomia ¸˜
    • ¸˜1. Introducao 7 Os robos a´ reos, geralmente s˜ o aeromodelos ou LTAs (Lighter-Than-Air) equipados com ˆ e acˆ meras de v´deo e utilizados para inspecao de grandes areas. Os aqu´ ticos, em geral s˜ o a ı ¸˜ ´ a aplataformas equipadas com propulsores e baloes de ar que permitem ao robo permanecer a ˜ ˆalguns metros do fundo do mar, por´ m, podem tamb´ m possuir patas (figura 1.5). e e (a) (b) Figura 1.5: Exemplo de robos aqu´ ticos ˆ a J´ os robos terrestres s˜ o os mais populares e podem utilizar trˆ s tipos diferentes de a ˆ a eatuadores: rodas, esteiras ou pernas. ¯ Robos com Rodas - estes s˜ o os mais simples, pois n˜ o necessitam de um hardware ˆ a a t˜ o complexo quanto os robos com esteiras e pernas, al´ m disso, e f´ cil transformar a ˆ e ´ a brinquedos em robos. A principal desvantagem no uso de rodas e que, em terrenos ˆ ´ irregulares, o desempenho pode n˜ o ser satisfatorio. Em geral, a roda do robo deve a ´ ˆ possuir raio igual ou maior aos obst´ culos que ele ir´ transpor (figura 1.6). a a (a) (b) Figura 1.6: Exemplo de robo com rodas ˆ
    • ¸˜1. Introducao 8 ¯ Robos com Esteiras - S˜ o mais utilizados em robos que atuam em ambientes irre- ˆ a ˆ gulares, como por exemplo com solo fofo e pedras. A grande desvantagem est´ na a dissipacao de energia causada pelo movimento de giro da propria esteira e pelas ro- ¸˜ ´ das no seu interior (figura 1.7). (a) (b) Figura 1.7: Exemplos de robos com esteiras ˆ ¯ Robos com Pernas - Este tipo de robo e utilizado em terrenos acidentados, com subidas ˆ ˆ´ ´ngremes, ou em ambientes espec´ficos, como por exemplo, ambientes com escadas. A ı ı grande dificuldade deste tipo de robo est´ no desenvolvimento do projeto para contro- ˆ a le das pernas, que tˆ m, no m´nimo, dois graus de liberdade. H´ tamb´ m o fator custo e ı a e associado a este tipo de projeto, pois cada atuador utiliza pelo menos dois motores (fi- gura 1.8) . ´ E importante ressaltar que estas s˜ o categorias difusas, uma vez que podem ser combi- anadas caracter´sticas de dois grupos na construcao de um robo para uma tarefa espec´fica. ı ¸˜ ˆ ı1.3.2 Segundo o Tipo de Controle Quando classificados segundo o tipo de controle, os robos podem ser separados em trˆ s ˆ ecategorias: ¯ Teleoperados - Onde o operador realiza todos os movimentos que o robo deve fazer; ˆ ¯ Semi-Autonomos - O operador indica o macro comando a ser executado e o robo o faz ˆ ˆ sozinho;
    • ¸˜1. Introducao 9 (a) Robo hex´ pode ˆ a (b) Robo humanoide ˆ ´ Figura 1.8: Exemplos de robos com pernas ˆ ¯ Autonomos - O robo realiza a tarefa sozinho, tomando suas proprias decisoes ˆ ˆ ´ ˜ baseando-se nos dados obtidos do ambiente.1.3.3 Segundo a Funcionalidade Ao agruparmos os robos segundo sua funcionalidade, percebemos quatro grupos: ˆrobos industriais, robos de servico, robos de campo e robos pessoais. Contudo, h´ uma ˆ ˆ ¸ ˆ ˆ asobreposicao entre os trˆ s primeiros (figura 1.9), devido a diferenca dos ambientes onde ¸˜ e ¸atuam e a necessidade de maior autonomia. Pessoais Grau de Autonomia Campo serviço Serviço de campo serviço industrial Industriais Grau de Desestruturação do Ambiente Figura 1.9: Classificacao segundo a funcionalidade ¸˜ ¯ Robos Industriais - S˜ o os robos utilizados em linhas de producao. Estes robos recebem ˆ a ˆ ¸˜ ˆ tarefas determinadas a priori na forma de uma sequencia expl´cita e acoes e executam ¨ ı ¸˜ este programa automaticamente. O ambiente e completamente estruturado e ajustado ´
    • ¸˜1. Introducao 10 para a execucao da tarefa. Neste ambiente, o robo tem conhecimento exato da sua ¸˜ ˆ posicao e da posicao dos objetos. Em geral, robos moveis industriais s˜ o plataformas ¸˜ ¸˜ ˆ ´ a moveis utilizadas para tarefas pesadas, como transporte de materiais e produtos finais ´ em sistemas de manufatura. Esses robos s˜ o denominados AGVs (Automated Guided ˆ a Vehicles) e s˜ o programados para seguir linhas desenhadas no ch˜ o. a a ¯ Robos de Servico Industrial - Este tipo de robo possui as caracter´sticas de um robo de ˆ ¸ ˆ ı ˆ servico, por´ m atua em um ambiente completamente estruturado. ¸ e ¯ Robos de Servico - S˜ o os robos moveis utilizados para servicos gerais (figura 1.10). O ˆ ¸ a ˆ ´ ¸ ambiente e estruturado e o robo possui um modelo deste ambiente, que e conhecido ´ ˆ ´ previamente, por´ m possui certa autonomia, pois processa informacao sensorial, para e ¸˜ atuar em situacoes imprevistas, como desviar de uma pessoa ou objeto. Estes robos ¸˜ ˆ recebem macro-comandos da tarefa que devem realizar e s˜ o utilizados para tarefas a de limpeza em geral (pisos, dutos de ar, metros, etc.), em sistemas de vigilˆ ncia e no ˆ a transporte de materiais leves (correspondˆ ncias internas, material hospitalar, etc.). e Figura 1.10: Exemplo de robo de servico: aspirador de po ˆ ¸ ´ ¯ Robos de Servico de Campo - Estes robos s˜ o robos de servico que atuam em ambientes ˆ ¸ ˆ a ˆ ¸ externos que podem ser previamente modelados ou n˜ o. Em geral, caso haja um mo- a delo, este e prec´ rio e h´ a necessidade do processamento sensorial para complementar ´ a a o modelo existente. Estes robos s˜ o utilizados na realizacao de tarefas agr´colas (figu- ˆ a ¸˜ ı ra 1.11) e para navegacao em auto-estradas. ¸˜ ¯ Robos de Campo - estes robos trabalham em ambientes n˜ o estruturados, pouco co- ˆ ˆ a nhecidos e geralmente perigosos (figura 1.12). As principais atividades destes robos ˆ
    • ¸˜1. Introducao 11 Figura 1.11: Exemplo de robo de servico de campo: colheitadeira autonoma ˆ ¸ ˆ s˜ o: exploracao (espacial, de cavernas, vulcoes), mineracao e limpeza de acidentes a ¸˜ ˜ ¸˜ nucleares. Figura 1.12: Exemplo de robo de campo: Dante, para exploracao de vulcoes ˆ ¸˜ ˜ ¯ Robos Pessoais - s˜ o os robos vendidos em prateleiras, que n˜ o desenvolvem tarefas ˆ a ˆ a espec´ficas, mas interagem com os humanos e aprendem a localizar-se no ambiente (fi- ı gura 1.13). Figura 1.13: Exemplo de robo pessoal: o c˜ ozinho Aibo ˆ a
    • ¸˜1. Introducao 121.4 Desafios em Robotica Movel ´ ´ ˆ ´ e ´ Construir um robo movel envolve uma s´ rie de problemas. E necess´ rio lidar com er- aros de posicao e orientacao, ru´dos nas leituras dos sensores, problemas com a carga das ¸˜ ¸˜ ıbaterias, erros de programacao, etc. ¸˜ Como e poss´vel perceber, a tarefa de construir um robo com caracter´sticas humanas e ´ ı ˆ ı ´um desafio incrivelmente dif´cil. Seres humanos possuem caracter´sticas muito dif´ceis de ı ı ıserem modeladas. Nosso sistema de vis˜ o e apurado, nossa reacao a uma situacao inespe- a ´ ¸˜ ¸˜rada e quase que instantˆ nea, nossos movimentos s˜ o coordenados inconscientemente para ´ a amanter o equil´brio do corpo. Nosso sistema de controle de energia opera de forma bastante ıotimizada. Todas estas caracter´sticas nos tornam “m´ quinas” perfeitas. ı a Quando desenvolvemos robos, procuramos nos espelhar em nossas habilidades e essa ˆbusca pelo desenvolvimento de m´ quinas com caracter´sticas humanas nos apresenta uma a ıs´ rie de desafios. e1.4.1 Navega¸ ao c˜ O grande desafio da navegacao de robos moveis e criar formas de representacao do am- ¸˜ ˆ ´ ´ ¸˜biente. At´ que ponto modelos do ambiente precisam ser refinados e livres de erros. At´ e eque ponto podemos utilizar navegacao reativa e ainda assim maximizar o desempenho do ¸˜robo. ˆ1.4.2 Reconhecimento Outro grande desafio e fazer com que o robo reconheca o ambiente no qual est´ inserido. ´ ˆ ¸ aIsto envolve problemas com a complexidade computacional do processamento de imagem edados, al´ m das dificuldades encontradas ao tratar diferencas de luminosidade e ru´do nos e ¸ ıdados advindos dos sensores.1.4.3 Aprendizado Ao tornar o robo mais complexo, adicionando a ele novos sensores e atuadores, estamos ˆtamb´ m acrescentando mais complexidade ao trabalho de programacao de acoes do robo, e ¸˜ ¸˜ ˆal´ m de dificultar a tarefa de calibracao dos sensores e coordenacao dos movimentos. O e ¸˜ ¸˜
    • ¸˜1. Introducao 13desenvolvimento de algoritmos de aprendizado permite que o robo calibre seus sensores e ˆdesempenhe a sua tarefa de forma mais autonoma e adapt´ vel. ˆ a1.4.4 Coopera¸ ao c˜ Uma outra linha de pesquisa argumenta a possibilidade de construir robos pequenos e ˆbaratos que juntos possam desempenhar tarefas complexas, cooperando uns com os outros.Assim como em um formigueiro.1.4.5 Cogni¸ ao c˜ O maior de todos os desafios e explorar os limites da inteligˆ ncia artificial. At´ que pon- ´ e eto podemos criar novas formas para armazenar conhecimento e utilizar este conhecimentopara a tomada de decis˜ o dotando o robo de capacidades cognitivas de alto n´vel que o a ˆ ıpermitam total autonomia com relacao ao meio. ¸˜1.5 Exerc´cios ı 1. Procure saber mais sobre o primeiro robo movel (Shakey). ˆ ´ 2. O que vocˆ entende por “expans˜ o dos obst´ culos”? Considere um robo com base e a a ˆ circular. 3. Quanto a modelagem do ambiente, os m´ todos podem ser exatos e aproximados. O e que vocˆ entende por m´ todos exatos e aproximados de modelagem do ambiente e e e quais as consequˆ ncia da escolha de um ou outro para o planejamento da trajetoria? ¨e ´ 4. Observando o historico descrito no in´cio do cap´tulo, e poss´vel encontrar trˆ s tipos ´ ı ı ´ ı e de “arquiteturas” de robos moveis, que dizem repeito a forma como este interage com ˆ ´ o ambiente. Quais s˜ o estes trˆ s tipos? Busque caracteriz´ -los segundo algum crit´ rio a e a e e compare-os com o comportamento humano e de animais com relacao ao desenvolvi- ¸˜ mento de uma tarefa. 5. Quais s˜ o os principais tipos de sensores utilizados em robotica movel? a ´ ´ 6. Quais s˜ o os principais tipos de atuadores utilizados em robotica movel? a ´ ´
    • ¸˜1. Introducao 14 7. Na sua opini˜ o, qual a vantagem existente em construir robos com base circular pa- a ˆ ra atuar em ambientes fechados e estruturados? Ilustre uma situacao onde um robo ¸˜ ˆ com base circular consegue cumprir sua tarefa em detrimento a um robo com base ˆ retangular.
    • Cap´tulo 2 ıSensores O uso tradicional da robotica tem sido as aplicacoes industriais, que tradicionalmente ´ ¸˜utilizam robos fixos para manufatura. Os benef´cios do uso da robotica na industria s˜ o ˆ ı ´ ´ aj´ bem conhecidos, para citar alguns: Melhoria na qualidade do produto, aumento da efi- aciˆ ncia, confiabilidade e reducao dos custos de producao. A introducao da mobilidade na e ¸˜ ¸˜ ¸˜robotica fez surgir toda uma nova gama de aplicacoes, al´ m das tradicionais aplicacoes in- ´ ¸˜ e ¸˜dustriais. Essas aplicacoes incluem: robos moveis para combate a incˆ ndios, manipulacao ¸˜ ˆ ´ ` e ¸˜de material b´ lico, explosivos, material toxico, transporte de materiais e cargas perigosas, e ´patrulhamento e vigilˆ ncia, etc. a A construcao de robos moveis, apesar de sua ampla gama de aplicacoes, representa um ¸˜ ˆ ´ ¸˜desafio tecnologico. V´ rios problemas precisam ser resolvidos pelos projetistas de robos ´ a ˆpara que os robos possam ser constru´dos de forma a estarem adaptados a tarefa a ser exe- ˆ ı `cutada. As principais dificuldades encaradas pelos projetistas devem-se principalmente a `imaturidade tecnologica, ainda incapaz de fornecer o suporte adequado ao seu desenvolvi- ´mento. Estas dificuldades tecnologicas podem ser resumidas em trˆ s areas principais:[4, 20] ´ e ´ 1. Recursos Computacionais 2. Comunicacoes ¸˜ 3. Sensores As duas primeiras areas tˆ m sido bastante desenvolvidas nos ultimos anos, com o de- ´ e ´senvolvimento exponencial do poder computacional dos processadores, e com o grande de-senvolvimento da tecnologia das redes de computadores, dos protocolos de comunicacao, e ¸˜da tecnologia de computacao movel. ¸˜ ´
    • 2. Sensores 16 A categoria dos sensores, no entanto, somente agora tem percebido um not´ vel cresci- amento tecnologico. Os principais problemas enfrentados no desenvolvimento da robotica ´ ´movel surgem diretamente da necessidade de interacao com objetos f´sicos e entidades do ´ ¸˜ ıambiente. Esta interacao consiste principalmente na localizacao e identificacao destas en- ¸˜ ¸˜ ¸˜tidades e objetos enquanto o robo move-se (navega) neste meio ambiente. Este processo ˆprecisa ser realizado rapidamente, e com a m´ xima precis˜ o e acur´ cia. No projeto de tais a a asensores, deve-se levar em conta as seguintes consideracoes:[9, 20] ¸˜ ¯ Campo de Vis˜ o: Deve ser amplo o bastante e com suficiente profundidade para a adequar-se a sua aplicacao. ` ¸˜ ¯ Range Capability: (Capacidade Alcance) O alcance m´nimo de deteccao, bem como o ı ¸˜ alcance m´ ximo efetiva devem ser adequados ao uso pretendido do sensor. a ¯ Acur´ cia e Resolu¸ ao: Devem estar de acordo com as necessidades da tarefa dada. a c˜ ¯ Habilidade para detectar todos os objetos no ambiente: V´ rias condicoes ambien- a ¸˜ tes podem interferir e acrescentar ru´do as informacoes captadas pelos sensores. Os ı ` ¸˜ mesmos devem ser capazes de minimizar tais interferˆ ncias. e ¯ Opera¸ ao em Tempo-Real: O sensor deve ser capaz de fornecer dados em tempo real c˜ a velocidades que sejam compat´veis com a velocidade de sua plataforma receptora ı (robo movel, ve´culo-robo, etc.) ˆ ´ ı ˆ ¯ Dados Concisos e de f´ cil interpreta¸ ao: O formato de sa´da de um sensor deve ser re- a c˜ ı al´stico do ponto de vista dos requisitos de processamento, visando reduzir ao m´ ximo ı a o pr´ -processamento da informacao fornecida pelo sensor. e ¸˜ ¯ Redundˆ ncia: O sistema sensor deve sofrer uma degradacao lenta e suave, e n˜ o fi- a ¸˜ a car totalmente incapacitado devido a perda de um elemento sensor. Uma capacidade ` multimodal seria desej´ vel para assegurar a deteccao de todos os alvos, bem como para a ¸˜ aumentar o n´vel de confianca de sua sa´da. ı ¸ ı ¯ Simplicidade: O sistema deve ser de baixo custo e modular, para facilitar a manutencao e permitir atualizacoes evolucion´ rias, portanto, n˜ o deve estar restrito ¸˜ ¸˜ a a a um tipo de hardware espec´fico. ` ı
    • 2. Sensores 17 ¯ Consumo de For¸ a: O consumo de forca deve ser m´nimo, para poder ser mantida c ¸ ı uma boa relacao com os recursos limitados a bordo de robos moveis e ve´culos-robos. ¸˜ ˆ ´ ı ˆ ¯ Tamanho: O peso e o tamanho devem ser o menor poss´vel, de acordo com os objetivos ı pretendidos para o ve´culo ou robo. ı ˆ Estas consideracoes n˜ o representam regras r´gidas, mas o projetista deve sempre tˆ -las ¸˜ a ı eem mente antes de iniciar o projeto de um novo sistema sensor para um robo movel. ˆ ´2.1 Defini¸ ao c˜ Sensores s˜ o dispositivos projetados para quantificar ou detectar parˆ metros especifica- a ados por meio de elementos transdutores1 [24, 20, 6].2.2 Classifica¸ ao c˜ Do ponto de vista da robotica, os sensores podem ser divididos em duas grandes cate- ´gorias, de acordo com a sua utilizacao em um robo [15, 20, 6]: ¸˜ ˆ 1. Sensores Internos: S˜ o usados para medir a posicao e velocidade ou aceleracao das a ¸˜ ¸˜ juntas ou extremidades de um robo manipulador, ou das rodas ou patas de um robo ˆ ˆ movel. ´ 2. sensores Externos: S˜ o utilizados para monitorar o proprio robo e a sua relacao com o a ´ ˆ ¸˜ mundo ao seu redor, bem como a realizacao da tarefa que lhe foi destinada. ¸˜ Esta divis˜ o pode ainda ser expandida em diversas subclasses, conforme mostra a taxo- anomia abaixo: 1. Sensores internos (a) Sensores de posicao ¸˜ i. N˜ o-oticos a ´ A. Potenciometros ˆ B. Sincronizadores 1 Transdutores s˜ o elementos que tem a funcao de converter uma dada magnitude f´sica em outra. a ¸˜ ı
    • 2. Sensores 18 C. Resolvedores D. Escala Indutiva Linear (Inductosyn) E. Transformadores Diferenciais (LVDT e RVDT) ´ ii. Oticos ´ A. Interruptores Oticos ´ B. Codificadores Oticos (b) Sensores de Velocidade i. Tacometros ˆ ´ ii. Codificadores Oticos (c) Sensores de Aceleracao ¸˜ 2. Sensores Externos (a) Sensores de Proximidade i. Sensores de Contato ii. Sensores de N˜ o-contato a A. Sensores oticos de Proximidade ´ B. Sensores Indutivos C. Sensores de Efeito Hall D. Sensores Capacitivos E. Sensores de Proximidade Ultra-sonicos ˆ (b) Sensores de Distˆ ncia a i. Por Triangulacao ¸˜ ii. Por luz estruturada iii. Por Tempo de Voo ˆ A. Laser B. Pulso de Luz C. Deslocamento de fase D. Ultra-som (pulso-eco) 3. Sensores de Tato
    • 2. Sensores 19 (a) Bin´ rios a (b) Analogicos ´ (c) Pele artificial 4. Sensores de Deslizamento (a) Sensores de Forca e Torque ¸ i. Por monitoracao da corrente do motor ¸˜ ii. Usando um LVDT2.3 Crit´ rios para Avalia¸ ao de Sensores e c˜2.3.1 Sensibilidade ´ E definida como a raz˜ o entre a taxa de mudanca dos valores de sa´da pela mudanca a ¸ ı ¸dos valores de entrada. Como exemplo, seja um sensor qualquer, em que um movimento de0,001mm na entrada provoca uma mudanca de 0,02V na sua sa´da. Neste caso dizemos que ¸ ı Îa sensibilidade do sensor e de ¼ ¼ ¼¾ÑÑ ¾¼Î ÑÑ ´ ¼¼½2.3.2 Linearidade ´ E a medida da constˆ ncia da taxa de sa´da com relacao a entrada. Um sensor e dito linear a ı ¸˜ ` ´se a variacao da entrada e constante com a variacao da sa´da, ou seja se a relacao entre ambos ¸˜ ´ ¸˜ ı ¸˜e dada por uma funcao linear.´ ¸˜2.3.3 Faixa ´ E a medida da diferenca entre o valor m´nimo e o valor m´ ximo medido. ¸ ı a2.3.4 Tempo de resposta ´ E o tempo decorrido para que uma mudanca nas entradas seja percebida como uma ¸mudanca est´ vel nas sa´da. Em alguns sensores a sa´da oscila por um certo tempo antes de ¸ a ı ıalcancar um valor est´ vel. O tempo de resposta e medido desde o in´cio da mudanca na ¸ a ´ ı ¸entrada at´ a estabilizacao da sa´da. e ¸˜ ı
    • 2. Sensores 202.3.5 Precis˜ o a ´ E a medida da diferenca entre os valores medidos e reais. ¸2.3.6 Repetibilidade ´ E a medida da diferenca entre duas medidas sucessivas sob as mesmas condicoes. Sen- ¸ ¸˜sores podem ter alta repetibilidade, mas pouca precis˜ o. a Ponto Alvo Ponto Alvo Ponto Alvo Alta Repetibilidade Alta Repetibilidade Baixa Repetibilidade Alta Acuracia Baixa Acuracia Alta Acuracia Figura 2.1: Diferenca entre repetibilidade e acur´ cia. (Fonte: [6]) ¸ a2.3.7 Resolu¸ ao c˜ Mede o numero de medidas de valores diferentes poss´veis dentro de uma faixa de ´ ım´nimo e m´ ximo. ı a2.3.8 Tipo de Sa´da ı A sa´da de um sensor pode ser dada de v´ rias fomas, por exemplo, atrav´ s de: ı a e ¯ movimento mecˆ nico, a ¯ tens˜ o, a ¯ corrente, ¯ press˜ o, a ¯ n´vel hidr´ ulico, ı a
    • 2. Sensores 21 ¯ intensidade luminosa, etc.2.4 Sensores Internos Os sensores internos s˜ o geralmente designados para as tarefas conhecidas como “Dead aReckoning” (contagem deduzida). Tamb´ m s˜ o conhecidos como sensores de posicao, ou e a ¸˜sensores n˜ o oticos ou ainda como sensores de odometria. A secao seguinte vˆ com mais a ´ ¸˜ edetalhes o “Dead Reckoning” e os sensores que s˜ o geralmente usados para esta tarefa [20]. a2.4.1 Dead Reckoning A express˜ o “Dead Reckoning” deriva da express˜ o “Deduced Reckoning” (Contagem a aDeduzida). Dead Reckoning e um procedimento para determinacao da localizacao atual ´ ¸˜ ¸˜de um ve´culo atrav´ s da an´ lise das informacoes sobre sua velocidade e curso conhe- ı e a ¸˜cido. Baseia-se na id´ ia de que se o curso e conhecido, podemos determinar a posicao e ´ ¸˜do ve´culo neste curso atrav´ s da observacao da velocidade de seu deslocamento, ou ain- ı e ¸˜ ¸˜ a e ´da, da observacao da distˆ ncia percorrida da origem at´ o momento. E um procedimentoan´ logo ao que fazemos quando dirigimos de uma cidade a outra, consultando um mapa e a `o odometro do carro, por exemplo. ˆ A implementacao mais simplista de dead reckoning e conhecida como odometria, onde a ¸˜ ´posicao do ve´culo ao longo do caminho e derivada diretamente de algum tipo de odometro ¸˜ ı ´ ˆembarcado. Outra forma de odometria bastante comum envolve codificadores opticos di- ´retamente acoplados a armadura do motor ou aos eixos das rodas. Em algumas aplicacoes ` ¸˜exteriores utiliza-se algumas vezes sensores magn´ ticos de proximidade para perceber a epresenca de pequenos magnetos permanentes que s˜ o acoplados ao ve´culo (muito usados ¸ a ına industria automotiva para afericao de velocidade). Mais detalhes sobre odometria, veja ´ ¸˜[8, 11, 9, 24].Sensores de Odometria (ou de posi¸ ao) n˜ o oticos c˜ a ´ Os tipos mais comuns de sensores aplicados a odometria s˜ o: potenciometros, resol- ` a ˆvedores, e codificadores oticos. A seguir veremos cada um deles com um pouco mais de ´detalhe:
    • 2. Sensores 22Potenciometros S˜ o geralmente usados como sensores de posicionamento rotacional em ˆ aaplicacoes de m´ dia acur´ cia e baixa velocidade que n˜ o envolvam rotacao cont´nua (p.ex., ¸˜ e a a ¸˜ ıs˜ o usados para sentir o posicionamento da cabeca de um robo, ou de suas articulacoes). a ¸ ˆ ¸˜ Slider movel Elemento resistivo Figura 2.2: Sensor Potenciometro. (Adaptado de [20]) ˆ Seu princ´pio de funcionamento e o mesmo do divisor de tens˜ o de resistˆ ncia vari´ vel: ı ´ a e aaplica-se a tens˜ o de referˆ ncia nos dois polos de entrada do potˆ nciometro e ent˜ o lˆ -se a e e ˆ a ea tens˜ o de sa´da, a qual ser´ alterada em funcao do comprimento da resistˆ ncia(2.2). A a ı a ¸˜ etens˜ o de sa´da de um potenciometro e mostrada abaixo: a ı ˆ ´ Ö Î¼ ÎÖ ¡Ê onde: μ = tens˜ o de sa´da; ÎÖ a ı = tens˜ o de referˆ ncia; Ö = resistˆ ncia wiper terra; Ê= resistˆ ncia a e e etotal; Principais Vantagens: ¯ baixo custo; ¯ interface muito simples. Principais Desvantagens: ¯ sempre existem n˜ o linearidades nestes potenciometros; a ˆ ¯ N˜ o podem ser usados em sistemas onde se requer grande precis˜ o; a a ¯ sofre deterioracao com o tempo de uso, devido ao atrito dos componentes. ¸˜
    • 2. Sensores 23Sincronizadores e Resolvedores : Sincronizadores s˜ o dispositivos eletromecˆ nicos rotacionais usados para transmitir a ainformacao angular eletricamente, de um lugar para outro, com grande precis˜ o. Basica- ¸˜ amente, o sincronizador e um transformador de acoplamento vari´ vel, consistindo de um ´ arotor de enrolamento prim´ rio AC-excitado muito simples e dois ou mais enrolamentos estatores asimetricamente orientados em torno do rotor (2.3). O acoplamento magn´ tico efetivo entre eo enrolamento do rotor e os enrolamentos dos estatores envolventes varia como uma funcao ¸˜da orientacao do vetor. O acoplamento m´ ximo ocorre quando os campos s˜ o paralelos, e ¸˜ a ao acoplamento m´nimo ocorre quando o campo do rotor est´ ortogonalmente alinhado com ı arespeito a um determinado enrolamento dos estatores. Assim sendo, a sa´da do estator for- ıma um conjunto de sinais AC cujas respectivas magnitudes definem unicamente o angulo ˆdo rotor em qualquer momento no tempo. Transmissor Receptor Rotor Rotor Fonte stator stator Fonte alternada Alternada Figura 2.3: Sensor Sincronizador.(Adaptado de [20]) Tipos de Sincronizadores ¯ Transmissores ¯ Diferenciais ¯ Receptores ¯ Transformadores de controle ¯ Resolvedores ¯ Resolvedores diferenciais
    • 2. Sensores 24 ¯ Transformadores Lineares ¯ Transolvers Desvantagens: ¯ Necessidade de adaptacao para interfaceamento com equipamentos digitais. ¸˜ ¯ S˜ o de eletronica complexa a ˆ ¯ Geralmente ocupam grande volume ¯ Custo muito elevado. Resolvedores s˜ o configuracoes especiais dos sincronizadores que desenvolvem volta- a ¸˜gens proporcionais ao seno e ao coseno do angulo do rotor. S˜ o muito utilizados para dividir ˆ auma quantidade vetorial em seus componentes associados. Vr AC Input Vy Rotor Stator Windings Vx Figura 2.4: Resolvedor (Adaptado de [20]) Vantagens: ¯ ´ E poss´vel obter melhor resolucao angular com o resolver do que com a maioria dos ı ¸˜ outros sensores de posicao. ¸˜
    • 2. Sensores 25 Desvantagens: ¯ Alto custo ¯ sofre interferˆ ncia eletromagn´ tica de outros aparelhos devido ao sinal de excitacao e e ¸˜ AC. ´Escala Indutiva Linear E bastante utilizado em m´ quinas de controle num´ rico. Possui a egrande precis˜ o - 0,1mil´ simos de polegada (linear) ou de ¼ ¼¼¼ ¾Ó E bastante similar aos a e ´resolvedores: h´ sempre dois componentes acoplados magneticamente, um dos quais se amove em relacao ao outro. Maiores detalhes veja em [6]. ¸˜ Vantagens: ¯ Grande precis˜ o a Desvantagens: ¯ alto custo; ¯ e necess´ rio eletronica adicional para fazer a digitalizacao das sa´das. ´ a ˆ ¸˜ ı Transformadores Diferenciais LVDT2 e RVDT3 O LVDT e um transdutor eletronico que consiste de duas partes, uma movel e outra fixa, ´ ˆ ´e produz uma tens˜ o de sa´da proporcional ao deslocamento da parte movel relativo a parte a ı ´ `fixa. Desvantagens: ¯ Para a Robotica, tem o problema de ter que operar sobre a sua posicao central, o que ´ ¸˜ gera uma dificuldade de calibracao, que implica em aumento de custo; ¸˜ ¯ ´ E um dispositivo analogico ´ ¯ Sua posicao central varia com o tempo e a temperatura. ¸˜ ¯ Opera com angulo de abertura de ˆ ¦ ¼Ó e a maioria das juntas dos robos se desloca ˆ mais que ½¾¼Ó 2 LVDT - Linear Variable Diferential Transformer; 3 RVDT - Rotary Variable Differential Transformer.
    • 2. Sensores 26 + Circuito de Condicionamento de Sinal - Nucleo Magnetico Figura 2.5: Sensor LVDT. (Adaptado de [6])Sensores de Odometria (ou de posi¸ ao) Oticos c˜ Possuem grandes vantagens com relacao aos sensores n˜ o oticos, as principais sendo: ¸˜ a ´ ¯ sua medicao n˜ o interfere no processo ¸˜ a ¯ inexistˆ ncia de desgaste mecˆ nico e a ¯ alta taxa de medicao ¸˜ ¯ imunidade ao ru´do ıA seguir relacionamos os v´ rios tipos de sensores oticos: a ´ ´Interruptores Oticos Em robos do tipo ponto-a-ponto, necessita-se apenas que os pontos ˆinicial e final sejam precisamente determinados; a informacao da posicao e pouco utiliza- ¸˜ ¸˜ ´da pelo sistema do robo. Nestes casos, um interruptor otico atua com vantagens sobre as ˆ ´chaves de contato. Basicamente, consiste de um disco transparente, com uma regi˜ o opaca acolocada em algum ponto da superf´cie. Este tipo de sensor funciona como circuito fechado ıenquanto o feixe de luz atravessa a superf´cie transparente; e atua como circuito interrom- ı ´pido quando o feixe de luz alcanca a parte opaca, interrompendo o feixe de luz. E utilizado ¸para fornecer sinais de sa´da bin´ rios, do tipo “ligado-desligado”. Sua simplicidade permite ı aque outros pontos de interrupcao sejam adicionados apenas colocando-se mais areas opacas ¸˜ ´na superf´cie do disco. ı
    • 2. Sensores 27 Emissor Disco Receptor Figura 2.6: Interruptor otico. (Adaptado de [6]) ´ ´Codificadores Oticos Os primeiros codificadores oticos foram desenvolvidos em meados ´de 1940 pela Baldwin Piano Company para uso como “rodas de tom” (tone wheels) que per-mitiam aos org˜ os el´ tricos imitar outros instrumentos musicais . Os dispositivos atuais ´ a ebasicamente embutem uma vers˜ o miniaturizada do sensor de proximidade de modo opos- ato (Opposed-mode proximity sensor). Neste esquema um canh˜ o de luz e direcionado pa- a ´ra um foto-detector, sendo periodicamente interrompido por um padr˜ o codificado opa- aco/transparente pintado sobre a superf´fie de um disco rotativo intermedi´ rio fixado ao ı aeixo de interesse. O disco rotativo pode ser constru´do de cromo sobre vidro, fotopl´ stico ı a(photoplast), ou metal vazado. Vantagens: ¯ Esquema de codificacao direto ¸˜ ¯ Sa´da inerentemente digital ı ¯ Baixo custo ¯ Boa imunidade a ru´dos ` ı Tipos b´ sicos de codificadores oticos: a ´ ¯ Incrementais ¯ Absolutos
    • 2. Sensores 28 Codificadores Incrementais Medem a velocidade rotacional e podem inferir posicoes ¸˜relativas. O tipo mais simples e o tacˆ metro codificador de canal unico 2.7, que consiste basica- ´ o ´mente em um interruptor inverso de luz mecˆ nica instrumentada que produz um certo numero a ´de pulsos de onda senoide ou quadrada para cada revolucao do eixo. Quanto maior o ¸˜numero de pulsos, mais alta a resolucao (e tamb´ m o custo) da unidade. ´ ¸˜ e Figura 2.7: Codificador otico incremental(Adapado de [20]) ´ Codificadores incrementais tamb´ m s˜ o bastante adequados como sensores de veloci- e adade em sistemas de controle de m´ dia e alta velocidade, mas sofrem problemas de ru´do e ıe instabilidade em velocidades extremamente baixas devido a erros de quantizacao. Estes ¸˜sensores, no entanto, s˜ o incapazes de detectar a direcao da rotacao, por isso n˜ o podem ser a ¸˜ ¸˜ ausados como sensores de posicao. [6, 10] ¸˜ Codificadores Incrementais de Fase-Quadratura Este tipo de sensor contorna os pro-blemas do codificador de canal unico atrav´ s da adicao de um segundo canal e distribu´ndo ´ e ¸˜ ıos detectores para que o resultado seja dois trens de pulso com uma defasagem de ¼Ó . Istopermite que o decodificador eletronico determine qual canal est´ conduzindo o outro, e des- ˆ ata maneira pode-se descobrir a direcao do movimento. Para uma descricao mais detalhada ¸˜ ¸˜veja [6, 20, 11] ´ Codificadores Oticos absolutos Sensores oticos absolutos medem diretamente a ´posicao angular e inferem a velocidade 2.8. S˜ o tipicamente usados em aplicacoes rotaci- ¸˜ a ¸˜onais lentas que requerem informacoes posicionais quando a potencial perda de referˆ ncia ¸˜ ecausada por interrupcoes de energia n˜ o podem ser toleradas. ¸˜ a Em sua estrutura, v´ rios elementos detectores discretos em um array fotovoltaico s˜ o a aindividualmente alinhados em trilhas codificadas concˆ ntricas, como mostrado na figura e
    • 2. Sensores 29 Figura 2.8: Codificador otico absoluto. (Adaptado de [20]) ´2.8: Este mecanismo passa a funcionar ent˜ o como uma vers˜ o sem contato do antigo sensor a ade escovas. O posicionamento e ent˜ o obtido pela leitura direta do codigo pelo array detec- ´ a ´tor e a direcao da rotacao e obtida pela sequˆ ncia de valores lidos (crescente ou decrescente). ¸˜ ¸˜ ´ ¨eSensores de Velocidade O tipo de sensor de velocidade mais comum e o tacometro, que possui um uso bastante ´ ˆdiversificado em diversas aplicacoes. Para esta finalidade ainda podemos utilizar os codi- ¸˜ficadores oticos (descritos acima) e conversores de frequˆ ncia para tens˜ o para obtermos a ´ ¨e avelocidade em valores analogicos. Para obtermos a velocidade em termos de valores digitais ´podemos utilizar codificadores oticos juntamente com softwares adequados. ´Tacometros CC ˆ Utiliza-se de um tacometro4 para medir a velocidade angular dos eixos de ˆrotacao das rodas de um robo.Os tacometros geralmente produzem uma tens˜ o CC que e ¸˜ ˆ ˆ a ´proporcional a velocidade do eixo de rotacao, quanto maior a velocidade, maior a tens˜ o e ` ¸˜ avice versa.Sensores de Acelera¸ ao c˜ Usam-se acelerometros para se obter a aceleracao linear. Acelerometros s˜ o compostos ˆ ¸˜ ˆ ade uma massa M, algum sensor de deslocamanto linear, por exemplo um LVDT e um con-junto de molas com constante equivalente k 2.9. 4 Dispositivo que se utiliza da rotacao de um motor CC para produzir uma tens˜ o analogica que varia de ¸˜ a ´acordo com com a velocidade angular da rotacao do motor. Um tacometro CC pode ser descrito como um ¸˜ ˆ
    • 2. Sensores 30 Mola Massa M Direçao do movimento LVDT Figura 2.9: Acelerometro(Adaptado de [6]) Usando a Lei de Newton podemos ent˜ o derivar a aceleracao da seguinte forma: a ¸˜ Å¡ ¡Ý µ ¡Ý Å Os acelerometros geralmente possuem um uso limitado em Robotica devido ao fato de ˆ ´medirem apenas a aceleracao linear. Para o caso da medida de velocidade de juntas, geral- ¸˜mente deriva-se o valor da aceleracao diretamente do valor da velocidade angular. ¸˜2.5 Sensores Externos Esta classe de sensores tem a finalidade de permitir a monitoracao do robo, mas agora ¸˜ ˆdo ponto de vista externo, ou seja, a partir de sua relacao com o mundo e com a tarefa que ¸˜lhe foi determinada. S˜ o estes tipos de sensores que funcionam como os org˜ os da “vis˜ o”, a ´ a a“audicao” e “tato” dos robos, e permitem que estes se orientem no mundo. [2, 9, 24, 20] ¸˜ ˆgerador que e capaz de medir a velocidade de seu eixo de rotacao. ´ ¸˜
    • 2. Sensores 312.5.1 Sensores de Proximidade Servem para indicar ao robo se ele est´ proximo de algum objeto do mundo. Este concei- ˆ a ´to de proximidade geralmente est´ relacionado a algum intervalo de distˆ ncia especificado. a ` aS˜ o divididos em sensores de contato e n˜ o-contato. a aSensores de Contato Sensores t´ cteis (ou de contato) s˜ o geralmente empregados em ve´culos guiados au- a a ıtomaticamente (Automated Guided Vehicle - AVGs) e em robos moveis para fornecer uma ˆ ´indicacao de colis˜ o de ultimo recurso com obstrucoes em torno do robo. O processo de ¸˜ a ´ ¸˜ ˆdeteccao deste tipo de sensor envolve contato f´sico direto entre o sensor e o objeto de inte- ¸˜ ıresse. Atualmente v´ rias tecnologias tem sido aplicadas na construcao dos chamados esque- a ¸˜mas sens´veis t´ cteis. entre essas tecnologias de sensores, destacamos os seguintes, como mais ı arepresentativos: ¯ Chaves de contato ¯ Magn´ ticos e ¯ Piezoel´ tricos e ¯ Capacitivos ¯ Fotoel´ tricos e ¯ Magneto-resistivos ¯ Piezo-resistivos ¯ Ultrasonicos ˆDo ponto de vista da robotica movel, estes esquemas sensores podem ser divididos em trˆ s ´ ´ egrupos principais: 1. Sensores t´ cteis ou antenas a 2. Amortecedores t´ cteis a 3. Arrays de superf´cie distribu´dos. ı ı
    • 2. Sensores 32Sensores T´ cteis ou Antenas Consistem, geralmente, de hastes de metal ligadas a termi- anais de chaves de contato. A figura abaixo mostra um tipo simples de sensor t´ ctil. Podem aser divididos em duas categorias: ¯ Sensores passivos: que s˜ o geralmente fixos (2.10), e a ¯ Sensores ativos: que geralmente implementam alguma estrat´ gia mecˆ nica de busca e a para tornar a orientacao mais efetiva. Este processo assemelha-se muito ao movimento ¸˜ das antenas de um inseto (2.11). Nesta configuracao de antena o ponto de contato ¸˜ real ao longo do sensor flexivel e determinado pela medida da quantidade de rotacao ´ ¸˜ (ˆ ngulo a apos o contato inicial, e o torque induzido correspondente. ´ Luva metalica Conexao eletrica Luva plastica Sensor de freio automotivo Figura 2.10: Sensor t´ ctil passivo.(Adaptado de [20]) a Atuador antena θ Objeto Figura 2.11: Sensor ativo em forma de antena. (Adaptado de [20])Amortecedores T´ cteis a Consistem, geralmente, de uma placa de metal presa por uma poruma ponta e curvada para fora na outra, formando um amortecedor protetor na frente do
    • 2. Sensores 33ve´culo . Esta placa est´ restrita a um unico grau de liberdade de movimento, e quando ela ı a ´sofre press˜ o externa provoca a ativacao de alguma chave de contato. As 2.12 mostra um a ¸˜esquema exemplos de amortecedores t´ cteis. a Microswitch Amortecedor tactil Objeto Figura 2.12: Amortecedor T´ ctil. (Adaptado de [6]) aArrays de superf´cie distribu´dos S˜ o a nova tendˆ ncia na construcao de sensores t´ cteis. ı ı a e ¸˜ aS˜ o arranjos complexos de sensores, com o objetivo de fornecer o perfil do objeto em contato acom o array sensor. Al´ m do perfil bidimensional do objeto, este array tamb´ m e capaz de e e ´fornecer alguma quantificacao da magnitude da forca do contato. ¸˜ ¸ Atualmente tem surgido um grande interesse pelo desenvolvimento de sensorescont´nuos, como “peles”, os quais poderiam ser incorporados diretamente ao exterior dos ırobos ou ve´culos roboticos. Mais sobre peles artificiais na secao 2.5.3. ˆ ı ´ ¸˜Sensores de Proximidade n˜ o contato a S˜ o utilizados para determinar a presenca de objetos proximos. Foram desenvolvidos a ¸ ´para extender a faixa sensitiva al´ m daquela permitida pelos sensores de contato. A sua eprincipal vantagem e evitar o contato direto entre o robo e os objetos circundantes. Costu- ´ ˆmam ser classificados, de acordo com as suas propriedades espec´ficas que s˜ o usadas para ı adisparar a acao, nas seguintes categorias: ¸˜ ¯ Magn´ ticos e ¯ Indutivos ¯ Ultrasonicos ˆ ¯ Microondas
    • 2. Sensores 34 ¯ ´ Oticos ¯ CapacitivosSensores de Proximidade Magn´ ticos e Esta categoria inclui os reed switches, dispositivosde efeito Hall e sensores magneto-resistivos. Reed Switches Magn´ ticos S˜ o o tipo mais simples de sensores de proximidade e amagn´ ticos. Consistem de um par de reeds ferromagn´ ticos de baixa relutˆ ncia, fixados em e e aextremidades opostas de um tubo de vidro hermeticamente fechado , dispostos de tal for-ma que suas pontas se sobrepoem levemente, por´ m sem se tocarem (2.13). As pontas dos ˜ efilamentos assumem polaridades opostas quando expostas a um fluxo magn´ tico externo, ` ee a subsequente forca atrativa forca os dois reeds a fazerem contato, fechando um circuito ¸ ¸el´ trico que dispara a acao. e ¸˜ Conexões externas Contatos Figura 2.13: Sensor Reed Swithch magn´ tico.(Adaptado de [20]) e Alguns problemas com este tipo de sensor podem ocorrer devido a trepidacoes, ` ¸˜vibracoes estruturais, etc. Estes sensores est˜ o dispon´veis em duas versoes: normalmente ¸˜ a ı ˜aberto e normalmente fechado, e s˜ o comumente empregados como sensores de fechamento de aportas e janelas em aplicacoes de seguranca.] ¸˜ ¸ Sensores de Efeito Hall O Efeito Hall foi descoberto por E. H Hall em 1879. Hall notouque uma voltagem muito pequena era gerada na direcao transversal atrav´ s de um condu- ¸˜ etor (2.14), gerando uma corrente na presenca de um campo magn´ tico externo, dada pela ¸ eseguinte equacao: ¸˜ Î Ê ¡Á ¡ Ø onde:
    • 2. Sensores 35 Î = voltagem Hall Ê = coeficiente de Hall (dependente do material) Á = intensidade decorrente el´ trica (em Amperes) e = densidade de fluxo magn´ tico (perpendicular a Á ) em eGauss Ø = espessura do elemento (em cm) Sensor de Efeito Hall corpo Ferromagnetico (a) (b)Figura 2.14: Sensor de efeito Hall com im˜ permanente (a) linhas de fluxo na ausˆ ncia de a eum corpo ferro-magn´ tico nas proximidades do sensor; (b) linhas de fluxo quando h´ um e acorpo ferro-magn´ tico nas proximidades. (Adaptado de [6]) e Sensores Magneto-Resistivos Materiais anisotr´ picos s˜ o materiais que possuem a ca- o aracter´stica de que o valor de uma dada propriedade depende da direcao da medida; ma- ı ¸˜teriais isotr´ picos s˜ o aqueles que sempre exibem os mesmos valores para as propriedades o amedidas em todas as direcoes. A anisotropia pode estar relacionada a forma do material, a ¸˜ ` `sua estrutura cristalina ou ainda a sua estrutura interna. Inserir Referˆ ncia (Graf, 1974) ` e Por exemplo, a direcao da magnetizacao em um cristal ferro-magn´ tico ser´ orientada ¸˜ ¸˜ e aao longo de um certo eixo cristalogr´ fico, conhecido como eixo f´ cil (easy axis), onde easy a arefere-se a direcao preferida da magnetizacao. (Barret et al., 1973) ` ¸˜ ¸˜ A mudanca na direcao da magnetizacao em um material condutivo atrav´ s da aplicacao ¸ ¸˜ ¸˜ e ¸˜de algum campo magn´ tico externo ÀÝ resultar´ em uma mudanca na resistividade do ma- e a ¸terial, fenomeno conhecido como efeito magneto-resistivo. Uma das mais comuns aplicacoes ˆ ¸˜dos sensores magneto-resistivos em robotica e em rodas codificadoras. ´ ´ Outros usos incluem: compassing eletrˆ nico, medida de angulo e posicao, percepcao de o ˆ ¸˜ ¸˜corrente e medida de campos magn´ ticos em geral. [20] e
    • 2. Sensores 36Sensores de Proximidade Indutiva Chaves de prosimidade indutiva s˜ o os sensores mais ausados atualmente para deteccao de objetos de metais ferrosos e n˜ o-ferrosos a curtas ¸˜ adistˆ ncias. Sensores de proximidade indutiva geram um campo de r´ diofrequˆ ncia os- a a ¨ecilatorio (geralmente na faixa de 100Khz a 1Mhz) ao redor de uma bobina enrolada em ´um nucleo de ferrite. Quando um objeto met´ lico entra no campo definido projetado pe- ´ alo sensor, correntes s˜ o induzidas na superf´cie alvo. Essas correntes produzem um campo a ımagn´ tico secund´ rio que interage com o campo de prova, carregando o oscilador de pro- e ava. A impedˆ ncia efetiva da bobina de prova muda, resultando em um deslocamento da afrequˆ ncia do oscilador (ou mudanca de amplitude) que e convertida em um sinal de sa´da ¨e ¸ ´ ıproporcional a distˆ ncia percebida entre a bobina de prova e o alvo. ` aSensores de Proximidade Capacitivos Sensores de proximidade capacitivos s˜ o muito si- amilares aos sensores de proximidade indutiva, por´ m tem a capacidade de detectar tamb´ m e emateriais diel´ tricos, al´ m de objetos met´ licos. Sensores capacitivos reagem a variacoes na e e a ` ¸˜capacitˆ ncia el´ trica entre um corpo ou lˆ mina de prova e o ambiente em torno do mes- a e amo. Quando um objeto se aproxima, ocorre uma mudanca geom´ trica no campo, e as ca- ¸ eracter´sticas diel´ tricas dentro da regi˜ o sens´vel causam o aumento da capacitˆ ncia. Esta ı e a ı amudanca na capacitˆ ncia pode ser sentida de diversas formas: ¸ a 1. Um aumento no fluxo de corrente atrav´ s da lˆ mina de prova e a 2. In´cio de oscilacao em um circuito RC ı ¸˜ 3. Diminuicao na frequˆ ncia de uma oscilacao ongoing. ¸˜ ¨e ¸˜Sensores de Proximidade Ultra-Sonicos Sensores ultra-sonicos s˜ o exemplos de sensores ˆ ˆ areflexivos, ou seja, s˜ o sensores que respondem a mudancas na quantidade de energia emi- a ¸tida que retorna para um detector apos interagir com o objeto alvo. Sistemas ultra-sonicos ´ ˆt´picos consistem de dois transdutores (um para transmitir e outro para receber a energia ıretornada), embora a velocidade relativamente baixa do som permita operar no modo trans-ceiver, com apenas um transdutor. O transmissor emite uma onda longitudinal na regi˜ o ultra-sonica do espectro acustico a ˆ ´(tipicamente 20 a 200 Khz) acima do limite normal do ouvido humano. A resposta recebi-da pelo receiver e uma funcao da amplitude da energia retornada, em oposicao ao tempo ´ ¸˜ ¸˜passado antes da deteccao do eco do som emitido. ¸˜
    • 2. Sensores 37 Sensores ultra-sonicos s˜ o bastante uteis a distˆ ncias maiores do que os sensores citados ˆ a ´ aanteriormente, e podem detectar tanto objetos solidos quanto l´quidos. Seu funcionamento e ´ ı ´semelhante ao de um radar: se um objeto entra no campo do sinal acustico, a energia e refle- ´ ´tida de volta ao receiver. Como acontece com qualquer sensor reflexivo, o alcance m´ ximo ade deteccao e dependente n˜ o apenas do n´vel de potˆ ncia do sinal emitido, mas tamb´ m de ¸˜ ´ a ı e ecertas caracter´sticas do alvo, como area da secao reta, reflectividade e directividade. Uma ı ´ ¸˜vez que a amplitude do sinal recebido alcanca um limiar pr´ -estabelecido, o sensor modifica ¸ eo seu estado de sa´da para indicar a deteccao [25, 1, 10, 35]. ı ¸˜Sensores de Proximidade por Micro-ondas Sensores de micro-ondas operam a distˆ ncias amaiores ainda que os sensores ultrasonicos (tipicamente, de 5 a 150 p´ s ou mais). ˆ eSeu funcionamento e bastante similar ao dos sensores ultrasonicos a n˜ o ser pelo fa- ´ ˆ ato de que estes transmitem energia eletromagn´ tica na regi˜ o das micro-ondas de r´ dio- e a afrequˆ ncia(10,50GHz a 10.55GHz e 24,075GHz a 24,175GHz) (2.15). Quando a presenca de ¨e ¸um alvo reflete energia suficiente o sensor muda de estado para indicar a presenca de um ¸objeto dentro de um campo de vis˜ o. a Transmissor Modulador Receptor Laço de fase Preamp Filtro travada OutputFigura 2.15: Esquema de um sensor de proximidade por micro-ondas. (Adaptado de [20])Sensores de proximidade oticos Sensores oticos (ou foto-el´ tricos), tˆ m vasta aplicacao ´ ´ e e ¸˜em sistemas industriais. Podem ser classificados em trˆ s grupos b´ sicos: e a ¯ opostos, ¯ retroreflectivos e
    • 2. Sensores 38 ¯ difusos. Everett [20] considera que as duas primeiras categorias n˜ o s˜ o realmente sensores de a aproximidade no sentido estrito da terminologia. A raz˜ o desta consideracao e que os dois a ¸˜ ´tipos de sensores citados n˜ o s˜ o capazes de perceber qualquer tipo de objetos, percebem a aapenas um certo tipo de objeto no qual e instalado um receptor ou uma superf´cie refletora ´ ıespecial. Abaixo encontramos uma explicacao mais detalhada sobre cada um destes senso- ¸˜res: ´ Sensores Oticos Opostos Conhecidos como “olhos el´ tricos”, surgiram nos anos 1950, ee foram muito utilizados em uma grande variedade de aplicacoes, como abertura autom´ tica ¸˜ ade portas, sistemas de seguranca, etc. Consiste basicamente de duas unidades separadas - ¸um emissor e um receptor - colocadas na regi˜ o de interesse (emissor) e em alguma parte do arobo movel (receptor) (2.16). ˆ ´ Emissor Receptor Figura 2.16: Sensor otico oposto. (Adaptado de [20]) ´ O emissor emite um facho de luz (geralmente atrav´ s de um LED) que e captado pelo re- e ´ceptor (no robo) indicando assim a presenca do referido objeto (que possui o emissor). Geral- ˆ ¸mente tem pouca aplicabilidade em robotica movel devido a sua configuracao geom´ trica, ´ ´ ` ¸˜ eou seja, a necessidade de pares opostos e separados de emissor e receptor. ´ Sensores Oticos Retro-reflectivos Podem ser considerados uma evolucao dos sensores ¸˜oticos opostos, pois tamb´ m possui um par transmissor/receptor, por´ m estes n˜ o est˜ o´ e e a amais colocados em partes opostas, mas sim apenas em uma unica parte (no caso da robotica ´ ´movel, o robo) (2.17). ´ ˆ Emissor Retro- reflector Receptor Figura 2.17: Sensor otico retrorefletor. (Adaptado de [20]) ´
    • 2. Sensores 39 O nome Retro-reflectivo deve-se ao uso de um retro-refletor (como um espelho) colocadode maneira oposta a um par transmissor/receptor. A percepcao de um objeto d´ -se ent˜ o ` ¸˜ a apela reflex˜ o de um raio de luz emitido pelo emissor (instalado no robo) e refletido pelo a ˆretro-refletor (fixado no objeto de interesse). S˜ o usados em robotica movel no aux´lio a a ´ ´ ı `navegacao, sendo os retro-refletores utilizados como marcacoes de posicao que s˜ o identifi- ¸˜ ¸˜ ¸˜ acadas pelo robo enquanto este se desloca no ambiente. ˆ Sensores oticos difusos Operam de forma similar aos retro-reflectivos, com a diferenca ´ ¸de que no caso dos sensores difusos n˜ o h´ a presenca de uma contra-parte retro-reflectiva, a a ¸assim, a energia retornada pelo objeto e a difus˜ o da luz na propria superf´cie do objeto ´ a ´ ı(2.18). Emissor Objeto Receptor Figura 2.18: Sensor otico Difuso. (Adaptado de [20]) ´2.5.2 Sensores de Distˆ ncia a Sensores de distˆ ncia s˜ o utilizados para medir a distˆ ncia entre um ponto de referˆ ncia a a a e(geralmente o proprio sensor) e um outro objeto localizado no espaco em volta do robo. ´ ¸ ˆExistem v´ rias t´ cnicas para medir a distˆ ncia de um objeto at´ o sensor, cada uma aplic´ vel a e a e aa certas tecnologias de construcao de sensores. As principais t´ cnicas s˜ o [40, 1, 21]: ¸˜ e a 1. triangulacao ¸˜ 2. Por luz estruturada 3. por tempo de voo ˆO sistema de medida de distˆ ncia por triangulacao e bastante conhecido dos seres humanos, a ¸˜ ´pois e o m´ todo que nos utilizamos para determinar distˆ ncias baseado na vis˜ o est´ reo ´ e ´ a a eatrav´ s da paralaxe visual. O sistema de medida de distˆ ncia por tempo de voo tamb´ m j´ e a ˆ e ae um velho conhecido, sendo o sistema utilizado pelos morcegos, o qual foi depois copiado´
    • 2. Sensores 40pelos seres humanos nos sonares dos navios e submarinos. Este sistema basicamente con-siste em enviar uma onda sonora e ent˜ o captar o seu eco, determinando a distˆ ncia atrav´ s a a eda medicao do tempo gasto entre a emiss˜ o do sinal e a recepcao do mesmo. ¸˜ a ¸˜Triangula¸ ao c˜ ´ E um dos m´ todos mais simples para se medir distˆ ncias, e e tamb´ m um dos mais e a ´ eusados. Baseia-se na premissa trigonom´ trica de que, dado o comprimento de um lado e eseus dois angulos, e poss´vel determinar os comprimentos dos outros lados e o valor dos ˆ ´ ıoutros angulos atrav´ s da Lei B´ sica dos Senos, que pode ser rearranjada para representar o ˆ e acomprimento do lado B como uma funcao do lado A e dos angulos e : ¸˜ ˆ ×Ò ×Ò ×Ò × Ò´ · µ onde: B e a distˆ ncia desejada do sensor at´ o objeto, como mostra a 2.19 ´ a e P1 φ α P3 Α Β Θ P2Figura 2.19: Sistemas de triangulacao determinam a distˆ ncia B para o alvo colocado no ¸˜ aponto È¿ , medindo os angulos e nos pontos Ƚ e Ⱦ .(Adaptado de [20]) ˆ Basicamente, existem dois tipos de triangulacao: a triangula¸ ao passiva, a qual se utiliza ¸˜ c˜apenas da emiss˜ o de luz do ambiente, e a triangula¸ ao ativa, que utiliza uma fonte de a c˜energia para iluminar o objeto em quest˜ o. Veremos os dois esquemas a seguir. aTriangula¸ ao ativa Neste esquema o objeto e iluminado por um estreito facho de luz, a c˜ ´qual retorna para um detector apos refletir em uma pequena porcao da superf´cie do ob- ´ ¸˜ ı
    • 2. Sensores 41jeto, como mostra a 2.20. Quando o detector percebe recebe o feixe de luz, pode-se obtera distˆ ncia entre ele e a porcao do objeto iluminado. Note que este tipo de configuracao a ¸˜ ¸˜proporciona uma medida pontual. Para obtermos uma leitura de um conjunto de pontosda superf´cie do objeto, podemos montar o conjunto sensor sobre um sistema movel, desta ı ´forma teremos o feixe varrendo a superf´cie do objeto e produzindo um conjunto de pontos ıdo objeto cuja distˆ ncia do sensor e conhecida. a ´ Object α B φ θ A Emisor Receptor Figura 2.20: Esquema de Triangulacao Ativa.(Adaptado de [20]) ¸˜Triangula¸ ao passiva c˜ Tamb´ m conhecida como Sistema Estereoscopico passivo, este sis- e ´tema geralmente se utiliza de duas cˆ meras de v´deo arranjadas como mostra a 2.21. As a ıcˆ meras s˜ o organizadas de modo a formar um triˆ ngulo com o objeto em foco. A medida a a ados angulos e ˆ e da separacao lateral (distˆ ncia entre as cˆ meras) e a orientacao conhecida ¸˜ a a ¸˜permite o c´ lculo da distˆ ncia do centro focal (ponto m´ dio entre as duas cˆ meras) e o objeto a a e aalvo.Luz Estruturada Esta t´ cnica de medida de distˆ ncia consiste em projetar uma luz padr˜ o (geralmente um e a alaser) sobre o objeto desejado e calcular a ditˆ ncia atrav´ s da distorcao provocada no padr˜ o a e ¸˜ ade luz pela reflex˜ o da mesma na superf´cie do objeto. A forma mais comum e utilizar um a ı ´laser projetado atrav´ s de uma fenda estreita ou uma fonte de luz cil´ndrica. As distorcoes e ı ¸˜provocadas pela reflex˜ o da luz no objeto forma uma imagem formada por linhas, as quais a
    • 2. Sensores 42 P1 Camera 1 φ P3 A θ Camera 2 P2Figura 2.21: Esquema de Triangulacao passiva ou triangulacao estereoscopica passiva utili- ¸˜ ¸˜ ´zando cˆ meras de v´deo ou sensores oticos ou de micro-ondas.(Adaptado de [20]) a ı ´geram um padr˜ o de imagem que ter´ de ser analisado por um computador para determinar a aqual o objeto que est´ sendo focalizado. Este processo possui um custo computacional mais aelevado do que as outras t´ cnicas, pois necessita de softaware mais complexo para a an´ lise e ados padroes de imagens. ˜Tempo de Voo ˆ Sistemas de medida de distˆ ncia por Tempo de Voo (TOF - Time-Of-Flight) medem a a ˆdistˆ ncia do sensor ao objeto baseados no tempo requerido para que um pulso de energia a(acustica ou luminosa) viaje do emissor at´ o objeto, seja refletida e retorne para o receptor ´ edo sensor na forma de eco. Os tipos mais comuns de energia utilizados nesta t´ cnica s˜ o o e aultra-som, r´ dio-frequˆ ncia, ou energia luminosa; para cada caso, os parˆ metros envolvidos a ¨e ano c´ lculo da distˆ ncia s˜ o: a velocidade do som no ar ( 300 m/s), a velocidade da luz a a a  ¡ ¿ Ñ× . O c´ lculo da distˆ ncia torna-se ent˜ o trivial, simplesmente dado pela equacao: a a a ¸˜ Ú¡Ø ¾ onde: d = distˆ ncia do sensor ao objeto; v = velocidade do feixe de energia emitido a(velocidade do som ou da luz); t = tempo decorrido. A divis˜ o por dois torna-se necess´ ria porque o tempo percebido e relativo ao percorri- a a ´mento do dobro da distˆ ncia , ou seja, a energia leva um tempo t/2 para alcancar o objeto a ¸
    • 2. Sensores 43e um tempo t/2 para retornar como eco. Sistemas de medida de distˆ ncia por tempo de avoo tem a vantagem de manter a sua acur´ cia de forma linear com relacao ao aumento da ˆ a ¸˜distˆ ncia, por´ m apresentam tamb´ m algumas desvantagens: a e e ¯ Pode apresentar variacoes na velocidade de propagacao, particularmente no caso dos ¸˜ ¸˜ sistemas que se utilizam de energia acustica (ultra-som). ´ ¯ Incertezas na determinacao do tempo de chegada exato do pulso refletido (eco). ¸˜ ¯ Inexatid˜ o nos circuitos de tempo usados para medir o tempo de ida e volta do eco. a ¯ Interacao das ondas incidentes com a superf´cie alvo. ¸˜ ı A seguir s˜ o apresentados trˆ s esquemas para a determinacao de distˆ ncias atrav´ s do a e ¸˜ a etempo de voo; os dois primeiros utilizam a emiss˜ o de um laser, e o ultimo utiliza-se da ˆ a ´emiss˜ o de ultra-som: Pulsos de Luz, Deslocamento de fase e pulso-eco. aPulsos de Luz (laser) A distˆ ncia do objeto e determinada medindo-se o tempo que a luz a ´emitida leva para ir e voltar entre a fonte emissora e o receptor. A distˆ ncia e obtida pela a ´seguinte equacao: ¸˜ ¡Ø ¾ onde : t e o tempo de voo e c e a velocidade da luz. ´ ˆ ´ Como a velocidade da luz e da ordem de 30cm/ns, a instrumentacao utilizada deve ser ´ ´ ¸˜de alta resolucao, o que torna este sistema bastante caro, e portanto, utilizado somente em ¸˜aplicacoes bastante espec´ficas. ¸˜ ıDeslocamento de fase (laser) ´ E uma variante do m´ todo anterior, em que, em vez de pul- esos de luz, emite-se um feixe cont´nuo de laser e obt´ m-se a distˆ ncia atrav´ s da medicao do ı e a e ¸˜deslocamento de fase entre o feixe emitido e o feixe refletido.Ultra-som (Pulso-eco) Funciona basicamente da mesma forma que a t´ cnica de luz pulsa- eda, com a diferenca de que aqui aplica-se, em vez de um pulso de luz, um pulso de ultra- ¸som. A distˆ ncia e dada pela equacao a ´ ¸˜
    • 2. Sensores 44 Î× ¡ Ø ¾ onde: Î× = Velocidade do som no ar; Como a velocidade do som no ar e influenciada pela temperatura, e sabendo-se que ´ ÕÎ× ¿¿½ Ñ × a ¼Ó , ent˜ o Î× ¿¿½ ½ · ¾Ì¿ , onde T e o valor da temperatura em Ó . a ´2.5.3 Sensores de Tato Sensores de tato s˜ o geralmente usados em Robotica para se obter um feedback associ- a ´ado com o contato entre uma m˜ o robotica de um manipulador o os objetos em seu espaco a ´ ¸de trabalho. A importˆ ncia deste tipo de sensor e devido a necessidade de se controlar a a ´ `forca aplicada a um objeto por um manipulador, para evitar que este objeto caia , ou seja ¸ `esmagado pela m˜ o robotica. S˜ o divididos entre analogicos e bin´ rios (ou digitais). Os a ´ a ´ abin´ rios s˜ o basicamente chaves interruptoras que informam sobre a presenca ou ausˆ ncia a a ¸ ede um objeto. Os analogicos, por sua vez s˜ o capazes de fornecer sinais analogicos que s˜ o ´ a ´ aproporcionais a forca aplicada sobre eles.[9] ` ¸Sensores Bin´ rios a Consiste geralmente de um interruptor localizado na superficie interna cada dedo dam˜ o do robo. Geralmente s˜ o usados v´ rios sensores posicionados em diversos pontos da a ˆ a am˜ o para se obter uma informacao mais completa a respeito da posicao do objeto na m˜ o. a ¸˜ ¸˜ aSensores Analogicos ´ Neste tipo de sensor, a sua sa´da e proporcional a forca aplicada localmente sobre o ı ´ ` ¸sensor. O tipo mais simples consiste de um bast˜ o que e mecanicamente ligado a um eixo a ´ `de rotacao e a uma mola, como mostra a 2.22. Neste esquema, o movimento do bast˜ o ¸˜ ` aprovoca uma rotacao proporcional que pode ser medida atrav´ s de um potenciometro ou ¸˜ e ˆde um disco codificador otico. Como a constante de elasticidade da mola e conhecida, e f´ cil ´ ´ ´ aobter-se a forca para um dado deslocamento. ¸
    • 2. Sensores 45 Mola Bastao Objeto Eixo de rotaçao Figura 2.22: Sensor de tato analogico.(Adaptado de [20]) ´Pele artificial S˜ o matrizes de eletrodos em contato el´ trico com um material elastom´ trico cont´nuo a e e ıcuja resistˆ ncia varia em funcao da compress˜ o. Quando um objeto entra em contato com e ¸˜ aesta “pele”, ele causa deformacoes locais que s˜ o medidas como variacoes de resistˆ ncia. ¸˜ a ¸˜ eEstas variacoes s˜ o convertidas em sinais el´ tricos que possuem amplitudes proporcionais ¸˜ a eas forcas aplicadas em qualquer ponto da superf´cie do material. Este tipo de sensor tem,` ¸ ıgeralmente, vida limitada, pois apos um certo numero de operacoes (por volta de algu- ´ ´ ¸˜mas centenas) o material comeca a romper-se. Se for usado como revestimento sensor para ¸agarrar objetos, pode ser danificado se o tal objeto possuir arestas. Devido a este inconveni-ente, tem de ser substitu´do de tempos em tempos. Al´ m disto, este tipo de sensor costuma ı esofrer de histerese, ou seja, as resistˆ ncias n˜ o retornam ao seu valor original anterior a e a `compress˜ o. a Placa de circuito com eletrodos Camada de material elastomerico condutivo Camada de plastico protetor Figura 2.23: Pele Artificial. (Adaptado de [6]
    • 2. Sensores 46 Existem v´ rias t´ cnicas de construcao de peles artificiais. Uma das mais comuns possui a e ¸˜uma estrutura de trˆ s camadas, consistindo de material elastom´ rico condutivo coberto por e euma camada de pl´ stico para protecao. Estas camadas revestem uma terceira camada que e a ¸˜ ´uma placa de circuito impresso com v´ rios pares de an´ is de eletrodos impressos na mesma, a eem forma matricial (linhas e colunas).2.5.4 Sensores de Deslizamento Todos os sensores de tato vistos anteriormente tem a caracter´stica comum de que todos, ısem excecao, medem apenas a forca normal a sua superf´cie. Por´ m, em alguns casos, e ¸˜ ¸ ` ı e ´necess´ rio obter-se informacao a respeito do movimento tangencial a superf´cie do sensor. a ¸˜ ` ıTal necessidade vem do fato de que, por exemplo, um robo manipulador pode precisar saber ˆse um objeto que foi agarrado est´ deslizando pela sua m˜ o para que ele ajuste a forca a a ¸aplicada ao objeto e evitar que o mesmo caia. [6] Este tipo de sensor e o menos desenvolvido at´ o momento, por´ m muita pesquisa tem ´ e esido feita nesta area nos ultimos anos. Uma das t´ cnicas mais simples e que tem sido utiliza- ´ ´ eda com bastante sucesso am v´ rias aplicacoes e a t´ cnica conhecida como “Lift-and-try”. Esta a ¸˜ ´ et´ cnica utiliza a observacao da corernte do motor de uma ou mais juntas do braco robotico e ¸˜ ¸ ´para verificar se o objeto est´ ou n˜ o deslizando. Quando o robo tenta levantar um objeto a a ˆdesde a superf´cie, se a forca aplicada for suficiente, a corrente do motor deveria aumentar ı ¸devido ao aumento de carga. Se a forca for insuficiente para erguer o objeto, o que con- ¸sequentemente geraria um deslizamento, n˜ o se verifica nenhum aumento na corrente do amotor. Neste caso, o robo deve ser comandado para voltar a condicao de in´cio e aumentar ˆ ¸˜ ıa forca de agarramento de um valor m´nimo, a seguir tentando novamente o levantamento. ¸ ıEste processo e repetido at´ que haja um aumento de corrente que indique que o objeto foi ´ edevidamente agarrado. Esta t´ cnica apresenta alguns problemas com relacao ao seu uso, e ¸˜principalmente:[6] ¯ n˜ o h´ garantia de que o objeto deslize e caia apos ter sido agarrado; a a ´ ¯ pode ser um procedimento muito demorado quando trata-se de agarrar objetos muito fr´ geis juntamente com objetos muito r´gidos, pois o valor m´nimo do aumento da a ı ı forca deve ser muito pequeno, para evitar esmagar o objeto mais fr´ gil; ¸ a ¯ Erros na medicao da corrente (causados por picos de corrente em motores com esco- ¸˜
    • 2. Sensores 47 vas) podem causar demora no processo, ou risco de esmagamento de objetos fr´ geis. a2.5.5 Sensores de For¸ a e Torque c Existem algumas t´ cnicas que s˜ o usadas para obter mecanismos para medicao de forca e a ¸˜ ¸e torque. As mais comuns s˜ o: a ¯ monitoracao da corrente do motor; ¸˜ ¯ usando um LVDT ¯ usando strain gagesMonitora¸ ao da corrente do motor c˜ ´ E a mesma t´ cnica de ’lift-and-try”, por´ m usada para conhecer a forca de agarramento e e ¸aplicada a um objeto. Baseia-se no fato de que a corrente da armadura do servo-motor da `garra e proporcional ao torque gerado pelo motor: ´ Ì Á ÃØ onde: Á = Corrente da armadura Ì = Torque gerado ÃÌ = Constante de torque do motorSe for utilizado um conversor de movimento rotacional para linear (conjunto engrenagem-cremalheira), a forca gerada e: ¸ ´ Ì¡ Ê onde e a eficiˆ ncia do conjunto engrenagem-cremalheira (usualmente cerca de 90%) e ´ eR e o raio da engrenagem. Juntando as duas equacoes temos: ´ ¸˜ ÃÌ ¡ Á ¡ Ê
    • 2. Sensores 48 Este esquema sensor e bastante simples de ser implementado, por´ m tem alguns proble- ´ emas: 1. a constante de torque do motor ´ÃÌ µ e a resistˆ ncia da armadura ´Êµ variam com a e temperatura, o que causa erros de leitura a medida que o aparelho aquece-se com o uso; 2. e suscept´vel a ocorrˆ ncia de ru´dos na escova do motor e a variacoes na resistˆ ncia ´ ı ` e ı ` ¸˜ e da escova em motores dom escova. Uma solucao bastante custosa para este problema ¸˜ e adotar motores sem escova. Este m´ todo n˜ o chega a ser um sensor de forca na ´ e a ¸ verdadeira acepcao da palavra, porque a forca n˜ o e realmente medida, mas inferida ¸˜ ¸ a ´ a partir da corrente do motor. Assim sendo, este m´ todo e considerado mais como um e ´ m´ todo para manter uma forca desejada sobre um objeto. [6] e ¸Usando um LVDT Este m´ todo, diferentemente do anterior, pode ser considerado um verdadeiro esquema esensor de forca e torque, que pode medir precisamente posicoes lineares. A relacao forca- ¸ ¸˜ ¸˜ ¸deslocamento para um LVDT acoplado a uma mola e: [6] ` ´ Ã¡Ü onde K e a constante da mola e x e o deslocamento sobre uma posicao de equil´brio. Este ´ ´ ¸˜ ıesquema e bastante simples e muito utilizado, por´ m apresenta alguns problemas, que s˜ o: ´ e a 1. alto custo; 2. necessidade de calibracao; ¸˜ 3. sensibilidade a variacoes de temperatura ` ¸˜ 4. Variacao da constante K da mola com a temperatura ¸˜ 5. So e capaz de medir a forca em uma direcao. ´ ´ ¸ ¸˜
    • 2. Sensores 492.6 Resumo Neste cap´tulo tratamos breemente sobre sensores, mostramos sua classificacao, os v´ rios ı ¸˜ atipos de sensores e como os mesmos s˜ o utilizados em robotica. Sensores s˜ o essenciais para a ´ ao projeto de robos, porque representam os principais mecanismos de aquisicao de dados de ˆ ¸˜um robo no mundo. Eles s˜ o os equivalentes aos org˜ os dos sentidos nos seres humanos e ˆ a ´ aem outros animais. A area de sensores est´ em constante desenvolvimento, e produzindo ´ asensores cada vez mais precisos e exatos.2.7 Exerc´cios ı 1. Os sensores oticos s˜ o de extrema importˆ ncia, principalmente em Robotica movel. ´ a a ´ ´ Existem, basicamente trˆ s tipos de componentes sensores de luminosidade que s˜ o: e a (a) foto-resistores, (b) foto-transistores e (c) foto-diodos. Faca uma pesquisa na internet ¸ e relacione as principais diferencas entre estes trˆ s componentes, suas vantagens e ¸ e desvantagens e indicando quando e onde cada um deles pode ser usado em robos ˆ moveis. ´ 2. Neste cap´tulo sobre sensores deixamos de lado uma classe de sensores conhecida co- ı mo “sensores piroel´tricos”. Faca uma pesquisa sobre este tipo de sensores, relacione e ¸ suas vantagens e desvantagens e relacione tamb´ m algumas aplicacoes existentes. e ¸˜ 3. Com o barateamento das cˆ meras de video digital, elas tornaram-se uma boa opcao a ¸˜ para uso em robos moveis. Quais os maiores problemas para uso destes dispositi- ˆ ´ vos em robos moveis? Que vantagens as cˆ meras de v´deo apresentam com relacao a ˆ ´ a ı ¸˜ ` outros dispositivos sensores? Quais as possibilidades do uso das cˆ meras digitais no a futuro? 4. Imagine um robo humanoide, que tenha a capacidade de correr. Obviamente, este robo ˆ ´ ˆ precisa saber sua velocidade de deslocamento e sua aceleracao. Descreva quais sen- ¸˜ sores podem ser usados para fornecer ao robo esta informacao, e como estes sensores ˆ ¸˜ atuariam (sozinhos, em conjunto, etc) 5. Imagine um pequeno robo programado para exibir o comportamento de uma barata. ˆ Que tipo de sensores deveriam ser montados neste robo? Qual a utilidade de cada um ˆ deles?
    • Cap´tulo 3 ıAtuadores3.1 Introdu¸ ao c˜ Atuadores s˜ o dispositivos respons´ veis pelo movimento e articulacao das partes a a ¸˜moveis de uma m´ quina, seja esta uma m´ quina-ferramenta ou um robo. S˜ o eles que exe- ´ a a ˆ acutam e colocam em pr´ tica as tarefas ordenadas pelo sistema de controle. a Os atuadores n˜ o agem so, eles fazem parte de um conjunto formado por outros dois a ´sistemas; sistemas de transmiss˜ o e reducao e os sensores de posicao e velocidade. a ¸˜ ¸˜ ¯ Sistema de transmiss˜ o e reducao: s˜ o os elementos capazas de transladar e modificar a ¸˜ a o movimento gerado pelo acionamento. Ambos sistemas de transmiss˜ o e reducao de- a ¸˜ vem cumprir uma s´ rie de caracter´sticas muito restritivas devido as altas exigˆ ncias e ı ` e de funcionamento das diversas partes do robo que devem trabalhar de forma harmo- ˆ niosa. ¯ Sensores de posicao e velocidade: s˜ o os dispositivos que captam as informacoes sobre ¸˜ a ¸˜ posicao e velocidades de cada uma das partes moveis dos robos. Representam uma ¸˜ ´ ˆ parte vital de todo sistema, uma vez que o controle ir´ “tomar suas decisoes” baseados a ˜ nos valores fornecidos por estes dispositivos. Neste cap´tulo focaremos nossa atencao apenas nos atuadores de maior interesse para a ı ¸˜robotica movel, deixando de lado tamb´ m os sistemas de transmiss˜ o e reducao. O estudo ´ ´ e a ¸˜de sensores j´ foi feito/ser´ feito no cap´tulo ???. a a ı
    • 3. Atuadores 513.2 Tipos de Atuadores Os atuadores utilizados em robotica s˜ o classificados em func˜ o da energia que utilizam ´ a apara funcionarem [5]. Isto e de fundamental importˆ ncia pois a natureza da energia ir´ ´ a adeterminar a aplicacao, as condicoes de funcionamento e o tipo de controle a ser utilizado. ¸˜ ¸˜Tudo isto ser´ decisivo no projeto e posteriormente na operacao e manutencao. a ¸˜ ¸˜ Os trˆ s principais tipos de atuadores s˜ o: e a ¯ pneum´ ticos a ¯ hidr´ ulicos a ¯ el´ tricos e Os acionamentos pneum´ ticos e hidr´ ulicos se baseiam no uso da energia liberada por a afluidos em movimentos. No primeiro caso utiliza-se ar comprimido e no segundo um fluido ´ ´mais viscoso; agua e oleos s˜ o um bom exemplo. Em ambos os casos, no entanto, ser´ ne- ´ ´ a acess´ ria a instalacao de bombas e compressores, filtros, acumuladores, equipamentos para a ¸˜refrigeracao, v´ lvulas, etc. Tudo isto faz com que acionamentos pneum´ ticos e hidr´ ulicos ¸˜ a a arequeiram muita manutencao, representando uma grande desvantagem sobre os aciona- ¸˜mentos el´ tricos. e Figura 3.1: Grande variedade de dispositivos hidr´ ulicos e pneum´ ticos a a
    • 3. Atuadores 52 Atuadores baseados em motores el´ tricos s˜ o sem duvida os mais utilizados em projetos e a ´de robotica, independentes do tamanho. Isto deve-se ao fato de existirem uma gama bastan- ´te grande de motores com as mais diversas caracter´sticas, tornando-os flex´veis o suficiente ı ıpara atenderem a quase todas aplicacoes. As proximas secoes apresentaram melhor cada ¸˜ ´ ¸˜um destes tipos b´ sicos. a3.2.1 Pneum´ ticos a Como dito anteriormente, este tipo de atuador utiliza como fonte de energia a press˜ o do aar. Dado que o ar e um fluido altamente compress´vel, um controle preciso tanto da veloci- ´ ´ ıdade como da posicao e muito dif´cil. Al´ m disso, estes parˆ metros dependem diretamente ¸˜ ´ ı e ada carga aplicada. Se por um lado isto representa um desvantagem, por outro faz com queeste tipo de acionamento seja bastante resistente aos danos provocados por uma sobrecarga. Em robotica utilizam-se basicamente dois tipos de acionamentos: ´ ¯ cilindros pneum´ ticos a ¯ motores pneum´ ticos a de aletas rotativas pist˜ o axial aFigura 3.2: Exemplo de um robo com aci- ˆ Figura 3.3: Outro robo industrial que uti- ˆonamento pneum´ tico a liza o ar comprimido como energia
    • 3. Atuadores 53Cilindros Pneum´ ticos a Os cilindros pneum´ ticos s˜ o formados por um cˆ mara cujo interior abriga um embolo a a a ˆmovel. Dependendo do local de aplicacao do ar, este embolo pode ser ejetado ou puxado. ´ ¸˜ ˆS˜ o mais usados quando se deseja posicionamentos extremos, ou seja, a cˆ mara do cilindro a atotalmente rarefeita ou totalmente comprimida. Qualquer posicionamento intermedi´ rio arequer o uso de detectores de posicao e v´ lvulas para controlar a distribuicao de ar. Este ¸˜ a ¸˜tipo de acionamento e utilizado em robos onde se busca movimentos r´ pidos, sem muita ´ ˆ aprecis˜ o e repetibilidade. Por terem um controle simples, s˜ o largamente empregados nos a acasos em que e suficiente o posicionamento em dois pontos distintos. ´Figura 3.4: Cilindro pneum´ tico em aalum´nio ı Figura 3.5: Outros modelosMotores Pneum´ ticos a Os motores pneum´ ticos conseguem um movimento de rotacao tamb´ m mediante a ¸˜ epress˜ o do ar. Podem ser de dois tipos, os chamados de aletas rotativas e os de pistoes a ˜axiais, sendo este primeiro tipo o mais utilizado. Os motores do tipo aletas rotativas apresentam um rotor excˆ ntrico onde est˜ o dispos- e atas aletas longitudinais vari´ veis. A entrada do ar comprimido num dos compartimentos aformado por duas aletas e a carcaca, esta tende a girar at´ uma situacao em que o comparti- ¸ e ¸˜mento tenha maior volume. J´ o modelo de pistoes axiais tˆ m um giro solid´ rio a um tambor que se vˆ obrigado a a ˜ e a egirar pelas forcas exercidas por v´ rios cilindros que se apoiam sobre um plano inclinado. ¸ a ´ H´ ainda uma outra configuracao que faz uso de cilindros acoplados a um sistema de a ¸˜pinh˜ o-cremalheira. a
    • 3. Atuadores 543.2.2 Hidr´ ulicos a S˜ o an´ logos aos pneum´ ticos, exceto que neste caso o fluido utilizado e mais denso a a a ´ ´e viscoso. A menor compressibilidade que o ar os torna mais adequados aos movimentoslentos, de maior precis˜ o e ao manejo de grandes cargas. Apresentam estabilidade frente aa cargas est´ ticas, ou seja, s˜ o capazes de suportar cargas (como um peso ou uma press˜ o a a aexercida sobre uma superf´cie) sem aplicacao de mais energia. ı ¸˜ A principal desvantagens deste tipo de acionamento e a necessidade de dispositivos au- ´xiliares. Sistemas hidr´ ulicos necessitam de filtro de part´culas, eliminadores de ar, sistemas a ıde refrigeracao, etc. ¸˜ S˜ o empregados principalmente em robos manipuladores de grande capacidade de car- a ˆga.Figura 3.6: Exemplos de pistoes hi- ˜dr´ ulicos a Figura 3.7: Outros modelos Os primeiros robos industriais constru´dos possuiam este tipo de acionamento, devido ˆ ıprincipalmente a uma boa relacao entre peso e potˆ ncia do robo. ¸˜ e ˆ3.2.3 El´ tricos e Representam os mais comuns e utilizados atuadores em robotica movel e industrial[26]. ´ ´As otimas caracter´sticas de controle, sensibilidade, precis˜ o e confiabilidade fazem destes ´ ı aos preferidos no projeto e montagem de robos, especialmente para fins educacionais. ˆ
    • 3. Atuadores 55Motores Eletromagn´ ticos e Motores el´ tricos s˜ o m´ quinas que realizam a convers˜ o de energia el´ trica em energia e a a a emecˆ nica. a Podem ser classificados de acordo com o numero de fases de alimentacao, polos do rotor, ´ ¸˜potˆ ncia mecˆ nica, frequˆ ncia, tens˜ o de alimentacao, formato e material do qual s˜ o fabri- e a e a ¸˜ acados, etc. Todos estes fatores ir˜ o delinear a aplicacao e as condicoes de funcionamento e a ¸˜ ¸˜trabalho deste equipamento. Apesar desta grande variedade de caracter´sticas, motores para uso em robotica s˜ o ı ´ aagrupados em trˆ s categorias: e ¯ motores de correnta alternada (AC) s´ncronos ı ass´ncronos (mais conhecidos por motores de inducao) ı ¸˜ ¯ motores de corrente cont´nua (DC) ı ¯ motores de passo ¯ servomotores (DC) Corrente Alternada (AC) S˜ o motores alimentados atrav´ s de tensoes alternadas se- a e ˜noidais. Podem ser trif´ sicos ou monof´ sicos. Motores trif´ sicos s˜ o mais utilizados no a a a aacionamento de robos de grande porte no ambiente industrial, onde robustez e potˆ ncia ˆ emecˆ nica s˜ o exigidos. a a J´ os monof´ sicos podem ser encontrados nas mais diversas a aaplicacoes, n˜ o possuindo um nicho espec´fico. ¸˜ a ı S˜ o classificados em s´ncronos e ass´ncronos (ou de inducao). Nos motores s´ncronos a ı ı ¸˜ ıo indutor est´ situado no rotor (eixo) e e constitu´do por im˜ s permanentes. O induzido a ´ ı aest´ localizado no estator (carcaca, parte fixa) e e formado por trˆ s enrolamentos defasados a ¸ ´ e½¾¼Æ espacialmente, onde s˜ o aplicadas as tensoes trif´ sicas defasadas tamb´ m de a ˜ a e ½¾¼Æ notempo. A velocidade de giro do rotor e a mesma do campo girante produzido pela armadura ´(induzido, enrolamentos do estator), da´ o nome s´ncrono. Esta velocidade e diretamente ı ı ´proporcional a frequˆ ncia de alimentacao e varia inversamente com o numero de pares de e ¸˜ ´polos. ´
    • 3. Atuadores 56 Os motores de inducao (ass´ncronos) tem seu funcionamento baseado na inducao de ¸˜ ı ¸˜tens˜ o no rotor. Este campo magn´ tico produzido pelo enrolamento de campo no rotor se a e“acopla” ao campo girante produzido pela armadura e e “arrastado”. Assim, a velocidade ´de giro do rotor e um pouco menor que o campo girante da armadura. Esta diferenca chama- ´ ¸se “escorregamento” e pode ser usada como uma medida do carregamento da m´ quina; aquanto maior for a diferenca, ou seja, maior o escorregamento, maior e a carga alimentada ¸ ´pelo motor. Esta diferenca pode aumentar at´ um limite no qual a m´ quina perde o sincro- ¸ e anismo e deixar de funcionar corretamente. Figura 3.8: Motor AC trif´ sico comum a Figura 3.9: T´pico motor AC monof´ sico ı a No passado, estes tipo de motores nunca tiveram grande aplicabilidade. Mas recentesavancos em microeletronica e eletronica de potˆ ncia tornaram o uso destes competitivos ¸ ˆ ˆ efrente aos motores de corrente cont´nua. Isto se deve principalmente a trˆ s fatores: ı e 1. a construcao de rotores s´ncronos sem escovas ¸˜ ı 2. uso de conversores est´ ticos que permitem variar a frequˆ ncia (e com isso a velocida- a e de) com precis˜ o a 3. emprego da microeletronica que permite uma grande capacidade de controle ˆ Em robotica movel, motores AC raramente s˜ o utilizados. Isto deve-se principalmente a ´ ´ afonte de energia prim´ ria ser quase sempre uma bateria. a Corrente Cont´nua (DC) S˜ o motores que utilizam uma fonte de tens˜ o cont´nua (DC) ı a a ıpara funcionarem. Compoem-se de duas partes: ˜ ¯ o indutor, situado no estator, e respons´ vel por criar o campo magn´ tico de excitacao ´ a e ¸˜
    • 3. Atuadores 57 ¯ o induzido, situado no rotor, gira devido ao campo criado pelo indutor e pelo proprio ´ induzido, j´ que a corrente chega at´ este enrolamento atrav´ s de uma estrutura cha- a e e mada comutador. Este comutador e composto de contatos apoiados em escovas (ge- ´ ralmente de grafite) que fazem com que a polaridade da tens˜ o se inverta apos a ´ ½ ¼Æ , dando continuidade ao movimento. Figura 3.10: Corte parcial de um motor DC Para que a convers˜ o de energia ocorra neste tipo de motor, e necess´ rio que os campos a ´ amagn´ ticos do estator e do rotor permanecam est´ ticos entre si, a convers˜ o e maximizada e a a ´quando estes campos est˜ o em quadratura. a O aumento da velocidade pode ser feito aumentando-se a tens˜ o do induzido (enrola- amento do rotor) ou ent˜ o diminuindo-se o fluxo magn´ tico de excitacao do indutor (enrola- a e ¸˜mento do estator). A fim de melhorar o comportamento deste tipo de motor, costuma-se substituir o en-rolamento do indutor por im˜ s permanentes (feitos principalmente de sam´ rio-cobalto), a aevitando-se assim flutuacoes de tens˜ o. Costuma-se tamb´ m substituir o rotor bobinado ¸˜ a epor outro de metal fundido e ranhurado, diminuindo-se a in´ rcia. Em contrapartida, es- eta medida costuma causar aumentos de temperatura no rotor do motor, devendo-se tomarprecaucoes com relacao a poss´veis super-aquecimentos. ¸˜ ¸˜ ı Estes motores s˜ o mais utilizados devido as facilidade de controle. S˜ o tamb´ m os prefe- a a eridos em robotica movel; devido a fonte de energia prim´ ria ser quase sempre uma bateria. ´ ´ a
    • 3. Atuadores 58 Figura 3.11: Exemplos de motores DC
    • 3. Atuadores Pneum´ tico a Hidr´ ulico a El´trico e Energia Ar comprimido (5-10 bar) ´ Oleo mineral (50-100 bar) Corrente el´ trica e Op¸ oes c˜ Cilindros Cilindros Corrente cont´nua ı Motor de aletas Motor de aletas Corrente alternada Motor de pist˜ o a Motor de pist˜ o axial a Motor de passo Vantagens Baratos R´ pidos a Precisos R´ pidos a Alta relacao peso-potˆ ncia ¸˜ e Confi´ veis a Sens´veis ı Autolubrificantes F´ cil controle a Robustos Alta capacidade de carga F´ cil instalacao a ¸˜ Estabilidade frente a cargas est´ ticas ` a SilenciososDesvantagens Dificuldade de controle cont´nuo ı Dif´cil manutencao ı ¸˜ Potˆ ncia limitada e Instalacao especial ¸˜ Instalacao especial ¸˜ (filtros, compressores, etc) (filtros, eliminadores de ar) Ruidoso Frequentes fugas Caros Tabela 3.1: Tabela comparativa dos diversos tipos de atuadores para robos ˆ 59
    • 3. Atuadores 60 Motores de Passo Podem ser de trˆ s tipos: e 1. de im˜ s permanentes a 2. de relutˆ ncia vari´ vel a a 3. h´bridos (combinam o modo de funcionamento dos dois anteriores) ı Figura 3.12: Motor relutˆ ncia vari´ vel a a Figura 3.13: Im˜ permanente a Figura 3.14: Modelo h´brido ı O controle destes motores e feito atrav´ s de um trem de pulsos que atuam rotativamente ´ esobre uma s´ rie de eletroim˜ s dispostos sobre o estator. O princ´pio de funcionamento do e a ımotor de passo consiste em aplicar um pulso de corrente numa das bobinas do estator demodo a fazˆ -lo girar um determinado angulo. O angulo total de giro e controlado pelo e ˆ ˆ ´numero de pulsos aplicados. A velocidade e funcao da frequˆ ncia dos pulsos. ´ ´ ¸˜ e A principal vantagem destes motores e que permitem um controle de posicionamento ´simples e exato. Al´ m disso, s˜ o muito r´ pidos, confi´ veis e f´ ceis de controlar. Entre as e a a a a
    • 3. Atuadores 61Figura 3.15: Exemplo de um motor de pas-so Figura 3.16: Outro modelodesvantagens est˜ o sua baixa potˆ ncia nominal e falta de suavidade a baixas velocidades. a eMas o maior inconveniente e a perda de passo devido a uma sobrecarga ou perturbacao. ´ ¸˜ Servomotores (DC) Servomotores s˜ o motores DC que incorporam alguns dispositi- avos a fim de tornar seu uso mais simples. Apesar do termo servomotor ser usado em v´ rios acontextos diferentes, neste caso estamos nos referindo a um dispositivo DC com trˆ s termi- enais utilizado principalmente em controle de posicao. Geralmente estes motores incluem ¸˜engrenagens, limitadores de eixo, potenciometro para a malha de realimentacao de posicao ˆ ¸˜ ¸˜e pequenos circuitos integrados para o controle de posicao. ¸˜ S˜ o extremamente compactos e f´ ceis de controlar. Al´ m disso, costumam custar mais a a ebarato que outros motores DC com engrenagens, devido a producao em massa. ¸˜ Figura 3.17: Servomotor
    • 3. Atuadores 623.2.4 Outras tecnologias Representam uma nova categoria de dispositivos de acionamento. Atuadores el´ sticos acomo os chamados musculos artificiais e atuadores piezoel´ tricos comecam a aparecer em ´ e ¸determinadas aplicacoes especiais. ¸˜Musculos Artificiais ´ S˜ o pol´meros eletroativos que com a ajuda de eletrodos fazem as fibras se contrairem a ıou expandirem num plano em resposta a um campo el´ trico ou a uma forca mecˆ nica. Este e ` ¸ amesmos pol´meros podem produzir energia el´ trica se forem muito deformados. ı e As boas caracter´sticas eletromecˆ nicas aliadas a boa tolerˆ ncia ao ambiente e durabili- ı a ` adade, sugerem aplicacoes como: ¸˜ ¯ microatuadores para microbombas ¯ v´ lvulas a ¯ musculos artificiais para robos biomorficos ´ ˆ ´ ¯ robos com asas ˆ ¯ geracao de energia el´ trica atrav´ s do movimento do corpo ¸˜ e e Figura 3.18: Fibras de um pol´mero eletroativo ı Uma outra aplicacao muito interessante e o uso deste tipo de tecnologia na construcao ¸˜ ´ ¸˜de robos com asas. A propuls˜ o de um robo destes seria semelhante as asas de um p´ ssaro. ˆ a ˆ ` a
    • 3. Atuadores 63Especialistas em aerodinˆ mica e robotica da Universidade de Toronto est˜ o desenvolvendo a ´ apesquisas nesta area com o objetivo de projetar um robo para reconhecimento. ´ ˆ Figura 3.19: Prototipo de um robo “alado” ´ ˆAtuadores Piezoel´ tricos e Figura 3.20: Exemplo de um motor piezoel´ trico e O efeito piezoel´ trico direto e aquele no qual uma cerˆ mica ou um cristal quando sub- e ´ ametido a uma press˜ o mecˆ nica gera uma tens˜ o el´ trica correspondente. O efeito inverso a a a etamb´ m e poss´vel, ou seja, o material piezoel´ trico quando sob efeito de um campo el´ trico e ´ ı e ese deforma. As mudancas nas dimensoes s˜ o funcao da intensidade do campo aplicado, as- ¸ ˜ a ¸˜sim como a intensidade e a polaridade da tens˜ o produzida dependem da direcao da forca a ¸˜ ¸aplicada.
    • 3. Atuadores 64 Este tipo de atuador pode ser encontrado, por exemplo, em lentes com foco autom´ tico ade cˆ meras fotogr´ ficas, devido a excelente repetibilidade e precis˜ o. Em robotica tem seu a a a ´uso nos chamados robos insetos. ˆ Motores piezoel´ tricos, ao contr´ rio do eletromagn´ ticos convencionais, giram a baixas e a evelocidades e com grandes torques. Isto significa que eles podem ser compactos e leves, masa friccao de acoplamento entre o rotor e o estator causa problemas de desgaste. ¸˜ Principais caracter´sticas deste tipo de atuador: ı ¯ pequeno ¯ leve ¯ baix´ssimo consumo de energia ı Isto faz com que este tipo de dispositivo seja utilizado como micro-atuadores em areas ´especiais como otica, biom´ dica e aeroespacial. ´ e
    • 3. Atuadores 653.3 Exerc´cios ı 1. Como s˜ o classificados os atuadores utilizados em robotica ? a ´ 2. Quais os tipos de motores el´ tricos mais utilizados ? Por que ? e 3. Em que tipo de aplicacoes atuadores hidr´ ulicos s˜ o recomendados ? ¸˜ a a 4. Diferencie simples motores DC de servomotores DC.
    • Cap´tulo 4 ıControle4.1 Cinem´ tica do Robo a ˆ4.1.1 Introdu¸ ao c˜ A cinem´ tica do robo estuda o movimento deste com respeito a um sistema de referˆ ncia a ˆ e[5]. A cinem´ tica se interessa pela descricao anal´tica do movimento espacial do robo como a ¸˜ ı ˆuma funcao do tempo, em particular pelas relacoes entre a posicao e a orientacao do extremo ¸˜ ¸˜ ¸˜ ¸˜do robo (a extremidade de um braco manipulador, por exemplo). ˆ ¸ Existem basicamente dois problemas fundamentais a serem resolvidos na cinem´ tica do arobo. O primeiro deles chamado problema cinem´ tico direto consiste em determinar qual ˆ aa posicao e orientacao do extremo final do robo com respeito a um sistema de coordenadas ¸˜ ¸˜ ˆde referˆ ncia, conhecendo-se os valores das articulacoes e os parˆ metros geom´ tricos dos e ¸˜ a eelementos dos robos. O segundo denominado problema cinem´ tico inverso deve resolver ˆ ao caminho inverso, ou seja, dada uma posicao e orientacao do extremo do robo, deve-se ¸˜ ¸˜ ˆdescobrir o valor das coordenadas das articulacoes. ¸˜ Al´ m disso, a cinem´ tica do robo trata tamb´ m de encontrar as relacoes entre a velo- e a ˆ e ¸˜cidade do movimento das articulacoes e dos extremos. Esta relacao e dada pelo modelo ¸˜ ¸˜ ´diferencial, expresso atrav´ s da matrix jacobiana. e4.1.2 Cinem´ tica Direta a Utiliza-se fundamentalmente algebra vetorial e matricial para se representar e descrever ´a localizacao de um objeto no espaco tridimensional com relacao a um sistema de referˆ ncia ¸˜ ¸ ¸˜ e
    • 4. Controle 67 Cinematica direta Valor das Posicao e ¸˜ coordenadas orientacao do ¸˜ articulares extremo do robo Cinematica inversa Figura 4.1: Diagrama de relacao entre cinem´ tica direta e inversa ¸˜ afixo. Dado que um robo pode ser considerado uma cadeia cinem´ tica formada por objetos ˆ ar´gidos unidos entre si por articulacoes, pode-se estabelecer um sistema de referˆ ncia fixo ı ¸˜ esituado na base do robo e descrever a localizacao de cada uma destas ligacoes com relacao a ˆ ¸˜ ¸˜ ¸˜este sistema de referˆ ncia. Assim, o problema cinem´ tico direto se reduz ao c´ lculo de uma e a amatrix homogˆ nea de transformacao (chamada de Ì ) que relacione a posicao e a orientacao e ¸˜ ¸˜ ¸˜do extremo do robo com relacao ao sistema de referˆ ncia situado na base do mesmo. Esta ˆ ¸˜ ematriz Ì ser´ funcao das coordenadas articulares. a ¸˜M´ todos de Resolu¸ ao e c˜ Existem basicamente dois m´ todos de resoluc˜ o do problema da cinem´ tica direta. e a a ¯ solucao atrav´ s de matrizes de transformacao homogˆ nea ¸˜ e ¸˜ e ¯ mediante o uso de quartetosMatriz de transforma¸ ao homogˆ nea Chama-se de matriz de transformacao homogˆ nea c˜ e ¸˜ ea matriz que representa a posicao e a orientacao relativas entre as ligacoes consecutivas do ¸˜ ¸˜ ¸˜robo. Por exemplo, a matriz ˆ ¼ descreve a posicao e orientacao do sistema de referˆ ncia ¸˜ ¸˜ e ½da primeira ligacao (haste) com respeito ao sistema de referˆ ncia da base. ¸˜ e ½ representa a ¾matriz posicao e orientacao da segunda ligacao com respeito a primeira. ¸˜ ¸˜ ¸˜ ` Assim, um sistema com dois graus de liberdade teria uma matriz de transformacao ho- ¸˜mogˆ nea resultante igual ao produto de duas outras: e ¼ ¼ ½ ¾ ½ ¾ Se considerarmos todos os graus de liberdade poss´veis, ter´amos uma matriz ı ıposicao/orientacao Ì igual a: ¸˜ ¸˜
    • 4. Controle 68 Ì ¼ ¼ ½ ½ ¾ ¾ ¿ ¿ Atrav´ s de coordenadas cartesianas e angulos de Euler podemos escrever equacoes que e ˆ ¸˜representem a posicao e a orientacao do extremo de um robo de seis graus de liberdade: ¸˜ ¸˜ ˆ Ü Ü ´Õ½ Õ¾ Õ¿ Õ Õ Õµ Ý Ý ´Õ½ Õ¾ Õ¿ Õ Õ Õµ Þ Þ ´Õ½ Õ¾ Õ¿ Õ Õ Õµ « « ´Õ½ Õ¾ Õ¿ Õ Õ Õµ ¬ ¬ ´Õ½ Õ¾ Õ¿ Õ Õ Õµ ­ ­ ´Õ½ Õ¾ Õ¿ Õ Õ Õµ (x , y ) L2 q2 L1 q1 Figura 4.2: Exemplo de um robo planar com dois graus de liberdade ˆ Para o caso ilustrado acima, simples consideracoes alg´ bricas nos levam as seguintes ¸˜ e `equacoes: ¸˜ Ü Ä½ £ Ó×´Õ½ µ · ľ £ Ó×´Õ½ · Õ¾ µ Ý Ä½ £ × Ò´Õ½ µ · ľ £ × Ò´Õ½ · Õ¾ µ Neste caso trivial, n˜ o e necess´ rio utilizar-se da matriz homogˆ nea. A utilizacao desta a ´ a e ¸˜so se torna vantajosa com o aumento de graus de liberdade do sistema. ´
    • 4. Controle 69 Embora se possa descrever a relacao que existe entre os elementos cont´guos atrav´ s de ¸˜ ı equalquer sistema de referˆ ncia ligado a cada elemento, a forma habitual que se utiliza em erobotica e a representacao de Denavit-Hartenberg (D-H). Denavit e Hartenberg propuse- ´ ´ ¸˜ram um m´ todo matricial que permite estabelecer de maneira sistem´ tica um sistema de e acoordenadas Ë ligado a cada elemento de uma cadeia articulada, podendo-se determinar acontinuacao das equacoes cinem´ ticas da cadeia completa. ¸˜ ¸˜ a Segundo esta representacao, escolhendo-se adequadamente os sistemas de coordena- ¸˜das associados a cada elemento, e poss´vel passar de um para o outro mediante quatro ´ ıtransformacoes b´ sicas que dependem exclusivamente das caracter´sticas geom´ tricas da ¸˜ a ı eligacao. Estas transformacoes b´ sicas consistem em uma sucess˜ o de rotacoes e translacoes ¸˜ ¸˜ a a ¸˜ ¸˜que permitem relacionar o sistema de referˆ ncia do elemento com o sistema do elemento e   ½. As transformacoes citadas acima s˜ o as seguintes: ¸˜ a 1. rotacao ao redor do eixo Þ  ½ de um angulo ¸˜ ˆ 2. translacao ao longo de Þ  ½ de uma distˆ ncia ¸˜ a ; vetor ´¼ ¼ µ 3. translacao ao longo de Ü de uma distˆ ncia ¸˜ a ; vetor ´¼ ¼ µ 4. rotacao ao redor do eixo Ü de um angulo « ¸˜ ˆ , , e « s˜ o conhecidos como parˆ metros D-H da ligacao . De posso destes, obtemos a a ¸˜as matrizes e relacionamos assim todos a cada uma das ligacoes do robo. ¸˜ ˆ ´ E necess´ rio seguir determinadas normas para o c´ lculo correto deste parˆ metros. N˜ o a a a aentraremos em mais detalhes nem na matem´ tica envolvida por entendermos que este n˜ o e a a ´o objetivo deste texto. Maiores informacoes podem ser encontradas nas diversas referˆ ncias ¸˜ eem anexo.Resolu¸ ao atrav´ s do uso de quartetos c˜ e Este m´ todo, assim como o da matriz de etransformacao homogˆ nea, e uma alternativa para representar transformacoes de rotacao ¸˜ e ´ ¸˜ ¸˜e deslizamento. Consiste basicamente em obter uma express˜ o que permite conhecer as coordenadas da aposicao e orientacao do sistema de referˆ ncia associado ao extremo do robo (Ë por exemplo) ¸˜ ¸˜ e ˆcom relacao ao sistema de referˆ ncia associado a base (˼ ). Esta relacao ser´ funcao dos ¸˜ e ¸˜ a ¸˜
    • 4. Controle 70comprimentos de cada uma das ligacoes e das coordenadas articulares ¸˜ Õ (ˆ ngulos). Para aobter a relacao entre ˼ e Ë , ˼ ser´ convertido sucessivamente em ˽ , ˾ , Ë¿ e Ë . ¸˜ a Terminada esta etapa, escreve-se as relacoes resultantes na forma vetorial e aplica-se ¸˜uma s´ rie de equacoes e operacoes. Ao final de todo este processo, restar´ apenas uma e ¸˜ ¸˜ aequacao que nos fornece um escalar (representando a posicao) e o respectivo angulo de ¸˜ ¸˜ ˆrotacao relativo ao sistema da base. ¸˜4.1.3 Cinem´ tica Inversa a O objetivo da cinem´ tica inversa consiste em encontrar valores para as coordenadas ar- aticulares do robo para que seu extremo se posicione e oriente segundo uma determinadalocalizacao espacial. ¸˜ Assim como e poss´vel abordar o problema cinem´ tico direto de uma maneira sis- ´ ı atem´ tica a partir da utilizacao de matrizes de transformacao homogˆ nea e independente a ¸˜ ¸˜ eda configuracao do robo, no problema cinem´ tico inverso n˜ o ocorre o mesmo. Isto por- ¸˜ ˆ a aque o procedimento de obtencao das equacoes e fortemente dependente da configuracao do ¸˜ ¸˜ ´ ¸˜robo. ˆ Existem alguns procedimentos gen´ ricos que podem ser programados de modo que um ecomputador pode, a partir do conhecimento da cinem´ tica do robo (parˆ metros D-H) ob- a ˆ ater uma n-upla de valores articulares que posicionem e orientem o extremo do robo. O ˆinconveniente destes procedimentos e que se tratam de m´ todos num´ ricos iterativos, cuja ´ e evelocidade de convergˆ ncia e a propria convergˆ ncia n˜ o est˜ o garantidos. e ´ e a a Neste tipo de problema, e muito mais adequado encontrar uma solucao fechada atrav´ s ´ ¸˜ ede equacoes matem´ ticas. Este tipo de solucao apresenta as seguintes vantagens sobre ¸˜ a ¸˜solucoes iterativas: ¸˜ ¯ em muitas aplicacoes, o problema da cinem´ tica inversa tem que ser resolvido em tem- ¸˜ a po real. Uma solucao tipo iterativa n˜ o garante uma solucao no momento adequado. ¸˜ a ¸˜ ¯ ao contr´ rio do que occoria com o problema direto, com certa frequˆ ncia a solucao a e ¸˜ do problema cinem´ tico inverso n˜ o e unica, existindo diferentes n-uplas que posicio- a a ´ ´ nam o extremo do robo. Nestes casos uma solucao fechada permite incluir determina- ˆ ¸˜ das restricoes que assegurem que a solucao obtida e a mais adequada entre as v´ rias ¸˜ ¸˜ ´ a poss´veis. ı
    • 4. Controle 71 Apesar das dificuldades levantadas, a maior parte dos robos possui cinem´ ticas relati- ˆ avamente simples que facilitam a resolucao do problema inverso. ¸˜ Por exemplo, se considerarmos somente os trˆ s primeiros graus de liberdade de muitos erobos, estes tˆ m uma estrutura planar, isto e, os trˆ s primeiros elementos est˜ o contidos num ˆ e ´ e aplano. Esta circunstˆ ncia facilita a resolucao do problema. a ¸˜M´ todos de Resolu¸ ao e c˜ S˜ o trˆ s os principais m´ todos de resolucao de problemas de cinem´ tica inversa. a e e ¸˜ a 1. M´ todos geom´ tricos e e 2. Matriz de transformacao homogˆ nea ¸˜ e 3. Desacoplamento Cinem´ tico aM´ todos geom´ tricos e e Este m´ todo e adequado para robos com poucos graus de liberdade e ´ ˆou ent˜ o quando se consideram apenas os primeiros graus dedicados a posicionar o extremo ado robo. ˆ Baseia-se em encontrar um numero suficiente de relacoes geom´ tricas entre as coorde- ´ ¸˜ enadas articulares e as dimensoes f´sicas de cada um dos elementos do robo. O processo de ˜ ı ˆresolucao e muito semelhante ao exemplo mostrado anteriormente de um robo planar de ¸˜ ´ ˆdois graus de liberdade, ou seja, s˜ o escritas equacoes que relacionam as vari´ veis Ü, Ý e os a ¸˜ aangulos Õ½ , Õ¾ , ÕÒ .ˆMatriz de transforma¸ ao homogˆ nea A princ´pio e poss´vel obter o modelo cinem´ tico c˜ e ı ´ ı ainverso de um robo a partir do conhecimento de seu modelo direto. Supondo-se conhecidas ˆas relacoes que expressam o valor da posicao e orientacao do extremo do robo em funcao de ¸˜ ¸˜ ¸˜ ˆ ¸˜suas coordenadas articulares, obtemos por manipulacao destas equacoes as relacoes inver- ¸˜ ¸˜ ¸˜sas. Apesar disto, na pr´ tica esta tarefa n˜ o e trivial, sendo em muitos casos t˜ o complexa a a a ´ aponto de ser rejeitada. Isto porque o problema cinem´ tico direto resulta em doze equacoes a ¸˜(no caso de um robo com seis GDL). Caso estejamos interessados num numero inferior de ˆ ´relacoes (cada grau de liberdade representa uma equacao), existir˜ o necessariamente certas ¸˜ ¸˜ adependˆ ncias entre estas doze equacoes iniciais e aquelas que escolheremos para utilizar. e ¸˜
    • 4. Controle 72 Este e um procedimento complicado, pois diversas manipulacoes matem´ ticas s˜ o ne- ´ ¸˜ a acess´ rias. Resultados iguais s˜ o obtidos utilizando-se de m´ todos geom´ tricos; so que com a a e e ´menos esforco. ¸Desacoplamento cinem´ tico a Os m´ todos vistos anteriormente permitem obter os valores edas trˆ s primeiras vari´ veis articulares do robo, aquelas que posicionam seu extremo em e a ˆdeterminadas coordenadas (ÔÜ , ÔÝ , ÔÞ ); embora se possa obter seis ao custo de uma maiorcomplexidade. Em geral, nao basta posicionar o extremo do robo em um ponto do espaco, quase sempre ˆ ¸e preciso tamb´ m conseguir que a ferramenta na extremidade se oriente de maneira correta.´ ePara tal, os robos contam com outros trˆ s graus de liberdade adicionais, situados no final ˆ eda cadeia cinem´ tica e cujos eixos, geralmente, se interceptam num ponto, conhecido infor- amalmente pela m˜ o do robˆ . A variacao destes trˆ s ultimos graus de liberdade origina uma a o ¸˜ e ´mudanca na posicao final do extremo do robo. O objetivo e poder orientar a ferramenta que ¸ ¸˜ ˆ ´est´ na m˜ o do robˆ livremente no espaco. a a o ¸ Este m´ todo parte deste fato, ou seja, separando-se ambos os problemas: posicao e e ¸˜orientacao. Dada uma posicao e orientacao finais, estabelece-se as coordenadas m˜ o do robˆ ¸˜ ¸˜ ¸˜ a o(intersecao dos trˆ s eixos) e calcula-se os valores primeiras vari´ veis articulares que conse- ¸˜ e aguem posicionar este ponto. Depois, partindo-se dos dados de orientacao obtidos anterior- ¸˜mente obtemos os valores do restante das vari´ veis articulares. aMatriz Jacobiana A modelagem cinem´ tica do robo busca relacoes entre vari´ veis articulares e posicao a ˆ ¸˜ a ¸˜(normalmente expressas em coordenadas cartesianas) e a orientacao do extremo do robo. ¸˜ ˆNeste tipo de relacao n˜ o se tem informacoes sobre as forcas que atuam sobre o robo (atu- ¸˜ a ¸˜ ¸ ˆadores, cargas, friccoes) e que podem originar movimentos sobre o mesmo. Deve-se, por- ¸˜tanto, conhecer al´ m das relacoes entre as coordenadas articulares e seu extremo as relacoes e ¸˜ ¸˜entre suas respectivas derivadas. Deste modo, o sistema de controle do robo pode estabelecer que velocidade deve im- ˆprimir a cada articulacao para conseguir que o extremo do robo descreva uma trajetoria ¸˜ ˆ ´temporal concreto, por exemplo, uma linha reta com velocidade constante. Por isto, e de grande utilidade dispor de relacoes entre as velocidades das coordenadas ´ ¸˜
    • 4. Controle 73articulares e as posicoes e orientacoes da m˜ o do robˆ . A relacao entre ambos vetores de ¸˜ ¸˜ a o ¸˜velocidade e obtida atrav´ s da chamada matriz jacobiana. ´ e A matriz jacobiana permite conhecer diretamente as velocidades do extremo do robo a ˆpartir dos valores de velocidades de cada articulacao. Do mesmo modo, atrav´ s da ma- ¸˜ etriz jacobiana inversa se obt´ m as velocidades articulares conhecendo-se as velocidades do eextremo do robo. ˆ Jacobiana direta velocidade velocidade das do extremo articulacao ¸˜ do roboˆ Jacobiana inversa Figura 4.3: Matriz jacobiana direta e inversa ¾ ¿ Ü ¾ ¿ Õ½ Ý Þ .  . . (4.1) « ¬ ÕÒ ­ onde matriz jacobiana J vale: ¾ ¿  Ü Õ½ ¡¡¡  Ü ÕÒ . .  . . .. . . . (4.2)  ­ Õ½ ¡¡¡  ­ ÕÒ4.2 Dinˆ mica do Robo a ˆ A dinˆ mica se preocupa com as relacoes entre as forcas que atuam no corpo e o movi- a ¸˜ ¸mento originado. Portanto, o modelo dinˆ mico do robo tem por objetivo conhecer a relacao a ˆ ¸˜entre o movimento do robo e as forcas aplicadas no mesmo. ˆ ¸ Esta relacao e obtida mediante o chamado modelo dinˆ mico, que relaciona matematica- ¸˜ ´ amente:
    • 4. Controle 74 1. localizacao do robo definida pelas suas vari´ veis articulares e pelas coordenadas de ¸˜ ˆ a localizacao de seu extremo, al´ m de suas derivadas, velocidade e aceleracao ¸˜ e ¸˜ 2. forcas aplicadas as articulacoes ¸ ` ¸˜ 3. dimensoes do robo, como comprimento de suas hastes, massa e in´ rcia de seus ele- ˜ ˆ e mentos A obtencao deste modelo para mecanismos de um ou dois graus de liberdade n˜ o e ¸˜ a ´excessivamente complexa mas, a medida que o numero de GDL aumenta, a obtencao des- ´ ¸˜te modelo dinˆ mico se complica enormemente. Por este motivo, nem sempre e poss´vel a ´ ıobter-se um modelo dinˆ mico expresso de forma fechada, isto e, mediante uma s´ rie de a ´ eequacoes, normalmente do tipo diferencial de segunda ordem, cuja integracao permita co- ¸˜ ¸˜nhecer que movimento surge ao aplicar umas forcas e que forcas se deve aplicar para se ¸ ¸obter o movimento desejado. O modelo dinˆ mico deve ser resultado ent˜ o de iteracoes a a ¸˜mediante utilizacao algor´tmos num´ ricos. ¸˜ ı e O problema da obtencao do modelo dinˆ mico de um robo e, portanto, um dos aspectos ¸˜ a ˆ ´mais complexos da robotica, e que tem sido evitado em muitas ocasioes. Apesar disto, o ´ ˜modelo dinˆ mico e imprescind´vel se quisermos: a ´ ı 1. simular o movimento do robo ˆ 2. projeto e avaliacao da estrutura do robo ¸˜ ˆ 3. dimensionamento dos atuadores 4. projeto e avaliacao do controle dinˆ mico do robo ¸˜ a ˆ Este quarto item possui grande importˆ ncia, posto que a qualidade do controle dinˆ mico a ado robo depende da precis˜ o e velocidade de seus movimentos. A grande complexidade ˆ aexistente na obtencao do modelo dinˆ mico do robo tem motivado certas simplificacoes de ¸˜ a ˆ ¸˜modo que se possa utiliza-lo no projeto do controlador. ´ E importante notar que o modelo dinˆ mico completo do robo deve incluir n˜ o so a a ˆ a ´dinˆ mica de seus elemento (hastes), mas tamb´ m o sistema de transmiss˜ o, dos atuadores a e ae equipamentos eletronicos de comando. Estes elementos incorporam ao modelo dinˆ mico ˆ anovas in´ rcias, friccoes e saturacoes dos circuitos eletronicos, aumentando ainda mais sua e ¸˜ ¸˜ ˆcomplexidade.
    • 4. Controle 75 A seguir ser˜ o apresentados alguns m´ todos para se obter o modelo dinˆ mico do robo. a e a ˆPara simplificar, as hastes destes ser˜ o consideradas r´gidas, sem deformacoes. a ı ¸˜ 1. Modelo dinˆ mico da estrutura mecˆ nica de um robo r´gido a a ˆ ı Utilizando a formulacao Lagrange-Euler ¸˜ Utilizando a formulacao Newton-Euler ¸˜Modelo dinˆ mico da estrutura mecˆ nica de um robo r´gido a a ˆ ı A obtencao deste modelo ¸˜se baseia fundamentalmente na obtencao do equil´brio de forcas atrav´ s da utilizacao da ¸˜ ı ¸ e ¸˜segunda Lei de Newton, e do seu equivalente para movimentos de rotacao denominada Lei ¸˜de Euler. È ÑÚ È Ì Á · ´Á µ Supondo-se que toda massa esteja concentrada no centro de gravidade do elemento, quen˜ o existe friccao alguma e que n˜ o exista carga. a ¸˜ a ¯ modelo dinˆ mico direto expressa a evolucao temporal das coordenadas articulares do a ¸˜ robo em funcao das forcas sobre ele aplicadas ˆ ¸˜ ¸ ¯ modelo dinˆ mico inverso expressa as forcas em funcao da evolucao das coordenadas a ¸ ¸˜ ¸˜ articulares e suas derivadas No caso de um robo com cinco ou seis GDL, pode ser muito complicado obter es- ˆtas equacoes. Como alternativa, utiliza-se a formulacao Lagrangiana, que se baseia em ¸˜ ¸˜consideracoes energ´ ticas. ¸˜ e Formula¸ ao de Lagrange-Euler Este m´ todo utiliza a representacao D-H baseada nas c˜ e ¸˜matrizes de transformacao homogˆ nea ( ¸˜ e  ½ ) para formular o modelo dinˆ mico de um robo a ˆmediante equacao de Lagrange. Se trata de um procedimento ineficiente do ponto de vista ¸˜computacional, pois o algoritmo tem ordem de complexidade computacional Ò , ou seja, onumero de operacoes a serem realizadas cresce com a potˆ ncia 4 com o numero de graus de ´ ¸˜ ` e ´liberdade. Por outro lado, conduz a equacoes finais bem estruturadas onde os diversos pares de ¸˜forcas s˜ o mostrados de maneira clara. ¸ a
    • 4. Controle 76 Formula¸ ao de Newton-Euler Este m´ todo surge como alternativa a formulacao La- c˜ e ` ¸˜grangiana, posto que para um robo com seis GDL, sua utilizacao em tempo real e quase ˆ ¸˜ ´imposs´vel. ı Baseia-se na obtencao recursiva de posicao, velocidade e aceleracao da haste referida a ¸˜ ¸˜ ¸˜base do robo a partir da haste ˆ   ½. Deste modo, partindo-se da ligacao 1 se chega a haste Ò. ¸˜ `Com estes dados, pode-se obter as forcas atuantes sobre a haste referidas a base do robo. ¸ Este algoritmo se baseia em operacoes vetoriais mais eficientes que as operacoes matri- ¸˜ ¸˜ciais da formulacao Lagrangiana. Al´ m disso, a ordem de complexidade computacional e Ò, ¸˜ e ´ou seja, depende diretamente do numero de graus de liberdade. ´4.3 Controle Cinem´ tico a Nas secoes anteriores foi visto como levantar os modelos cinem´ ticos e dinˆ micos de um ¸˜ a arobo. A partir destas informacoes e poss´vel estabelecer as adequadas estrat´ gias de controle ˆ ¸˜ ´ ı edo robo que redundem em uma otimizacao e maior qualidade de seus movimentos. ˆ ¸˜ Com o controle cinem´ tico e poss´vel determinar quais as trajetorias que devem seguir a ´ ı ´cada articulacao do robo atrav´ s do tempo para alcancar os obejtivos fixados pelo usu´ rio ¸˜ ˆ e ¸ a(ponto de destino, trajetoria cartesiana). Estas trajetorias foram selecionadas atendendo as ´ ´ `restricoes f´sicas proprias dos acionamentos e a certos crit´ rios de qualidade de trajetoria, ¸˜ ı ´ e ´como suavidade e precis˜ o da mesma. a4.3.1 Fun¸ oes do controle cinem´ tico c˜ a Na figura 4.4 d´ para ter a id´ ia exata de funcionamento do controle cinem´ tico. O con- a e atrolador tem como entrada os dados procedentes do programa do robo escrito pelo usu´ rio ˆ a(ponto de destino, precis˜ o, tipo de trajetoria desenhada) e, baseado no modelo cinem´ tico a ´ ado robo, estabelece as trajetorias para cada articulacao como funcoes no tempo. A seguir, ˆ ´ ¸˜ ¸˜estas trajetorias devem ser amostradas em um per´odo Ì , devidamente escolhido, gerando ´ ıa cada instante Ì um vetor de posicoes articulares para o algoritmo de controle dinˆ mico. ¸˜ a Segundo [5], de maneira geral, o controle cinem´ tico dever´ realizar as seguintes a afuncoes: ¸˜ 1. Converter a especificacao do movimento, dada no programa em uma trajetoria ¸˜ ´ an´ litica, em espaco cartesiano (evolucao de cada coordenada em funcao do tempo). a ¸ ¸˜ ¸˜
    • 4. Controle 77 PROGRAMA Ponto de destino Tipo de trajetórias Precisão do ponto final e da trajetória cartesiana Velocidade e aceleração GERADOR maxima da articulação DE MODELO TRAJETÓRIAS CINEMÁTICO Trajetórias articulares q(t) AMOSTRADOR CONTROLADOR Referências para controle dinâmico q(KT) CONTROLE DINÂMICO Figura 4.4: Funcionamento do controle cinem´ tico a 2. Amostrar a trajetoria cartesiana obtendo um numero finito de pontos da dita trajetoria. ´ ´ ´ Cada um destes pontos ser´ dado um 6-upla, tipicamente ´Ü a Ý Þ « ¬ ­ µ. 3. Utilizando a transformacao homogˆ nea inversa, converter cada um dos pontos em ¸˜ e suas correspondentes coordenadas articulares. Deve se ter em conta aqui uma poss´vel ı solucao multipla da transformacao, assim como a possibilidade de ausˆ ncia de solucao ¸˜ ´ ¸˜ e ¸˜ e pontos singulares, de modo que se assegure a continuidade da trajetoria. ´ 4. A interpolacao dos pontos articulares obtidos, gerando para cada vari´ vel articular ¸˜ a uma express˜ o Õ a Ø ´ µ que passe ou se aproxime deles de modo que, sendo uma trajetoria ´ realiz´ vel pelos atuadores, se transforme em uma trajetoria cartesiana o mais proxima a ´ ´ poss´vel da especificada pelo programa do usu´ rio. ı a 5. Amostrar a trajetoria articular para gerar referˆ ncias ao controle dinˆ mico. ´ e a A figura 4.5 mostra um poss´vel caso onde o objetivo de um robo com dois graus de ı ˆ
    • 4. Controle 78liberdade e sair do ponto ´ ½ Ü Ý½ µ e alcancar o ponto ´ ½ ¸ Ü Ý ´ µ, dentro de um tempoÌ . Para tanto, quatro pontos dentro da trajetoria s˜ o selecionados pelo controle cinem´ tico, ´ a a ½ ¾ ¿ , que s˜ o submetidos a transformacao homogˆ nea inversa, gerando os respecti- a ¸ ˜ evos vetores articulares Õ ½ Õ¾ Õ¿ Õ . Segundo algum tipo de funcao estes pontos s˜ o unidos ¸˜ ade forma a gerar uma trajetoria que respeite as restricoes de cada acionador, tais como velo- ´ ¸˜cidade e aceleracao m´ xima permitida. O resultado e uma trajetoria que busca se aproximar ¸˜ a ´ ´o mais proximo poss´vel de uma linha reta. ´ ı x x j1 j1 j2 j3 j4 j4 a) y b) y q2 q2 q2 q2 q3 q3 q1 q1 q4 q4 c) q1 d) q1 x e) y Figura 4.5: Atuacao de um controle cinem´ tico em um robo com dois graus de liberdade ¸˜ a ˆ Assim, dentro do projeto de um controlador cinem´ tico para um robo, um dos pontos a ˆpass´veis de decis˜ o e quanto a que interpolador usar, de modo a unir os pontos estabeleci- ı a ´dos pelos vetores articulares. Feito isto, ainda deve-se estabelecer os crit´ rios para selecionar equantos e que pontos ser˜ o amostrados na trajetoria no espaco cartesiano. a ´ ¸4.3.2 Tipos de trajetorias ´ A tarefa de mover um robo de um ponto inicial at´ um ponto final deve ser resolvi- ˆ eda levando em consideracao a possibilidade de terem-se infinitas trajetorias espaciais. A ¸˜ ´melhor forma pode ser escolhida segundo alguns crit´ rios, como por exemplo, a facilidade ede implementacao, menor custo computacional, ou sua utilidade e apliacacao em diversas ¸˜ ¸˜areas. Desta feita podemos encontrar robos que disponham de trajetorias ponto a ponto,´ ˆ ´
    • 4. Controle 79trajetorias coordenadas ou trajetorias cont´nuas. ´ ´ ıTrajetorias ponto a ponto ´ Neste tipo de trajetoria o objetivo e levar cada articulacao desde o ponto inicial at´ o ´ ´ ¸˜ eponto final sem levar em consideracao qualquer informacao relativa ao estado ou relativo ¸˜ ¸˜a evolucao das demais articulacoes. Para isso cada articulacao tenta alcancar sua meta de ¸˜ ¸˜ ¸˜ ¸maneira otimizada, onde a movimentacao de eixos e distinguida entre os seguintes casos: ¸˜ ´ ¨ ¯ Movimento eixo a eixo: Neste tipo de operacao um eixo move-se de cada vez. Assim ¸˜ a primeira articulacao busca seu ponto final e so ai a segunda articulacao d´ in´cio ao ¸˜ ´ ¸˜ a ı seu movimento. Este tipo de operacao garante um menor consumo de energia, mas, ¸˜ em contrapartida, exige um maior tempo de ciclo. ¯ Movimento simultˆ neo de eixos: Neste caso, todas as articulacoes iniciam seus mo- a ¸˜ vimentos no mesmo instante de tempo em uma velocidade espec´fica para cada uma ı delas. Uma vez que as distˆ ncias a serem percorridas por cada eixo s˜ o diferentes, a a cada um finalizar´ seu movimento em momentos diferentes. a Devido a sua simplicidade, as trajetorias ponto a ponto dificilmente s˜ o implementadas, ´ asalvo em casos de robos muito simples. ˆTrajetorias coordenadas ´ Para que os atuadores n˜ o trabalhem no limite de suas velocidades e aceleracoes a todo a ¸˜instante, fazendo com que alguns eixos terminem seus movimentos antes de alguns maislentos, e interessante efetuar um c´ lculo a priori garantindo que haver´ uma coordenacao ´ a a ¸˜entre os movimentos dos eixos, fazendo com que estes cheguem aos seus pontos finais nomesmo instante de tempo. Nota-se, que neste caso, o movimento dos eixos adaptam-se aquele mais lento, de forma `a n˜ o perder-se potˆ ncia em outros eixos de maneira inutil. a e ´Trajetorias cont´nuas ´ ı Em alguns casos e interessante que a trajetoria a ser seguida pelo atuador seja conheci- ´ ´da pelo usu´ rio. O c´ lculo cont´nuo das trajetorias articulares garantem esta requisicao de a a ı ´ ¸˜projeto. Normalmente as trajetorias desejadas pelos usu´ rios s˜ o em linha reta ou aquelas em for- ´ a ama de arco de c´rculo. Para tal objetivo cada articulacao seguir´ movimentos aparentemente ı ¸˜ acaoticos com poss´veis trocas de direcao e velocidade sem qualquer tipo de coordenacao ´ ı ¸˜ ¸˜
    • 4. Controle 80com as demais articulacoes. Ao final, o robo apresentar´ a trajetoria desejada. ¸˜ ˆ a ´4.3.3 Gera¸ ao de trajetorias cartesianas c˜ ´ Para que um usu´ rio tenha condicoes de especificar o movimento desejado para o robo, a ¸˜ ˆo faz atrav´ s da determinacao das coordenadas espaciais dos pontos iniciais e finais do mo- e ¸˜vimento, e eventualmente, junto com outros dados como instantes de passo, velocidades etipos de trajetoria. ´ Em n˜ o raras excessoes, estes pontos podem estar criticamente distante um dos outros, a ˜sendo necess´ rio a selecao de pontos intemedi´ rios suficientemente proximos para que o a ¸˜ a ´controle do robo consiga n˜ o so ajustar o ponto final ao especificado, mas tamb´ m obedecer ˆ a ´ ea trajetoria inidicada no programa do usu´ rio. ´ a Segundo [5], e preciso estabelecer um interpolador entre as localizacoes expressas no ´ ¸˜espaco da tarefa que dar´ como resultado uma express˜ o anal´tica da evolucao de cada ¸ a a ı ¸˜coordenada. A interpolacao mais frequente e a linear, em que cada coordenada evolui a ¸˜ ¨ ´velocidade constante desde seu valor inicial at´ o seu valor final e : Ø ´ µ ´   µ ØØ   ØØ   · (4.3) onde Ø e Ø s˜ o os instantes de tempo em que se pretende alcancar as localizacoes inicial a ¸ ¸˜e final, respectivamente.4.3.4 Interpola¸ ao de trajetorias c˜ ´ J´ ficou definido que uma das funcoes do controle cinem´ tico e a de unir uma sucess˜ o de a ¸˜ a ´ apontos no espaco articular de uma trajetoria pela qual deseja-se que passem as articulacoes ¸ ´ ¸˜do robo em um instante de tempo. Seria interessante tamb´ m que junto com as condicoes de ˆ e ¸˜posicao-tempo, sejam levantadas as restricoes de velocidade e aceleracao, de maneira que se ¸˜ ¸˜ ¸˜assegure a suavidade da trajetoria e se limitem as velocidades e aceleracoes m´ ximas. Estas ´ ¸˜ arestricoes garantem que os atuadores est˜ o capacitados para implementar a trajetoria final. ¸˜ a ´ Para isto e preciso selecionar-se algum tipo de funcao cujos parˆ metros ou coeficientes ´ ¸˜ ase ajustaram ao impor-se as condicoes de contorno: posicoes, velocidades e aceleracoes. Na ¸˜ ¸˜ ¸˜selecao desta funcao deve-se considerar que tanto o c´ lculo de seus parˆ metros, como sua ¸˜ ¸˜ a aposterior utilizacao para gerar pontos ao controle dinˆ mico, deve fazer-se em tempo real, ¸˜ aem que a simplicidade da funcao ser´ um fator a se considerar. ¸˜ a
    • 4. Controle 81 Dentre as interpolacoes conhecidas, destacamos: ¸˜ ¯ Interpoladores Lineares: para o caso em que se pretende que uma das articulacoes do ¸˜ robo, passe sucessivamente pelos valores Õ nos instantes Ø , mantendo, por exemplo, ˆ a velocidade do movimento constante. ¯ Interpoladores Cubicos: a trajetoria que une os pontos pelos quais a articulacao deve ´ ´ ¸˜ passar, e dado por um polinomio de grau 3 unindo os pares de pontos adjacentes. O ´ ˆ uso de polinomios de terceiro grau permite assegurar que o polinomio passa pelos ˆ ˆ pontos e, ao mesmo tempo, permite impor os valores de velocidade para os mesmos. ¯ Interpoladores em degrau: Uma alternativa que proporciona uma solucao interme- ¸˜ di´ ria consiste em decompor em trˆ s degraus consecutivos a trajetoria que une os a e ´ pontos Õ¼ at´ e Õ½ . No degrau central utiliza-se um interpolador linear, mantendo a velocidade constante, n˜ o sendo preciso imprimir aceleracao alguma ao atuador. Nos a ¸˜ degraus inicial e final, utiliza-se um polinomio de segundo grau, de modo que no de- ˆ grau 1 a velocidade varie linearmente desde a velocidade da trajetoria anterior at´ a ´ e atual, e no degrau 3 varie desde a velocidade atual at´ a seguinte. Tem-se assim que e nos degraus inicial e final a aceleracao assume valores constantes distintos de zero, ¸˜ enquanto no degrau intermedi´ rio a aceleracao e nula. a ¸˜ ´ Em [5] pode ser verificado uma apuracao matem´ tica dos interpoladores aqui destaca- ¸˜ ados.4.3.5 Amostragem de trajetorias cartesianas ´ Depois de determinada as trajetorias a serem percorridas pelo robo atrav´ s do proces- ´ ˆ eso de interpolacao, cabe estabelecer crit´ rios que definam uma selecao otima de pontos da ¸˜ e ¸˜ ´trajetoria cartesiana. ´ As trajetorias mais habituais s˜ o a em linha reta e as trajetorias circulares. Em um primei- ´ a ´ro momento poderia supor-se que quanto maior o numero de pontos a serem selecionados, ´melhores resultados seriam obtidos, mas n˜ o e t˜ o simples assim. O grande problema aqui a ´ ae o custo computacional envolvido em tal processo, limitando a necess´ ria resposta em tem-´ apo real do sistema de controle do robo, tornando evidente o problema gerado pela tomada ˆindiscriminada de pontos.
    • 4. Controle 82 Por outro lado, um numero insuficiente de pontos, agregado a n˜ o linearidade no mode- ´ alo geom´ trico do robo, dependendo de sua cinem´ tica e da posicao instantanea em quest˜ o, e ˆ a ¸˜ apode gerar um erro consider´ vel na trajetoria final. A solucao para este problema reside no a ´ ¸˜compromisso entre estes dois pontos.4.4 Controle Dinˆ mico a Para que as invari´ veis exigˆ ncias de velocidade e aceleracao dos atuadores de um a e ¸˜robo sejam atendidas, sem a deterioracao da qualidade de seus movimentos algumas, ˆ ¸˜investigacoes e avancos tecnologicos tem-se feito nesta area. Como produto desta pol´tica ¸˜ ¸ ´ ´ ıtem surgido materiais mais r´ pidos, sistemas de movimento sem folga e com baixa in´ rcia, a eatuadores mais r´ pidos e sensores de elevada precis˜ o. a a Mesmo com estes avancos, e importante a existˆ ncia de algoritmos de controle com o ob- ¸ ´ ejetivo de melhorar ao m´ ximo as caracter´sticas de velocidade e precis˜ o. Na secao anterior a ı a ¸˜viu-se que o controle cinem´ tico encarrega-se de selecionar as trajetorias a serem cursadas, a ´levando em conta as limitacoes do conjunto, e ajustando-se da melhor maneira poss´vel as ¸˜ ıespecificacoes do usu´ rio. Mesmo assim, na pr´ tica, os ajustes dos movimentos do robo as ¸˜ a a ˆespecificacoes do usu´ rio n˜ o ser˜ o poss´veis, uma vez que as caracter´sticas dinˆ micas do ¸˜ a a a ı ı arobo, como in´ rcia, atritos e folgas, na maioria da vezes desconhecida, impedem geralmente ˆ ea coincidˆ ncia entre a trajetoria desejada Õ e ´ Ø ´ µ e a trajetoria real Õ ´Øµ. ´ ´ E esta lacuna que o controle dinˆ mico tenta preencher, ou seja, e objetivo do controle a ´dinˆ mico fazer com que estas duas trajetorias sejam o mais proximas poss´vel. Para tanto o a ´ ´ ıcontrolador faz uso do modelo dinˆ mico levantado e do uso de uma estrat´ gia de controle a eadequada (controle PID, controle adaptativo). Uma vez que o modelo dinˆ mico do robo e altamente n˜ o linear, multivari´ vel, aco- a ˆ ´ a aplado e de parˆ metros vari´ veis, seu controle e extremamente complexo. Na pr´ tica algu- a a ´ amas simplificacoes s˜ o aceitas, facilitando o desenho do sistema de controle, com resultados ¸˜ aaceit´ veis. a A utilizacao de estrat´ gias de controle mais potentes muitas vezes n˜ o compensam, de- ¸˜ e avido a fatores como custo computacional e at´ mesmo um elevado custo economico. Tudo e ˆdepende do tipo de problema com o qual se est´ tratando. a Normalmente o controle dinˆ mico d´ -se em torno do espaco articular, ou seja, controlan- a a ¸do as trajetorias Õ ´Øµ geradas pelo controle cinem´ tico do robo. A seguir ser˜ o apresentadas ´ a ˆ a
    • 4. Controle 83as t´ cnicas de controle dinˆ mico mais utlizadas focalizando principalmente o controle no e aespaco articular. ¸4.4.1 Controle Monoarticular Alguns fatores determinam a estrat´ gia de controle a ser utilizada, como por exemplo, edimensoes, peso e tipo de atuadores. Segundo [5] o modelo dinˆ mico de um robo tem o ˜ a ˆdiagrama de blocos apresentado na figura 4.6. à  ½ ´À ´Õ Õ µ · ´Õ µµ Õ Õ + à  ½ ¾ ´Õ µÃ  ½ à  ½ à  ½ Ô − Õ Õ + Õ Ã  ½ à ½ ½ ½ ×Á ×Á − ÚFigura 4.6: Diagrama de blocos que representa o comportamento dinˆ mico de uma aarticulacao ¸˜ No diagrama, podemos observar a presenca de alguns fatores importantes para o modelo ¸como: ¯ Ú : uma matriz diagonal representando o atrito viscoso dos atuadores. ¯ Ô : um sinal de pertubacao. ¸˜ ¯ à : uma matriz com os fatores de reducao de cada atuador. ¸˜ ¯ : matriz de in´ rcia. e ¯ Àe : matrizes levantadas a partir do modelo cinem´ tico do robo. a ˆ A partir do diagrama e poss´vel levantar as equacoes que descrevem o modelo dinˆ mico ´ ı ¸˜ ado robo, onde os blocos ovalados dependem das vari´ veis que chegam neles e os blocos ˆ aretangulares s˜ o formados por matrizes diagonais constantes. Para uma an´ lise matem´ tica a a amatricial mais profunda consulte [5].
    • 4. Controle 844.4.2 Controle PID Um dos controladores mais comuns na pr´ tica e o controlador PID, onde PID representa a ´as iniciais de proporcional, integral e derivativo. Com este tipo de controle e poss´vel anu- ´ ılar o efeito de uma poss´vel pertubacao em regime permanente, assim como assegurar que ı ¸˜finalmente ÕeÕ coincidam, sem, no entanto, conseguir que Õ evolua junto com Õ a todomomento. Na figura 4.7 o controlador PID e formado pelo bloco ´ Ê´×µ. Para uma an´ lise, tanto no adom´nio do tempo como no dom´nio de frequˆ ncia, mais acurada consulte [29]. ı ı ¨e Ô Õ Ù Õ + Ê´×µ  ½ ´Â × · µ×Õ · Ô − Articulação Acionamento Algoritmo de Controle Figura 4.7: Esquema de algoritmo de controle baseado em PID A articulacao e representada de forma simplificada pela express˜ o ¸˜ ´ a ´Â× · ×Õ · µ Ô,onde  e s˜ o respectivamente a in´ rcia e o atrito visto pelo atuador. Esta simplificacao e a e ¸˜ ´poss´vel gracas a uma linearizacao entre o valor de entrada e o acionamento. ı ¸ ¸˜4.4.3 Controle PID com pr´ -alimenta¸ ao e c˜ A utilizacao do controle PID permite anular o efeito de uma pertubacao em regime per- ¸˜ ¸˜manente, assim como conseguir que a sa´da Õ ´Øµ alcance a entrada em um tempo aceit´ vel. ı aEntretanto, seria interessante que uma dada trajetoria ´ Õ ´Øµ de entrada, conicidisse com asa´da o tempo todo, alcancando n˜ o somente um erro nulo em regime permanente mas ı ¸ atamb´ m um erro nulo no per´odo transitorio do sinal. e ı ´ Para conseguir tal efeito e poss´vel utilizar um controle PID com pr´ -alimentacao, basea- ´ ı e ¸˜do em um preciso conhecimento da articulacao ( e ¸˜ ). A figura 4.8 representa um esquemade controle PID com pr´ -alimentacao, onde o sinal Ù e acrescentado de uma pr´ -alimentacao e ¸˜ ´ e ¸ ˜
    • 4. Controle 85de velocidade e aceleracao. ¸˜ ´Â × · µ× Ô Õ Ù Õ + Ê´×µ +  ½ ´Â × · µ×Õ · Ô − + Articulação Acionamento Algoritmo de Controle Figura 4.8: Esquema de algoritmo de controle baseado em PID com pr´ -alimentacao e ¸˜ ´ E importante ressaltar que a coincidˆ ncia absoluta entre os sinais e մص e Õ ´Øµ diante depertubacoes, so e poss´vel caso  e ¸˜ ´ ´ ı sejam perfeitamente conhecidos. N´ pr´ tica, o que se a atem e uma boa estimacao destes valores tendo que admitir-se certos desvios entre Õ e Õ . ´ ¸˜4.4.4 Controle Adaptativo Se o modelo dinˆ mico do robo e perfeitamente conhecido, as t´ cnicas de controle apre- a ˆ ´ esentadas anteriormente s˜ o as mais indicadas as serem utilizadas a fim de garantir que a atrajetoria real acompanhe a trajetoria desejada. No entanto, uma vez que o modelo e prisi- ´ ´ ´oneiro da exigˆ ncia de que e necess´ rio o completo conhecimento dos parˆ metros (in´ rcia, e ´ a a eatritos) est´ t´ cnica passa a apresentar uma certa limitacao. a e ¸˜ Assim surge o controle adaptativo, que encontra aplicacao onde os parˆ metros do mo- ¸˜ adelo ou n˜ o s˜ o conhecidos ou mudam continuamente as condicoes de funcionamento. A a a ¸˜id´ ia b´ sica do controle adaptativo e modificar em tempo real os parˆ metros que definem o e a ´ aregulador (um PID por exemplo) de acordo com o comportamento instˆ ntaneo do sistema. a Existem diferentes esquemas de controle que enquadram-se dentro do conceito de con-trole adaptativo. Em comum estes esquemas apresentam t´ cnicas de identificacao de e ¸˜parˆ metros do modelo do sistema e algoritmos de c´ lculo dos parˆ metros do regulador. a a a Um exemplo de controle adaptativo e o controle por planificacao de ganhos, que pode ´ ¸˜ser considerado um caso simples de controle adaptativo em que um numero determinado ´de reguladores est˜ o pr´ -calculados para diferentes condicoes de funcionamento. Uma vez a e ¸˜detectado modificacoes no sistema comuta-se de um controlador para outro. ¸˜
    • 4. Controle 864.5 Exerc´cios ı 1. O que s˜ o matrizes de transformacao homogˆ nea ? a ¸˜ e 2. Por que o problema da cinem´ tica inversa e mais dif´cil de ser resolvida que a direta ? a ´ ı 3. O que torna formulacao Lagrange-Euler inadequada computacionalmente ? ¸˜ 4. Identifique as funcoes do controle cinem´ tico ¸˜ a 5. Descreva poss´veis aplicacoes para um controlador PID, e aplicacoes onde o controle ı ¸˜ ¸˜adaptativo apresentaria melhores resultados.
    • Cap´tulo 5 ıArquitetura de Robos Moveis ˆ ´5.1 Introdu¸ ao c˜ Na literatura de robos moveis n˜ o e comum encontrar material de cunho gen´ rico a ˆ ´ a ´ erespeito das poss´veis arquiteturas existentes. Em sua maioria, este material apresenta uma ıunica arquitetura, descrevendo suas caracter´sticas, vantagens e, geralmente, um estudo de´ ıcaso. Este cap´tulo tem por motivacao cubrir esta lacuna, apresentando as mais variadas ca- ı ¸˜racter´sticas de uma poss´vel arquitetura por interm´ dio de uma classificao, que com certeza ı ı e ¸˜n˜ o tem nenhuma ambicao de ser uma classificacao definitiva. Ela apenas e apresentada no a ¸˜ ¸˜ ´sentido de organizar as mais diferentes caracter´sticas de uma arquitetura. ı Assim, na secao seguinte e apresentada uma proposta de classificacao onde carac- ¸˜ ´ ¸˜ter´sticas conflitantes s˜ o comparadas, e na secao final duas das principais arquiteturas exis- ı a ¸˜tentes e amplamente utilizadas, s˜ o descritas. a5.2 Defini¸ oes e Classifica¸ oes c˜ c˜ ´ E poss´vel classificar as arquiteturas de robos moveis segundo alguns aspectos [37], den- ı ˆ ´tre eles: ¯ Estrutura – Centralizadas – Distribu´das ı
    • ˆ ´5. Arquitetura de Robos Moveis 88 ¯ Racioc´nio ı – Reativas – Deliberativas – H´bridas ı ¯ Decomposicao e encapsulamento ¸˜ – Baseadas em comportamentos – Baseadas em modulos funcionais ´5.2.1 Arquiteturas Centralizadas e Distribu´das ı Em robos com uma estrutura centralizada as tomadas de decisoes s˜ o de ambito local. Os ˆ ˜ a ˆdados necess´ rios para processamento, constiu´do das suas informacoes sensoriais, est˜ o a ı ¸˜ ano proprio robo. Os m´ todos usados para o processamento da informacao do robo podem ´ ˆ e ¸˜ ˆser aqueles baseados em t´ cnicas desenvolvidas na IA simbolica, utilizando algum m´ todo e ´ ede representacao de conhecimento, ou at´ mesmo, t´ cnicas conexionistas atrav´ s do uso de ¸˜ e e eredes neurais, por´ m n˜ o limitado a estes casos. A abordagem centralizada e o caso em que e a ´um robo age de forma isolada no ambiente. Independente das outras caracter´sticas de sua ˆ ıarquitetura, ele age de forma autonoma baseado unica e exclusivamente nas informacoes co- ˆ ´ ¸˜lhidas durante sua incurs˜ o no ambiente. N˜ o h´ nenhum tipo de comunicacao com outras a a a ¸˜entidades do meio, e as informacoes por ele processadas surgem da interacao direta com os ¸˜ ¸˜objetos do ambiente, sejam eles passivos ou ativos, est´ ticos ou dinˆ micos. a a A id´ ia de distribui¸ao vem no momento em que um robo n˜ o age de forma isolada no e c˜ ˆ aseu ambiente. Na verdade, ele faz parte de uma sociedade de agentes onde cada entidade temseu papel a ser exercido. As id´ ias deste tipo de abordagem vˆ m da Inteligˆncia Artificial e e eDistribu´da (IAD) que estuda o conhecimento e os m´ todos de racioc´nio que podem ser ı e ınecess´ rios ou uteis para que agentes/robos participem de sociedades de agentes/robos [7]. a ´ ˆ ˆ A IA distribu´da faz uso constante da id´ ia de agente que, no entanto, n˜ o apresenta uma ı e adefinicao unica aceita pela comunidade. Uma poss´vel definicao e proposta por [22]: ¸˜ ´ ı ¸˜ ´ Chama-se agente uma entidade real ou abstrata que e capaz de agir sobre ela ´ mesma e sobre seu ambiente, que dispoe de uma representacao parcial deste am- ˜ ¸˜ biente, que, em um universo multiagente, pode comunicar-se com outros agentes
    • ˆ ´5. Arquitetura de Robos Moveis 89 e cujo comportamento e consequˆ ncia de suas observacoes, de seu conhecimento ´ ¨e ¸˜ e das interacoes com outros agentes. ¸˜ Esta definicao se preocupa principalmente com os mecanismos internos de tratamento ¸˜de cada agente, sem estabelecer, por exemplo, o tipo de comunicacao poss´vel entre agentes. ¸˜ ıNada e dito tamb´ m sobre a granularidade dos agentes. Uma definicao complementar a ´ e ¸˜ `primeira, que ressalta o aspecto identidade do agente, foi proposta por [23]: Um agente e uma entidade a qual se pode associar uma identidade unica, e que ´ ` ´ e capaz de realizar c´ lculos formais. Um agente pode ser considerado como ´ a um meio que produz um certo numero de acoes a partir dos conhecimentos e ´ ¸˜ mecanismos internos que lhe s˜ o proprios. a ´ Dentro do topico de robos moveis, podemos interpretar estes como sendo a tal “en- ´ ˆ ´tidade real” citada pela primeira definicao ou a entidade “` qual se pode associar uma ¸˜ aidentidade unica” citada na segunda definicao. Assim sendo, um robo nada mais e que ´ ¸˜ ˆ ´a implementacao f´sica de um agente inserido em um ambiente e capaz de agir no mesmo. ¸˜ ı Existem v´ rios motivos para distribuir sistemas inteligentes. O principal deles e que a ´alguns dom´nios de aplicacao s˜ o inerentemente distribu´dos no espaco. Outra razoes in- ı ¸˜ a ı ¸ ˜cluem: ¯ Melhorar a adaptabilidade, a confiabilidade e a autonomia do sistema. ¯ Reduzir os custos de desenvolvimento e manuntencao. ¸˜ ¯ Aumentar a eficiˆ ncia e a velocidade e ¯ Permitir a integracao de sistemas inteligentes existentes de maneira a aumentar a ca- ¸˜ pacidade de processamento e, principalmente, a eficiˆ ncia na solucao de problemas. e ¸˜ ¯ Permitir a integracao das m´ quinas nas redes de atividades humanas. ¸˜ a Al´ m dessas razoes, deve-se ainda salientar que, para problemas realmente grandes, a e ˜unica possibilidade de solucao e a solucao distribu´da, o que coloca a id´ ia de distribuicao´ ¸˜ ´ ¸˜ ı e ¸˜como a unica t´ cnica poss´vel quando o problema ultrapassa um certo grau de complexi- ´ e ıdade. Finalmente, o fato de a maioria das atividades inteligentes dos seres humanos en-volverem mais de uma pessoa deveria ser motivo suficiente para que os aspectos sociais dainteligˆ ncia fossem colocados entre os fundamentos de qualquer teoria da inteligˆ ncia [7]. e e
    • ˆ ´5. Arquitetura de Robos Moveis 90 Por razoes historicas, a id´ ia de distribuicao na execucao de tarefas se dividiu em dois ˜ ´ e ¸˜ ¸˜enfoques: (i) solu¸ao distribu´da de problemas (SDP) (do inglˆ s “distributed problem solving”) c˜ ı ee (ii) sistemas multiagentes (SMA) (do inglˆ s, “multi-agent systems”) [19]. e A SDP tem como foco principal principal o problema, conforme a tradicao na IA simbolica, ¸˜ ´da qual este enfoque e diretamente derivado. Seus objetivos s˜ o utilizar a capacidade ´ ade processamento e a robustez oferecidas pela tecnologia de redes para atacar problemasnaturalmente distribu´dos ou excessivamente complexos. Para a SDP, os agentes s˜ o pr´ - ı a eprogramados para cooperar, e seus m´ todos visam garantir que esta cooperacao ocorra de e ¸˜maneira coerente, robusta e eficiente. A qualidade de um sistema de SDP e medida pelo ´desempenho global do sistema na solucao de um problema espec´fico. ¸˜ ı Os agentes envolvidos em SDP s˜ o programados para cooperar, dividir tarefas, acomunicar-se de maneira confi´ vel, etc. No entando experiˆ ncias em ciˆ ncias sociais mos- a e etram que n˜ o e simples estabelecer tais propriedades em uma colecao de indiv´duos. a ´ ¸˜ ı O estudo das pressuposicoes b´ sicas sobre agentes que garantam a possibilidade de acao ¸˜ a ¸˜cooperativa em sociedade e o foco de estudo dos SMA, isto e, neste caso o foco das pesquisas ´ ´e o agente. O estudo de SMA e naturalmente multidisciplinar e envolve conceitos provenien-´ ´tes de diversas disciplinas, por exemplo, economia, teoria de jogos, ciˆ ncias sociais, etologia, eetc. Dentre estes conceitos, o de agente racional, isto e, aquele que age no sentido de maxi- ´mizar seus benef´cios e minimizar suas perdas, apresenta especial interesse para a area de ı ´SMA.5.2.2 Arquiteturas Reativas, Deliberativas e H´bridas ı Quanto ao m´ todo de racioc´nio as arquiteturas dividem-se em reativas e deliberativas. e ıUm terceiro tipo surge com a combinacao da duas anteriores, os sistemas h´bridos, visando ¸˜ ıexplorar as vantagens dos dois mecanismos de racioc´nio, e simultaneamente tentar dimi- ınuir, ou amenizar, suas desvantagens. Entende-se por rea¸ao a forma como algu´ m ou algo comporta-se diante de um determi- c˜ enado est´mulo, e por reativo aquilo que produz uma reacao. Como exemplo, imagine o caso ı ¸˜em que desapercebidamente colocamos a m˜ o sobre um corpo extremamente quente. Uma aacao de reflexo imediata faz com que a afastemos do corpo aquecido, sem que tal acao seja ¸˜ ¸˜comandada pelo c´ rebro, j´ que n˜ o h´ problema a ser resolvido neste caso: uma vez que a e a a aintegridade de nosso corpo est´ em risco uma atitude que garanta a nossa sobrevivˆ ncia de- a e
    • ˆ ´5. Arquitetura de Robos Moveis 91va ser tomada. Um caso t´pico em que uma condicao sensorial (temperatura elevada) exige ı ¸˜uma acao imediata (o afastamento de nosso m˜ o). Assim, a rea¸ao, neste caso, foi afastar a ¸˜ a c˜m˜ o da superf´cie quente, e a temperatura elevada foi seu est´mulo reativo. a ı ı Uma arquitetura reativa e composta por uma s´ rie de comportamentos que relacionam ´ ecertas condicoes sensoriais a um conjunto de acoes do robo, al´ m de ser dotada de m´ todos ¸˜ ¸˜ ˆ e eque garantam a devida coordenacao destes comportamentos. A figura 5.1 apresenta um ¸˜descricao simples de uma arquitetura reativa. Em geral, esta arquitetura produz robos ade- ¸˜ ˆquados para operacao em tempo real, j´ que a simplicidade dos comportamentos reativos ¸˜ afavorece uma alta velocidade de processamento computacional. Comportamento 1 ATUADORES SENSORES Comportamento 2 . . . . Comportamento n COMPORTAMENTOS Figura 5.1: Esquema gen´ rico de uma Arquiteura Reativa e Planejar (ou deliberar) uma tarefa consiste em determinar as acoes e sequˆ ncias ne- ¸˜ ¨ecess´ rias para conseguir sua execucao no contexto de um certo modelo de mundo. Assim a ¸˜um robo inteligente pode tentar construir um modelo interno representando o ambiente no ˆqual est´ inserido. Se um problema fosse ent˜ o designado ao robo, este poderia tentar pri- a a ˆmeiro explorar o espaco de solucoes obtidos a partir de seu modelo interno, gerando um ¸ ¸˜plano de atividades e, ent˜ o, realizar a acao f´sica propriamente dita, atrav´ s de seus atu- a ¸˜ ı eadores. Ent˜ o para que um planejamento seja otimo e necess´ rio um modelo do ambiente o a ´ ´ amais perfeito poss´vel. Este modelo e obtido atrav´ s da fus˜ o das informacoes sensoriais nu- ı ´ e a ¸˜ma estrutura de dados global. Uma tarefa completa admite um planejamento hier´ rquico, aonde uma tarefa se decompoe em sequˆ ncias de tarefas mais simples que por sua vez po- ˜ ¨edem se decompor em outras subtarefas. Geralmente, tem-se um controle hier´ rquico, onde ao planejamento e subdividido em modulos funcionais, tipicamente dependentes tanto de ´ ´informacoes espaciais, quanto de restricoes temporais. A figura 5.2 ilustra este modelo, on- ¸˜ ¸˜de se tem quatro n´veis hier´ rquicos no planejador: n´vel de planejamento global estrat´ gico, ı a ı e
    • ˆ ´5. Arquitetura de Robos Moveis 92de planejamento intermedi´ rio t´ tico, de planejamento local de curto prazo e de controle de a aatuador. Todos acessam informacoes do modelo do mundo, cada um referente ao conheci- ¸˜mento de seu interesse. Nota-se que, do n´vel superior da hierarquia (referente ao planeja- ımento global) ao inferior (referente ao controle dos atuadores), cresce a restricao de tempo ¸˜na resposta e diminui o espaco f´sico de interesse [36]. ¸ ı Escopo Modelo do Planejador Escopo Espacial Mundo Hierárquico Temporal Planejamento Longo Global Prazo Conhecimento Global Global Estratégico Planejamento Conhecimento Intermediário Local Tático Planejamento Local de Curto Prazo Interpretações Controle Sensoriais dos Vizinhança Imediatas Atuadores Curto Imediata Prazo Percepção Atuação Figura 5.2: Planejamento hier´ rquico usado em arquiteturas deliberativas a Um ultimo paradigma de racioc´nio para robos moveis s˜ o as arquiteturas h´bridas ´ ı ˆ ´ a ıque visam englobar as funcionalidades dos dois paradigmas anteriores ao mesmo tempoque busca minimizar os problemas apresentados pelos mesmos. As arquiteturas h´bridas ıincorporam um elemento de planejamento sobre a definicao e selecao de comportamen- ¸˜ ¸˜tos reativos individuais. Assim, uma arquitetura h´brida corresponde a uma arquitetura ıreativa controlada por um plano de execucao e de sequenciamento de comportamentos. ¸˜ ¨Atrav´ s da incorporacao da habilidade de racioc´nio baseado em modelos internos do mun- e ¸˜ ıdo (deliberacao), estas arquiteturas permitem a reconfigura¸ao dinˆ mica de sistemas de con- ¸˜ c˜ atrole reativo [36]. A integracao de deliberacao e controle reativo e um problema complexo. Contudo, existe ¸˜ ¸˜ ´
    • ˆ ´5. Arquitetura de Robos Moveis 93um consenso que nenhuma estrat´ gia e completamente satisfatoria isoladamente, e ambas e ´ ´devem ser levadas em consideracao para produzir um sistema flex´vel, robusto e inteligente. ¸˜ ı Um robo deve ser capaz de responder rapidamente e de forma eficiente as mudancas ˆ ` ¸dinˆ micas e n˜ o modeladas que ocorrem no mundo. Se um sistema puramente deliberativo a atentar modelar e pr´ -planejar todas as eventualidades, corre-se o risco de que o processo de eplanejamento nunca termine. Tamb´ m n˜ o e seguro para o robo fazer suposicoes grossei- e a ´ ˆ ¸˜ras sobre o mundo, que n˜ o reflitam a sua natureza dinˆ mica, traduzindo-as em um plano a ainalter´ vel, que guiar´ todas as suas acoes ou decisoes futuras. Por outro lado, uma abor- a a ¸˜ ˜dagem reativa responde eficientemente a dados sensoriais imediatos, mas e menos eficaz na ´integracao de conhecimentos sobre o mundo. ¸˜5.2.3 Arquiteturas baseadas em comportamento e arquiteuras baseadas em modulos funcionais ´ Existe um dualismo interessante entre estas duas abordagens, onde aspectos comple-mentares est˜ o expl´citos no projeto do sistema, e aspectos opostos emergem das interacoes a ı ¸˜envolvendo as partes da arquitetura. Por exemplo, em arquiteturas baseadas em modulos ´funcionais respostas comportamentais n˜ o est˜ o expl´citas na arquitetura, ao inv´ s disso a a ı eelas emergem do planejador com as dadas metas e o modelo de mundo particular que foiconstru´do a partir dos dados sensoriais. Em sistemas baseados em comportamento d´ -se ı ao inverso. Assim respostas comportamentais est˜ o expl´citas no projeto e n˜ o existe qual- a ı aquer meta representada explicitamente, ou seja, a meta emerge do funcionamento normaldo agente. Os contrastes entre estes dois estilos de construcao de robos e seus programas podem ser ¸˜ ˆresumidos na tabela 5.1. Cada linha tenta resumir brevemente alguns aspectos do dualismoentre as duas abordagens. Em arquiteturas baseadas em modulos funcionais nunca existe uma sequˆ ncia de acoes ´ ¨e ¸˜explicitamente representada a priori no programa do robo. Ao inv´ s disso, uma sequˆ ncia ˆ e ¨ee produzida como resultado do racioc´nio sobre o modelo do mundo e sobre as metas de-´ ısignadas para o sistema. Na abordagem baseada em comportamento existem muitas vezesacoes espec´ficas representadas, mas as metas espec´ficas do robo nunca s˜ o explicitamente ¸˜ ı ı ˆ arepresentadas, nem sequer existem quaisquer planos [17].
    • ˆ ´5. Arquitetura de Robos Moveis 94 Aspecto Baseado em Modulos ´ Baseado em Comportamento Expl´cito ı fus˜ o de sensores a filtros modelos selecao de acao ¸˜ ¸˜ metas esquemas de acao ¸˜ planos comportamento Problema busca problema de ligacao ¸˜ Sa´da ı escolhe proxima acao ´ ¸˜ acoes concorrentes ¸˜ Emergente resposta comportamental metas e planos (aparente) Tabela 5.1: Comparacao entre estilos de construcao de robos ¸˜ ¸˜ ˆ ¸˜ ¸˜ ´ Da comparacao apresentada acima pode-se retirar algumas definicoes. E poss´vel di- ızer que um comportamento encapsula as tarefas de percepcao, planejamento e execucao ne- ¸˜ ¸˜cess´ rias para conseguir um aspecto espec´fico do controle do robo. Como caracter´sticas a ı ˆ ıgerais, destacam-se: ¯ Cada comportamento produz uma acao e e respons´ vel por um aspecto particular do ¸˜ ´ a controle do ve´culo para conseguir alguma tarefa particular. ı ¯ Os comportamentos operam de forma ass´ncrona, e podem trabalhar em paralelo com ı outros comportamentos. ¯ Um comportamento baseia-se exclusivamente nos dados sensoriais que s˜ o relevantes a para suas necessidades particulares de tomada de decis˜ o. a No caso de uma decomposicao por modulos funcionais e frequente que se estruture o ¸˜ ´ ´ ¨robo nos seguintes n´veis: ˆ ı ¯ Planejador: Planeja um caminho que cumpra a miss˜ o encomendada pelo operador. a A descricao do mesmo tem baixa resolucao. ¸˜ ¸˜ ¯ Navegador: A partir do caminho gerado pelo planejador e com a informacao do am- ¸˜ biente dispon´vel, refina-se o caminho reduzindo os erros. ı ¯ Piloto: A partir da trajetoria gerada pelo navegador e da informacao dispon´vel neste ´ ¸˜ ı n´vel, geram-se sequˆ ncias de comandos de controle. ı ¨e ¯ Controle de execu¸ ao: Executa os comandos enviados pelo piloto, transformando-os c˜ em acoes que administram os atuadores. ¸˜
    • ˆ ´5. Arquitetura de Robos Moveis 95 A decomposicao em comportamentos encapsula em um unico modulo v´ rias funcoes. ¸˜ ´ ´ a ¸˜Um comportamento pode caracterizar-se por: ¯ Receber entradas dos sensores, j´ processados ou n˜ o. a a ¯ Gerar sa´das para os atuadores ı ¯ Resolver uma atividade concreta integrando no dito comportamento todo o necess´ rio a para tal fim. ¯ Resolver uma tarefa completa mesclando v´ rios componentes simples. A mescla dos a comportamentos adimite muitas variacoes: ponderar os comportamentos, inibir com- ¸˜ portamentos, ativ´ -los alternativamente, etc. a Um vez imbuido nossos robos com multiplos comportamentos capazes de manipularem ˆ ´uma vasta variedade de circunstˆ ncias e alcancar uma certa quantidade de tarefas, estamos a ¸voltados para o problema de decidir que comportamento, ou comportamentos, deve estarativo em um dado momento. Existem dois componentes para esta decis˜ o: como selecionar acomportamentos potencialmente corretos, e como resolver conflitos entre comportamentos.Mais especificamente, precisamos considerar os seguintes assuntos [16]: ¯ Coerˆ ncia: Mesmo que muitos comportamentos possam estar ativos em um dado e momento, ou possam ser constamente ativados ou desativados, o robo deve ainda ˆ apresentar coerˆ ncia com relacao as suas acoes e metas. Ele n˜ o deve intercalar entre e ¸˜ ¸˜ a comportamentos inconsistentes rapidamente, nem deve permitir que dois comporta- mentos estejam ativos simultaneamente se estes interferem um no outro de forma que nenhum opere satisfatoriamente. ¯ Importˆ ncia: Os comportamentos que est˜ o ativos devem ser importantes para a a a situacao em que o robo se encontra. Por exemplo, o robo deve ativar o comportamento ¸˜ ˆ ˆ que recarrega suas baterias quando estas estiverem com um n´vel de carga baixo, e n˜ o ı a o contr´ rio. a ¯ Adequa¸ ao: Os mecanismo de selecao de comportamento devem garantir que as me- c˜ ¸˜ tas de longo prazo ser˜ o encontradas. Por exemplo, um robo limpador de ch˜ o deve a ˆ a realizar sua tarefa em circunstˆ ncias normais, al´ m de fazer todas as tarefas relaciona- a e das necess´ rias para que tal meta seja conclu´da com sucesso. a ı
    • ˆ ´5. Arquitetura de Robos Moveis 96 Alguns dos mecanismos de selecao de comportamento podem ser encontrado em [16]. ¸˜5.3 Exemplos de arquiteturas para robos moveis ˆ ´ Nesta secao duas das principais arquiteturas de robos moveis existentes s˜ o apresen- ¸˜ ˆ ´ atadas: a arquiterura de subsun¸ao considerada um arquiteura reativa baseada em compor- c˜tamento; e a arquiteura AuRA classificada como uma arquiteura h´brida por conter tantos ıcomponentes reativos como deliberativos.5.3.1 Arquitetura de subsun¸ ao c˜ Segundo [13], existem algumas exigˆ ncias b´ sicas para o sistema de controle de um robo e a ˆmovel autonomo inteligente: ´ ˆ ¯ Manipular multiplas metas mesmo que estas sejam, em alguns momentos, conflitantes. ´ ¯ O robo dever´ , invariavelmente, tomar decisoes sob condicoes adversas de seus sen- ˆ a ˜ ¸˜ sores, uma vez que estes s˜ o pass´veis de erro. Quanto maior o numero de sensores a ı ´ maiores as chances de erro. ¯ O robo deve ser robusto, ou seja, ele deve continuar sua operacao mesmo na presenca ˆ ¸˜ ¸ de algumas falhas. ¯ O robo deve ser capaz de absorver as novas capacidades a ele incumbidas. ˆ As primeiras t´ cnicas visando um sistema de controle para robos eram baseadas na e ˆdecomposicao do problema em um s´ rie de m´ dulos funcionais, onde estes encapsulavam ¸˜ e ocada uma das tarefas necess´ rias para que o robo apresentasse o comportamento deseja- a ˆdo. A arquitetura de subsuncao e o que convencionamos chamar de arquitetura baseada ¸˜ ´em comportamentos onde a devida coordenacao de um conjunto de comportamentos le- ¸˜va a satisfacao do conjunto de metas estabelecidas para o robo. Como nos demais proble- ¸˜ ˆmas na engenharia, a arquitetura de subsuncao decompoe o problema em pedacos, resolve ¸˜ ˜ ¸os subproblemas e em seguida compoe as solucoes. O que difere e a forma com d´ -se a ˜ ¸˜ ´ adecomposicao. ¸˜ A arquitetura de subsuncao revela-se uma arquitetura reativa baseada em comporta- ¸˜mentos, organizados em camadas de competˆncia: atrav´ s de uma hierarquizacao de com- e e ¸˜portamentos aqueles de n´vel mais alto correspondem a execucao dos objetivos das tarefas ı ¸˜
    • ˆ ´5. Arquitetura de Robos Moveis 97especificadas, enquanto as de n´veis mais baixo correspondem a tarefas mais b´ sicas, como ı aaquelas que garantem a sobrevivˆ ncia e integridade do robo. As camadas decidem quando e e ˆcomo agirem, sem o uso de sub-rotinas de outras camadas, no que convencionou-se chamarde sistemas de atividades. Brooks, em [13], cita como exemplos de camadas de competˆ ncias: e 1. Evitar contatos com objetos (tanto objetos moveis como estacion´ rios). ´ a 2. Vaguear sem objetivo definido pelo ambiente. 3. “Explorar” o mundo 4. Construir um mapa do ambiente e planejar rotas de um local para outro 5. Notar mudancas no ambiente “est´ tico”. ¸ a 6. Raciocinar sobre o mundo em termos de objetos identific´ veis e executar tarefas rela- a cionadas a tais objetos. 7. Formular e executar planos que envolvem mudancas nos estados do mundo de algum ¸ modo desej´ vel. a 8. Raciocinar sobre o comportamento dos objetos no mundo e modificar planos de acordo com tais comportamentos. Novos n´veis de competˆ ncia podem ser adicionados incrementalmente, de forma evo- ı elutiva, sendo que novos comportamentos s˜ o capazes de influenciar os n´veis inferiores, sem a ıentretanto, modificar suas regras, gerando um comportamento inteligente. Com esta arquitetura surge um novo movimento no estudo da inteligˆ ncia, baseado em euma abordagem “botton up”, concentrando-se nos sistemas f´sicos (com inspiracao na en- ı ¸˜genharia e nos sistemas biologicos) situados no mundo, buscando a execucao de tarefas de ´ ¸˜forma autonoma, e adaptando-se ao ambiente ao qual est´ inserido. ˆ a A id´ ia de estruturacao da inteligˆ ncia baseada na coordenacao de comportamentos sim- e ¸˜ e ¸˜ples surge do pensamento que afirma que a maioria das acoes humanas s˜ o realizadas sem ¸˜ aque um racioc´nio complexo seja feito. “Muitas das coisas feitas em nosso dia n˜ o s˜ o pla- ı a anejadas, s˜ o atividades rotineiras em uma relacao dinˆ mica com o mundo”[15]. a ¸˜ a Conforme [18], dentre as vantagens da arquiteura de subsuncao destacam-se: ¸˜
    • ˆ ´5. Arquitetura de Robos Moveis 98 ¯ Tem princ´pios bem definidos para o desenvolvimento de sistemas baseados em com- ı portamento. ¯ Existem muitas implicacoes documentadas que obtiveram sucesso. ¸˜ ¯ Seu enfoque incremental, bottom-up, necessita que qualquer solucao desenvolvida seja ¸˜ funcional no mundo real e com dados reais; com o m´nimo de representacao poss´vel. ı ¸˜ ı Al´ m das caracter´sticas intr´ncicas do paradigma reativo, como r´ pida resposta no pro- e ı ı acessamento da informacao e a simplicidade dos comportamentos atrav´ s de um mapeamen- ¸˜ eto est´mulo-resposta, a arquitetura de subsuncao apresenta um mecanismo de prioridade de ı ¸˜comportamentos, permitindo que um comportamento de n´vel superior suprima aqueles ıde n´vel inferior, configurando uma coordenacao competitiva de comportamentos com uma ı ¸˜hierarquia pr´ -definida. Este mecanismo pode assumir duas formas [36]: e ¯ Supress˜ o: Neste caso, a sa´da produzida pelo comportamento de n´vel mais alto subs- a ı ı titui aquela produzida pelo comportamento de n´vel mais baixo. Este ultimo perma- ı ´ nece ativo, mas sua acao n˜ o produz nenhum efeito, por ter sido suprimida por aquela ¸˜ a correspondente ao comportamento priorit´ rio. a ¯ Inibi¸ ao: No mecanismo de inibicao, o comportamento em n´vel mais baixo e desati- c˜ ¸˜ ı ´ vado por aquele de n´vel mais alto. Nesse caso, n˜ o ocorre uma substituicao da acao ı a ¸˜ ¸˜ de n´vel mais baixo, mas uma inibicao do comportamento em si. ı ¸˜ Cada comportamento tem uma tarefa associada a si, as de n´vel mais baixos sendo mais ıb´ sicas, e as de n´veis superiores s˜ o capazes de suprimir as de n´veis inferiores. V´ rios su- a ı a ı abobjetivos podem coexistir e sua realizacao depende do n´vel de prioridade ao qual seu com- ¸˜ ıportamento apresenta. Cada comportamento extrai da percepcao do robo as informacoes ¸˜ ˆ ¸˜relevantes a realizacao de sua tarefa, e da coordenacao entre os comportamentos emerge a ¸˜ ¸˜funcionalidade exigida pelo ambiente. Este m´ todo em n´veis, ou camadas, de competˆ ncia permite naturalmente atender os e ı erequerimentos exigidos de um sistema de controle para robos moveis apresentados no in´cio ˆ ´ ıdesta secao. Isto pode ser alcancado das seguintes formas: ¸˜ ¸ ¯ Camadas individuais podem trabalhar em suas respectivas metas concorrentemente. O mecanismo de supress˜ o media as acoes que s˜ o tomadas. A vantagem aqui e que a ¸˜ a ´ n˜ o necess´ rio uma tomada de decis˜ o a priori em busca da meta perseguida. a a a
    • ˆ ´5. Arquitetura de Robos Moveis 99 ¯ De certa forma podemos ignorar o problema da fus˜ o de sensores usando uma ar- a quitetura de subsuncao. Nem todos os sensores necessitam ser consultados em uma ¸˜ representacao, somente aqueles cujo processamento da informacao identifica-se como ¸˜ ¸˜ extremamente confi´ vel podem ser eleitos para participarem da representacao. a ¸˜ ¯ A existˆ ncia de multiplos sensores e o gerenciamento inteligente destes d˜ o robutez a e ´ a ` arquitetura. Entretanto, existe ainda outra fonte de robustez em uma arquitetura de subsuncao: n´veis inferiores bem debugados continuam a funcionar mesmo quando ¸˜ ı n´veis superiores s˜ o somados. ı a ¯ Uma maneira obvia de dispor de aditividade e construir cada nova camada em seu ´ ´ proprio processador. ´ Explorar sonar 1 .. Calcula sonar 8 . Afastar S motor 2 Vetor .. motor 1 . Parar Figura 5.3: Um exemplo simples da arquitetura de subsuncao ¸˜ A figura 5.3 ilustra um exemplo simples de implementacao da arquitetura de subsuncao ¸˜ ¸˜para um robo movel que se move em um ambiente, desviando-se de obst´ culos quando ne- ˆ ´ acess´ rio, mas sem perder a direcao do seu movimento [36]. O robo tem como sensores um a ¸˜ ˆconjunto de oito sonares distribu´dos uniformemente em sua periferia, capazes de estimar ıa distˆ ncia de ost´ culos nas direcoes correspondentes. Um modulo de processamento da a a ¸˜ ´informacao sensorial, Calcula Vetor, interpreta as leituras dos sensores como vetores e os so- ¸˜ma, produzindo um vetor resultante que indica a direcao e a magnitude relativas a posicao ¸˜ ` ¸˜e distˆ ncia de um obst´ culo imagin´ rio, que resume estas leituras. O movimento do robo e a a a ˆ ´comandado por dois motores independentes: um motor 1 para produzir velocidades iguaisnas rodas, e um outro motor 2 para produzir um giro do eixo das rodas. Na camada maisbaixa est˜ o dois comportamentos b´ sicos: Parar, que ao detectar, pela leitura dos sonares, a a a
    • ˆ ´5. Arquitetura de Robos Moveis 100proximidade de algum obst´ culo (leitura de algum sonar maior que um valor limiar), forca a ¸a parada do robo enviando um comando apropriado para o motor respons´ vel pelo con- ˆ atrole de velocidade das rodas, e Afastar, que produz (i) um giro do eixo das rodas do robo ˆat´ que este fique com sua frente na direcao oposta a do vetor (via comando enviado para e ¸˜ `o motor 2) e (ii) um posterior avanco proporcional a magnitude do vetor (via comando en- ¸ `viado para o motor 1). Numa camada mais alta, um comportamento Explorar combina umvetor de magnitude fixa e direcao aleatoria, produzindo a intervalos regulares, a um vetor ¸˜ ´de direcao oposta ao daquele produzido pelo modulo Calcula Vetor. Desta forma, obt´ m-se ¸˜ ´ euma nova direcao para o movimento do robo, correspondente a um desvio de obst´ culos ¸˜ ˆ amais suave, que leva em consideracao uma direcao preferencial de movimento (aquela es- ¸˜ ¸˜tabelecida pelo comportamento Explorar). Este comportamento suprime (ou seja, substitui)a sa´da produzida pelo comportamento Afastar, que no entanto continua ativo: caso o com- ıportamento Explorar seja desativado (possivelmente por algum outro comportamento emn´vel mais alto), o robo ainda ter´ capacidade de desviar de obst´ culos satisfatoriamente. ı ˆ a a5.3.2 Arquitetura AuRA A arquitetura AuRA (Autonomous Robot Architecture), e um sistema h´brido surgido du- ´ ırante os anos 80. Esta arquitetura e dita h´brida devido a presenca de dois componentes ´ ı ¸distintos: um deliberativo (ou tamb´ m designado planejador hier´ rquico), baseado em t´ cnicas e a ede inteligˆ ncia artificial tradicional; e um controlador reativo, baseado em uma teoria de eesquemas [3]. Assim, um planejador configura o sistema reativo antes da execucao , e o ¸˜reconfigura para o caso de eventuais falhas. Na figura 5.4 pode ser visualizado os v´ rios amodulos que compoem a arquitetura. ´ ˜ ´ E poss´vel verificar na figura 5.4 a presenca dos componentes deliberativo e reativo: um ı ¸sistema hier´ rquico consitindo de um planejador de miss˜ o, raciocinador espacial, e um sequen- a a ¨ciador de planos, acoplados a um sistema reativo, o controlador de esquemas. Este modulos ´podem ser descritos da seguinte forma: ¯ Planejador de Miss˜ o: modulo que interage com o usu´ rio e onde metas de alto n´vel a ´ a ı e restricoes s˜ o definidas a partir de uma descricao. ¸˜ a ¸˜ ¯ Raciocinador Espacial: a partir de um cartografo, constroi um caminho, ou seja, uma ´ ´ sequˆ ncia de passos com o intuito de cumprir uma miss˜ o. ¨e a
    • ˆ ´5. Arquitetura de Robos Moveis 101 Planejador da REPRESENTAÇÃO Missão Raciocinador Componente Espacial Hierárquico Seqüenciador de Plano Controlador de Esquemas Componente Motor Percepção Reativo Atuação Sensação Figura 5.4: Arquitetura h´brida AuRA ı ¯ Sequenciador de Planos: cada passo definido no componente anterior e traduzido em ¨ ´ um comportamento reativo. ¯ Controlador de Esquemas: monitora e constroi os comportamentos a partir de biblio- ´ tecas de esquemas sensoriais. Uma vez iniciada a execucao reativa, o componente deliberativo n˜ o e ativo pelo menos ¸˜ a ´at´ que se detecte uma falha em tal execucao. Uma falha t´pica e detectada pela falta de e ¸˜ ı ´progresso, evidenciando uma velocidade zero ou sinal gerador de timeout. Neste momentoo planejador hier´ rquico e reinvocado um est´ gio por vez, de baixo para cima na hierarquia, a ´ aat´ o problema ser resolvido. Primeiro, o Sequenciador de Planos tenta refazer a rota do e ¨robo baseado nas informacoes que foram obtidas durante a navegacao e armazenadas na ˆ ¸˜ ¸˜memoria de curto prazo. Se por algum motivo isto mostra-se insatisfatorio - por exemplo, ´ ´a rota est´ completamente bloqueada dentro deste contexto local - o Raciocinador Espacial ae novamente invocado. Ele tenta gerar uma nova rota global que sobrepoe a regi˜ o inteira´ ˜ aafetada. Se ainda assim houver falha, o Planejador de Miss˜ o e reinvocado, informando o a ´operador da dificuldade e perguntando pela reformulacao ou abandono da miss˜ o. ¸˜ a A arquitetura AuRA e altamente modular. Os compontentes da arquiteura podem ser ´substitu´dos por outros de forma direta. Outra caracter´stica e a flexibilidade que ele fornece ı ı ´
    • ˆ ´5. Arquitetura de Robos Moveis 102por interm´ dio da introducao de m´ todos adaptativos e de aprendizado. N˜ o obstante, a e ¸˜ e aAuRA cobre uma vasta quantidade de problemas, incluindo dom´nios como: ı ¯ Ambientes de manufatura ¯ Navegacao tridimensional como as encontradas em dom´nios a´ reos e aqu´ ticos ¸˜ ı e a ¯ Navegacao em ambientes abertos e fechados ¸˜ ¯ Competicoes de robos ¸˜ ˆ ¯ Cen´ rios militares a ¯ Manipulacao movel ¸˜ ´ ¯ Equipes de robos ˆ Finalmente, uma das maiores caracter´sticas do AuRA resulta do casamento entre dois ıparadigmas distintos da IA: a deliberacao e a reatividade. ¸˜5.4 Exerc´cios ı 1. Descreva duas situacoes onde possam ser utilizadas uma arquitetura centralizda e ¸˜uma arquitetura distribu´da, aponta os motivos para tal escolha. ı 2. Descreva exemplos em que uma arquitetura reativa n˜ o seria suficiente para alcancar a ¸os objetivos do robo, necessitando de algum n´vel de deliberacao. ˆ ı ¸˜ 3. Cite um poss´vel exemplo de aplicacao da Arquitetura de Subsuncao e porque esta ı ¸˜ ¸˜seria a melhor alternativa. 4. Dentro da arquitetura AuRA aponte os modulos reativos e deliberativos. ´
    • Cap´tulo 6 ıModelagem do Ambiente Para que o robo possa interagir com o ambiente de forma mais eficaz do que simple- ˆmente a navegacao aleatoria, faz-se necess´ rio criar alguma forma de representacao deste ¸˜ a ¸˜ambiente, que possibilite ao robo coordenar suas acoes no sentido de desempenhar sua ta- ˆ ¸˜refa [33]. Esta representacao do ambiente e constru´da a partir das leituras obtidas pelos sensores ¸˜ ´ ıe e utilizada para o planejamento de trajetoria. ´ ´ O problema da aquisicao de modelos e bastante complexo e est´ longe de ser resolvido, ¸˜ ´ apois h´ uma s´ rie de fatores pr´ ticos que limitam a habilidade do robo em “aprender” e a e a ˆ“usar” modelos precisos. Alguns destes fatores s˜ o [39]: a 1. Sensores - as condicoes de operacao dos sensores podem resultar em perda, falha ou ¸˜ ¸˜ informacoes irrelevantes, n˜ o permitindo obter a exata localizacao dos obst´ culos. ¸˜ a ¸˜ a 2. Limitacao da percepcao - a faixa de percepcao de muitos sensores e limitada a uma ¸˜ ¸˜ ¸˜ ´ zona proxima ao robo. Para adquirir informacoes globais, o robo precisa explorar o ´ ˆ ¸˜ ˆ ambiente. 3. Ru´do na leitura dos sensores - as medidas dos sensores est˜ o corrompidas por ru´dos. ı a ı Geralmente, a distribuicao deste ru´do n˜ o e conhecida. ¸˜ ı a ´ 4. Imprecis˜ o dos movimentos - os movimentos do robo s˜ o imprecisos, ocasionando a ˆ a erros de odometria frequentes. ¨ 5. Complexidade e dinˆ mica - os ambientes s˜ o, em geral, complexos e dinˆ micos, o que a a a torna imposs´vel manter modelos exatos dos mesmos. ı
    • 6. Modelagem do Ambiente 104 6. Requisitos de tempo-real - os requisitos de tempo real impoem que o modelo do ambi- ˜ ente seja simples, acess´vel e f´ cil de manipular, entretanto, construir modelos simples ı a a ´ implica maior grau de imprecis˜ o. E preciso balancear precis˜ o e simplicidade. a Apesar destas dificuldades, dois paradigmas tˆ m se estabelecido como sendo os princi- epais tipos de modelos utilizados em robotica movel. S˜ o eles o modelo baseados em c´ lulas ´ ´ a ee o modelo topologico. Nos modelos baseados em c´ lulas, o ambiente e representado por ´ e ´um conjunto de c´ lulas onde cada c´ lula corresponde a uma regi˜ o do ambiente. Nos mode- e e alos topologicos o ambiente e representado por meio de um grafo, onde os nos correspondem ´ ´ ´a situacoes distintas, lugares ou ainda a marcas (landmarks). ¸˜6.1 Mapas baseados em c´ lulas e Nesta abordagem o ambiente bidimensional ou tridimensional e representado por meio ´de um conjunto de c´ lulas. Os modelos de decomposicao em c´ lulas s˜ o m´ todos aproxi- e ¸˜ e a emados, uma vez que n˜ o representam completamente o espaco livre. a ¸ H´ dois esquemas b´ sicos e principais de decomposicao do ambiente em c´ lulas: a a ¸˜ eenumeracao da ocupacao espacial e quadtrees ou octrees[37]. ¸˜ ¸˜6.1.1 Modelagem por enumera¸ ao c˜ A modelagem por enumeracao consiste na criacao de uma matriz de c´ lulas de tamanho ¸˜ ¸˜ efixo. Este e um m´ todo aproximado, onde a resolucao est´ diretamente relacionada com ´ e ¸˜ ao tamanho da c´ lula. C´ lulas grandes reduzem a complexidade, mas promovem a perda e ede espaco livre, enquanto que c´ lulas pequenas permitem uma modelagem mais acurada e, ¸ econsequentemente, o aumento da complexidade. ¨ O m´ todo e bastante simples, principalmente para acessar um determinado ponto no e ´ambiente. A cada c´ lula e atribu´da uma probabilidade de ocupacao, ou ainda pode-se e ´ ı ¸˜considerar a ocupacao bin´ ria (½ para c´ lulas com obst´ culos e ¼ para c´ lulas vazias). ¸˜ a e a e Os diferentes locais do ambiente s˜ o distinguidos baseando-se na posicao geom´ trica a ¨ ¸˜ edo robo, com relacao ao sistema de coordenadas global. A posicao do robo e estimada in- ˆ ¸˜ ¸˜ ˆ ´crementalmente, baseando-se na informacao do sensor de odometria. A figura 6.1 apre- ¸˜senta um exemplo de decomposicao do ambiente em c´ lulas utilizando a modelagem por ¸˜ eenumeracao. ¸˜
    • 6. Modelagem do Ambiente 105 Figura 6.1: Modelagem por enumeracao ¸˜6.1.2 Modelagem por Quadtrees e Octrees Estes m´ todos s˜ o derivados do anterior, por´ m s˜ o mais eficientes, pois a resolucao e e a e a ¸˜ ´facilmente ajust´ vel e em uma mesma representacao podem coexistir diferentes graus de a ¸˜resolucao. As quadtrees e octrees s˜ o estruturas de dados em forma de arvore que modelam ¸˜ a ´objetos em duas ou trˆ s dimensoes respectivamente. A figura 6.2 apresenta a modelagem de e ˜um ambiente utilizando uma quadtree. 1 2 3 5 6 4 7 8 10 11 14 15 9 18 12 13 16 17 19 20 21 22 3 1 2 4 9 19 20 18 21 22 5 6 7 8 10 11 12 13 14 15 16 17 Figura 6.2: Decomposicao do ambiente utilizando quadtrees ¸˜ Neste modelo, as c´ lulas recebem a atribuicao de cheias, vazias ou mistas. C´ lulas cheias e ¸˜ es˜ o aquelas totalmente cobertas por obst´ culos, c´ lulas vazias s˜ o aquelas cuja interseccao a a e a ¸˜com a regi˜ o de obst´ culos e nula e mistas, quando parte da c´ lula e ocupada pelo obst´ culo. a a ´ e ´ a
    • 6. Modelagem do Ambiente 1066.2 Modelo Topologico ´ A id´ ia deste modelo e representar relacoes entre entidades. Essa representacao pode ser e ´ ¸˜ ¸˜feita por meio de grafos onde os v´ rtices representam as entidades e as arestas, as relacoes. e ¸˜As entidades podem ser de dois tipos: lugares ou marcas. Por utilizar grafos, a representacao ¸˜torna-se compacta, facilitando o processamento e busca por caminhos. Neste modelo, a localizacao do robo e relativa e frequentemente e dif´cil determinar se ¸˜ ˆ ´ ¨ ´ ıdois lugares parecidos s˜ o na verdade o mesmo ou n˜ o, principalmente quando o robo chega a a ˆa eles por caminhos distintos.6.2.1 Modelo Topologico de Lugares ´ A modelagem de lugares e feita de forma hier´ rquica, utilizando relacoes de adjacˆ ncia. ´ a ¸˜ eEste tipo de modelagem e simples e facilita a manipulacao do modelo. Na figura 6.3 tem-se ´ ¸˜um exemplo de ambiente e o seu modelo topologico utilizando lugares como entidades. ´ P2 P9 Ext. G1 P3 P8 H2 P10 H1 P1 G3 P11 P7 G2 C1 P6 P4 P5 G1 G2 G3 Ext. H1 C1 H2 H1 G1 P1 P2 P4 P3 G2 Figura 6.3: Modelo topologico ´ O ambiente e formado pelo meio externo (Ext.), por duas salas (H1 e H2) e um corredor ´(C1). A transicao do meio externo (Ext.) para a sala H1 e feita atrav´ s da porta G1. Estan- ¸˜ ´ edo em H1, e poss´vel chegar ao corredor C1 utilizando a porta G2. De forma semelhante, ´ ıutilizando G3 e poss´vel chegar a sala H2. ´ ı ` Ao refinar o modelo, as entidades s˜ o expandidas, gerando novos grafos. Assim, pode- ase representar, por exemplo, a sala H1 como sendo o conjunto formado pelas paredes P1,
    • 6. Modelagem do Ambiente 107P2, P3 e P4 e pelas portas G1 e G2. As arestas do grafo representam a relacao de adjacˆ ncia ¸˜ eentre estas entidades.6.2.2 Modelo Topologico de Marcas ´ Uma marca (landmark) pode ser qualquer objeto ou conjunto de objetos que integre oambiente. As marcas s˜ o classificadas em dois grupos: naturais e artificiais. As marcas anaturais n˜ o podem ser modificadas ou movidas (uma parede, uma porta, um edif´cio, uma a ımontanha, etc.). J´ as marcas artificiais podem ser movidas ou modificadas. a S˜ o ¿ os tipos de objetos que podem compor uma marca: a ¯ Objetos geom´ tricos - estas marcas s˜ o formadas por objetos geom´ tricos simples. Ex.: e a e pol´gono, prismas, etc. ı ¯ Objetos estruturados - s˜ o marcas formadas por objetos dotados de uma estrutura bem a definida e mais complexa. Ex.: sinais de tr´ fego, marcas espec´ficas para localizac ao, a ı ¸˜ portas, um cruzamento, um edif´cio de forma e cor determinados. ı ¯ Objetos n˜ o-estruturados - estas marcas s˜ o formadas por objetos sem estrutura bem a a definida. Ex.: uma arvore, uma rocha, etc. ´ Os modelos de marcas s˜ o utilizados para localizacao do robo, planejamento de acoes a ¸˜ ˆ ¸˜(um evento sensorial ativa um determinado comportamento) e controle do robo (marcas que ˆafetam a velocidade do robo, como por exemplo, um sinal de trˆ nsito). Para o reconhecimen- ˆ ato de uma marca no ambiente s˜ o necess´ rios os seguintes passos: deteccao, identificacao e a a ¸˜ ¸˜extracao da informacao. ¸˜ ¸˜6.3 Exerc´cios ı 1. Os dois m´ todos apresentados aqui s˜ o m´ todos aproximados de modelagem do am- e a e biente. Pesquise e descreva brevemente um m´ todo de representacao que seja exato. e ¸˜ Por que este tipo de modelo n˜ o e muito utilizado? a ´ 2. Monte uma pequena tabela listando as vantagens e desvantagens de m´ todos de mo- e delagem exatos e aproximados. 3. A criacao de modelos topologicos apresenta-se como uma forma simples de modela- ¸˜ ´ gem. Quais tipos de sensores s˜ o utilizados para detectar marcas? a
    • Cap´tulo 7 ıPlanejamento de Trajetoria ´7.1 Introdu¸ ao c˜ O objeto de estudo do planejamento de trajetoria em robotica movel e dar aos robos a ´ ´ ´ ´ ˆcapacidade de planejar seus proprios movimentos, sem a necessidade de interferˆ ncia dire- ´ eta de seres humanos. Esta e uma das areas mais importantes da robotica movel atualmente, ´ ´ ´ ´pois a elaboracao de um plano de movimentacao e uma tarefa extremamente complexa, sal- ¸˜ ¸˜ ´vo quando o ambiente de atuacao do robo e limitado e cuidadosamente controlado, situacao ¸˜ ˆ´ ¸˜ideal que geralmente n˜ o acontece na maioria das aplicacoes real´sticas. a ¸˜ ı Neste cap´tulos abordaremos as t´ cnicas b´ sicas de planejamento de trajetoria utilizadas ı e a ´atualmente em robotica movel. ´ ´7.2 O Problema B´ sico a O problema b´ sico do planejamento de trajetoria pode ser encarado como uma a ´simplificacao na qual as questoes principais s˜ o isoladas e estudadas em profundidade antes ¸˜ ˜ aque considerarmos dificuldades adicionais. No problema b´ sico assume-se que o robo e o a ˆ ´unico objeto movel no espa¸o de trabalho1 . Tamb´ m s˜ o ignoradas as propriedades dinˆ micas´ ´ c e a ado robo, evitando assim as questoes temporais. A movimentacao tamb´ m e reduzida pa- ˆ ˜ ¸˜ e ´ra uma movimentacao sem contato, ignorando-se as interacoes que podem ocorrer entre o ¸˜ ¸˜robo e os objetos f´sicos no ambiente. O objetivo de todas estas simplificacoes e transfor- ˆ ı ¸˜ ´mar o problema do planejamento de um problema “f´sico” para um problema “puramente ı 1 do inglˆ s e
    • ´7. Planejamento de Trajetoria 109geom´ trico”. Tamb´ m assumimos que o robo e um unico objeto r´gido, isto e, um objeto e e ˆ ´ ´ ı ´cujos pontos s˜ o fixos com respeito a cada um dos outros (ou seja, o robo n˜ o apresenta par- a ˆ ates moveis, como bracos, pernas, ou outros apˆ ndices moveis). Assumimos tamb´ m que os ´ ¸ e ´ emovimentos deste objeto s˜ o restringidos unicamente pelos obst´ culos dispostos no espaco a a ¸de trabalho. O problema b´ sico pode ent˜ o ser resumido como o problema de, a partir de uma a aposicao inicial e uma orientacao inicial, gerar um caminho composto por uma sequˆ ncia ¸˜ ¸˜ ¨econt´nua de posicoes e orientacoes do robo que evitam o contato com os outros objetos no ı ¸˜ ¸˜ ˆespaco de trabalho e que termina numa posicao meta pr´ -estabelecida. ¸ ¸˜ e7.3 O Espa¸ o de Configura¸ ao c c˜ Uma configuracao de um objeto arbitr´ rio e uma especificacao da posicao de todos os ¸˜ a ´ ¸˜ ¸˜pontos neste objeto, relativos a um frame de referˆ ncia fixo. Um espaco de configuracao ` e ¸ ¸˜de um objeto e ent˜ o o conjunto de todas as configuracoes do objeto . ´ a ¸˜7.4 Abordagens de Planejamento Trataremos agora as principais abordagens para o planejamento de trajetoria mais comu- ´mente utilizadas em robotica movel. ´ ´7.4.1 Abordagem Roadmap Este m´ todo consiste em capturar a conectividade do espaco livre do robo em uma re- e ¸ ˆde de curvas chamada Roadmap, no espaco de configuracao ¸ ¸˜ Ð ÚÖ ou em seu fechamen-to2 д Ð ÚÖ µ. Uma vez que o roadmap e constru´do, ele e utilizado como um conjunto ´ ı ´de caminhos padronizados. O planejamento de trajetoria resume-se ent˜ o em encontrar ´ aum caminho que faca a interconex˜ o dos pontos definidos pela configuracao iniciale pela ¸ a ¸˜configuracao final desejada. V´ rios m´ todos baseados nesta abordagem foram propostos, ¸˜ a eentre eles: ¯ Grafos de visibilidade 2 Do inglˆ s closure e
    • ´7. Planejamento de Trajetoria 110 ¯ Diagramas de Voronoi ¯ Redes Freeway ¯ Silhueta Outro m´ todo roadmap chamado de retra¸ ao consiste em definir uma funcao cont´nua de e c˜ ¸˜ ı Ð ÚÖ sobre um subconjunto de si mesmo (o roadmap) tais que as restricoes desta funcao pa- ¸˜ ¸˜ra este subconjunto e o mapa identidade (em topologia tal funcao e chamada de “retra¸ ao”). ´ ¸˜ ´ c˜Em um espaco de configuracao bidimensional o espaco de configuracao Ð ÚÖ e tipicamente ¸ ¸˜ ¸ ¸˜ ´retra´do em seu diagrama de Voronoi. Este diagrama e o conjunto de todas as configuracoes ı ´ ¸˜livres cuja distˆ ncia m´nima para a regi˜ o a ı a   Ó ×ØÙÐÓ e alcancada com pelo menos dois ´ ¸pontos nos limites de . A vantagem deste diagrama e que ele produz caminhos livres que tendem a maximizar a ´ `separacao entre o Robo e os obst´ culos. Quando os ¸˜ ˆ a  obst´ culos s˜ o pol´ıgonos, o diagrama a ade Voronoi consiste de segmentos de retas e parabolicas. ´7.4.2 Decomposi¸ ao em C´ lulas c˜ e S˜ o os m´ todos mais extensamente estudados. Consistem na decomposicao do espaco a e ¸˜ ¸livre do robo em regioes simples chamadas c´ lulas, de tal forma que um caminho entre duas ˆ ˜ econfiguracoes em c´ lulas diferentes pode ser facilmente gerado. Um grafo n˜ o-direcionado ¸˜ e arepresentando a relacao de adjacˆ ncia entre as c´ lulas e ent˜ o constru´do, e sobre este gra- ¸˜ e e ´ a ıfo a busca do caminho e realizada. Este grafo e chamado de grafo e chamado de grafo de ´ ´ ´conectividade. Os nos deste grafo s˜ o as c´ lulas extra´das do espaco livre, e dois nos est˜ o ´ a e ı ¸ ´ aconectados por uma aresta se e somente se duas c´ lulas correspondentes s˜ o adjacentes. O e aresultado da busca e uma sequˆ ncia de c´ lulas chamada de canal. Um caminho livre pode ´ ¨e eser ent˜ o computado a partir desta sequˆ ncia. a ¨e Os m´ todos de decomposicao em C´ lulas podem ser divididos em duas categorias: e ¸˜ e 1. M´ todos exatos e 2. M´ todos aproximados eM´ todos Exatos: e Estes m´ todos decompoem o espaco em c´ lulas cuja uni˜ o e exatamente o espaco livre. e ˜ ¸ e a ´ ¸
    • ´7. Planejamento de Trajetoria 111M´ todos Aproximados: e Os m´ todos aproximados produzem c´ lulas de formas pr´ -definidas (por exemplo, for- e e ema retangular) cuja uni˜ o est´ estritamente inclusa no espaco livre. a a ¸7.4.3 Campo Potencial ´ E uma abordagem mais direta para o planejamento de trajetoria. Consiste em discretizar ´o espaco de configuracao em um fino grid regular de configuracoes e realizar a busca por ¸ ¸˜ ¸˜um caminho livre neste grid. Esta abordagem necessita de heur´sticas adequadas para dire- ıcionar a busca, pois o grid, em geral, tem um tamanho consideravelmente grande. V´ rios atipos de heur´sticas tˆ m sido propostas, entre elas as de maior sucesso s˜ o aquelas que se ı e atornaram conhecidas como Campos Potenciais. A met´ fora sugerida por esta terminologia e que o robo, representado como um ponto a ´ ˆno espaco de configuracao, e uma part´cula que se move sob a influˆ ncia de um potencial ¸ ¸˜ ´ ı eartificial produzido pela configuracao-meta e os espacos de configuracao dos objetos no ¸˜ ¸ ¸˜espaco de trabalho. A configuracao-meta gera um potencial atrativo que puxa o robo em ¸ ¸˜ ˆsua direcao, enquanto que os obst´ culos geram um potencial repulsivo, que empurra o robo ¸˜ a ˆpara longe deles. O gradiente negado do potencial total e tratado como uma forca artificial ´ ¸aplicada ao robo. ˆ Este m´ todo pode ser bastante eficiente se comparado com os m´ todos anteriores, por´ m e e ecomo ele e, essencialmente, um m´ todo de otimizacao descendente r´ pido, tem a grande ´ e ¸˜ adesvantagem de poder ficar preso em m´ ximos locais. Uma solucao para este problema e a ¸˜ ´projetar as funcoes potenciais para que n˜ o possuam m´ ximos locais al´ m da configuracao- ¸˜ a a e ¸˜meta. Outra solucao seria complementar a abordagem de campo potencial b´ sica com me- ¸˜ acanismos de escape de m´ ximos locais. a7.5 Extensoes ao Problema B´ sico ˜ a A nocao b´ sica do problema de planejamento de trajetoria faz suposicoes que limitam ¸˜ a ´ ¸˜significativamente a viabilidade pr´ tica das suas solucoes. Na pr´ tica e bastante dif´cil redu- a ¸˜ a ´ ızir um problema de robotica real a uma instˆ ncia do problema b´ sico, resolver esta instˆ ncia ´ ` a a ae depois adapt´ -la para produzir solucoes adequadas as condiocoes do problema original. a ¸˜ ` ˜¸˜Para tentar resolver esta situacao foram criadas uma s´ rie de extensoes ao modelo b´ sico. ¸˜ e ˜ a
    • ´7. Planejamento de Trajetoria 112As principas extensoes est˜ o descritas a seguir: ˜ a7.5.1 Multiplos Objetos Moveis ´ ´ No problema b´ sico e suposto que os obst´ culos s˜ o fixos, que o robo e a unica entidade a ´ a a ˆ ´ ´movel no espaco de configuracao e que o mesmo e constitu´do de um unico objeto r´gido. ´ ¸ ¸˜ ´ ı ´ ıconsideraremos agora uma s´ rie de extensoes que retiram estas suposicoes. Uma extens˜ o e ˜ ¸˜ aconsiste na inclus˜ o de obst´ culos moveis no espaco de trabalho, outra permite que v´ rios a a ´ ¸ arobos operem ao mesmo tempono espaco de trabalho, sendo que cada um atua como um ˆ ¸obst´ culo movel para cada um dos outros e uma terceira extens˜ o considera robos articula- a ´ a ˆdos, ou seja, robos que s˜ o compostos por v´ rios objetos r´gidos conectados por juntas. ˆ a a ıObst´ culos Moveis: a ´ Na presenca de obst´ culos moveis o problema de planejamento de trajetoria n˜ o pode ¸ a ´ ´ amais ser resolvido meramente pela construcao de um caminho geom´ trico. Uma funcao ¸˜ e ¸˜cont´nua de tempo especificando as configuracoes do robo a cada instante do tempo deve ı ¸˜ ˆser gerada em vez disso. Isto pode ser feito pela adicao de uma dimens˜ o representando o ¸˜ atempo ao espaco de configuracao do robo. O novo espaco, denotado por ¸ ¸˜ ˆ ¸ Ì , e chamado de ´espaco-tempo de configuracao. Este novo espaco de configuracao mapeia a movimentacao ¸ ¸˜ ¸ ¸˜ ¸˜dos obst´ culos em regioes est´ ticas em um determinado instante de tempo Ø, de tal forma a ˜ aque toda secao reta atrav´ s de ¸˜ e Ì no instante Ø e o espaco de configuracao do robo no ´ ¸ ¸˜ ˆinstante Ø. Ela corta os Ì   obst´ culos de acordo com os a   obst´ culos correspondentes ano espaco de trabalho dos obst´ culos em suas localizacoes no instante Ø. O planejamento de ¸ a ¸˜trajetoria consiste ent˜ o em achar um caminho entre os ´ a Ì   obst´ culos em Ì . a J´ que o atempo e irrevers´vel, este caminho deve ter a propriedade de nunca retroceder ao longo do ´ ıeixo do tempo. Para isso, os m´ todos de planejamento devem ser modificados para levar eem conta esta especificidade relativa ao tempo. Se n˜ o h´ restricoes sobre a velocidade e a aceleracao do robo, e se o movimentode todos a a ¸˜ ¸˜ ˆos obst´ culos e conhecido de antem˜ o, e bastante simples extender alguns dos m´ todos a ´ a ´ eb´ sicos de planejamento para manipular este novo problema. Se tais restricoes existem, elas a ¸˜se traduzem em retricoes geom´ tricas sobre a inclinacaoe a curvatura do caminho ao longo ¸˜ e ¸˜da dimens˜ o do tempo, o que torna o planejamento bem mais dif´cil. a ı
    • ´7. Planejamento de Trajetoria 113Multiplos Robos: ´ ˆ O planejamento de trajetoria com multiplos robos difere do planejamento com ´ ´ ˆobst´ culos moveis porque o movimento de todos os robos no ambiente deve ser planejado, a ´ ˆenquanto que o movimento dos obst´ culos moveis n˜ o est´ sob o controle do planejador. a ´ a a Uma forma de se trabalhar com multiplos robos operando no mesmo espaco de trabalho ´ ˆ ¸e trat´ -los como um unico robo com multiplos corpos. O espaco de configuracao composto´ a ´ ˆ ´ ¸ ¸˜do robo ˆ ½ Ôe ´ ½ ¢ ¢ Ô , onde: representa o robo multi-corpos; ˆ ½ Ô representam cada uma das partes (ou corpos) de que e constitu´do o robo multi- ´ ı ˆ corpos; ½ Ô representam cada um dos espacos de configuracao relativos a cada um dos corpos ¸ ¸˜ do robo; ˆ e o produto cartesiano dos espacos de configuracao ´ ¸ ¸˜ dos robos individuais ˆ ½ Ô. Todas as configuracoes em ¸˜ determinam uma unica posicao e orientacao para cada ´ ¸˜ ¸˜robo ˆ e um obst´ culo a , ou dois robos ˆ e . Os m´ todos b´ sicos para planejamento e ade trajetoria podem ent˜ o ser utilizados para planejar um caminho de ´ a em . Esta aborda-gem para planejamento de trajetoria multi-robo e chamada de planejamento centralizado. ´ ˆ ´Uma dificuldade com este m´ todo e que ele pode produzir espacos de configuracao de al- e ´ ¸ ¸˜tas dimensoes, pois a dimens˜ o do espaco de configuracao composto ˜ a ¸ ¸˜ e igual a soma das ´dimensoes de todos os espacos de configuracao individuais ˜ ¸ ¸˜ ½a Ô. Outra abordagem para o planejamento de trajetoria com multiplos robos, chamada de ´ ´ ˆPlanejamento Desacoplado, consiste em planejar o movimento de cada robo de maneira ˆmais ou menos independente dos outros robos, e considerar as interacoes entre os caminhos ˆ ¸˜em uma segunda fase do planejamento. Utilizando esta abordagem pode-se reduzir signifi-cativamente a complexidade computacional, por´ m compromete-se a completude do plano egerado. A figura 9 mostra um problema de planejamento onde a abordagem desacopladafalha. O problema consiste em trocar a posicao de dois robos (representados pelos discos) ¸˜ ˆem um corredor estreito onde um robo n˜ o pode ultrapassar o outro, mas que, ao fim do ˆ acorredor existe espaco suficiente para realizar a permutacao dos dois robos. Como o plane- ¸ ¸˜ ˆ
    • ´7. Planejamento de Trajetoria 114jamento desacoplado considera os robos separadamente, este m´ todo n˜ o tem mecanismos ˆ e apara inferir que ambos os robos devem primeiro mover-se para o fim do corredor. ˆRobos Articulados: ˆ Um robo articulado ˆ e constitu´do de v´ rios objetos r´gidos moveis ´ ı a ı ´ ½ Ô , chama-dos de elos, conectados por juntas (juntas de revolucao ou juntas prism´ ticas). Cada junta ¸˜ arestringe o movimento relativo dos dois objetos os quais ela conecta. Um exemplo t´pico de ıum robo articulado e um braco robotico. ˆ ´ ¸ ´ O robo ˆ Ô objetos r´gidos moveis. As restricoes pode ser visto como um conjunto de ı ´ ¸˜impostas pelas juntas sobre o movimento relativo dos ¼ × determina um subconjunto doespaco de configuracao composto desses objetos, que e o espaco de configuracao real de ¸ ¸˜ ´ ¸ ¸˜ .Toda configuracao neste subconjunto determina uma posicao e orientacao unicas para cada ¸˜ ¸˜ ¸˜ ´uma das partes do robo. Este subconjunto e, em geral, f´ cil de parametrizar, por exemplo, ˆ ´ apela associacao de um angulo ou de uma distˆ ncia com cada junta. V´ rios m´ todos b´ sicos ¸˜ ˆ a a e ade planejamento de trajetoria podem ser extendidos para contemplar esta variacao de forma ´ ¸˜bastante direta, pelo menos teoricamente.7.5.2 Restri¸ oes Cinem´ ticas c˜ a No problema b´ sico supomos que o robo era um objeto de “vˆ o livre”3 , isto e, as unicas a ˆ o ´ ´restricoes ao seu movimento eram devidas aos obst´ culos. Em alguns problemas, no entan- ¸˜ ato, e necess´ rio impor restricoes cinem´ ticas adicionais a movimentacao dos robos. Consi- ´ a ¸˜ a ` ¸˜ ˆderamos aqui dois tipos de restricoes: ¸˜ 1. restricoes holonomicas e ¸˜ ˆ 2. restricoes n˜ o-holonomicas. ¸˜ a ˆRestri¸ oes Holonomicas: c˜ ˆ Vamos assumir que a configuracao e representada por uma lista de parˆ metros de cardi- ¸˜ ´ analidade m´nima. Uma restricao de igualdade holonomica e uma relacao de igualdade entre ı ¸˜ ˆ ´ ¸˜esses parˆ metros, que pode ser resolvida por apenas um dos parˆ metros. Tal relacao reduz a a ¸˜ 3 do inglˆ s free flying object e
    • ´7. Planejamento de Trajetoria 115a dimens˜ o do espaco de configuracoes real do robo de uma dimens˜ o. Um conjunto de a ¸ ¸˜ ˆ arestricoes holonomicas independentes reduz este espaco de ¸˜ ˆ ¸ dimensoes. ˜ Considere, por exemplo, o caso de um objeto tridimensional habilitado a voar livre-mente, mas restrito a girar ao redor de um eixo fixo relativo a . Representamos a orientacao ¸˜de por trˆ s angulos. a restricao imposta restringe as poss´veis orientacoes de e ˆ ¸˜ ı ¸˜ , e podeser expressa como duas equacoes independentes entre esses angulos. Enquanto a dimens˜ o ¸˜ ˆ ado espaco de configuracoes de um objeto “livre” e 6, o espaco de configuracoes de ¸ ¸˜ ´ ¸ ¸˜ temdimens˜ o 4. O caso particular onde a pode transitar livremente no eixo de orientacao fixo ¸˜pode tamb´ m ser considerado um problema com restricoes holonomicas. contudo, j´ que e ¸˜ ˆ aeste problema e equivalente ao problema de planejar o movimento de um robo puntiforme ´ ˆno ÊÆ , podemos encar´ -lo como um caso particular do problema b´ sico. a a Os robos articulados nos d˜ o outro exemplo de restricoes holonomicas. Como exem- ˆ a ¸˜ ˆplo, considere uma junta de revolucao que determina duas restricoes holonomicas. Assim ¸˜ ¸˜ ˆsendo, enquanto seis parˆ metros s˜ o necess´ rios para definir a configuracao de dois objetos a a a ¸˜planares de “voo livre”, quatro parˆ metros bastam para determinar a posicao e a orientacao ˆ a ¸˜ ¸˜de dois objetos planares conectados por uma junta de revolucao. ¸˜ Restricoes holonomicas certamente afetam a definicao do espaco de configuracao dos ¸˜ ˆ ¸˜ ¸ ¸˜robos, e podem mesmo modificar a sua conectividade global. Apesar disso, as restricoes ho- ˆ ¸˜lonomicas n˜ o fazem surgir nenhuma quest˜ o fundamental. A maioria dos m´ todos b´ sicos ˆ a a e ade planejamento continuam aplic´ veis. aRestri¸ oes N˜ o-Holonomicas: c˜ a ˆ Uma restricao de igualdade n˜ o-holonomica e uma equacao n˜ o integr´ vel envolvendo ¸˜ a ˆ ´ ¸˜ a aos parˆ metros de configuracao e suas derivadas (parˆ metros de velocidade). Tais restricoes a ¸˜ a ¸˜n˜ o reduzem a dimens˜ o do espaco de configuracoes do robo, mas reduzem a dimens˜ o do a a ¸ ¸˜ ˆ aespaco de poss´veis movimentos diferenciais (isto e, o espaco das direcoes de velocidade) em ¸ ı ´ ¸ ¸˜uma dada configuracao. Como exemplo, considere um carro-robo movel andando em uma ¸˜ ˆ ´superf´cie plana. Este robo pode ser modelado como um objeto retangular movendo-se em ı ˆÏ ʾ (ver figura 12. Sabemos, por experiˆ ncia, que em um espaco vazio podemos dirigir e ¸o robo para qualquer direcao, com qualquer orientacao. Assim, o espaco de configuracao ˆ ¸˜ ¸˜ ¸ ¸˜do robo tem 3 dimensoes, duas de translacao e uma de rotacao. Vamos representar uma ˆ ˜ ¸˜ ¸˜configuracaodo robo ¸˜ ˆ por ´Ü Ý µ, onde Ü e Ý s˜ o as coordenadas no frame a Ï , do ponto
    • ´7. Planejamento de Trajetoria 116m´ dio e Ö entre as duas rodas trazeiras e ¾ ¼ ¾ µ e o angulo entre o eixo ´ ˆ de Ï e oseixos principais de . A qualquer instante durante um movimento (assumindo que n˜ o h´ a adeslizamento) a velocidade de Ö tem que apontar ao longo do eixo principal de . Com isto,o seu movimento e restringido pela relacao ´ ¸˜  × Ò Ü · Ó× Ý ¼ e pode ser demonstrado que esta equacao e n˜ o integr´ vel, e assim sendo, e uma restricao ¸˜ ´ a a ´ ¸˜de igualdade n˜ o-holonomica. Devido a esta restricao o espaco de movimentos diferenci- a ˆ ` ¸˜ ¸ais ´ Ü Ý µ do robo em qualquer configuracao ´Ü ˆ ¸˜ Ý µ e um espaco bidimensional. Se o ´ ¸robo e um objeto “livre”, este espaco poderia ser tridimensional. O movimento instantˆ neo ˆ ´ ¸ ado carro robo e determinado por dois parˆ metros: a velocidade linear ao longo do seu eixo ˆ ´ aprincipal e o angulo de estercamento. Contudo, quando o angulo de estercamento e diferen- ˆ ¸ ˆ ¸ ´te de zero, o robo modifica a sua orientacao, e com ela a sua velocidade linear, permitindo ˆ ¸˜que as configuracoes do robo se espalhem em um espaco tridimensional. ¸˜ ˆ ¸ Al´ m disso, o angulo de estercamento (denotado por ) e, em geral, restrito a tomar e ˆ ¸ ´valores em um intervalo   Ñ Ü · Ñ Ü ℄, com Ñ Ü ¾. Esta restricao pode ser escrita ¸˜como uma desigualdadeenvolvendo Ü, Ý e . Isto restringe o conjunto de poss´veis mo- ıvimentos diferenciais sem mudar sua dimens˜ o. Chamamos tamb´ m a isto de restricao de a e ¸˜desigualdade n˜ o-holonomica. a ˆ Restricoes n˜ o holonomicas restringem a geometria dos caminhos livres poss´veis (ou ¸˜ a ˆ ıexequiveis) entre duas configuracoes. Este tipo de restricao e bem mais dif´cil de se lidar do ¨ ¸˜ ¸˜ ´ ıque as restricoes holonomicas. ¸˜ ˆ7.5.3 Incerteza No problema b´ sico e feita a suposicao de que o robo pode seguir exatamente os ca- a ´ ¸˜ ˆminhos gerados pelo planejador. Tamb´ m supoe-se que a geometria dos obst´ culos e a e ˜ asua localizacao s˜ o exatamente conhecidas. Nenhum ajuste de um robo real satisfaz estas ¸˜ a ˆsuposicoes, e tanto o controlador do robo quanto a geometria s˜ o imperfeitos. Felizmente, ¸˜ ˆ ana maioria das vezes n˜ o temos que nos preocupar com estas imperfeicoes, porque elas s˜ o a ¸˜ amuito pequenas e tornam-se irrelevantes com relacao a tolerˆ ncia admitida com relacao a ¸˜ ` a ¸˜ `tarefa que est´ sendo executada pelo robo. Por´ m, nem sempre este e o caso. Em alguns a ˆ e ´casos o robo pode ter pouco ou nenhum conhecimento sobre o seu proprio espaco de traba- ˆ ´ ¸lho. Nestes casos recai sobre os sensores a tarefa de obter a informacao necess´ ria para que ¸˜ a
    • ´7. Planejamento de Trajetoria 117 ´o robo realize a sua tarefa. E necess´ rio que o robo explore o seu espaco de trabalho. ˆ a ˆ ¸ Uma situacao intermedi´ ria entre os dois extremos acima ocorre quando h´ erros no ¸˜ a acontrole do robo e nos modelos geom´ tricos iniciais, mas estes erros est˜ o restritos a regioes ˆ e a ` ˜limitadas. Por exemplo, as localizacoes reais dos obst´ culos s˜ o ligeiramente diferentes da- ¸˜ a aquelas no modelo do robo, mas os erros na definicao dos parˆ metros dessas configuracoes ˆ ¸˜ a ¸˜s˜ o limitados. Similarmente, o robo pode mover-se ao longo de uma direcao diferente da a ˆ ¸˜que lhe foi ordenada, mas a direcao real do movimento est´ contida em um cone estreito ¸˜ acentrado na direcao do movimento ordenado ao robo. Para poder tratar com estes erros de ¸˜ ˆlimites, supomos que o robo e equipado com sensores que podem ser usados em tempo de ˆ ´execucao para adquirir informacoes adicionais. Um por´ m e que os sensores n˜ o s˜ o per- ¸˜ ¸˜ e ´ a afeitos. Um exemplo disto e que um sensor de posicao n˜ o retorna a posicao exata do robo. ´ ¸˜ a ¸˜ ˆDesta forma e bastante realista assumir que os erros sensoriais est˜ o contidos em uma re- ´ agi˜ o de incerteza limitada. Quando os erros Quando os erros no controle, sensoreamento e amodelo s˜ o razoavelmente pequenos, e interessante que os planos gerados sejam tolerantes a ´a estes erros, ou seja, que as que as metas sejam alcancadas confiavelmente pela antecipacao` ¸ ¸˜de v´ rias poss´veis contingˆ ncias. a ı e O problema do planejamento de trajetoria com incertezas limitadas pode ser ent˜ o ´ aenunciado como a seguir: “Dada uma regi˜ o a Á inicial e uma regi˜ o meta a no espaco de ¸configuracao do robo, gerar um plano de trajetoria cuja execucao garanta que o robo alcan- ¸˜ ˆ ´ ¸˜ ˆce a configuracao em ¸˜ se ele comecar em qualquer configuracao (desconhecida) em Á , a ¸ ¸˜despeito da incerteza limitada no controle, sensoreamento ou modelo”. Uma solucao para este problema e um plano que combina comandos de movimentos e ¸˜ ´leituras de sensores que interajam em tempo de execucao, visando diminuir a incerteza e ¸˜guiar o robo em direcao a meta. ˆ ¸˜ ` A inclus˜ o da incerteza limitada faz surgir novas questoes importantes que n˜ o s˜ o con- a ˜ a atempladas nem pelo problema b´ sico e nem pelas extensoes anteriores. Devido a incerteza a ˜ `no controle, um movimento de comando pode produzir qualquer caminho dentre uma in-finidade de caminhos consistentes tanto com o comandoquanto com a incerteza. Para queo planejamento garanta o sucesso da execucao, todos estes caminhos devem alcancar a me- ¸˜ ¸ta. Esta, por´ m, n˜ o e uma condicao suficiente. O plano deve tamb´ m terminar na meta. e a ´ ¸˜ eDevido a incerteza no sensoreamento, pode n˜ o ser uma quest˜ o trivial reconhecer a con- ` a afiabilidade do alcance da meta. O planejador deve assegurar que a informacao suficiente ¸˜
    • ´7. Planejamento de Trajetoria 118estar´ dispon´vel para o controlador durante a execucao (reconhecibilidade da meta). a ı ¸˜ A incerteza muitas vezes leva ao uso de comandos de movimentos baseados em sen-sores, cujo comportamento e menos sens´vel a erros do que os comandos de movimento ´ ı `posicionais. Comandos de movimento Force Compliant s˜ o um exemplo de tais coman- ados. Quando eles s˜ o usados, o robo pode tocar a superf´cie dos obst´ culos e deslizar por a ˆ ı aelas (ao longo da projecao da direcao comandada para o movimento) ou pode apenas parar. ¸˜ ¸˜Em contraste, com a incerteza no controle, nenhum comando controlado por posicao pode ¸˜garantir alcancar ¸ . O planejamento de comandos de movimento baseados em sensorespodem requerer que se leve em consideracaoa f´sica do espaco de trabalho. ¸˜ ı ¸7.5.4 Objetos Mov´veis ı Como dissemos anteriormente, no problema b´ sico os objetos no espaco de trabalho a ¸a excecao apenas do proprio robo, s˜ o todos obst´ culos estacion´ rios sem movimento. A` ¸˜ ´ ˆ a a aseguir estendemos o problema para introduzir objetos que se movem, mas seu movimento ´n˜ o est´ sob o controle do robo. Trataremos agora de mais uma extens˜ o: Objetos mov´veis, a a ˆ a ıou seja, objetos do espaco de trabalho que o robo pode movimentar livremente, arrastando, ¸ ˆempurrando ou agarrando. A presenca de objetos mov´veis requer alteracoes no planejador, para que sejam gerados ¸ ı ¸˜comandos de movimento com metas intermedi´ rias a serem alcancadas, e que al´ m disso, a ¸ en˜ o est˜ o especificadas no problema original. Por exemplo, mesmo que n˜ o exista cami- a a anho poss´vel para uma dada configuracao meta, considerando um dado arranjo do espaco ı ¸˜ ¸de trabalho, o robo pode criar um caminho pela movimentacao dos objetos de um lugar ˆ ¸˜para outro. Para fazer isto, o planejador deve selecionar estas outras locacoes (metas in- ¸˜termedi´ rias). Assim, um plano de movimento parece com uma sequˆ ncia alternativa de a ¨emovimentos de trˆ nsito e transferˆ ncia: durante um movimento de trˆ nsito o robo move-se a e a ˆsozinho. Durante um movimento de transferˆ ncia o robo move-se levando consigo algum e ˆdos objetos mov´veis. Os movimentos de trˆ nsito e transferˆ ncia residem em espacos dife- ı a e ¸rentes: os movimentos de trˆ nsito ocorrem no espaco de configuracao do robo, mas diferen- a ¸ ¸˜ ˆtes arranjos produzem diferentes geometrias neste espaco. Um movimento de transferˆ ncia ¸ eocorre no espaco de configuracao da uni˜ o do robo com os objetos moveis que o robo carre- ¸ ¸˜ a ˆ ´ ˆga consigo. Nesta situacao o principal problema para o planejador e determinar qual espaco ¸˜ ´ ¸utilizar e quando mudar de um espaco para o outro. ¸
    • ´7. Planejamento de Trajetoria 119 A maneira mais comum para um robo dispor de um objeto mov´vel e agarr´ -lo rigi- ˆ ı ´ adamente enquanto move-se com ele. No caso de um robo equipado com uma garra de ˆmultiplos dedos, agarrar um objeto j´ e por s´ so um problema dif´cil, pois requer que v´ rias ´ a´ ı ´ ı arestricoes sejam satisfeitas, inclusive: ¸˜ ¯ forca de fechamento (forca que as garras aplicam ao objeto); ¸ ¸ ¯ estabilidade; ¯ tolerˆ ncia a erros de posicao; a ` ¸˜ ¯ minimizacao da forca de agarro; ¸˜ ¸ ¯ possibilidade geom´ trica. eO planejamento do agarro tamb´ m e parte dos problemas de planejamento do movimen- e ´to. Tamb´ m s˜ o partes do problema de planejamento de movimento: empurrar e empilhar e aobjetos, considerando a lei da gravitacao. ¸˜ A introducao dos objetos mov´veis permite que surjam novos tipos de problemas de ¸˜ ıplanejamento em que a meta mais importante n˜ o e apenas atingir uma dada configuracao a ´ ¸˜do robo. Tamb´ m s˜ o metas a composicao de arranjos, como montagens das diversas partes ˆ e a ¸˜de um objeto ou organizar as pecas de uma linha de montagem. ¸7.6 Complexidade Computacional Instˆ ncias do mesmo tipo de problema de planejamento de movimento podem dife- arir consideravelmente em seu “tamanho”, por exemplo: a dimens˜ o do seu espaco de a ¸ ´ a ¸ ´configuracao e o numero de obst´ culos no espaco de trabalho. E importante quantificar ¸˜a performance dos m´ todos de planejamento - tempo requerido para resolver um proble- ema - e a complexidade computacional inerente dos problemas de planejamento como umafuncao destes parˆ metros. A an´ lise dos m´ todos e util para garantir sua praticabilidade e ¸˜ a a e ´ ´para detectar os pontos oportunos que podem ser otimizados para aumentar a eficiˆ ncia. A ean´ lise dos problemas e util para sugerir novas maneiras de formul´ -los, quando existem a ´ ´ afortes evidˆ ncias de que a formulacao original possui apenas solucoes de custo computaci- e ¸˜ ¸˜onal elevado.
    • ´7. Planejamento de Trajetoria 1207.7 Redu¸ ao da Complexidade c˜ Como foi visto no item anterior, o tempo requerido para se resolver um problema deplanejamento de trajetoria aumenta rapidamente com o aumento da dimens˜ o do espaco ´ a ¸de configuracao, com o numero de restricoes polinomiais sobre a movimentacao do robo ¸˜ ´ ¸˜ ¸˜ ˆe o grau destas restricoes. Assim, e importante que estes parˆ metros sejam t˜ o pequenos ¸˜ ´ a aquanto poss´vel. ı Para esta finalidade, podemos aproximar o problema real por um problema simplificado,por´ m real´stico, antes de submetˆ -lo ao planejamento. Se a tarefa do robo e razoavelmente e ı e ˆ ´bem compreendida, e se e aceit´ vel negociar alguma generalidade em troca de uma melhor ´ aperformance, uma tal simplificacao e quase sempre poss´vel. Os problemas simplificados ¸˜ ´ ıpodem ser fornecidos pelo usu´ rio ou gerados automaticamente pelo planejador a partir da adescricao da entrada original. ¸˜ A seguir apresentamos algumas t´ cnicas de aproximacao dos problemas de planejamen- e ¸˜to de trajetoria em outros problema mais simples. A maior parte da discuss˜ o enfoca o ´ aplanejamento de caminhos livres para objetos “livres” e bracos roboticos. ¸ ´7.7.1 Proje¸ ao no espa¸ o de Configura¸ ao c˜ c c˜ Podemos reduzir a dimens˜ o do espaco de configuracao a ¸ ¸˜ pela substituicao do robo ¸˜ ˆpela superf´cie ou volume varridos por ele enquanto ele se move ao longo dos eixos indepen- ıdentes Ö . Isto corresponde a projetar o espaco de configuracoes Ñ   ¸ ¸˜ Ñ Ò× ÓÒ Ð ao longoÖ de suas dimensoes. Seja ˜ ¼ o espaco projetado. Sua dimens˜ o e Ñ   Ö. Os   obst´ culos ¸ a ´ aem s˜ o projetados dentro de a ¼ e o planejamento da trajetoria e conduzido em ¼ , o ´ ´ Ð ÚÖespaco livre em ¸ ¼.Exemplo: Considere um objeto bidimensional , que pode tanto sofrer translacao quanto ¸˜ ¼ rotacao livremente no plano. Este objeto ¸˜ pode ser substitu´do por um disco ı con- tendo (idealmente, o disco e limitado pelo c´rculo de espalhamento m´nimo de ´ ı ı , isto e, o menor c´rculo que engloba todos os pontos de ´ ı ). Esta aproximacao reduz a ¸˜ dimens˜ o do espaco de configuracao de ¿ para ¾; Mas ela e real´stica apenas quando a ¸ ¸˜ ´ ı n˜ o e um objeto alongado. a ´
    • ´7. Planejamento de Trajetoria 1217.7.2 Fatiamento no espa¸ o de Configura¸ ao c c˜ Outra forma de reduzir a dimens˜ o do espaco de configuracao e considerar uma secao a ¸ ¸˜ ´ ¸˜reta de dimens˜ o Ñ a   Ö atrav´ s de e e planejar um caminho livre no espaco definido por ¸esta secao reta. Isto significa proibir o movimento de ¸˜ ao longo de Ö eixos.Exemplo: Seja um objeto tridimensional de “voo livre”. Para planejar um cami- nho da configuracao inicial ¸˜ ÕÒ Ð ÌÒ ´ Ð Ò Ð µ para a configuracao ¸˜ meta ÕÑ Ø ´ÌÑ Ø Ñ Ø µ, podemos considerar a configuracao intermedi´ ria ¸˜ a Õ ÒØ Ö ´ÌÑ Ø Ò Ð µ na qual tem a mesma orientacao ¸˜ Ò Ð como a sua configuracaoinicial e a mesma posicao ¸˜ ¸˜ ÌÑ Ø , como a configuracao meta. Ent˜ o o ¸˜ a planejador pode tentar gerar primeiro um caminho de Õ Ò Ð para Õ ÒØ Ö com uma orientacao fixa de ¸˜ e um segundo caminho de Õ ÒØ Ö para ÕÑ Ø com a posicao fixa ¸˜ de . Cada um dos dois caminhos reside em uma secao reta tridimensional do espaco ¸˜ ¸ de configuracao. ¸˜7.7.3 Simplifica¸ ao da forma do objeto c˜ A complexidade do planejamento de trajetoria aumenta com o numero de restricoes ´ ´ ¸˜polinomiais que definem o espaco livre, e o grau m´ ximo dessas restricoes. Uma forma ¸ a ¸˜de simplificar estas restricoes e aproximar as formas, tanto do robo quanto do numero de ¸˜ ´ ˆ ´obst´ culos, pela reducao do numero de superf´cies que definem os seus limites, ou o grau a ¸˜ ´ ıdas equacoes dessas superf´cies. As t´ cnicas mais simples, por´ m eficientes consistem em ¸˜ ı e eaproximar os objetos por cubos ou esferas. Isto reduz o grau m´ ximo das restricoes, por´ m a ¸˜ eao custo de perdas na acur´ cia da aproximacao, que podem vir a ser grandes. Uma ten- a ¸˜tativa de diminuir estas perdas pode resultar no aumento do numero de superf´cies que ´ ıaproximam o objeto, o que aumenta o numero de restricoes. ´ ¸˜ Existem dois tipos distintos de aproximacoes: as limitantes e as limitadas: ¸˜ ¯ Aproxima¸ oes limitantes: consistem em substituir os objetos originais por outros c˜ que contenham completamente os originais. Se um caminho livre e gerado com es- ´ ta aproximacao, ent˜ o este tamb´ m e um caminho livre com os objetos originais (o ¸˜ a e ´ inverso n˜ o e sempre verdade); a ´ ¯ Aproxima¸ oes limitadas: consistem em substituir os objetos originais por novos ob- c˜ jetos que estejam completamente contidos dentro dos originais. Se nenhum cami-
    • ´7. Planejamento de Trajetoria 122 nho livre e gerado com esta aproximacao, isto implica que n˜ o existe caminho livre ´ ¸˜ a com os objetos originais (novamente, o inverso nem sempre e verdade). Este tipo de ´ aproximacao e geralmente utilizado para detectar se um problema tem ou n˜ o solucao. ¸˜ ´ a ¸˜As aproximacoes acima podem ser usadas da seguinte maneira: primeiramente constroem- ¸˜ ´se v´ rias aproximacoes, tanto limitantes quanto limitadas, com n´veis de precis˜ o crescentes. a ¸˜ ı aA partir da´, o planejador atua iterativamente usando aproximacoes cada vez mais finas, at´ ı ¸˜ eque um caminho livre seja gerado, ou at´ que esteja evidente que tal caminho n˜ o existe. e a7.7.4 Focalizando a Aten¸ ao em um Subconjunto do Espa¸ o de Trabalho c˜ c As t´ cnicas descritas anteriormente s˜ o simplificacoes heur´sticas. Elas se baseiam no e a ¸˜ ıfato de que na maioria dos casos a movimentacao acontece em um espaco relativamente de- ¸˜ ¸sordenado, de tal forma que ainda restam trajetorias de solucao apos as v´ rias estrat´ gias de ´ ¸˜ ´ a eaproximacao terem eliminado algumas. Contudo, em muitos casos existem locais isolados ¸˜que s˜ o muito desordenados e/ou onde o contato com os obst´ culos tˆ m de ser feitos (por a a eexemplo, agarramento e acoplamento de partes). As simplificacoes heur´sticas n˜ o podem ¸˜ ı aser aplicadas a estas localidades desordenadas. ` Se estas localidades desordenadas podem ser identificadas antecipadamente, pode-sedividir o problema do planejamento original em subproblemas que envolvem localidadesdesordenadas que requerem que somente um subconjunto restrito do espaco de trabalho ¸seja considerado. Assim o numero de restricoes sobre o movimento e consideravelmente ´ ¸˜ ´reduzido com respeito ao problema original. Em muitos outros casos essas localidades desordenadas correspondem a situacoes es- ` ¸˜terotipadas (por exemplo, o movimento de um robo atravessando uma porta ou virando ˆem um corredor). Pode ser bastante util tentar reconhecer estas situacoes e tentar aplicar ´ ¸˜t´ cnicas de planejamento espec´ficas e mais eficientes para estes casos. e ı7.8 Relacionamento com outros problemas Um planejador autom´ tico de trajetoria pode ser utilizado de v´ rias formas: ele pode ser a ´ ainclu´do em um sistema de programacao de robos off-line [30], objetivando a simplificacao ı ¸˜ ˆ ¸˜da tarefa de descricao de trajetorias do robo; ele tamb´ m pode ser parte de um sistema ¸˜ ´ ˆ ede planejamento de processos gr´ ficos interativos (p. ex., montagem de um dispositivo a
    • ´7. Planejamento de Trajetoria 123eletro-mecˆ nico) ou ser usado para checar a viabilidade geom´ trica das operacoes planeja- a e ¸˜das (ex: furar um buraco, casamento de duas partes de uma peca, etc). De maneira mais ¸geral, ele pode ser usado para gerar automaticamente cenas gr´ ficas animadas. Al´ m des- a etas aplicacoes de curto prazo, a meta final do planejamento autom´ tico de trajetoria e criar ¸˜ a ´ ´robos autonomos. ˆ ˆ Embora o problema do planejamento de trajetoria seja um problema cr´tico na criacao ´ ı ¸˜de robos moveis, ele n˜ o e o unico. Outros grandes problemas incluem o controle de ˆ ´ a ´ ´movimentacao em tempo real, o sensoreamento e o planejamento em n´vel de resposta. Por ¸˜ ıcausa da interacao potencialmente complexa entre estes elementos, o projeto de robos verda- ¸˜ ˆdeiramente autonomos certamente ir´ requerer que todos estes problemas sejam resolvidos ˆ aconcorrentemente. Por´ m, o conhecimento atual destas questoes e insuficiente para apre- e ˜ ´sentar um quadro compreens´vel de um tal projeto. Faremos a seguir uma breve an´ lise de ı aalgumas poss´veis interacoes entre o planejamento de trajetoria e outros problemas relacio- ı ¸˜ ´nados.7.8.1 Intera¸ ao com Controle de Movimento em Tempo Real c˜ Um plano de movimentacao especifica um movimento a ser executado por um robo. Por ¸˜ ˆexemplo, um caminho especifica uma sequˆ ncia cont´nua de configuracoes que o robo deve ¨e ı ¸˜ ˆatravessar em direcao a configuracao-meta. A tarefa b´ sica do controladorem tempo real e ¸˜ ` ¸˜ a ´fazer o robo executar o plano de movimentacao, isto e, o caminho gerado. ˆ ¸˜ ´ Suponhamos que o plano de movimentacao e um caminho livre . A terefa b´ sica do ¸˜ ´ acontrolador em tempo real e fazer o robo executar o plano de movimentos, isto e, fazer o ´ ˆ ´robo seguir o caminho gerado. ˆ Vamos supor agora que o plano de movimentos e um caminho livre . A tarefa do con- ´trolador e transformar em forcas4 a serem exercidas pelos atuadores do robo. Tipicamente, ´ ¸ ˆesta transformacao e dividida em dois passos: ¸˜ ´ ¯ Gera¸ ao de Trajetoria: consiste em decidir sobre o perfil da velocidade ao longo do c˜ ´ caminho. Este passo pode ser feito anteriormente a execucao do movimento. ` ¸˜ ¯ Monitoramento de trajetoria: consiste na computacao das forcas a serem exercidas ´ ¸˜ ¸ pelos atuadores a cada instante, para permitir realizar o movimento desejado. 4 Aqui a palavra for¸a e utilizada em um sentido gen´ rico, indicando uma forca ou um torque, dependendo c ´ e ¸da natureza do atuador.
    • ´7. Planejamento de Trajetoria 124O monitoramento da trajetoria pode usar a equacao dinˆ mica do robo, a qual expressa que ´ ¸˜ a ˆas forcas aplicadas pelos atuadores e igual a resultante das v´ rias forcas que agem sobre o ¸ ´ ` a ¸robo durante o movimento (forcas gravitacional, atrito, in´ rcia, centr´fuga e coriolis) para ˆ ¸ e ıcomputar as forcas que devem ser realizadas por cada atuador. Se a equacao utilizada for ¸ ¸˜um modelo perfeito, n˜ o e necess´ rio nenhum feedback, caso contr´ rio o mesmo torna-se a ´ a anecess´ rio. Contudo, devido a v´ rias fontes de perturbacao esternas e internas, algum tipo a ` a ¸˜de sensoreamento se faz necess´ rio para determinar qualquer desvio entre o estado desejado ae o estado real do robo. (7.1) ˆ Planejador de Trajetoria τ Gerador de Trajetoria qd(t) Controlador (Monitor de F Atuadores Trajetoria) qiFigura 7.1: O caminho produzido pelo planejador e a entrada para o gerador de trajetoria ´ ´que determina as dependˆ ncias de tempo dos parˆ metros de configuracao. A sa´da do ge- e a ¸˜ ırador, as configuracoes desejadas Õ como funcao do tempo, alimentam o controlador. O ¸˜ ¸˜controlador computa a forca¸ a ser exercida por cada atuador a partir dos desvios daconfiguracao atual Õ , conforme medida pelos sensores, relativa a Õ . ¸˜ `7.8.2 Intera¸ ao com o Sensoreamento c˜ No problema b´ sico do planejamento de trajetoria e suposto que o robo tem conhecimen- a ´ ´ ˆto completo e exato do seu ambiente. Como j´ foi mencionado anteriormente, esta suposicao a ¸˜n˜ o e realistica. Existema muitos problemas reais em que a geometria do espaco de trabalho a ´ ¸n˜ o e conhecida totalmente, ou e apenas conhecida de forma parcial. Se o robo n˜ o possui a ´ ´ ˆ anenhum conhecimento anterior sobre o seu ambiente, o planejamento e inutil. Ent˜ o o robo ´ ´ a ˆdeve confiar no sensoreamento para adquirir informacoes enquanto move-se pelo espaco de ¸˜ ¸trabalho, reagindo aos dados sensoriais. Se o robo, por exemplo, est´ equipado com senso- ˆ a
    • ´7. Planejamento de Trajetoria 125res de proximidade, um m´ todo de campo potencial pode ser aplicado on-line para orientar eo movimento. A configuracao-meta e usada para criar o potencial atrativo, enquanto que os ¸˜ ´dados fornecidos pelos sensores de proximidade s˜ o usados para criar o potencial repulsi- avo. N˜ o existe planejamento anterior e o robo pode facilmente ficar preso em um m´ ximo a ˆ alocal do campo potencial. O escape deste tipo de situacao exige que alguma estrat´ gia de ¸˜ eexploracaopor tentativa e erro por parte do robo. ¸˜ ˆ7.8.3 Intera¸ ao com o planejamento em n´vel de tarefa c˜ ı Uma meta do planejamento de trajetoria e especificada como um arranjo espacial de ´ ´objetos f´sicos. Alcancar esta meta pode contribuir para a realizacao de uma terefa mais glo- ı ¸ ¸˜bal. Um exemplo t´pico pode ser um robo de reparos cuja tarefa e diagnosticar falhas em ı ˆ ´pecas de equipamentos eletromecˆ nicos e repar´ -las. Encontrar uma falha t´pica requer que ¸ a a ıo equipamento seja inspecionado e operado, dispositivos de medida devem ser conectadose pontas de prova devem ser inseridas e removidas. Cada uma destas operacoes pode ser ¸˜especificada por um arranjo espacial de objetos, mas decidir quais as operacoes devem ser ¸˜executadas e qual a sequˆ ncia correta das operacoes - planejamento de tarefa - requer capa- ¨e ¸˜cidades de racioc´nio e planejamento de “alto n´vel”, que s˜ o superiores aquelas possu´das ı ı a ` ıpor um planejador de movimentos. Uma das areas que mais tem contribu´do para este tipo de planejamento e a Inteligˆ ncia ´ ı ´ eArtificial (IA). Os m´ todos de planejamento da IA tˆ m se mostrado altamente adequados e epara a construcao de planejadores cujas sa´das s˜ o sequˆ ncias de operacoes, cada uma espe- ¸˜ ı a ¨e ¸˜cificando um novo relacionamento espacial meta ao planejador de movimentos.Exerc´cios ı 1. Discuta em que aspectos o planejamento de trajetoria difere de ´ (a) verificacao de colisoes; ¸˜ ˜ (b) evitar colisoes ˜ 2. Escreva um algoritmo para verificar se dois pol´gonos se chocam, dadas as coorde- ı nadas de todos os seus v´ rtices e uma lista das arestas que interconectam pares de e v´ rtices. e
    • ´7. Planejamento de Trajetoria 126 3. Foi dito que a representacao do robo como um ponto no seu espaco de configuracao ¸˜ ˆ ¸ ¸˜ transforma o problema de planejamento de trajetoria de um objeto dimensionado em ´ um problema “mais simples”. Vocˆ concorda ou discorda com este ponto de vista? e Explique sua resposta. 4. Discuta as suposicoes sob as quais e real´stico considerar um robo com rodas como um ¸˜ ´ ı ˆ objeto bidimensional que se move livremente em um plano. 5. Identifique e discuta brevemente alguns problemas t´picos de planejamento de tra- ı jetoria para ´ (a) um robo movel carregando objetos no ambiente de um escritorio; ˆ ´ ´ (b) um robo de uma plataforma espacial movido por foguetes e equipado com dois ˆ bracos para montar plataformas orbitais. ¸
    • Cap´tulo 8 ıGloss´ rio aRobo Movel ´ ˆ ´ µ Um robo movel e um dispositivo mecˆ nico, montado sobre uma base n˜ o fixa, dotado de ˆ ´ ´ a adispositivos para movimentacao e equipado com sensores e atuadores. Possui movimentos ¸˜ ¸˜ ¸˜ ` ´de rotacao e translacao e responde a um sistema computacional. E representado como umobjeto r´gido, que possui um sistema Cartesiano de coordenadas ı , cuja origem e dada por ´Ç .Espa¸ o de Trabalho ´Ï µ c ´ E o espaco f´sico no qual o robo se movimentar´ . Este espaco e modelado por um espaco ¸ ı ˆ a ¸ ´ ¸euclidiano Æ   Ñ Ò× ÓÒ Ð ´Ê Æ µ onde Æ e igual a 2 ou 3. A este espaco e fixado um sistema ´ ¸ ´Cartesiano de coordenadas Ï , cuja origem e dada por ÇÏ . ´Obst´ culos Fixos ´ a µ S˜ o objetos r´gidos, fixos no espaco de trabalho, que oferecem restricoes ao movimento a ı ¸ ¸˜do robo. ˆObst´ culos Dinˆ micos ´ a a Ø ´ µµ S˜ o objetos que podem movimentar-se pelo espaco de trabalho e alteram dinamicamente a ¸o espaco de configuracao. Obst´ culos moveis podem ser pessoas, outros robos moveis ou ¸ ¸˜ a ´ ˆ ´ainda, obst´ culos n˜ o conhecidos ‘a priori’ pelo robo. a a ˆ
    • ´8. Glossario 128Configura¸ ao ´Õ µ c˜ A configuracao de um objeto e a especificacao da posicao de todos os pontos deste ob- ¸˜ ´ ¸˜ ¸˜jeto com relacao a um sistema de coordenadas fixo. Assim, uma configuracao ¸˜ ¸˜ Õ de ea ´especificacao da posicao e orientacao de ¸˜ ¸˜ ¸˜ com relacao a Ï . ¸˜Espa¸ o de Configura¸ ao ´ c c˜ µ ´ E a regi˜ o formada por todas as poss´veis configuracoes de a ı ¸˜ no espaco de trabalho, ¸considerando-se as restricoes impostas pelos obst´ culos. Neste espaco o robo e representado ¸˜ a ¸ ˆ´por um ponto (a origem do seu sistema de coordenadas), e os obst´ culos sofrem a expans˜ o a adada pela soma de uma ‘regi˜ o ou zona de incerteza’. O subconjunto de Ï ocupado por aem uma dada configuracao Õ e denominado ¸˜ ´ Õ ´ µ.C-Obst´ culo ´ a µ Um C-Obst´ culo e o obst´ culo ´ a ´ a µ do espaco de trabalho ´ ¸ Ï µ mapeado para uma regi˜ o ano espaco de configuracao ´ ¸ ¸˜ µ: Õ¾ Õ ´ µO C-Obst´ culo e obtido pelo obst´ culo acrescido de uma ‘regi˜ o de incerteza’. Esta regi˜ o a ´ a a ade incerteza e constru´da pela origem do sistema cartesiano de coordenadas do robo ´ ı ˆ Ç ´ µquando este e ‘passado’ sobre as bordas do obst´ culo ´ ´ a µ. Um exemplo simples e mostrado na figura 8.1. O robo ´ ˆ ´ µ e um disco e tem a origem ´do seu sistema de coordenada Ç ´ µ fixa em seu centro. O obst´ culo a ´ µ e um obst´ culo ´ apoligonal inserido em um espaco de trabalho ´Ï µ bidimensional ´Ê¾ µ. O C-Obst´ culo ´ ¸ a µe obtido pelo ‘crescimento’ de´ isotropicamente pelo raio de . A borda de e a curva ´formada pela origem Ç quando ‘passada’ por toda a borda de .Regi˜ o C-Obst´ culo a a ´ E a uni˜ o de todos os C-Obst´ culos a a no espaco de configuracao ¸ ¸˜ . Õ ½
    • ´8. Glossario 129 Figura 8.1: Obtencao de um C-Obst´ culo ¸˜ aEspa¸ o Livre ´ Ö c µ ´ E a regi˜ o no espaco de configuracao livre para a atuacao do robo. Tamb´ m pode ser a ¸ ¸˜ ¸˜ ˆ edefinido como a intersecao vazia entre as configuracoes do robo com os obst´ culos. ¸˜ ¸˜ ˆ a Õ Ö Õ¾ Õ ´ µ ´ µ ½Caminho ´ µ ´ E o mapa cont´nuo das configuracoes do robo que o conduzem do ponto inicial ao ponto ı ¸˜ ˆobjetivo. ¼ ½℄ Öcom ´¼µ ponto inicial e ´½µ ponto objetivo.
    • Referˆ ncias Bibliogr´ ficas e a [1] A ND , I. E. Object recognition with ultrasonic sensors. [2] A RKIN , R. Towards the unification of navigational planning and reative control. In AAAI Spring Symposium on Robot Navigation (1989). [3] A RKIN , R. C., AND B ALCH , T. R. Aura: principles and practice in review. JETAI 9, 2-3 (1997), 175–189. [4] A SAMI , S. Robots in japan: Present and future. IEEE Robotics & Automation Magazine (June 1994), 22–26. [5] B ARRIENTOS , A., F.P E N´N , L., B ALAGUER , C., ˜I AND A RACIL , R. Fundamentos de Rob´ tica. McGraw-Hill, 1997. o [6] B ASTOS F ILHO , T. F. Oficina de robstica, 1999. [7] B ITTENCOURT, G. Inteligˆ nica artificial distribu´da. In I Workshop de Computa¸ao do ITA e ı c˜ (S˜ o Jos´ dos Campos, S˜ o Paulo, Outubro, 6 1998). a e a [8] B ORENSTEIN , B. J. Internal correction of dead-reckoning errors with the smart encoder trailer. [9] B ORENSTEIN , J., E VERETT, H., AND F ENG , L. Where am i? sensors and methods for mobile robots positioning. University of Michigan, Apr. 1996.[10] B ORENSTEIN , J., E VERETT, H., F ENG , L., AND W EHE , D. Mobile robot positioning: Sensors and techniques, 1997.[11] B ORENSTEIN , J., AND F ENG , L. Correction of systematic odometry errors in mobile robots, 1995.
    • ˆ ´Referencias Bibliograficas 131[12] B ROOKS , R. Solving the find-path problem by good representation of free-space. IEEE Transactions on Systems, Man., and Cybernetics 13, 3 (Mar/Abr 1983), 190–197.[13] B ROOKS , R. A robust layered control system for a mobile robot. IEEE Journal of Robotics and Automation 2, 1 (Mar. 1986), 14–23.[14] B ROOKS , R. Elephants don’t play chess. in Robotics and Autonomous Systems Vol. 6, p´ gs. 3–15, 1990. a[15] B ROOKS , R. New approaches to robotics. in Science, Vol. 253, September, p´ gs 1227– a 1232, 1991.[16] B ROOKS , R. A. Integrated systems based on behaviors. SIGART Bulletin (August 1991), 46–50.[17] B ROOKS , R. A. Behaviour-based humanoid robotics. In IEEE/RSJ International Confe- rence on Intelligent Robots and Systems:IROS 96 (November 1996).[18] DA S ILVA B AGANTINI , D. D. Um sistema multiagente para o simulador soccerserver. Master’s thesis, Universidade Federal do Rio Grande do Sul, April 2001.[19] D URFEE , E. H., AND R OSENSCHEIN , J. S. Distributed problem solving and multi-agent systems: Comparisons and examples. In International Workshop on Distributed Artificial Intelligence (May 1994).[20] E VERETT, H. Sensors for Mobile Robots: Theory and Aplication. A.K. Peters, 1995.[21] E VERETT, H., G AGE , D., G ILBRETH , G., L AIRD , R., AND S MURLO , R. Real-world issues in warehouse navigation.[22] F ERBER , J., AND G ASSER , L. Intelligence artificielle distribu´ e. In Tutorial Notes of the e 11th Conference on Expert Systems and their Aplications (France, 1991).[23] G ASSER , L. Boundaries, identity and aggregation: Plurality issues in multiagent sys- tems. In Decentralized Artificial Intelligence, E. Werner and Y. Demazeau, Eds. Elsevier Science Publishers, 1992, pp. 199–212.[24] J. B ORENSTEIN , L. F ENG , H. E. Navigation Mobile Robots: Systems and Techiques. A.K. Peters, 1996.
    • ˆ ´Referencias Bibliograficas 132[25] J ARVIN , R., AND B YRNE , J. Robot navigation: Touching, seeing and knowing. In Proceedings of 1st. Australian Conf. Artificial Intelligence (1986).[26] J.L. J ONES , A.M. F LYNN , B. S. Mobile Robots: Inspiration to Implementation, second ed. A.K. Peters, 1999.[27] K HATIB , O. Real time obstacke avoidance for manipulators and mobile robots. Inter- national Journal of Robotics Research, 5(1) (1986), 90–98.[28] K UMPEL , D., AND S ARRADILLA , F. Robot navigation strategies in a partially known environment using a space-time learning graph. In Proceedings of the Sixth CIM - Europe Annual Conference (1990), pp. 65–75.[29] K UO , B. C. Sistemas Autom´ ticos de Control, third ed. CECSA, 1995. a[30] L ATOMBE , J. Robot Motion Planning. Kluwer Academic Publishers, Boston, MA, 1991. ´[31] L OZANO -P E REZ , T. Spatial planning: A configuration space aproach. IEEE Transactions on Computers C-32, 2 (Feb. 1983), 108–120.[32] M ARCHI , J. Navegacao de robos moveis autonomos: Estudo e implementacao de abor- ¸˜ ˆ ´ ˆ ¸˜ dagens. Master’s thesis, UFSC - Universidade Federal de Santa Catarina, 2001.[33] M ATARIC , M. Integration of representation into goal-driven behavior-based robots. IEEE Transactions on Robotics and Automation 8, 3 (June 1992), 304–312.[34] N ILSSON , N. A mobile automaton: An application of artificial intelligence techni- ques. In Proceedings of the 1st. International Joint Conference on Artificial Intelligence (1969), pp. 509–520.[35] O HYA , A., K OSAKA , A., AND K AK , A. Vision-based navigation by a mobile robot with obstacle avoidance using single-camera vision and ultrasonic sensing.[36] R IBEIRO , C., C OSTA , A., AND R OMERO , R. Robos moveis inteligentes: Principios e ˆ ´ t´ cnicas. In Anais do XXI Congresso da Sociedade Brasileira de Computa¸ao - SBC’2001 (July e c˜ 2001), vol. 03, pp. 258–306.[37] S OAREZ , R. Curso de robots moviles. Universidad Carlos III de Madrid, Nov. 1999. ´[38] T EIXEIRA , J. Mente, C´rebro & Cogni¸ao. Editora Vozes, 2000. e c˜
    • ˆ ´Referencias Bibliograficas 133[39] T HRUN , S., AND ¨ B UCKEN , A. Integrating grid-based and topological maps for mobile robot navigation. In Procedings of the Thirteenth National Conference on Artificial Intelli- gence (Aug. 1996).[40] WALLNER , F., AND D ILLMANN , R. Real-time map refinement by use of sonar and active stereo-vision. Robotics and Autonomous Systems, 16 (1995), 47–56.[41] Z ELINSKY, A. A mobile robot exploration algorithm. IEEE Transactions on Robotics and Automation 8, 6 (Dec. 1992), 707–717.