- ROS Noetic Desktop Full
- Git
- Ubuntu 20.04
- Modified Navigation package for potential field planner
alternative: use provided Docker Image:
docker pull piotrmik/test
docker run -it --env="DISPLAY=host.docker.internal:0.0" --env="scenario=<>" piotrmik/test
If the requirements are met, jump to Install package.
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
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
sudo apt install python3-rosdep
sudo rosdep init
rosdep update
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make
sudo apt install git
cd ~/catkin_ws/src
git clone https://github.com/rureverek/turtlebot3_local_planner_benchmark.git
cd ~/catkin_ws
echo "source $(pwd)/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
rosdep install turtlebot3_local_planner_sim
cd ~/catkin_ws
catkin_make
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
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 |
---|---|
![]() |
![]() |
Teb init | Teb avoiding dynamic obstacle |
![]() |
![]() |