ROB106 · Navegação, mapeamento e noções de ROS
Sobre o curso
Entenda como robôs móveis encontram o caminho: localização, mapeamento em grade de ocupação e SLAM, planejamento de trajetórias global e local com mapas de custo e os blocos do ROS 2 (nós, tópicos, serviços, ações, tf2 e Nav2) para juntar tudo em simulação no Gazebo.
Para quem é
Quem já programa movimento e percepção de robôs e quer construir navegação autônoma com ferramentas open source padrão do setor.
Pré-requisitos
ROB104 (cinemática e referenciais); recomenda-se o ROB105; Python com segurança e comandos básicos de terminal Linux.
O que você será capaz de fazer
- Explicar localização, mapeamento, planejamento e controle e como o SLAM combina os dois primeiros.
- Criar, executar e inspecionar nós ROS 2 em Python que publicam e assinam tópicos.
- Construir e salvar o mapa de um ambiente simulado com o SLAM Toolbox.
- Configurar o Nav2 para se localizar num mapa salvo e navegar até metas desviando de obstáculos.
Aulas
- Aula 1 · Localização, mapeamento e SLAM
- Aula 2 · Planejamento de trajetórias, mapas de custo e recuperação
- Aula 3 · Fundamentos do ROS 2 e a pilha Nav2
- Aula 4 · Laboratório e atividade
Laboratório: Mapeie e navegue num armazém simulado com ROS 2
Você monta um ambiente ROS 2 gratuito, escreve um nó em Python que conduz o turtlesim e depois passa para um TurtleBot3 num mundo do Gazebo. Constrói um mapa com o SLAM Toolbox, salva, se localiza nele com o AMCL e envia metas de navegação pelo Nav2, observando no RViz os mapas de custo e as trajetórias planejadas.
Ferramentas gratuitas: ROS 2 (versão LTS atual, como a Jazzy Jalisco) no Ubuntu 24.04 via WSL2, máquina virtual ou ambiente de desenvolvimento em nuvem gratuito; Gazebo; pacotes de simulação do TurtleBot3; SLAM Toolbox; Nav2; RViz (todos gratuitos e open source)
Atividade avaliada
Envie o código do seu pacote ROS 2, os arquivos do mapa salvo (.pgm e .yaml), prints ou um vídeo curto do mapeamento e da navegação e a saída de <code>ros2 node list</code> e <code>ros2 topic list</code> durante a navegação. Desenhe um diagrama dos principais nós e tópicos do seu sistema. Explique como AMCL, planejador global e controlador local trabalham juntos e descreva o que aconteceu ao acrescentar o obstáculo. Sugira duas mudanças de parâmetro que deixariam o robô mais seguro num pequeno armazém com pessoas circulando.
| Critério | Peso | Como é um trabalho excelente |
|---|---|---|
| Nó ROS 2 | 25% | O nó em Python está bem estruturado, publica e assina corretamente e desenha o quadrado de forma confiável. |
| Mapeamento | 25% | O mapa cobre o ambiente com paredes nítidas e é salvo e recarregado corretamente. |
| Navegação | 30% | Localização e navegação até as metas funcionam, o recálculo diante do obstáculo aparece e o diagrama de nós e tópicos está correto. |
| Explicação e ajustes de segurança | 20% | Os papéis de AMCL, planejador e controlador são explicados corretamente e as sugestões de parâmetros são realistas. |
Peça de portfólio
Uma configuração de navegação ROS 2 funcionando, com seu próprio mapa, diagrama de nós e pacote Python, competência central num portfólio de robótica móvel.
Próximo passo
Continue com ROB107 · Automação industrial e robôs colaborativos · 8 horas · R$ 80,00
Conteúdo do curso
ROB106 · Navegação, mapeamento e noções de ROS (8 h)
-
Aula 1 · Localização, mapeamento e SLAM
-
Aula 2 · Planejamento de trajetórias, mapas de custo e recuperação
-
Aula 3 · Fundamentos do ROS 2 e a pilha Nav2
-
Aula 4 · Laboratório e atividade
-
ROB106 Avaliação · Navegação, mapeamento e noções de ROS
