ROS2-turtlebot3-cartographer建图导航使用记录
流程记录
运行环境 ubunutu20.04-ROS2-foxy
turtlebot3仿真和导航安装
sudo apt install ros-foxy-navigation2
sudo apt install ros-foxy-nav2-bringup
sudo apt install ros-foxy-turtlebot3*
gazebo安装补全
sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'
wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
sudo apt-get update
sudo apt-get install gazebo11
sudo apt-get install libgazebo11-dev
在主目录找到.gazebo文件夹,打开终端,下载,完成后将.gazebo/gazboe_models文件夹修改成models
git clone https://github.com/osrf/gazebo_models
在主目录.bashrc内加入
export TURTLEBOT3_MODEL=burger
export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:/opt/ros/foxy/share/turtlebot3_gazebo/models
第一个终端,开启仿真
ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py
第二个终端,开启建图
ros2 launch turtlebot3_cartographer cartographer.launch.py use_sim_time:=True
第三个终端,开启键盘
ros2 run turtlebot3_teleop teleop_keyboard
第四个终端,保存地图(第二个map为文件名)
ros2 run nav2_map_server map_saver_cli -f ~/图片/map/map
关闭键盘和建图(ctrl+c终止程序),在关闭建图的终端里输入
ros2 launch turtlebot3_navigation2 navigation2.launch.py use_sim_time:=True
使用rviz给机器人初始位置和方向后,使用rviz中的给导航点开始导航
替换地图
/opt/ros/foxy/share/turtlebot3_navigation2/map 下的地图删除,替换成保存的地图。(需用sudo)