https://catkin-tools.readthedocs.io/en/latest/installing.html
https://automaticaddison.com/setting-up-the-ros-navigation-stack-for-a-simulated-robot/
https://github.com/ROBOTIS-GIT/turtlebot3
https://github.com/ROBOTIS-GIT/turtlebot3_simulations
roslaunch turtlebot3_gazebo turtlebot3_world.launch
export TURTLEBOT3_MODEL=waffle
roslaunch turtlebot3_gazebo turtlebot3_world.launch
sudo apt-get install ros-noetic-gmapping
export TURTLEBOT3_MODEL=waffle
roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=gmapping
sudo apt-get install ros-noetic-map-server
export TURTLEBOT3_MODEL=waffle
rosrun map_server map_saver -f ~/map #(map is filename, you can edit!)
sudo apt-get install ros-noetic-amcl
sudo apt-get install ros-noetic-move-base
sudo apt-get install ros-noetic-dwa-local-planner
export TURTLEBOT3_MODEL=waffle
roslaunch turtlebot3_navigation turtlebot3_navigation.launch map_file:=$HOME/map.yaml
rosbag record -a
-a is record all
Note!! You have to run roscore first
rosbag play filename.bag