• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

Google的cartographer SLAM算法在Turtlebot3上的仿真实现教程(中)(已排坑!)

人工智能 梦凝小筑 1702次浏览 0个评论

一、前言

该篇为本文的重点,主要内容为

cartographer_turtlrbot3源码库的安装

二、cartographer_turtlebot源码库安装

这里基本参考创客智造的安装教程,但是由于教程中安装的一些包版本已经更新,如果完全按照教程走的话

会发现最后编译会报错(大坑之所在!!!)

所以我在这里重新更改了部分过程,应该可以一遍通过!

环境依旧是:ubuntu16.04  + ROSkinetic版本

1.依赖安装

sudo apt-get update
sudo apt-get install -y python-wstool python-rosdep ninja-build

2.安装protobuf

这里主要参考:https://blog.csdn.net/liujiayu2/article/details/77837360

但在github上下载时注意版本问题 我们需要3.4.0版本,而不是最新版

github源代码下载地址:https://github.com/google/protobuf

在branch:master 的tag栏中选择版本 3.4.0 下载该版本程序包

源码包中的src/README.md, 有详细的安装说明,安装过程如下: 解压缩后打开其所在文件夹

1、安装所需工具:sudo apt-get install autoconf automake libtool curl make g++ unzip

2、自动生成configure配置文件:./autogen.sh

3、配置环境:./configure

4、编译源代码(时间比较长):make

5、安装:sudo make install

6、刷新动态库:sudo ldconfig

7、检查安装: protoc –version

应该是出现3.4.0版本就对了

3.创建新的工作空间

mkdir catkin_ws
cd catkin_ws
wstool init src

4.Merge the cartographer_turtlebot.rosinstall

wstool merge -t src https://raw.githubusercontent.com/googlecartographer/cartographer_turtlebot/master/cartographer_turtlebot.rosinstall
 
vim src/.rosinstall**
#更改ceres-solver中地址改为下面的地址:(否则下一步会中止)
#uri: https://github.com/ceres-solver/ceres-solver.git
 
wstool update -t src

5.手动替换正确版本的ceres-solver(1.12 0rc4)!!!

第三步中更改了ceres-solver程序包的github的地址,是因为原地址需要翻墙才能正常下载

但是这个链接永远对应最新版本的ceres-solver 这就会导致我们最后编译整个程序会报错!!

因此我们需要手动下载  ceres-solver 1.12 0rc4 版本的程序包 去替换新版本

(1)打开链接https://github.com/ceres-solver/ceres-solver.git

(2)在branch:master 的tag栏中选择版本 1.12 0rc4 下载该版本程序包

(3)在你自己的程序工作空间 src 里覆盖原版本的ceres-solver文件夹,并重命名去掉版本号,保持和被替换的版本相同文件名

6 安装deb dependencies.

sudo rosdep init #安装ros的时候如果执行了这一步可跳过
rosdep update
 
#! if error try with 
#! sudo -H apt-get install --allow-unauthenticated ros-kinetic-urg-node
#! or
#! sudo -H apt-get install --allow-unauthenticated ros-kinetic-kobuki-core
 
rosdep install --from-paths src --ignore-src --rosdistro=${KINETIC} -y

7. make

catkin_make_isolated --install --use-ninja #如果报错把make生成的三个文档删掉再重新执行一遍
source install_isolated/setup.bash

8.测试

现在安装了CartographerCartographer ROS和Cartographer ROS的TurtleBot集成

将示例包下载到已知位置,~/Downloads,并使用roslaunch来调出演示:

下载链接:wget -P ~/Downloads https://storage.useso.com/cartographer-public-data/bags/turtlebot/cartographer_turtlebot_demo.bag

程序运行:

# Launch the 2D LIDAR demo.
roslaunch cartographer_turtlebot demo_lidar_2d.launch bag_filename:=${HOME}/Downloads/cartographer_turtlebot_demo.bag
 
# Launch the 2D depth camera demo.
roslaunch cartographer_turtlebot demo_depth_camera_2d.launch bag_filename:=${HOME}/Downloads/cartographer_turtlebot_demo.bag
 
# Launch the 3D depth camera demo.
roslaunch cartographer_turtlebot demo_depth_camera_3d.launch bag_filename:=${HOME}/Downloads/cartographer_turtlebot_demo.bag

运行效果:


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明Google的cartographer SLAM算法在Turtlebot3上的仿真实现教程(中)(已排坑!)
喜欢 (0)

您必须 登录 才能发表评论!

加载中……