参考:
TX2+rplidar+cartographer
创客智造-ROS 与 SLAM 入门教程 - cartographer 在 Turltlebot 的应用 3 - 构建地图
Turtlebot 入门教程 - 激光雷达 (Rplidar)gmapping 构建地图
创客智造-Turtlebot 入门 - 创建地图
创客智造-Turtlebot 入门 - 遥控
主机:Jetson TX2 Ubuntu版本:16.04 LTS
Jetson TX2主要的软件安装在Jetson TX2 使用 Rplidar A2 实现 Cartographer已经介绍了,这篇就记录一下如何和Turtlebot2搭配使用。
一:安装cartographer_turtlebot
前提:ROS、cartographer、cartographer_ros、rplidar_ros等都已经安装
官方教程:https://google-cartographer-ros-for-turtlebots.readthedocs.io/en/latest/
1 |
|
二:安装turtlebot_apps
需要用到turtlebot_navigation,turtlebot_navigation在turtlebot_apps里面,所以需要安装turtlebot_apps
1 |
|
添加环境变量,在~/.bashrc 最后添加一行:
source ~/catkin_ws/install_isolated/setup.bash
刷新配置
$ source ~/.bashrc
或
$ rospack profile
三、制作雷达驱动启动文件(重点)
1、复制 rplidar.launch 到 rplidar-laser.launch
1 |
|
2、打开 rplidar_laser.launch进行修改
检查 frame_id 是否指定为 laser:
<param name="frame_id" type="string" value="laser"/>
3、增加 TF 定义
1 |
|
4、重新编译
1 |
|
-
修改为 args=”0.0 0.0 0.18 0 0.0 0.0 为自己的实际安装位置。详情查看,static_transform_publisher 部分
-
static_transform_publisher x y z qx qy qz qw frame_id child_frame_id period_in_ms
-
这里我假设底盘的中心点为 0,雷达放在机器人托盘中心位置,X 为 0,高度为 18CM,Z 为 0.18m
-
TF 的单位使用米的,测量单位是 CM
-
rplidar_laser.launch修改后的完整代码如下:
1 |
|
四:使用cartographer_turtlebot构建地图
1、增加 turtlebot_lidar.launch
1 |
|
写入如下代码:
1 |
|
2、新增启动文件 turtlebot_lidar_2d.launch
1 |
|
写入如下代码:
1 |
|
3、重新编译
1 |
|
4、启动Rplidar A2雷达
打开一个新终端,输入:
$ roslaunch turtlebot_navigation rplidar_laser.launch
5、启动cartographer_turtlebot建地图
再打开一个新终端,输入:
$ roslaunch cartographer_turtlebot turtlebot_lidar_2d.launch
6、使用键盘操作turtlebot2移动
又打开一个新终端,输入:
$ roslaunch turtlebot_teleop keyboard_teleop.launch
按提示利用键盘控制turtlebot2移动建图。
具体以及更多控制方式可参考:创客智造-Turtlebot 入门 - 遥控
五、保存地图
1 |
|
大功告成!!!!