1. Ambiente de Desenvolvimento


O ambiente de desenvolvimento proposto no fluxograma é cuidadosamente estruturado para oferecer uma plataforma eficiente e organizada para o desenvolvimento de projetos utilizando ROS 2 Humble dentro de containers Docker. Através de uma combinação de scripts automatizados, arquivos de configuração e uma imagem Docker personalizada, este ambiente garante que todas as dependências e ferramentas necessárias estejam prontas para uso, independentemente do sistema operacional do desenvolvedor.

1.1 Estrutura do Ambiente de Desenvolvimento


A estrutura proposta do Ambiente de Denvolvimento inicia-se com a pasta ****LabRoM_Dinamica_de_Sistemas_Roboticos, este é o diretório raiz do projeto, o nome pode mudar, é de livre escolha. Ele contém todos os arquivos e subdiretórios necessários para configurar e rodar o ambiente de desenvolvimento e simulação com ROS 2 utilizando Docker. Todo o conteúdo do projeto, incluindo scripts, Dockerfile, configurações, e o workspace do ROS 2, reside dentro deste diretório.

graph TD;
    A[LabRoM_Dinamica_de_Sistemas_Roboticos] --> B[docker]
    B --> D[ROS_humble.dockerfile]
    B --> E[config]
    B --> F[scripts]
    E --> G[bashrc]
    E --> H[entrypoint.sh]
    F --> I[build.sh]
    F --> J[run.sh]
    
    A[LabRoM_Dinamica_de_Sistemas_Roboticos] --> C[ros2_ws]
    

    

1.1.1 Pasta: Docker


Este diretório contém arquivos e scripts específicos para a configuração e construção da imagem Docker. O objetivo do diretório é centralizar tudo o que é necessário para criar o ambiente Docker, que será usado para rodar o ROS 2. Dentro dele, encontramos o Dockerfile, arquivos de configuração como .bashrc e entrypoint.sh, e scripts auxiliares.

1.1.2 Pasta: ros2_ws


O diretório ros2_ws é o workspace do ROS 2, onde todo o código-fonte, pacotes, e arquivos de configuração específicos do ROS 2 são armazenados. Ele é mapeado para dentro do container Docker para que o desenvolvedor possa acessar e modificar os pacotes ROS 2 sem precisar reconstruir a imagem Docker.

Função detalhada:

1.2 Compreendo a Estrutura: Dockerfile e Outros