5.4.1 SLAM建图
功能介绍
SLAM指即时定位与地图构建(Simultaneous Localization and Mapping,简称SLAM)。 本章节使用ROS2的SLAM-Toolbox作为建图算法,在Gazebo中控制小车行驶建立地图,并通过Rviz2观察建图效果。 其中SLAM-Toolbox运行在RDK上,Gazebo和Rviz2运行在与RDK同一网段的PC上。
支持平台
平台 | 运行方式 |
---|---|
RDK X3, RDK X3 Module, | Ubuntu 20.04 (Foxy), Ubuntu 22.04 (Humble) |
RDK X5, RDK X5 Module, RDK S100 | Ubuntu 22.04 (Humble) |
RDK Ultra | Ubuntu 20.04 (Foxy) |
准备工作
RDK平台
-
RDK已烧录好Ubuntu 20.04/Ubuntu 22.04系统镜像。
-
RDK已成功安装TogetheROS.Bot。
-
tros.b成功安装后,安装SLAM-Toolbox
- Foxy
- Humble
sudo apt-get install ros-foxy-slam-toolbox
sudo apt-get install ros-humble-slam-toolbox
信息
如果安装失败,并且报错如下:
The following packages have unmet dependencies:
ros-foxy-slam-toolbox : Depends: ros-foxy-nav2-map-server but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
请执行以下命令后再安装:
apt update
sudo apt install libwebp6=0.6.1-2ubuntu0.20.04.3
注意
如果sudo apt update
命令执行失败或报错,请查看常见问题章节的Q10: apt update 命令执行失败或报错如何处理?
解决。
- 和RDK在同一网段的PC,PC已安装Ubuntu 20.04/Ubuntu 22.04系统、ROS2桌面版和仿真环境Gazebo,数据可视化工具Rviz2。
- Foxy
- Humble
- Ubuntu 20.04系统和ROS2 Foxy桌面版
- PC的ROS2安装成功后安装Gazebo和Turtlebot3相关的功能包,安装方法为:
sudo apt-get install ros-foxy-gazebo-*
sudo apt install ros-foxy-turtlebot3
sudo apt install ros-foxy-turtlebot3-bringup
sudo apt install ros-foxy-turtlebot3-simulations
sudo apt install ros-foxy-teleop-twist-keyboard
- Ubuntu 22.04系统和ROS2 Humble桌面版
- PC的ROS2安装成功后安装Gazebo和Turtlebot3相关的功能包,安装方法为:
sudo apt-get install ros-humble-gazebo-*
sudo apt install ros-humble-turtlebot3
sudo apt install ros-humble-turtlebot3-bringup
sudo apt install ros-humble-turtlebot3-simulations
sudo apt install ros-humble-teleop-twist-keyboard