Skip to content

HyPAIR/turtlebot_house_sim

Repository files navigation

Turtlebot House Sim

This package contains a simulator for a Turtlebot searching for a wire with an uncertain location in a house. The wire simulation was developed by Oliver Grubb.

This simulator is used to evaluate REFINE-PLAN from the paper 'Planning under Uncertainty from Behaviour Trees'.

Dependencies & Installation

This package has been tested in ROS 2 Humble.

First, install the following packages:

sudo apt install ros-humble-gazebo-* ros-humble-cartographer ros-humble-cartographer-ros ros-humble-navigation2 ros-humble-nav2-bringup ros-humble-dynamixel-sdk ros-humble-turtlebot3-msgs ros-humble-turtlebot3

Note that navigation 2 won't work out of the box with the turtlebot 3 in ROS 2 Humble. To fix it, change robot_model_type: "differential" to "nav2_amcl::DifferentialMotionModel" in /opt/ros/humble/share/turtlebot3_navigation2/param/waffle.yaml.

Additional dependencies:

After installing the dependencies, place this package into the src directory of your workspace and run colcon build --symlink-install to build.

Replicating Experiments

To replicate the experiments in 'Planning under Uncertainty from Behaviour Trees', first set up a mongoDB instance either locally or on the cloud.

Setting up a Local MongoDB instance

Follow the instructions here. After installation, run sudo systemctl start mongod. The MongoDB instance will be at localhost:27017.

Then run:

cd bringup
./run_experiments.sh <mode> <MongoDB instance address>

The <mode> can be set to:

  • data which runs 100 rounds of 100 random actions for data collection.
  • initial which runs the initial BT 100 times.
  • refined which runs the refined policy 100 times.

Maintainer

This repository is maintained by:

Charlie Street @charlie1329 c.l.street@bham.ac.uk

About

A Gazebo simulation of a Turtlebot searching for a wire in a house. Used for evaluating BT refinement.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors