4、生成地图

创建地图

在本教程中,我们将通过驾驶TurtleBot 4机器人并使用SLAM来绘制一个区域。首先要确保要绘制地图的区域没有多余的障碍物。理想情况下,在创建地图时,您不希望人或动物在该区域移动。


运行 SLAM

  • 首先, 安装 turtlebot4_navigation:

    sudo apt install ros-humble-turtlebot4-navigation

    然后运行SLAM。建议在远程PC上运行同步SLAM以获得更高分辨率的地图。

    ros2 launch turtlebot4_navigation slam.launch.py

    异步SLAM也可以使用。

    ros2 launch turtlebot4_navigation slam.launch.py sync:=false

    要更改映射分辨率或其他SLAM参数,请复制 default config并对其进行修改。然后,将参数作为启动参数传入。

    ros2 launch turtlebot4_navigation slam.launch.py params:=/full/path/to/slam.yaml


运行 Rviz2

要使地图可视化,请使用 view_robot启动文件启动Rviz2。

ros2 launch turtlebot4_viz view_robot.launch.py

rviz_slam.png

Rviz2示出了由SLAM生成的映射

运行TurtleBot 4

使用任何方法驱动机器人在您想要绘制地图的区域周围行驶。如果你不确定如何驾驶机器人,请查看驾驶教程。

当你驾驶机器人在该区域周围行驶时,要注意RVIZ,以确保正确填写地图。

FFE19462-29F8-497B-BEDF-9D187E4ACBE9.png

通过运行TurtleBot 4生成地图

保存地图

一旦您对地图感到满意,就可以使用以下命令保存它:

ros2 service call /slam_toolbox/save_map slam_toolbox/srv/SaveMap "name:   data: 'map_name'"

这将把地图保存到当前目录中。


查看地图

保存地图后,它将生成一个 map_name.pgm文件,该文件可以在图像编辑器中查看。还会创建一个 map_name.yaml文件。您可以编辑此文件以调整地图参数。

map.png

生成的地图图像