Welcome to the Robocon ROS 2 project! This workspace contains the simulation and control software for our robot, designed for ROS 2 Jazzy and Gazebo Harmonic.
We use Docker and VS Code Dev Containers to ensure everyone has the same development environment. You don't need to install ROS 2 on your local machine!
- Docker Desktop
- Visual Studio Code
- Dev Containers Extension for VS Code
- Clone the repository (if you haven't already):
git clone <your-repo-url> cd robocon
- Open in VS Code:
code . - Reopen in Container:
- When asked "Reopen in Container", click Reopen.
- Or press
F1and select Dev Containers: Reopen in Container. - Wait for the container to build (this may take a few minutes the first time).
Once inside the VS Code terminal (you should see root@...):
-
Install the dependencies:
apt-get update && rosdep update && rosdep install --from-paths src --ignore-src -r -y
-
Build the workspace:
colcon build
-
Source the environment:
source install/setup.bash -
Run the Simulation:
ros2 launch robocon_bringup sim.launch.py
This will open Gazebo with the Robocon 2026 game field and the robot model.
The code is organized in src/ following the ros_gz_project_template pattern:
robocon_description: Robot models (URDF/SDF), meshes, and visual assets.robocon_gazebo: Game field worlds (robocon_2026.sdf) and simulation settings.robocon_application: The "brain" of the robot. Contains:robocon_application/robot_logic_node.py: Python node for mode switching and logic.config/localization.yaml: Parameters for localization (AMCL/EKF).
robocon_bringup: Launch files to start everything.
- Always run
colcon buildto check for errors before committing. - New models go into
robocon_description/models. - New worlds go into
robocon_gazebo/worlds.
- "Package not found": Did you run
source install/setup.bash? - Gazebo models missing: Ensure
robocon_descriptionis built and sourced so theGZ_SIM_RESOURCE_PATHis set correctly.