TrabPrat SSC5888 2024(fosorio)

De CoteiaWiki

SSC5888 - Robôs Móveis Autônomos 2024 - Trabalho Prático
Prof. Fernando Santos OSÓRIO
ICMC - SSC - LRM


DEFINIÇÃO DO TRABALHO PRÁTICO - SSC5888:


REGRAS: TRABALHO SSC5888 - PÓS-GRADUAÇÃO


>> Trabalho de PG (Pós-Grad.) é feito INDIVIDUALMENTE.

>> O trabalho da PG pode ser o trabalho definido aqui (usando o CoppeliaSIM ou Webots, pode inclusive usar o EyeSim), 
>> ou, pode ser um trabalho relacionado ao problema de pesquisa tratado pelo aluno na pós-graduação, 
>> a ser combinado (o quanto antes!) com o professor. 

>> Este é o trabalho PADRÃO, caso deseje o aluno pode informar que OUTRO trabalho deseja implementar 
>> no lugar desta proposta padrão. Combinar por e-mail ou nas aulas com o professor.

>> DATA DE ENTREGA PG: 17.06.2024 (Data "limite usual" para entrega para fechar notas PPG-CCMC)

>>> Descrição do trabalho abaixo! <<<



DEFINIÇÃO e DETALHAMENTO DO TRABALHO DE SSC588 (Pós-Graduação PPGs)

O trabalho da disciplina de SSC05888 (Pós-Graduação) é uma implementação de um sistema de navegação 
visando que o robô alcance uma determinada posição, usando um comportamento HÍBRIDO
reativo e deliberativo, onde o reativo deve evitar colisões (p.ex. obstáculos e paredes) e o deliberativo
deve seguir um plano definido por uma sequência de ponto de destino (waypoint).

Atenção:

O robô móvel deve navegar sem colidir com obstáculos estáticos (paredes) e nem com os demais obstáculos estáticos 
que possam estar presentes no ambiente. O ambiente possui uma estrutura pré-definida (cenas disponibilizadas no link abaixo)
e alguns obstáculos espalhados no ambiente que devem der evitados (p.ex. cubos e cilindros). 

O comportamento implementado deve ser basicamente um comportamento do tipo GO-TO-DESTINATION, devendo ser implementado 
por comportamentos do tipo reativo (p.ex. Algoritmo BUG, baseado em campos potenciais/campos vetoriais, ou em outra técnica de livre escolha). O robô deve seguir a sequência de pontos de referência disponibilizada para cada cenário, e que vai
garantir que não ocorram problemas com mínimos locais (usuais em comportamentos unicamente reativos).
   
O robô tem acesso a sua localização (com um pequeno erro/imprecisão incluída na localização do robô de 0.1 ~ 10cm) e 
a localização da sequência de ponto de destino (sem erro - você pode considerar sem erro, mas pode adicionar erro se quiser). Esta localização pode ser obtida pelo GPS simulado. 

ARQUIVOS COPPELIASIM/V-REP: 
O trabalho final possuirá 3 mapas disponibilizados: (ver link da pasta dos cenários exemplo mais abaixo)
1) Arquivo CoppeliaSim: TrabFinal-Cenario01-2024.ttt
   Arquivo Waypoint:    Waypoint1-Cenario01-2024.txt
2) Arquivo CoppeliaSim: TrabFinal-Cenario02-2024.ttt
   Arquivo Waypoint:    Waypoint2-Cenario02-2024.txt
3) Arquivo CoppeliaSim: TrabFinal-Cenario03-2024.ttt   
   Arquivo Waypoint:    Waypoint3-Cenario03-2024.txt

ARQUIVOS WEBOTS:
Ver pasta Webots no LINK abaixo.

COPPELIASIM CENÁRIOS EXEMPLO:
AQUI - Pasta CoppeliaSim com Arquivos de Cenários .ttt e Arquivos de Waypoints .txt

WEBOTS CENÁRIOS EXEMPLO:
AQUI - Pasta Webots com Arquivos de Cenários (ambiente + demo controlador .zip)


A navegação será realizada considerando um ambiente apresentado, onde, espera-se que o robô chegue ao destino.
Uma vez que são fornecidos pontos intermediários, o robô deve acabar realizando uma trajetória completa, 
chegando ao seu destino sem colisões.

ARQUIVO WAYPOINT:

É um arquivo texto composto por uma primeira linha que indica quantos pontos são fornecidos, 
seguidos de pares de valores de coordenadas X,Y (números de ponto flutuante, com ou sem sinal, de coordenadas da cena).
O waypoint fornecido é "compatível e adequado" para cada cena. Se quiser, você pode ler o arquivo durante a simulação,
ou, pode também "embutir" estas coordenadas dentro do código em tabelas internas dos scripts usados (Lua, Python,C, etc). 
Exemplo:
3
1.2 5.73
2.4 1.33
3.6 -3.45

Avaliação:
O ambiente será estático, sem obstáculos móveis. É importante considerar que para fins de teste,
o robô poderá ser levemente reposicionado e/ou reorientado dentro do ambiente, para testar se o algoritmo implementado
é robusto o suficiente para aceitar condições iniciais um pouco diferentes (porém similares) a do exemplo dado.
De qualquer modo, o aluno que conseguir alcançar os destinos, baseado na configuração dos 3 mapas fornecidos,
já terá tido "sucesso" neste trabalho. 

Entrega:
Enviar por e-mail para fosorio<at>icmc.usp.br  (CoppeliaSim: arquivo ttt # Webots: zip pasta com controllers e worlds)

Informações sobre os Cenários Fornecidos:
- O robô fornecido pode ser substituído pelo modelo do seu próprio robô (pode usar outros robôs e outras configurações 
  de sensores). A versão atual usa o robô Pioneer original (sem navegação por pontos de destino); 
- O robô pode usar GPS, Compass (Bússola) e IMU/Gyro para obter sua posição e orientação. 
  O GPS do robô deve ter erro de 0.1 noise e 0.1 de shift em cada eixo;
- O ponto final possui um GPS definido indicando a sua posição e sendo marcado por uma esfera vermelha. 
  Objeto não detectável/não colidível e com localização sem erro.
- O robô não deve colidir com as paredes e/ou obstáculos e deve ir até o destino (GPS final da esfera vermelha);

Os cenários fornecidos são compatíveis com o CoppeliaSim v4.0 em diante e com Webtos R2023a em diante.

Link para pasta com o material do Trabalho Prático Final - CoppeliaSIM:
Pasta TP-Trabalho Prático Final (CopppeliaSim)
Link para pasta com o material do Trabalho Prático Final - Webots:
Pasta TP-Trabalho Prático Final (Webots)



F.Osório - Contato: fosorio Arroba.jpg icmc.usp.br
SSC0714
SSC0714-2024(fosorio)
Ir para SSC5888 2024
Site Facebook SSC0714 (SSC0714 engloba SSC0712 e SSC0714) Facebook-Mini-Icon.jpg
Newb.gif Página atualizada em 22 de Abril de 2024