SLAM建图
从这一节开始,我们开始尝试将 TogetherROS 与机器人联系起来做一些小项目。
第一节将开始学习 SLAM 技术。SLAM一般指即时定位与地图构建,即时定位与地图构建(Simultaneous Localization and Mapping,简称SLAM)
这个章节,我们将联系ROS2 和 TogetherROS ,使用 ROS2 的 SLAM-Toolbox 作为建图算法,在仿真环境中构建地图。
准备工作
1、安装 SLAM - Toolbox建立软链接
$ sudo apt-get install ros-foxy-slam-toolbox
$ cd /opt/tros
$ sudo python3 create_soft_link.py --foxy /opt/ros/foxy/ --tros /opt/tros/
2、搭载仿真环境,此处采用 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
使用介绍
首先在 PC 端启动仿真环境
$ source /opt/ros/foxy/setup.bash
$ export TURTLEBOT3_MODEL=burger
$ ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py
Attention
第一次加载可能比较慢,原因是正在下载部分需要的插件。
打开后,即可看到如图:
在PC端打开一个新终端:
此时会打开一个RVIZ2 ,需要添加“map” 如下图:
旭日X3 派运行 SLAM-Toolbox:
# 配置TogetherROS环境
$ source /opt/tros/setup.bash
#启动SLAM launch文件
$ ros2 launch slam_toolbox online_sync_launch.py
此处有可能会遇到缺少lib文件问题,如果发生的话如下操作:
PC端再打开一个新终端,遥控建图:
效果如图: