Skip to content

Autonomous source tracking of marine pollution using USVs

Notifications You must be signed in to change notification settings

ucl-frl/marine_source_tracking

 
 

Repository files navigation

Uncertainty-Aware Active Source Tracking of Marine Pollution using Unmanned Surface Vehicles

Depedencies

Usage

Build the provided dockerfile, run the container based on the built image and allow it to access the network of the host machine.

On the host machine: Start the simulation environment, sdf files can be found in experiments folder:

gz sim -v4 test_world.sdf

On the container:

Start the SITL:

cd /work/ardu_ws/src/ardupilot
Tools/autotest/sim_vehicle.py -v Rover -f rover-skid --model JSON  --console --map --custom-location=$YOUR_PREFERRED_LOCATION --enable-dds
# Arm the vehicle
# Set Guided Mode

Start the micro-ROS agent:

source /work/ardu_ws/install/setup.bash
ros2 run micro_ros_agent micro_ros_agent udp4 -p 2019

Launch the pollution simulation:

source /work/ardu_ws/install/setup.bash
source /work/ros_ws/install/setup.bash
ros2 launch pollution_sim sim_odom_tf.launch.py scenario:=$SCENARIO_NAME

Launch the tracking server and client:

source /work/ardu_ws/install/setup.bash
source /work/ros_ws/install/setup.bash
ros2 launch pollution_ipp source_loc.launch.py start_client:=true scenario:=$SCENARIO_NAME st:=$START_POSITION_NAME

Credits

This repository used code from:

The local estimation kernal and propagation was based on the implementation of GasSourceLocalization.

About

Autonomous source tracking of marine pollution using USVs

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 79.9%
  • Metal 9.2%
  • Python 5.0%
  • CMake 4.6%
  • Dockerfile 1.3%