SlideShare uma empresa Scribd logo
1 de 47
Baixar para ler offline
19/10/2010




Robôs Móveis e Veículos Autônomos:
Pesquisa, Desenvolvimento e Desafios
   na área da Inteligência Artificial
 Denis F. Wolf       Fernando S. Osório               Kalinka R. J. Castelo Branco
                           Universidade de São Paulo – USP - ICMC
                 Grupo de Sistemas Embarcados, Evolutivos e Robóticos - SEER
                            Laboratório de Robótica Móvel - LRM
                             INCT – Sistemas Embarcados Críticos




                                                                                   CLEI 2010
                                                                                     #1




             Laboratório de Robótica Móvel – ICMC/USP



   Desafios da Inteligência Artificial:
    Pesquisa e Desenvolvimento de
  Robôs Móveis e Veículos Autônomos
Denis F. Wolf                Fernando S. Osório                   Kalinka R. J. Castelo
                                   Branco
                       Universidade de São Paulo – USP - ICMC
            Grupo de Sistemas Embarcados, Evolutivos e Robóticos - SEER
                         Laboratório de Robótica Móvel - LRM                       Parte II
                        INCT – Sistemas Embarcados Críticos



                                                                               2




                                                                                                       1
19/10/2010




             Robótica Móvel
 • Simuladores de Robôs Móveis
    • Player/Stage/Gazebo


 • Algoritmos Inteligentes para Robôs Móveis
    • Localização
    • Mapeamento
    • SLAM
    • Navegação

                                                 CLEI 2010
                                                   #3




Robótica Móvel - Desenvolvimento




 Simulação          Testes em robôs    Testes em robôs
                    de pequeno porte   de grande porte




                                                                     2
19/10/2010




Robótica Móvel - Desenvolvimento
                         Simulação
Validação inicial dos algoritmos
desenvolvidos utilizando simuladores
de robôs e sensores.


Vantagens:
- Possibilidade irrestrita de experimentos
- Economia de tempo de desenvolvimento
- Evita danos aos robôs e sensores




Robótica Móvel - Desenvolvimento
        Testes em robôs de pequeno porte
 Validação do sistema em ambientes
 reais de escala reduzida.
 Vantagens:
 - Ambientes e informações reais para
 validação dos sistemas desenvolvidos
 - Facilita a logística dos experimentos
 - Diminui a chance de danos aos robôs e
 sensores




                                                     3
19/10/2010




Robótica Móvel - Desenvolvimento
        Testes em robôs de grande porte
Validação do sistema em ambientes e
situações reais.
Características:
- Ambientes e informações reais para
validação dos sistemas desenvolvidos
- Logística complexa
- Possibilidade de danos aos robôs e sensores




    Simuladores de Robôs Móveis
Carmen
    • Desenvolvido na CMU
    • Simula e controla robôs móveis
    • Gratuito e código aberto
    • SO: Linux


Aria/Saphira
    • Desenvolvido pela MobileRobots
    • Simula e controla robôs Pioneer
    • Exige licença
    • SO: Linux e Windows

                                                CLEI 2010
                                                  #8




                                                                    4
19/10/2010




      Simuladores de Robôs Móveis
Microsoft Robotics Studio
   • Desenvolvido pela Microsoft
   • Simula e controla robôs móveis
   • Simulação física (3D)
   • 3 tipos de licença
   • SO: Windows
Webots
   • Desenvolvido pela Cyberbotics
   • Simula e controla robôs móveis
   • Simulação física (3D)
   • Exige licença
   • SO: Linux, Windows e Mac.

                                                    CLEI 2010
                                                      #9




                Player/Stage/Gazebo
 • Player
     • Sistema para controle de robôs móveis
     • Suporta diversos tipos de robôs e sensores

 • Stage
     • Simulador de robôs móveis e sensores
     • Ambientes bidimensionais
     • Compatível com Player

 • Gazebo
    • Simulador de alta fidelidade
     • Ambientes em 3 dimensões
     • Compatível com Player


                                                    CLEI 2010
                                                      # 10




                                                                        5
19/10/2010




              História do Player

• Projeto iniciado em 2000 na University of Southern California.

• Hoje em dia, seu core básico continua sendo desenvolvido
  pelos autores originais, apesar de diversos pesquisadores
  de diferentes instituições contribuem para o projeto.

• Atualmente, o Player é utilizado por diversas empresas
  e universidades em 5 continentes.

                 + 3.000 downloads por mês.


                                                              CLEI 2010
                                                                # 11




       Características do Player
    • Software livre
    • Modelo Cliente/Servidor
    • Desenvolvido para sistemas Linux/Unix
    • Comunicação baseada em sockets
    • Clientes em: C, C++, Java, Python etc
    • Interface de alto nível para acesso ao hardware
    • Suporta grande quatidade de plataformas robóticas
      e sensores comerciais

                                                              CLEI 2010
                                                                # 12




                                                                                  6
19/10/2010




                                                                                                                   Programa de controle
A imagem não pode ser exibida. Talv ez o computador não tenha memória suficiente para abrir a imagem ou talv ez ela esteja corrompida. Reinicie o computador e abra o arquiv o nov amente. Se
ainda assim aparecer o x v ermelho, poderá ser necessário excluir a imagem e inseri-la nov amente.
                                                                                                                                                                                                                               o ráusu od amargorP
                                                                                                                                                                                                                               o ráusu od amargorP
                                                                                                                                                                                                                               oiiiiráusu od amargorP
                                                                                                                                                                                                                               o ráusu od amargorP
                                                                                                                                                                                                             ICP
                                                                                                                                                                                                 aremaC
                                                                                                                                                                                                             BSU
                                                                                                                                                                                                                              oãçisiuqA
                                                                                                                                                                                                  resaL                       sodad ed
                                                                                                                                                                                                                            serosnes sod
                                                                                                                                                                                                            l ai r e S
                                                                                                                                                                                                 ranoS
                                                                                                                                                                                                                                           otnemajenalP
                                                                                                                                                                                                airtemodO
                                                                                                                                                                                                                             sodnamoC
                                                                                                                                                                                                                               so arap
                                                                                                                                                                                                                              serotom       o t n e m a c ol s e D
                                                                                                                                                                                                                                                 o d aj e s e d
                                                                                                                                                                                                 serotoM     l ai r e S
                                                                                                                                                                                                            subnaC



                                                                                                                                                                                                                                                          CLEI 2010
                                                                                                                                                                                                                                                            # 13




                                                                                                                                                                                                   Player
