Checkpoint SSC0712 2019(fosorio)

De CoteiaWiki
Revisão de 16h30min de 13 de maio de 2019 por Fosorio (discussão | contribs)
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)

SSC0712 - Programação de Robôs Móveis 2019
Prof. Fernando Santos OSÓRIO
ICMC - SSC - LRM

DEFINIÇÂO DO TRABALHO PRÁTICO - CHECK-POINT (CP)
DATA DA ENTREGA: 06.05 ou 13.05

O trabalho do Check-Point (CP) é uma implementação de um sistema de navegação visando que o robô alcance uma determinada posição, 
sem colidir com obstáculos estáticos (paredes) do ambiente. O robô tem acesso a sua localização e a localização do ponto de destino.

O trabalho CP possuirá 3 graus de dificuldade:
1) Navegar o robô até um ponto de destino específico (um único ponto).
   Arquivo VREP: TP-CP-Cenario01-2019.ttt
2) Navegar o robô seguindo um "way-point" com uma sequência de pontos de destino esparsos 
   Arquivo VREP: TP-CP-Cenario02-2019.ttt
3) Navegar o robô seguindo um "way-point" com uma sequência de pontos de destino densos (caminho definido)
   Arquivo VREP: TP-CP-Cenario03-2019.ttt   (A ser gerado com TP-CP-GeraWayPoint-2019.ttt)

A navegação será realizada considerando um ambiente SEM mínimos locais e pontos que possam bloquear o robô, 
assim como o ambiente será estático, sem obstáculos móveis. É importante considerar que para fins de teste,
o robô poderá ser reposicionado e reorientado dentro do ambiente, para testar se o algoritmo implementado
é robusto suficiente para aceitar condições iniciais diferentes (porém similares) a do exemplo dado.

Entrega:
Enviar por e-mail para fosorio<at>icmc.usp.br

Avaliação: 
- Realizando a atividade (1) que considera apenas 1 ponto de destino, e chegando ao destino, 
  considera-se o mínimo para uma entrega do CP ("cinco bola"). Deve aceitar pequenas variações nas posição/orientação inicial.
- Realizando as atividades (2) e (3), com uma navegação que siga o "way-point" espaçado ou denso, 
  com uma boa robustez as mudanças nas posições dos pontos de navegação e na posição/orientação inicial do robô,
  poderá alcançar a nota máxima. Nota: não será necessário tratar mínimos locais (não irão ocorrer na execução da navegação).

Informações sobre os Cenários Fornecidos:
- O robô fornecido deve ser substituído pelo modelo do seu robô. A versão atual é o Pioneer original (sem navegação por pontos de destino);
- O robô pode usar GPS e Gyro para obter sua posição e orientação;
- O ponto final possui um GPS definido indicando a sua posição e sendo marcado por uma esfera vermelha (não detectável/não colidível);
- As paredes estão em uma disposição que permite considerar que não irão ocorrer mínimos locais;
- O robô não deve colidir com as paredes e deve ir até o destino (GPS final da esfera vermelha);
- No caso do mapa com múltiplos pontos (way-point), cada esfera é um ponto alvo, sendo que o robô deve seguir a trajetória
na seguinte ordem: sphere 0, 1, 2, 3, ... 7 e por fim a sphere (que possui/está na coordenada do GPS). As esferas não atrapalham
a navegação, pois não são detectadas e nem sofrem colisões;
- As coordenadas dos pontos intermediários do Way-Point estão no Script do GPS (coordenadas das esferas vermelhas anotadas no script): 
foi criada uma tabela com as coordenadas dos pontos, e esta tabela é exibida ao iniciar a execução do programa (inicialização do GPS);
- Se você quiser, pode colocar os pontos do Way-Point em um arquivo e ler o arquivo para realizar a navegação.

Por fim, o "TP-CP-GeraWayPoint-2019.ttt" é um programa que salva em disco por onde o robô passou, sendo que o 
controle do robô é feito pelo teclaro. Serve para gerar um Way-Point. Salva o log em "PioneerPosic.log".

Os cenários fornecidos devem ser compatíveis com o V-REP na versão 3.4 em diante.
 

Link para pasta com o material do CP - V-REP:
Pasta CP-CheckPoint



Atualizado em Abril de 2019
F.Osório

Voltar para SSC-712-2019(fosorio)