ITA – IEES
Projeto e Construção de uma Plataforma Móvel para Navegação em Ambiente
Estruturado
Gabriela Werner Gabriel
Orientador: Prof. Cairo L. Nascimento Jr.
Co-Orientador: Prof. Eduardo H. Yagyu
http://www.ele.ita.br/romeo/
ITA – IEES 2
ÍNDICE• Introdução• Histórico• Objetivo• Estrutura de Hardware da Plataforma• Estrutura de Software da Plataforma• Testes Realizados• Conclusões• Trabalhos Futuros
ITA – IEES 3
INTRODUÇÃODesde a metade do século XX o ser humano procura desenvolver uma máquina que se assemelhe a ele, que saiba tomar decisões simples e com isso possa realizar tarefas simples hoje delegadas ao ser humano.
LOCALIZAÇÃO : onde estou?
MAPEAMENTO : onde posso estar?
PLANEJAMENTO : como vou?
PROBLEMAS:
ITA – IEES 4
• Objetivo do projeto:Desenvolver plataformas móveis com o objetivo de estudar e propor soluções para os problemas relacionados à navegação de robôs móveis.
HISTÓRICO
ITA – IEES 5
HISTÓRICO
ROMEO I
- plataforma não autônoma;
- programa ROMEO;
- encoders não implementados;
- mapa conhecido.
ROMEO II
- plataforma autônoma;
- programa ROMEO;
- sensores de colisão;
-mapa conhecido.
ROMEO III
- plataforma autônoma;
- programa ROMEO;
- sistema sensorial mais complexo;
- mapa conhecido.
ITA – IEES 6
HISTÓRICO• Ambiente conhecido• Células conectadas entre si
ITA – IEES 7
• Dissertação:Projeto, construção e testes de um robô móvel (hardware e software) capaz de movimentar-se autonomamente em um ambiente estruturado e estático.
OBJETIVO
ITA – IEES 8
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Plataforma composta por 5 sistemas:– sistema de propulsão– sistema de computação embarcada– sistema de sensoriamento– sistema de comunicação externa– sistema de energia
ITA – IEES 9
ESTRUTURA DEHARDWARE DA PLATAFORMA
ITA – IEES 10
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Sistema de propulsão– 2 motores DC Canon CN35-09720
• dados de carcaça : 24 V e 0,14 A
• redução acoplada
– 2 rodas tracionadas– 2 rodas livres– circuito de acionamento
ITA – IEES 11
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Sistema de computação embarcada:– 3 placas de computação embarcada:
• placa Flashlite 386Ex• placa C515• placa AT89C52
– características do sistemade computação embarcada:
• maior quantidade de pinosde I/O
• resposta mais rápida àeventos críticos
• facilidade de escrita e teste do programa
ITA – IEES 12
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Hierarquia do sistema de computação embarcada: nível tático e nível operacional
Placa 386Ex
Placa 386Ex Placa C515 Placa AT89C52
Nível Tático
Nível Operacional
Supervisão e Gerenciamento
•Acionar o buzzer;
•Monitorar a bateria;
•Monitorar os sensores de IR.
•Acionar os motores;
•Intermediar a comunicação entre o AT89C52 e o 386Ex.
•Monitorar os sensores de colisão.
•Monitorar os encoders;
•Gerar o sinal de PWM.
ITA – IEES 13
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Comunicação entre as placas de computação embarcada:– comunicação serial padrão RS-232– comunicação via barramento de dados
Sentido Direto Sentido DiretoSentido Reverso Sentido Reverso
Placa Flashlite 386Ex
Placa C515 Placa AT89C52
Comunicação via
cabo serial
Comunicação via
barramento de dados
ITA – IEES 14
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Placa 386Ex:– placa Flashlite 386Ex (JKMicrosystems)– microprocessador Intel 386Ex– 512 Kbytes de memória RAM– 512 Kbytes de memória Flash– 2 portas seriais padrão RS-232– 36 pinos de I/O– alimentação de 7-34 V DC não-regulada– sistema operacional embarcado
ITA – IEES 15
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Placa C515:– microcontrolador C515 (Siemems)– 32 Kbytes de memória RAM externa– 32 Kbytes de memória EPROM externa– 16 bits de I/O– 1 porta serial padrão RS-232– comunicação via barramento de dados– alimentação em 5V
ITA – IEES 16
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Placa AT89C52:– microcontrolador AT89C52 (Atmel)– 256 bytes de memória RAM interna– 8 Kbytes de memória Flash interna– 31 bits de I/O– comunicação via barramento
de dados– 2 saídas de PWM– alimentação em 5V
ITA – IEES 17
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Sistema de sensoriamento:– subsistema de detecção de obstáculo– subsistema de detecção de tensão da bateria– subsistema de detecção de posição e orientação
da plataforma
ITA – IEES 18
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Subsistema de detecção de obstáculos:– sensores de contato (snap-action microswitches
with levers )– cobertura da parte frontal da plataforma– rotina de interrupção (INT0) na placa C515
ITA – IEES 19
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Subsistema de detecção de tensão da bateria:– tensão de limiar : 10,1 V– circuito comparador:
ITA – IEES 20
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Subsistema de detecção da posição e orientação da plataforma:– sensores de infravermelho– encoders ópticos incrementais
ITA – IEES 21
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Sensores de infravermelho:– 5 pares foto-diodo/foto-transistor– foto-diodo : TIL32– foto-transistor : TIL78
L1
L2 L3 L4
L5Eixo das RodasTracionadas
3 cm
Centro da Plataforma
Frente da Plataforma
Trás da Plataforma
1,75 cm 1,75 cm
ITA – IEES 22
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Encoders ópticos incrementais:– construção em rodas auxiliares– medida da distância percorrida– contagem de pulsos (interrupção)
ITA – IEES 23
ESTRUTURA DEHARDWARE DA PLATAFORMA
– erros na leitura dos encoders:• de discretização• devido à inércia dos motores entre 2 movimentos
consecutivos
– fator de correção:
1,0531e-0,0003.de ENCAf
1,0833d-0,0003.de ENCBf
ITA – IEES 24
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Sistema de comunicação externa:– comunicação serial RS-232 wireless– buzina Sonalarme
ITA – IEES 25
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Comunicação serial RS-232 wireless– módulo Serial-Bluetooth
• simplicidade de implantação• custo elevado
Computador BasePorta Serial RS-232
Conector Macho DTE(9 pinos)
Módulo Serial Bluetooth
Conector fêmea DCE
Placa Flashlite 386ExPorta Serial RS-232
Conector macho DCE(10 pinos)
Módulo Serial Bluetooth
Conector fêmea DTE(Comunicação Wireless)
Computador BasePorta Serial RS-232
Conector Macho DTE(9 pinos)
Módulo Serial Bluetooth
Conector fêmea DCE
Computador BasePorta Serial RS-232
Conector Macho DTE(9 pinos)
Módulo Serial Bluetooth
Conector fêmea DCE
Placa Flashlite 386ExPorta Serial RS-232
Conector macho DCE(10 pinos)
Módulo Serial Bluetooth
Conector fêmea DTE
Placa Flashlite 386ExPorta Serial RS-232
Conector macho DCE(10 pinos)
Módulo Serial Bluetooth
Conector fêmea DTE(Comunicação Wireless)
ITA – IEES 26
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Buzina Sonalarme:– código sonoro para identificação de erros
Número de Beeps Erro Ocorrido
1 time out na comunicação embarcada
2 tensão da bateria abaixo do nível mínimo permitido
3 colisão detectada
4 leitura errada nos sensores de infravermelho
5 plataforma se dirigindo para fora do labirinto
6 ponto final desejado não alcançado
ITA – IEES 27
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Sistema de energia:– Bateria modelo CP1232 vision
• 12 V e 3,2 Ah
– regulador 7805– corrente máxima consumida : 940 mA
ITA – IEES 28
ESTRUTURA DEHARDWARE DA PLATAFORMA
• Dados mecânicos da plataforma ROMEO III:– Dimensões: 35 cm de diâmetro x 20 cm de altura– Peso: 3,5 kg
ITA – IEES 29
ESTRUTURA DESOFTWARE DA PLATAFORMA
• 2 programas no computador base• 3 programas embarcados na plataforma
LABIRINTO.TXT
ROMEO.CPPv.2.1
TABM_V3.TXT
PLT386c.C PLT1558.A51 PLT5228.A51
INTERFACE.M
1
1
2 3
COMPUTADOR BASE
1 Comunicação Bluetooth
2 Comunicação através de cabo de comunicação serial
3 Comunicação através de barramento de dados
LABIRINTO.TXT
ROMEO.CPPv.2.1
TABM_V3.TXT
PLT386c.C PLT1558.A51 PLT5228.A51
INTERFACE.M
1
1
2 3
COMPUTADOR BASE
1 Comunicação Bluetooth
2 Comunicação através de cabo de comunicação serial
3 Comunicação através de barramento de dados
ITA – IEES 30
ESTRUTURA DESOFTWARE DA PLATAFORMA
• Arquivo LABIRINTO.txt
ITA – IEES 31
ESTRUTURA DESOFTWARE DA PLATAFORMA
• Programa ROMEO.c:– computador base– linguagem C– entrada: labirinto e dimensões físicas do labirinto,
velocidade da plataforma– algoritmo de procura A*– saída: arquivo de movimento codificado em alto
nível
ITA – IEES 32
ESTRUTURA DESOFTWARE DA PLATAFORMA
• Arquivo TABM_V3.txt (tabela de movimentos):
50.0050.0090.0004 ; 05 ; 01 ; 01 ; 01 ; 0403 ; 45.001 ; 70.714 ; 90.001 ; 70.71...9
ITA – IEES 33
ESTRUTURA DESOFTWARE DA PLATAFORMA
• Codificação dos movimentos (modos):Modo Movimento
tipos de movimentos
1 translação para frente
2 translação para trás
3 rotação horária (duas rodas)
4 rotação anti-horária (duas rodas)
movimentos de correção
5 rotação horária com a roda direita
6 rotação anti-horária com a roda direita
7 rotação horária com a roda esquerda
8 rotação anti-horária com a roda esquerda
ITA – IEES 34
ESTRUTURA DESOFTWARE DA PLATAFORMA
• Programa PLT386C.c– placa Flashlite 386Ex– linguagem C– movimentos lidos sequencialmente do arquivo
TABM_V3.txt– monitoração dos sensores de infravermelho– monitoração da bateria– discretização do movimento– algoritmo de controle da plataforma– algoritmo de estimação da trajetória
ITA – IEES 35
ESTRUTURA DESOFTWARE DA PLATAFORMA
• Algoritmo de controle– correção da trajetória baseada nas fases de
movimento e na leitura dos sensores de infravermelho
ITA – IEES 36
ESTRUTURA DESOFTWARE DA PLATAFORMA
• Algoritmo de estimação da trajetória:– fusão sensorial dos encoders + sensores de
infravermelho– uso das equações de odometria da plataforma– considerações:
• variação na orientação (translação) desprezada• variação na posição (rotação) desprezada
ITA – IEES 37
ESTRUTURA DESOFTWARE DA PLATAFORMA
• Programa PT1558.a51:– placa C515– linguagem Assembly– intermediar a comunicação entre as placas
Flashlite 386Ex e AT89C52– monitoração dos sensores de contato– acionamento dos motores DC
ITA – IEES 38
ESTRUTURA DESOFTWARE DA PLATAFORMA
• Programa PLT5228.a51:– placa AT89C52– linguagem Assembly– monitoração dos encoders– geração do PWM
ITA – IEES 39
ESTRUTURA DESOFTWARE DA PLATAFORMA
• Programa INTERFACE.m– computador base– linguagem Matlab– implementa a comunicação entre o computador base e a
plataforma – serial padrão RS-232 wireless– interface gráfica na comunicação homem-máquina– apresentação da:
• trajetória estimada pela plataforma (encoders)
• trajetória estimada pela plataforma (encoders + infravermelho)
• trajétória planejada
ITA – IEES 40
ITA – IEES 41
TESTES REALIZADOS• Verificação da odometria da plataforma• Verificação da ação do programa de controle
sobre a odometria da plataforma• Verificação do desempenho do algoritmo de
estimação• Verificação de uma execução completa de
uma trajetória previamente programada
ITA – IEES 42
TESTES REALIZADOS• Verificação da odometria da plataforma:
– teste UBMark (Borenstein e Feng, 1996)– sem algoritmo de controle– com intervalos de discretização
ITA – IEES 43
TESTES REALIZADOS• Verificação da odometria da plataforma:
ITA – IEES 44
TESTES REALIZADOS• Verificação da odometria da plataforma:
Grandeza Sentido Horário Sentido Anti-Horário
centro de gravidade 52,6 cm 79,1 cm
desvio padrão 3,9 cm 1,3 cm
ITA – IEES 45
TESTES REALIZADOS• Verificação do algoritmo de controle:
– teste UBMark (Borenstein e Feng, 1996)– mesma plataforma e mesmo ambiente– com intervalos de discretização– com algoritmo de controle
ITA – IEES 46
TESTES REALIZADOS• Verificação do algoritmo de controle:
Grandeza Sentido Horário Sentido Anti-Horário
centro de gravidade 1,26 cm 1,13 cm
desvio padrão 0,29 cm 0,19 cm
Grandeza Sentido Horário Sentido Anti-Horário
desvio angular médio
1,7o -4,7o
desvio padrão 0,7o 1,1o
ITA – IEES 47
TESTES REALIZADOS• Verificação do algoritmo de estimação da
trajetória:– estimativa utilizando encoders– estimativa utilizando encoders + infravermelho– trajetória em “8”– trajetória em “V”
ITA – IEES 48
TESTES REALIZADOS• Estimativa da trajetória utilizando encoders:
ITA – IEES 49
TESTES REALIZADOS• Estimativa da trajetória utilizando encoders:
ITA – IEES 50
TESTES REALIZADOS• Estimativa da trajetória utilizando encoders e
infravermelho:
ITA – IEES 51
TESTES REALIZADOS• Estimativa da trajetória utilizando encoders e
infravermelho
ITA – IEES 52
TESTES REALIZADOS• Desenvolvimento de uma trajetória real:
ITA – IEES 53
ITA – IEES 54
TESTES REALIZADOS
0 10 20 30 40 50 60 70 800
100
200
300
400D
ista
ncia
Tot
al P
erco
rrid
a E
stim
ada
[cm
]
Tempo [s]
Desenvolvimento Temporal da Trajetoria
0 10 20 30 40 50 60 70 80
-100
-50
0
50
100
Ang
ulo
Est
imad
o [g
raus
]
Tempo [s]
ITA – IEES 55
TESTES REALIZADOS• Desenvolvimento de uma trajetória real:
ITA – IEES 56
CONCLUSÕES• Utilização de elementos reais na solução do problema
proposto• Realização de uma trajetória real muito próxima da
trajetória desejada:– grade reticulada– sensores de infravermelho
• Método adotado realiza compensação dos erros sistemáticos e aleatórios
• Algoritmo de estimação utilizando fusão sensorial leva a resultados melhores que aqueles obtidos utilizando apenas o sistema de encoders na estimação
ITA – IEES 57
CONCLUSÕES• Uso de sensores de infravermelho
– eficientes – fácil implementação– pouca robustez
• Uso de diferentes computadores embarcados:– maior quantidade de I/O– resposta rápida à eventos críticos
• Comunicação serial mais lenta que a comunicação via barramento de dados
• Ocorrência de time-out durante a execução da trajetória pela plataforma devido ao mau contato nas placas de computação embarcada
ITA – IEES 58
TRABALHOS FUTUROS• Testes para avaliar a robustez da plataforma quanto
a luminosidades e refletividades do chão e da fita diferentes
• Método que permita o recálculo da trajetória em tempo real
• Mapeamento de obstáculos reais no labirinto• Retirada da grade reticulada fazendo a plataforma
localizar-se utilizando apenas os obstáculos reais• Implementação de controle de velocidade• Implementação de uma monitoração remota mais
detalhada e em tempo real dos sistemas da plataforma
ITA – IEES 59
TRABALHOS FUTUROS• Implementação de comunicação utilizando
barramento de dados• Confecção de novas placas de computação
embarcada com componentes soldados• Implementação da comunicação externa utilizando
um link de RF• Implementação de uma estação de carga da bateria
ITA – IEES 60
AGRADECIMENTOS• ITA• CNPq• FAPESP