A imagem não pode ser exibida. Talv ez o computador não tenha memória suficiente para abrir a imagem ou talv ez ela esteja corrompida. Reinicie o computador e abra o arquiv o nov amente. Se
ainda assim aparecer o x v ermelho, poderá ser necessário excluir a imagem e inseri-la nov amente.
                                                                                                                                                                                                                             reyalP              amargorP
                                                                                                                                                                                                             ICP                                oiiiráusu od
                                                                                                                                                                                                                                                o ráusu od
                                                                                                                                                                                                                                                o ráusu od
                                                                                                                                                                                                 aremaC
                                                                                                                                                                                                             BSU
                                                                                                                                                                                                                            oãçisiuqA
                                                                                                                                                                                                  resaL                     sodad ed
                                                                                                                                                                                                                          serosnes sod
                                                                                                                                                                                                            l ai r e S
                                                                                                                                                                                                 ranoS
                                                                                                                                                                                                                                             otnemajenalP
                                                                                                                                                                                                airtemodO
                                                                                                                                                                                                                           sodnamoC
                                                                                                                                                                                                                             o arap
                                                                                                                                                                                                                             rotom           o t n e m a c ol s e D
                                                                                                                                                                                                                                                  o d aj e s e d
                                                                                                                                                                                                 serotoM     l ai r e S
                                                                                                                                                                                                            subnaC



                                                                                                                                                                                                                                                          CLEI 2010
                                                                                                                                                                                                                                                            # 14




                                                                                                                                                                                                                                                                              7
19/10/2010




             Abstração de hardware
             A imagem não pode ser exibida. Talv ez o computador
             não tenha memória suficiente para abrir a imagem ou
             talv ez ela esteja corrompida. Reinicie o computador e
             abra o arquiv o nov amente. Se ainda assim aparecer o x
             v ermelho, poderá ser necessário excluir a imagem e
             inseri-la nov amente.
                                                                                     acetoilbiB
erawdraH                                                               rod vreS
                                                                       rod vreS
                                                                       rodiiiivreS
                                                                       rod vreS      od etneilC
ôboR oD                                                                 reyalP         reya P
                                                                                       reyallllP
                                                                                       reya P
                                                                                       reya P


                                                                                      ++C/C
rodalumiS                                                              rodivreS         #C         amargorP
  egatS                                                                 reya P
                                                                        reyallllP
                                                                        reya P
                                                                        reya P         avaJ        oiráusu od
                                                                                        lcT
                                                                                      nohtyP
                                                                                       ybuR
                                                                                       psiL
rodalumiS                                                                             evatcO
 obezaG                                                                rod vreS
                                                                       rod vreS
                                                                       rodiiiivreS
                                                                       rod vreS
                                                                        reyalP




                                                                                                    CLEI 2010
                                                                                                      # 15




            Modelo Cliente/Servidor




        • Clientes podem se conectar a múltiplos servidores
        • Servidores aceitam conexão de múltiplos clientes
        • Operação remota




                                                                                                                        8
19/10/2010




   Modelo Cliente/Servidor




• Clientes podem se conectar a múltiplos servidores
• Servidores aceitam conexão de múltiplos clientes
• Operação remota




   Modelo Cliente/Servidor




   • Clientes podem se conectar a múltiplos servidores
   • Servidores aceitam conexão de múltiplos clientes
   • Operação remota




                                                                 9
19/10/2010




Gazebo - Simulação 3D
    Robô Pioneer 3 AT




Gazebo - Simulação 3D
     Veículo de testes




                                10
19/10/2010




   Gazebo - Simulação 3D
      Veículo e ambiente de testes




           Robótica Móvel
• Simuladores de Robôs Móveis
  • Player/Stage/Gazebo


• Sistemas Robóticos Móveis Inteligentes
  • Localização
  • Mapeamento
  • SLAM
  • Navegação

                                           CLEI 2010
                                             # 22




                                                              11
19/10/2010




  Robôs Móveis - Características
Um robô móvel é uma máquina capaz de extrair informação do
ambiente e usar seu conhecimento sobre o mesmo para se
locomover com um propósito definido.
                                          Ronald Arkin


              Principais características:
                  •   Mobilidade
                  •   Capacidade de percepção
                  •   Autonomia
                  •   Inteligência


                                                           CLEI 2010
                                                             # 23




     Robôs Móveis - Aplicações



       Guia de museu                 Mapeamento de minas




Verificação da qualidade da água      Navegação autônoma

                                                           CLEI 2010
                                                             # 24




                                                                              12
19/10/2010




             Problemas

• Sensores são limitados e imprecisos.

• Atuadores são limitados e imprecisos.

• O ambiente e o estado interno do robô são
  parcialmente observáveis.

• Ambientes reais são dinâmicos e imprevisíveis.



                                              CLEI 2010
                                                # 25




         Modelo Básico




                                              CLEI 2010
                                                # 26




                                                                 13
19/10/2010




                Robótica Móvel
   • Simuladores de Robôs Móveis
      • Player/Stage/Gazebo


   • Sistemas Robóticos Móveis Inteligentes
      • Localização
      • Mapeamento
      • SLAM
      • Navegação

                                               CLEI 2010
                                                 # 27




                   Localização

Estimar a posição do robô em um ambiente
                                              Destino
previamente conhecido, utilizando
informações obtidas por sensores.


                                    ?
                             ?          ?




                                               CLEI 2010
                                                 # 28




                                                                  14
19/10/2010




     Robôs Móveis - Aplicações



       Guia de museu               Mapeamento de minas




Verificação da qualidade da água   Navegação autônoma

                                                         CLEI 2010
                                                           # 29




        Localização - Problemas
  Efeito da imprecisão das informações dos sensores:




         Trajeto real                   Odometria

                                                         CLEI 2010
                                                           # 30




                                                                            15
19/10/2010




    Localização - Problemas
Efeito da imprecisão das informações dos sensores:




                               ++++++ GPS
                               --------- Odometria




                                                     CLEI 2010
                                                       # 31




Localização – Tipos de problemas

Tracking
  • Posição inicial é conhecida
  • Busca local (correção de odometria)


Localização global
  • Posição inicial não é conhecida
  • Busca global


                                                     CLEI 2010
                                                       # 32




                                                                        16
19/10/2010




             Localização - Soluções

  Framework básico: Filtro de Bayes

  Representação da posição do robô
      • Distribuição Normal (Filtro de Kalman)

      • Malha de células (Grid / Markov)

      • Partículas/Amostras (Monte Carlo)


                                                                 CLEI 2010
                                                                   # 33




                    Filtro de Bayes


  Nova       Observação          Deslocamento       Estimativa
estimativa   (diminuição            do robô          anterior
             de incerteza)   (aumento de incerteza)




                                                                 CLEI 2010
                                                                   # 34




                                                                                    17
