Skip to content

Emmaa65/AS_project_group_10

Repository files navigation

Autonomous Systems 2025 // Project Group 10

SubTerrain Challenge (Project)

Requirements

System Setup

The following is a step-by-step guide on how to set up the project on a fresh virtual machine with Ubuntu 24.04, ROS 2 Jazzy and git installed. Testing showed that the order of installation and cloning is important for the build to work because some packages depend on ROS 2 repositories being present.

  1. Clone the project repository
cd # go to desired directory
# clone project repository
git clone git@github.com:Emmaa65/AS_project_group_10.git
  1. Copy simulation files

This assumes that the /Simulation folder is unpacked in the /Downloads folder.

# create directory in /src/simulation/
mkdir -p ~/AS_project_group_10/ros2_ws/src/simulation/unity_sim
# copy simulation files into /src/simulation/unity_sim/
cp -r ~/Downloads/Simulation/. ~/AS_project_group_10/ros2_ws/src/simulation/unity_sim/
# make Simulation.x86_64 executable
chmod +x ~/AS_project_group_10/ros2_ws/src/simulation/unity_sim/Simulation.x86_64
  1. Install required packages
# install packages, flag -y automatically approves of installation
sudo apt install -y \
libgflags-dev \
libgoogle-glog-dev \
libnlopt-dev \
ros-jazzy-depth-image-proc \
ros-jazzy-vision-opencv \
ros-jazzy-pcl-ros \
libnlopt-cxx-dev \
ros-jazzy-nav2-msgs \
ros-jazzy-nav2-util \
libfcl-dev \
libompl-dev \
ros-jazzy-ompl \
ros-jazzy-octomap \
ros-jazzy-octomap-msgs \
ros-jazzy-octomap-server \
ros-jazzy-octomap-ros
  1. Clone Octomap plugins for RViz into src
cd AS_project_group_10/ros2_ws/src/
git clone https://github.com/OctoMap/octomap_rviz_plugins -b ros2
cd ../

Note: The required packages may be installed (Step 3) before cloning the project repo (step 1) and copying the simulation files (step 2). The octomap_rviz_plugins (Step 4) must come last, after the ROS 2 Octomap and PCL packages. However, it is highly recommended to follow the guide step by step.

Running the simulation

  1. Checkout and pull main
# run these from the repo root or in ros2_ws/
git checkout main
git pull
  1. Build, source and launch
# source if not included in .bashrc 
source /opt/ros/jazzy/setup.bash
# build inside the workspace
cd ~/AS_project_group_10/ros2_ws
# build the project and source workspace (use --symlink-install for faster iterations)
colcon build && source install/setup.bash
# execute main launch file
ros2 launch system_bringup main.launch.py

Access saved octomap and detected objects

  1. View saved octomap afer simulation has finished
ros2 launch system_bringup view_saved_octomap.launch.py
  1. Text file with detected objects is stored under:
~/AS_project_group_10/ros2_ws/detected_objects.txt

About

Lost & Localized

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors