自主导航系列20-cartographer排雷

1.安装

kinetic+cartographer+turtlebot3仿真
Cartograrher的安装
首先在ubuntu主目录下建立cartographer的工作环境“google_ws”
$mkdir google_ws

1.安装依赖
$ cd google_ws
$ sudo apt-get update
$ sudo apt-get install -y python-wstool python-rosdep ninja-build
2.初始化工作空间
$ cd catkin_ws
$ wstool init src
3.设置下载地址
$ wstool merge -t src https://raw.githubusercontent.com/googlecartographer/cartographer_ros/master/cartographer_ros.rosinstall
$ wstool update -t src
下载地址中包括cartographer、cartographer_ros、ceres-solver三个功能包。但是ceres-solver用原下载地址下载不到,因此需要更改下载地址。在google_ws工作空间下的src中存在一个隐藏文件“.rosinstall”,进入src中键入ctrl+h就可以看到“.rosinstall”文件。

此时需要更改的是ceres-solver的下载地址,改成https://github.com/ceres-solver/ceres-solver.git
4.下载功能包
$ src/cartographer/scripts/install_proto3.sh
$ sudo rosdep init
$ rosdep update
$ rosdep install --from-paths src --ignore-src --rosdistro=${melodic} -y
5.编译功能包
$ catkin_make_isolated --install --use-ninja
配置工作环境
$ source install_isolated/setup.bash
可以在主目录下找到隐藏文件“.bashrc”,在“.bashrc”下永久加入cartographer包的环境配置。按照自己主机位置进行配置加入catkin_google_ws/install_isolated/setup.bash
$ source /home/zhangwei/catkin_google_ws/install_isolated/setup.bash

编译时间稍长,耐心等待。
6.测试是否安装成功
安装测试数据包
$ wget -P ~/Downloads https://storage.googleapis.com/cartographer-public-data/bags/backpack_2d/cartographer_paper_deutsches_museum.bag
安装完测试包后就可以进行roslaunch
$ roslaunch cartographer_ros demo_backpack_2d.launch bag_filename:=${HOME}/Downloads/cartographer_paper_deutsches_museum.bag
成功后会出现下图所示的示例:

7.在turtlebot3中进行cartographer测试
在turtlebot3_slam中有turtlebot3_cartographer.launch文件,但是不能直接运行,需要更改文件中的一句代码。
打开turtlebot3_cartographer.launch文件,可以看到launch文件内容如下:

其中红色框的是需要修改的部分。将$(arg configuration_basename)换成turtlebot3_lds_2d_gazebo.lua。修改后如下图所示:

8.turtlebot3仿真环境搭建
建立一个turtlebot3的空环境
$ roslaunch turtlebot3_gazebo turtlebot3_empty_world.launch
在空环境中随便加一个环境:

然后就可以运行turtlebot3_slam.launch
$ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=cartographer
然后就可以进行cartographer建图了。

建图时候不用进行键盘控制命令,因为turtlebot3_cartographer.launch中已经加入了move_base,所以可以用rviz中的2D Nav Goal命令,给机器人一个目标的,机器人会自己运动建图,无需人为更多的干预。

https://blog.csdn.net/Steve_Kung/article/details/89435998

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值