19/10/2010




                     Filtro de Kalman
     • Uma das primeiras implementações práticas do
     filtro de Bayes (1960).
     • Hipóteses para utilização do filtro:
           • Erro médio de cada variável igual a zero;
           • Erro independente para cada variável;
           • Modelo linear de evolução do sistema;
           • Relacionamento linear entre variáveis de estado e
           variáveis medidas.

     • Se as hipóteses acima não forem cumpridas, a
     optimalidade não é assegurada.
                                                                 CLEI 2010
                                                                   # 35




                     Filtro de Kalman
Algoritmo filtro de Kalman( µt-1, Σt-1, ut, zt):
Predição:
1. µ t = At µt −1 + Bt ut
2. Σ t = At Σ t −1 AtT + Rt

Correção:
                                  −1
1. K t = Σ t Ct (Ct Σ t Ct + Qt )
              T            T


2. µt = µ t + K t ( zt − Ct µ t )
3. Σ t = ( I − K t Ct )Σ t
4.     Return µt, Σt


                                                                 CLEI 2010
                                                                   # 36




                                                                                    18
19/10/2010




  Localização – Filtro de Kalman (EKF)


Atuação (movimento do robô):
    aumento de incerteza



                                Percepção (sensores):
                               diminuição da incerteza




                                                         CLEI 2010
                                                           # 37




     Localização - Filtro de Kalman




                                                         CLEI 2010
                                                           # 38




                                                                            19
19/10/2010




   Filtro de Kalman - Avaliação
• Não é ótimo.
• Pode divergir de acordo a não-linearidade.
• Altamente Eficiente: complexidade polinomial com as
dimensões de medição k e de estado n: O(k2.376 + n2 )
•Funciona surpreendentemente bem, mesmo quando as
suposições básicas são violadas!
• Adequado para tracking (busca local)


                                                        CLEI 2010
                                                          # 39




 Localização – Malha de células
    Atuação (movimento do robô): aumento de incerteza
       Percepção (sensores): diminuição da incerteza




                                                        CLEI 2010
                                                          # 40




                                                                           20
19/10/2010




Localização – Malha de células
        Posição do robô: ( x, y,θ )




                                      CLEI 2010
                                        # 41




   Localização - Exemplo




                                      CLEI 2010
                                        # 42




                                                         21
19/10/2010




   Malha de Células - Avaliação

 • Possibilita localização global.

 • Precisão depende das dimensões das células
 • Altíssima demanda computacional




                                                       CLEI 2010
                                                         # 43




Localização – Partículas (Monte Carlo)
 • Cada partícula representa a possibilidade do robô
 estar naquela posição especifica.

 • É atribuído um peso a cada partícula proporcional a
 sua chance de representar a posição do robô.

 • Partículas com peso baixo são excluídas.

 • Dado número suficiente de partículas, é provado que
 o método converge.


                                                       CLEI 2010
                                                         # 44




                                                                          22
19/10/2010




   Filtro de Partículas




                            CLEI 2010
                              # 45




Propagação das Partículas




                            CLEI 2010
                              # 46




                                               23
19/10/2010




Filtro de Partículas - Exemplo




                                   CLEI 2010
                                     # 47




Filtro de Partículas - Simulação




                                   CLEI 2010
                                     # 48




                                                      24
19/10/2010




         Filtro de Partículas

•Algoritmo bastante eficiente
computacionalmente
• Possibilita localização global
• Implementação relativamente simples




                                           CLEI 2010
                                             # 49




           Robótica Móvel
• Simuladores de Robôs Móveis
  • Player/Stage/Gazebo


• Sistemas Robóticos Móveis Inteligentes
  • Localização
  • Mapeamento
  • SLAM
  • Navegação

                                           CLEI 2010
                                             # 50




                                                              25
19/10/2010




                 Mapeamento
Criar um modelo do ambiente a partir da localização
do robô e das informações obtidas por sensores.




                                                CLEI 2010
                                                  # 51




              Tipos de Mapas
• Mapas métricos: representam
propriedades geométricas do
ambiente de forma quantitativa.

• Mapas topológicos: representam
a conectividade entre determinados
locais do ambiente. Normalmente
são utilizados grafos nessa
representação.




                                                CLEI 2010
                                                  # 52




                                                                   26
19/10/2010




Mapeamento Métrico – Grade de ocupação
 • Dividir o espaço em células e estimar a
 probabilidade de ocupação de cada célula
 individualmente baseado na informação obtida
 pelos sensores.

 • Ao final, cada célula é
 classificada como
 ocupada, livre ou
 indefinido.


                                                          CLEI 2010
                                                            # 53




           Grade de Ocupação



                                   Mapa: occupancy grid




                                                          CLEI 2010
                                                            # 54




                                                                             27
19/10/2010




      Grade de Ocupação




                               CLEI 2010
                                 # 55




Mapa baseado somente na odometria




                               CLEI 2010
                                 # 56




                                                  28
19/10/2010




           Robótica Móvel
• Simuladores de Robôs Móveis
  • Player/Stage/Gazebo


• Sistemas Robóticos Móveis Inteligentes
  • Localização
  • Mapeamento
  • SLAM
  • Navegação

                                              CLEI 2010
                                                # 57




Localização e Mapeamento Simultâneos
     O SLAM é um dos maiores desafios
           da robótica móvel.
       Dados:
       • Deslocamento do robô
       • Informações obtidas pelos sensores


       Deve-se estimar:
       • O mapa do ambiente
       • A localização/trajetória do robô

                                              CLEI 2010
                                                # 58




                                                                 29
19/10/2010




   SLAM Summer School




                                        CLEI 2010
                                          # 59




SLAM – Associação de Dados




               Incerteza na localização é
                  propogada no mapa

                                        CLEI 2010
                                          # 60




                                                           30
19/10/2010




      SLAM - Incerteza




                 Robot pose
                 uncertainty


 Erros na associação de referências no mapa são
                  catastróficos.

                                                  CLEI 2010
                                                    # 61




Mapeamento e Localização




                                                  CLEI 2010
                                                    # 62




                                                                     31
19/10/2010




      Mapeamento e Localização




                                   CLEI 2010
                                     # 63




       SLAM – Filtro de Kalman

• Consiste em estimar a posição
do robô e dos landmarks com o
filtro de Kalman.

• As posição do robô e dos
landmarks são correlacionadas
através da matriz de covariância




                                   CLEI 2010
                                     # 64




                                                      32
