Skip to content

Simulation in Gazebo in Ros with Turtlebot3 Model to compare performance of local planners: DWA and TEB.

License

Notifications You must be signed in to change notification settings

rureverek/turtlebot3_local_planner_benchmark

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ROS Navigation stack local planner benchmark with Turtlebot3 Model

Requirements:

alternative: use provided Docker Image:

docker pull piotrmik/test
docker run -it --env="DISPLAY=host.docker.internal:0.0" --env="scenario=<>" piotrmik/test

Build and installation

If the requirements are met, jump to Install package.

Install ROS:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt install curl
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
sudo apt update
sudo apt install ros-noetic-desktop-full

Source setup.bash

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

Init rosdep

sudo apt install python3-rosdep
sudo rosdep init
rosdep update

Init catkin

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make

Install git

sudo apt install git

Install package

Clone repo

cd ~/catkin_ws/src
git clone https://github.com/rureverek/turtlebot3_local_planner_benchmark.git

Source workspace and Install dependencies

cd ~/catkin_ws
echo "source $(pwd)/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
rosdep install turtlebot3_local_planner_sim

Build package

cd ~/catkin_ws
catkin_make

Configure environment

in ~/.bashrc

echo "export TURTLEBOT3_MODEL=waffle_pi" >> ~/.bashrc
echo "export GAZEBO_PLUGIN_PATH=~/catkin_ws/src/turtlebot3_local_planner_benchmark/plugins" >> ~/.bashrc
source ~/.bashrc

Run the simulation

DWA Planner: roslaunch turtlebot3_local_planner_sim run_simulation_dwa.launch scenario:=<name-of-scenario>

Standalone:

DWAPlannerROS:
  potential_planner: False

Potential Field planner:

DWAPlannerROS:
  potential_planner: True

(param/dwa_local_planner_params_waffle_pi.yaml)

TEB Planner: roslaunch turtlebot3_local_planner_sim run_simulation_teb.launch scenario:=<name-of-scenario>

Scenarios currently supported:

  • Static
  • Dynamic_simple
  • Dynamic_complex
  • Maze
  • Narrow
  • House
  • Track
  • Big_house
  • Big_house_part_unknown

Note:

  • Letter case matters when specifying scenario name in the run command
Dwa init Dwa just before collision
halo
Teb init Teb avoiding dynamic obstacle

About

Simulation in Gazebo in Ros with Turtlebot3 Model to compare performance of local planners: DWA and TEB.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published