19/10/2010




      SLAM – Filtro de Kalman




                                                                                      CLEI 2010
                                                                                        # 65




  SLAM – EKF - Complexidade
                      x   σx      σxy      σxθ      σxl      σxl          σxl  
                                2
                                                                         L
                                                         1        2          N 
                      y   σxy     σy       σyθ      σyl      σyl          σyl  
                                       2
                                                                         L
                      θ  σ                                                     
                                                            1        2          N

                                     σyθ      σθ2      σθl      σθl      L   σθl
                        xθ                               1        2          N 

   Bel xt , mt ) =
     (                l1 , σxl1   σyl      σθl      σl2      σl l     L   σl l 
                      l  σ                                                     
                                          1        1      1       12          1N


                      2   xl2     σyl  2
                                              σθl  2
                                                       σl l
                                                         12
                                                                σl22
                                                                         L   σl l
                                                                              2N 

                     M  M          M        M        M        M       O    M 
                                                                               
                     lN  σxlN
                                    σyl σθl σl l σl l
                                          N        N     1N       2N
                                                                         L   σl2 
                                                                               N 




Um mapa com N landmarks estimará 2N+3 variáveis e terá
uma matriz de covariância de 2N+3 x 2N+3 elementos.


                                                                                      CLEI 2010
                                                                                        # 66




                                                                                                         33
19/10/2010




                      FastSLAM
 Idéia básica: utilizar um filtro de partículas para
 estimar a posição do robô e o mapa do ambiente.

Vantagens:
    Modelos de percepção e controle não-lineares ☺
    Permite diferentes associações de dados em paralelo ☺
    Estima toda a trajetória do robô on-line ☺

Desvantagem:
     Número de partículas necessário cresce exponencialmente
   com o número de variáveis.

                                                            CLEI 2010
                                                              # 67




                      FastSLAM
                         3 particulas




mapa da particule 1                          mapa da particula 3




                       mapa da particula 2

                                                            CLEI 2010
                                                              # 68




                                                                               34
19/10/2010




           FastSLAM




                                  CLEI 2010
                                    # 69




FastSLAM - Resultados




FastSLAM              Odometria


                                  CLEI 2010
                                    # 70




                                                     35
19/10/2010




        SLAM - Multirrobô




         Posição inicial desconhecida.


                                           CLEI 2010
                                             # 71




Localização e Mapeamento – Robô Guia de Museu




                                           CLEI 2010
                                             # 72




                                                              36
19/10/2010




 Localização e Mapeamento em Ambientes Urbanos


Problemas:
  • Complexidade
  • Escala
  • Irregularidade do terreno
  • Difícil representação




                                          CLEI 2010
                                            # 73




          Plataforma Experimental




                                          CLEI 2010
                                            # 74




                                                             37
19/10/2010




        Localização – Monte Carlo

Solução:
• Grande número de partículas
• Criação de áreas semi-ocupadas.
• Obtenção de pitch e roll por uma
unidade de medida inercial
• Depois de localizar o robô, estima-se a
trajetória utilizando o filtro de partículas
no sentido contrário.


                                               CLEI 2010
                                                 # 75




        Localização – Monte Carlo




                                               CLEI 2010
                                                 # 76




                                                                  38
19/10/2010




             Localização - Resultados




                                        CLEI 2010
                                          # 77




Localização – Filtro de Partículas e GPS
• Cada partícula representa uma
possível trajetória completa do robô

• É atribuído um peso a cada
partícula de acordo com sua
proximidade do GPS.

• Partículas que divergem do GPS
recebem peso baixo e são
eliminadas.
       Pontos do GPS




       partículas


                                        CLEI 2010
                                          # 78




                                                           39
19/10/2010




Mapeamento - Resultados




                          CLEI 2010
                            # 79




Mapeamento - Resultados




                          CLEI 2010
                            # 80




                                             40
19/10/2010




   Mapeamento - Resultados
                 Parte do campus da USC




                                     CLEI 2010
                                       # 81




Mapeamento – Aquisição de dados




                                     CLEI 2010
                                       # 82




                                                        41
19/10/2010




                                 CLEI 2010
                                   # 83




Outras Representações para Mapas 3D




                                 CLEI 2010
                                   # 84




                                                    42
19/10/2010




               Mapas 3D




                                           CLEI 2010
                                             # 85




           Robótica Móvel
• Simuladores de Robôs Móveis
  • Player/Stage/Gazebo


• Sistemas Robóticos Móveis Inteligentes
  • Localização
  • Mapeamento
  • SLAM
  • Navegação

                                           CLEI 2010
                                             # 86




                                                              43
19/10/2010




Planejamento de Trajetória
        A*: mapas métricos (grid)




Planejamento de Trajetória
Dijkstra: mapas métricos/topológicos (grafos)




                                                       44
19/10/2010




  Campos Potencias




                            CLEI 2010
                              # 89




Desvio de obstáculos
   Vector Field Histogram




                                               45
19/10/2010




Desvio de obstáculos
    Vector Field Histogram




 Continuamos Amanhã...
  Veículos Autônomos Inteligentes




                                    CLEI 2010
                                      # 92




                                                       46
19/10/2010




      OBRIGADO!



Laboratório de Robótica Móvel

      www.lrm.icmc.usp.br

Denis Fernando Wolf     – denis@icmc.usp.br
Fernando Santos Osório - fosorio@icmc.usp.br
Kalinka R. J. C. Branko - kalinka@icmc.usp.br

                                                CLEI 2010
                                                  # 93




                                                                   47

Mais conteúdo relacionado

Semelhante a Clei 2010 Tutorial - Slides Parte II

TDC2017 | São Paulo - Trilha Inovações How we figured out we had a SRE team a...
TDC2017 | São Paulo - Trilha Inovações How we figured out we had a SRE team a...TDC2017 | São Paulo - Trilha Inovações How we figured out we had a SRE team a...
TDC2017 | São Paulo - Trilha Inovações How we figured out we had a SRE team a...tdc-globalcode
 
Desenvolvimento Mobile Web & Software Livre - Flisol cg
Desenvolvimento Mobile Web & Software Livre - Flisol cgDesenvolvimento Mobile Web & Software Livre - Flisol cg
Desenvolvimento Mobile Web & Software Livre - Flisol cgBruno Fernandes "PorKaria"
 
Utilizando Sistemas Multi-agentes para a Programação de Plataformas Robóticas
Utilizando Sistemas Multi-agentes para a Programação de Plataformas RobóticasUtilizando Sistemas Multi-agentes para a Programação de Plataformas Robóticas
Utilizando Sistemas Multi-agentes para a Programação de Plataformas RobóticasCarlos Eduardo Pantoja
 
SISTEMA DE ESTACIONAMENTO AUTOMOTIVO UTILIZANDO AS PLATAFORMAS MOBILE ANDROID...
SISTEMA DE ESTACIONAMENTO AUTOMOTIVO UTILIZANDO AS PLATAFORMAS MOBILE ANDROID...SISTEMA DE ESTACIONAMENTO AUTOMOTIVO UTILIZANDO AS PLATAFORMAS MOBILE ANDROID...
SISTEMA DE ESTACIONAMENTO AUTOMOTIVO UTILIZANDO AS PLATAFORMAS MOBILE ANDROID...Jucemar Dimon
 
#4 Oracle Cloud Meetup - Chatbots
#4 Oracle Cloud Meetup - Chatbots#4 Oracle Cloud Meetup - Chatbots
#4 Oracle Cloud Meetup - Chatbots-
 
Navegacao de Robótica Autônoma em Ambientes Dinâmicos
Navegacao de Robótica Autônoma em Ambientes DinâmicosNavegacao de Robótica Autônoma em Ambientes Dinâmicos
Navegacao de Robótica Autônoma em Ambientes DinâmicosLCoN Mackenzie
 
Introduction to Python for Symbian S60
Introduction to Python for Symbian S60Introduction to Python for Symbian S60
Introduction to Python for Symbian S60Marcel Caraciolo
 
O desenvolvimento de aplicações móveis, antes da 1ª linha de código
O desenvolvimento de aplicações móveis, antes da 1ª linha de códigoO desenvolvimento de aplicações móveis, antes da 1ª linha de código
O desenvolvimento de aplicações móveis, antes da 1ª linha de códigopt_programar
 
Windows Phone 7 Camp MICBH + MSPs
Windows Phone 7 Camp MICBH + MSPsWindows Phone 7 Camp MICBH + MSPs
Windows Phone 7 Camp MICBH + MSPsMicrosoft
 
Grupo de Robótica do Instituto Federal de São Paulo
Grupo de Robótica do Instituto Federal de São PauloGrupo de Robótica do Instituto Federal de São Paulo
Grupo de Robótica do Instituto Federal de São PauloHenrique Dória
 
Apresentação robótica móvel
Apresentação robótica móvel Apresentação robótica móvel
Apresentação robótica móvel Humberto Zanetti
 
Android - de usuários a desenvolvedores
Android - de usuários a desenvolvedoresAndroid - de usuários a desenvolvedores
Android - de usuários a desenvolvedoresAécio Costa
 
[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...
[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...
[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...Christopher Cerqueira
 
Webinar: Desenvolvimento de Interface Gráfica para Embarcados
Webinar: Desenvolvimento de Interface Gráfica para EmbarcadosWebinar: Desenvolvimento de Interface Gráfica para Embarcados
Webinar: Desenvolvimento de Interface Gráfica para EmbarcadosEmbarcados
 
Desenvolvimento Mobile
Desenvolvimento MobileDesenvolvimento Mobile
Desenvolvimento MobileElton Minetto
 
Artigo coloquio 2013
Artigo coloquio 2013Artigo coloquio 2013
Artigo coloquio 2013testes1
 

Semelhante a Clei 2010 Tutorial - Slides Parte II (20)

TDC2017 | São Paulo - Trilha Inovações How we figured out we had a SRE team a...
TDC2017 | São Paulo - Trilha Inovações How we figured out we had a SRE team a...TDC2017 | São Paulo - Trilha Inovações How we figured out we had a SRE team a...
TDC2017 | São Paulo - Trilha Inovações How we figured out we had a SRE team a...
 
Desenvolvimento Mobile Web & Software Livre - Flisol cg
Desenvolvimento Mobile Web & Software Livre - Flisol cgDesenvolvimento Mobile Web & Software Livre - Flisol cg
Desenvolvimento Mobile Web & Software Livre - Flisol cg
 
Utilizando Sistemas Multi-agentes para a Programação de Plataformas Robóticas
Utilizando Sistemas Multi-agentes para a Programação de Plataformas RobóticasUtilizando Sistemas Multi-agentes para a Programação de Plataformas Robóticas
Utilizando Sistemas Multi-agentes para a Programação de Plataformas Robóticas
 
SISTEMA DE ESTACIONAMENTO AUTOMOTIVO UTILIZANDO AS PLATAFORMAS MOBILE ANDROID...
SISTEMA DE ESTACIONAMENTO AUTOMOTIVO UTILIZANDO AS PLATAFORMAS MOBILE ANDROID...SISTEMA DE ESTACIONAMENTO AUTOMOTIVO UTILIZANDO AS PLATAFORMAS MOBILE ANDROID...
SISTEMA DE ESTACIONAMENTO AUTOMOTIVO UTILIZANDO AS PLATAFORMAS MOBILE ANDROID...
 
Palestra realidade aumentada
Palestra   realidade aumentadaPalestra   realidade aumentada
Palestra realidade aumentada
 
Desenvolvimento Mobile Web e o PHP
Desenvolvimento Mobile Web e o PHPDesenvolvimento Mobile Web e o PHP
Desenvolvimento Mobile Web e o PHP
 
#4 Oracle Cloud Meetup - Chatbots
#4 Oracle Cloud Meetup - Chatbots#4 Oracle Cloud Meetup - Chatbots
#4 Oracle Cloud Meetup - Chatbots
 
Navegacao de Robótica Autônoma em Ambientes Dinâmicos
Navegacao de Robótica Autônoma em Ambientes DinâmicosNavegacao de Robótica Autônoma em Ambientes Dinâmicos
Navegacao de Robótica Autônoma em Ambientes Dinâmicos
 
Introduction to Python for Symbian S60
Introduction to Python for Symbian S60Introduction to Python for Symbian S60
Introduction to Python for Symbian S60
 
O desenvolvimento de aplicações móveis, antes da 1ª linha de código
O desenvolvimento de aplicações móveis, antes da 1ª linha de códigoO desenvolvimento de aplicações móveis, antes da 1ª linha de código
O desenvolvimento de aplicações móveis, antes da 1ª linha de código
 
Inct Icmc Usp e Pucrs
Inct Icmc Usp e PucrsInct Icmc Usp e Pucrs
Inct Icmc Usp e Pucrs
 
Windows Phone 7 Camp MICBH + MSPs
Windows Phone 7 Camp MICBH + MSPsWindows Phone 7 Camp MICBH + MSPs
Windows Phone 7 Camp MICBH + MSPs
 
Grupo de Robótica do Instituto Federal de São Paulo
Grupo de Robótica do Instituto Federal de São PauloGrupo de Robótica do Instituto Federal de São Paulo
Grupo de Robótica do Instituto Federal de São Paulo
 
Apresentação robótica móvel
Apresentação robótica móvel Apresentação robótica móvel
Apresentação robótica móvel
 
Android - de usuários a desenvolvedores
Android - de usuários a desenvolvedoresAndroid - de usuários a desenvolvedores
Android - de usuários a desenvolvedores
 
[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...
[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...
[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...
 
Webinar: Desenvolvimento de Interface Gráfica para Embarcados
Webinar: Desenvolvimento de Interface Gráfica para EmbarcadosWebinar: Desenvolvimento de Interface Gráfica para Embarcados
Webinar: Desenvolvimento de Interface Gráfica para Embarcados
 
Desenvolvimento Mobile
Desenvolvimento MobileDesenvolvimento Mobile
Desenvolvimento Mobile
 
Artigo coloquio 2013
Artigo coloquio 2013Artigo coloquio 2013
Artigo coloquio 2013
 
Inct Icmc Usp Player
Inct Icmc Usp PlayerInct Icmc Usp Player
Inct Icmc Usp Player
 

Clei 2010 Tutorial - Slides Parte II

  • 1. 19/10/2010 Robôs Móveis e Veículos Autônomos: Pesquisa, Desenvolvimento e Desafios na área da Inteligência Artificial Denis F. Wolf Fernando S. Osório Kalinka R. J. Castelo Branco Universidade de São Paulo – USP - ICMC Grupo de Sistemas Embarcados, Evolutivos e Robóticos - SEER Laboratório de Robótica Móvel - LRM INCT – Sistemas Embarcados Críticos CLEI 2010 #1 Laboratório de Robótica Móvel – ICMC/USP Desafios da Inteligência Artificial: Pesquisa e Desenvolvimento de Robôs Móveis e Veículos Autônomos Denis F. Wolf Fernando S. Osório Kalinka R. J. Castelo Branco Universidade de São Paulo – USP - ICMC Grupo de Sistemas Embarcados, Evolutivos e Robóticos - SEER Laboratório de Robótica Móvel - LRM Parte II INCT – Sistemas Embarcados Críticos 2 1
  • 2. 19/10/2010 Robótica Móvel • Simuladores de Robôs Móveis • Player/Stage/Gazebo • Algoritmos Inteligentes para Robôs Móveis • Localização • Mapeamento • SLAM • Navegação CLEI 2010 #3 Robótica Móvel - Desenvolvimento Simulação Testes em robôs Testes em robôs de pequeno porte de grande porte 2
  • 3. 19/10/2010 Robótica Móvel - Desenvolvimento Simulação Validação inicial dos algoritmos desenvolvidos utilizando simuladores de robôs e sensores. Vantagens: - Possibilidade irrestrita de experimentos - Economia de tempo de desenvolvimento - Evita danos aos robôs e sensores Robótica Móvel - Desenvolvimento Testes em robôs de pequeno porte Validação do sistema em ambientes reais de escala reduzida. Vantagens: - Ambientes e informações reais para validação dos sistemas desenvolvidos - Facilita a logística dos experimentos - Diminui a chance de danos aos robôs e sensores 3
  • 4. 19/10/2010 Robótica Móvel - Desenvolvimento Testes em robôs de grande porte Validação do sistema em ambientes e situações reais. Características: - Ambientes e informações reais para validação dos sistemas desenvolvidos - Logística complexa - Possibilidade de danos aos robôs e sensores Simuladores de Robôs Móveis Carmen • Desenvolvido na CMU • Simula e controla robôs móveis • Gratuito e código aberto • SO: Linux Aria/Saphira • Desenvolvido pela MobileRobots • Simula e controla robôs Pioneer • Exige licença • SO: Linux e Windows CLEI 2010 #8 4
  • 5. 19/10/2010 Simuladores de Robôs Móveis Microsoft Robotics Studio • Desenvolvido pela Microsoft • Simula e controla robôs móveis • Simulação física (3D) • 3 tipos de licença • SO: Windows Webots • Desenvolvido pela Cyberbotics • Simula e controla robôs móveis • Simulação física (3D) • Exige licença • SO: Linux, Windows e Mac. CLEI 2010 #9 Player/Stage/Gazebo • Player • Sistema para controle de robôs móveis • Suporta diversos tipos de robôs e sensores • Stage • Simulador de robôs móveis e sensores • Ambientes bidimensionais • Compatível com Player • Gazebo • Simulador de alta fidelidade • Ambientes em 3 dimensões • Compatível com Player CLEI 2010 # 10 5
  • 6. 19/10/2010 História do Player • Projeto iniciado em 2000 na University of Southern California. • Hoje em dia, seu core básico continua sendo desenvolvido pelos autores originais, apesar de diversos pesquisadores de diferentes instituições contribuem para o projeto. • Atualmente, o Player é utilizado por diversas empresas e universidades em 5 continentes. + 3.000 downloads por mês. CLEI 2010 # 11 Características do Player • Software livre • Modelo Cliente/Servidor • Desenvolvido para sistemas Linux/Unix • Comunicação baseada em sockets • Clientes em: C, C++, Java, Python etc • Interface de alto nível para acesso ao hardware • Suporta grande quatidade de plataformas robóticas e sensores comerciais CLEI 2010 # 12 6
  • 7. 19/10/2010 Programa de controle A imagem não pode ser exibida. Talv ez o computador não tenha memória suficiente para abrir a imagem ou talv ez ela esteja corrompida. Reinicie o computador e abra o arquiv o nov amente. Se ainda assim aparecer o x v ermelho, poderá ser necessário excluir a imagem e inseri-la nov amente. o ráusu od amargorP o ráusu od amargorP oiiiiráusu od amargorP o ráusu od amargorP ICP aremaC BSU oãçisiuqA resaL sodad ed serosnes sod l ai r e S ranoS otnemajenalP airtemodO sodnamoC so arap serotom o t n e m a c ol s e D o d aj e s e d serotoM l ai r e S subnaC CLEI 2010 # 13 Player A imagem não pode ser exibida. Talv ez o computador não tenha memória suficiente para abrir a imagem ou talv ez ela esteja corrompida. Reinicie o computador e abra o arquiv o nov amente. Se ainda assim aparecer o x v ermelho, poderá ser necessário excluir a imagem e inseri-la nov amente. reyalP amargorP ICP oiiiráusu od o ráusu od o ráusu od aremaC BSU oãçisiuqA resaL sodad ed serosnes sod l ai r e S ranoS otnemajenalP airtemodO sodnamoC o arap rotom o t n e m a c ol s e D o d aj e s e d serotoM l ai r e S subnaC CLEI 2010 # 14 7
  • 8. 19/10/2010 Abstração de hardware A imagem não pode ser exibida. Talv ez o computador não tenha memória suficiente para abrir a imagem ou talv ez ela esteja corrompida. Reinicie o computador e abra o arquiv o nov amente. Se ainda assim aparecer o x v ermelho, poderá ser necessário excluir a imagem e inseri-la nov amente. acetoilbiB erawdraH rod vreS rod vreS rodiiiivreS rod vreS od etneilC ôboR oD reyalP reya P reyallllP reya P reya P ++C/C rodalumiS rodivreS #C amargorP egatS reya P reyallllP reya P reya P avaJ oiráusu od lcT nohtyP ybuR psiL rodalumiS evatcO obezaG rod vreS rod vreS rodiiiivreS rod vreS reyalP CLEI 2010 # 15 Modelo Cliente/Servidor • Clientes podem se conectar a múltiplos servidores • Servidores aceitam conexão de múltiplos clientes • Operação remota 8
  • 9. 19/10/2010 Modelo Cliente/Servidor • Clientes podem se conectar a múltiplos servidores • Servidores aceitam conexão de múltiplos clientes • Operação remota Modelo Cliente/Servidor • Clientes podem se conectar a múltiplos servidores • Servidores aceitam conexão de múltiplos clientes • Operação remota 9
  • 10. 19/10/2010 Gazebo - Simulação 3D Robô Pioneer 3 AT Gazebo - Simulação 3D Veículo de testes 10
  • 11. 19/10/2010 Gazebo - Simulação 3D Veículo e ambiente de testes Robótica Móvel • Simuladores de Robôs Móveis • Player/Stage/Gazebo • Sistemas Robóticos Móveis Inteligentes • Localização • Mapeamento • SLAM • Navegação CLEI 2010 # 22 11
  • 12. 19/10/2010 Robôs Móveis - Características Um robô móvel é uma máquina capaz de extrair informação do ambiente e usar seu conhecimento sobre o mesmo para se locomover com um propósito definido. Ronald Arkin Principais características: • Mobilidade • Capacidade de percepção • Autonomia • Inteligência CLEI 2010 # 23 Robôs Móveis - Aplicações Guia de museu Mapeamento de minas Verificação da qualidade da água Navegação autônoma CLEI 2010 # 24 12
  • 13. 19/10/2010 Problemas • Sensores são limitados e imprecisos. • Atuadores são limitados e imprecisos. • O ambiente e o estado interno do robô são parcialmente observáveis. • Ambientes reais são dinâmicos e imprevisíveis. CLEI 2010 # 25 Modelo Básico CLEI 2010 # 26 13
  • 14. 19/10/2010 Robótica Móvel • Simuladores de Robôs Móveis • Player/Stage/Gazebo • Sistemas Robóticos Móveis Inteligentes • Localização • Mapeamento • SLAM • Navegação CLEI 2010 # 27 Localização Estimar a posição do robô em um ambiente Destino previamente conhecido, utilizando informações obtidas por sensores. ? ? ? CLEI 2010 # 28 14
  • 15. 19/10/2010 Robôs Móveis - Aplicações Guia de museu Mapeamento de minas Verificação da qualidade da água Navegação autônoma CLEI 2010 # 29 Localização - Problemas Efeito da imprecisão das informações dos sensores: Trajeto real Odometria CLEI 2010 # 30 15
  • 16. 19/10/2010 Localização - Problemas Efeito da imprecisão das informações dos sensores: ++++++ GPS --------- Odometria CLEI 2010 # 31 Localização – Tipos de problemas Tracking • Posição inicial é conhecida • Busca local (correção de odometria) Localização global • Posição inicial não é conhecida • Busca global CLEI 2010 # 32 16
  • 17. 19/10/2010 Localização - Soluções Framework básico: Filtro de Bayes Representação da posição do robô • Distribuição Normal (Filtro de Kalman) • Malha de células (Grid / Markov) • Partículas/Amostras (Monte Carlo) CLEI 2010 # 33 Filtro de Bayes Nova Observação Deslocamento Estimativa estimativa (diminuição do robô anterior de incerteza) (aumento de incerteza) CLEI 2010 # 34 17
  • 18. 19/10/2010 Filtro de Kalman • Uma das primeiras implementações práticas do filtro de Bayes (1960). • Hipóteses para utilização do filtro: • Erro médio de cada variável igual a zero; • Erro independente para cada variável; • Modelo linear de evolução do sistema; • Relacionamento linear entre variáveis de estado e variáveis medidas. • Se as hipóteses acima não forem cumpridas, a optimalidade não é assegurada. CLEI 2010 # 35 Filtro de Kalman Algoritmo filtro de Kalman( µt-1, Σt-1, ut, zt): Predição: 1. µ t = At µt −1 + Bt ut 2. Σ t = At Σ t −1 AtT + Rt Correção: −1 1. K t = Σ t Ct (Ct Σ t Ct + Qt ) T T 2. µt = µ t + K t ( zt − Ct µ t ) 3. Σ t = ( I − K t Ct )Σ t 4. Return µt, Σt CLEI 2010 # 36 18
  • 19. 19/10/2010 Localização – Filtro de Kalman (EKF) Atuação (movimento do robô): aumento de incerteza Percepção (sensores): diminuição da incerteza CLEI 2010 # 37 Localização - Filtro de Kalman CLEI 2010 # 38 19
  • 20. 19/10/2010 Filtro de Kalman - Avaliação • Não é ótimo. • Pode divergir de acordo a não-linearidade. • Altamente Eficiente: complexidade polinomial com as dimensões de medição k e de estado n: O(k2.376 + n2 ) •Funciona surpreendentemente bem, mesmo quando as suposições básicas são violadas! • Adequado para tracking (busca local) CLEI 2010 # 39 Localização – Malha de células Atuação (movimento do robô): aumento de incerteza Percepção (sensores): diminuição da incerteza CLEI 2010 # 40 20
  • 21. 19/10/2010 Localização – Malha de células Posição do robô: ( x, y,θ ) CLEI 2010 # 41 Localização - Exemplo CLEI 2010 # 42 21
  • 22. 19/10/2010 Malha de Células - Avaliação • Possibilita localização global. • Precisão depende das dimensões das células • Altíssima demanda computacional CLEI 2010 # 43 Localização – Partículas (Monte Carlo) • Cada partícula representa a possibilidade do robô estar naquela posição especifica. • É atribuído um peso a cada partícula proporcional a sua chance de representar a posição do robô. • Partículas com peso baixo são excluídas. • Dado número suficiente de partículas, é provado que o método converge. CLEI 2010 # 44 22
  • 23. 19/10/2010 Filtro de Partículas CLEI 2010 # 45 Propagação das Partículas CLEI 2010 # 46 23
  • 24. 19/10/2010 Filtro de Partículas - Exemplo CLEI 2010 # 47 Filtro de Partículas - Simulação CLEI 2010 # 48 24
  • 25. 19/10/2010 Filtro de Partículas •Algoritmo bastante eficiente computacionalmente • Possibilita localização global • Implementação relativamente simples CLEI 2010 # 49 Robótica Móvel • Simuladores de Robôs Móveis • Player/Stage/Gazebo • Sistemas Robóticos Móveis Inteligentes • Localização • Mapeamento • SLAM • Navegação CLEI 2010 # 50 25
  • 26. 19/10/2010 Mapeamento Criar um modelo do ambiente a partir da localização do robô e das informações obtidas por sensores. CLEI 2010 # 51 Tipos de Mapas • Mapas métricos: representam propriedades geométricas do ambiente de forma quantitativa. • Mapas topológicos: representam a conectividade entre determinados locais do ambiente. Normalmente são utilizados grafos nessa representação. CLEI 2010 # 52 26
  • 27. 19/10/2010 Mapeamento Métrico – Grade de ocupação • Dividir o espaço em células e estimar a probabilidade de ocupação de cada célula individualmente baseado na informação obtida pelos sensores. • Ao final, cada célula é classificada como ocupada, livre ou indefinido. CLEI 2010 # 53 Grade de Ocupação Mapa: occupancy grid CLEI 2010 # 54 27
  • 28. 19/10/2010 Grade de Ocupação CLEI 2010 # 55 Mapa baseado somente na odometria CLEI 2010 # 56 28
  • 29. 19/10/2010 Robótica Móvel • Simuladores de Robôs Móveis • Player/Stage/Gazebo • Sistemas Robóticos Móveis Inteligentes • Localização • Mapeamento • SLAM • Navegação CLEI 2010 # 57 Localização e Mapeamento Simultâneos O SLAM é um dos maiores desafios da robótica móvel. Dados: • Deslocamento do robô • Informações obtidas pelos sensores Deve-se estimar: • O mapa do ambiente • A localização/trajetória do robô CLEI 2010 # 58 29
  • 30. 19/10/2010 SLAM Summer School CLEI 2010 # 59 SLAM – Associação de Dados Incerteza na localização é propogada no mapa CLEI 2010 # 60 30
  • 31. 19/10/2010 SLAM - Incerteza Robot pose uncertainty Erros na associação de referências no mapa são catastróficos. CLEI 2010 # 61 Mapeamento e Localização CLEI 2010 # 62 31
  • 32. 19/10/2010 Mapeamento e Localização CLEI 2010 # 63 SLAM – Filtro de Kalman • Consiste em estimar a posição do robô e dos landmarks com o filtro de Kalman. • As posição do robô e dos landmarks são correlacionadas através da matriz de covariância CLEI 2010 # 64 32
  • 33. 19/10/2010 SLAM – Filtro de Kalman CLEI 2010 # 65 SLAM – EKF - Complexidade  x   σx σxy σxθ σxl σxl σxl  2 L    1 2 N   y   σxy σy σyθ σyl σyl σyl  2 L  θ  σ  1 2 N σyθ σθ2 σθl σθl L σθl    xθ 1 2 N  Bel xt , mt ) = (  l1 , σxl1 σyl σθl σl2 σl l L σl l   l  σ  1 1 1 12 1N  2   xl2 σyl 2 σθl 2 σl l 12 σl22 L σl l 2N  M  M M M M M O M      lN  σxlN  σyl σθl σl l σl l N N 1N 2N L σl2  N  Um mapa com N landmarks estimará 2N+3 variáveis e terá uma matriz de covariância de 2N+3 x 2N+3 elementos. CLEI 2010 # 66 33
  • 34. 19/10/2010 FastSLAM Idéia básica: utilizar um filtro de partículas para estimar a posição do robô e o mapa do ambiente. Vantagens: Modelos de percepção e controle não-lineares ☺ Permite diferentes associações de dados em paralelo ☺ Estima toda a trajetória do robô on-line ☺ Desvantagem: Número de partículas necessário cresce exponencialmente com o número de variáveis. CLEI 2010 # 67 FastSLAM 3 particulas mapa da particule 1 mapa da particula 3 mapa da particula 2 CLEI 2010 # 68 34
  • 35. 19/10/2010 FastSLAM CLEI 2010 # 69 FastSLAM - Resultados FastSLAM Odometria CLEI 2010 # 70 35
  • 36. 19/10/2010 SLAM - Multirrobô Posição inicial desconhecida. CLEI 2010 # 71 Localização e Mapeamento – Robô Guia de Museu CLEI 2010 # 72 36
  • 37. 19/10/2010 Localização e Mapeamento em Ambientes Urbanos Problemas: • Complexidade • Escala • Irregularidade do terreno • Difícil representação CLEI 2010 # 73 Plataforma Experimental CLEI 2010 # 74 37
  • 38. 19/10/2010 Localização – Monte Carlo Solução: • Grande número de partículas • Criação de áreas semi-ocupadas. • Obtenção de pitch e roll por uma unidade de medida inercial • Depois de localizar o robô, estima-se a trajetória utilizando o filtro de partículas no sentido contrário. CLEI 2010 # 75 Localização – Monte Carlo CLEI 2010 # 76 38
  • 39. 19/10/2010 Localização - Resultados CLEI 2010 # 77 Localização – Filtro de Partículas e GPS • Cada partícula representa uma possível trajetória completa do robô • É atribuído um peso a cada partícula de acordo com sua proximidade do GPS. • Partículas que divergem do GPS recebem peso baixo e são eliminadas. Pontos do GPS partículas CLEI 2010 # 78 39
  • 40. 19/10/2010 Mapeamento - Resultados CLEI 2010 # 79 Mapeamento - Resultados CLEI 2010 # 80 40
  • 41. 19/10/2010 Mapeamento - Resultados Parte do campus da USC CLEI 2010 # 81 Mapeamento – Aquisição de dados CLEI 2010 # 82 41
  • 42. 19/10/2010 CLEI 2010 # 83 Outras Representações para Mapas 3D CLEI 2010 # 84 42
  • 43. 19/10/2010 Mapas 3D CLEI 2010 # 85 Robótica Móvel • Simuladores de Robôs Móveis • Player/Stage/Gazebo • Sistemas Robóticos Móveis Inteligentes • Localização • Mapeamento • SLAM • Navegação CLEI 2010 # 86 43
  • 44. 19/10/2010 Planejamento de Trajetória A*: mapas métricos (grid) Planejamento de Trajetória Dijkstra: mapas métricos/topológicos (grafos) 44
  • 45. 19/10/2010 Campos Potencias CLEI 2010 # 89 Desvio de obstáculos Vector Field Histogram 45
  • 46. 19/10/2010 Desvio de obstáculos Vector Field Histogram Continuamos Amanhã... Veículos Autônomos Inteligentes CLEI 2010 # 92 46
  • 47. 19/10/2010 OBRIGADO! Laboratório de Robótica Móvel www.lrm.icmc.usp.br Denis Fernando Wolf – denis@icmc.usp.br Fernando Santos Osório - fosorio@icmc.usp.br Kalinka R. J. C. Branko - kalinka@icmc.usp.br CLEI 2010 # 93 47