kinetic安装测试cartographer教程

[2022/1/23]本实验环境为ubuntu16.04+[ROS]kinetic1.12.17

参考链接:https://blog.csdn.net/qq_45839415/article/details/120444971


文章目录

  • kinetic安装测试cartographer教程
    • @[toc]
    • 一、考虑后期有编译自己的代码的需求的安装方法(推荐)
      • 1.安装工具
      • 2.初始化工作空间
      • 3.下载功能包
      • 4.安装和编译功能包
        • 4.1一键安装并编译
        • 4.2分步安装
          • 4.2.1安装ceres-solver
          • 4.2.2安装cartographer
          • 4.2.3编译安装cartographer_ros
            • catkin_make编译
            • catkin_make_isolated编译
    • 二、不考虑后期有编译自己的代码的需求只求测试样例的安装方法
      • 下载安装功能包
    • 三、cartographer仿真测试
      • 1.启动2D slam demo演示
      • 2.启动3D slam demo演示
      • 3.启动Revo LDS demo演示
      • 4.启动自己定义的cartographer_ros节点仿真演示
    • 四、附上各种安装方法的cartographer相关库和功能包安装位置对比

安装使用cartographer属于一个难题,会遇到各种奇葩问题,本人学习安装cartographer遇到种种问题,诸如缺少absl库、protobuf版本不对, gmock缺少c++支持等等数不胜数的问题,鏖战4天,查阅各种资料,终于摸索出正确的安装方法。因为参照上方参考链接的方法安装的cartographer相关功能包后,因为版本不匹配问题导致无法编译古月老师教程键盘控制机器人建图的仿真测试代码,于是将古月老师有关教程代码上传至github,附在下面,便于后期安装和使用。

cartographer安装包:https://github.com/serapann/ros-kinetic-cartographer.git

仿真测试代码:https://github.com/serapann/guyue-cartographer-test.git

下面是安装和测试的具体步骤。

一、考虑后期有编译自己的代码的需求的安装方法(推荐)

1.安装工具

sudo apt-get install -y google-mock libboost-all-dev  libeigen3-dev libgflags-dev libgoogle-glog-dev liblua5.2-dev libprotobuf-dev  libsuitesparse-dev libwebp-dev ninja-build protobuf-compiler python-sphinx  ros-kinetic-tf2-eigen libatlas-base-dev libsuitesparse-dev liblapack-dev

2.初始化工作空间

##需要提前新建目录
mkdir -p ~/google_ws/src
##
cd ~/google_ws/src
catkin_init_workspace

3.下载功能包

cd ~
git clone https://github.com/serapann/ros-kinetic-cartographer.git
cd ros-kinetic-cartographer
cp -R * ~/google_ws/src

4.安装和编译功能包

对于上面下载的安装包,这里介绍两种安装方式,各有特点,一键安装便于偷懒,分步安装便于了解每一步的安装位置和安装过程:

4.1一键安装并编译

cd ~/google_ws
catkin_make_isolated --install --use-ninja

是一段漫长的等待(看窗口提示:共有5轮),本人觉得一键安装编译虽说为了 偷懒,其实比分布安装甚至还慢好多:

跑完了:

添加环境变量

sudo echo "source ~/google_ws/install_isolated/setup.bash" >> ~/.bashrc
source ~/.bashrc

4.2分步安装

4.2.1安装ceres-solver
cd cd ~/google_ws/src/ceres-solver
mkdir build
cd build
cmake ..
make -j4
sudo make install
4.2.2安装cartographer
cd ~/google_ws/src/cartographer
mkdir build
cd build
cmake .. -G Ninja
ninja
ninja test
sudo ninja install
4.2.3编译安装cartographer_ros

为了区分catkin_makecatkin_make_isolated之间的区别,这里展示两种编译过程:

catkin_make编译
cd ~/google_ws
catkin_make

考虑src文件夹下各个文件的依赖关系,全部编译,不能编的也编,因为上面操作将cartographerceres-solvercartographer_ros都放进来了,报如下错误:

说前两者不能cmake,没有可以catkin编译的功能包,请使用catkin_ catkin_make_isolated

因为已经安装完前两者了,可以删掉

cd ~/google_ws/src
rm -rf ceres-solver cartographer

然后再使用catkin_make进行编译:

cd ~/google_ws
catkin_make

添加环境变量

sudo echo "source ~/google_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
catkin_make_isolated编译
cd ~/google_ws
catkin_make_isolated

相比catkin_make在根目录生成builddevel 两个文件夹,catkin_make_isolated则在根目录生成build_isolateddevel_isolated两个文件夹

添加环境变量

sudo echo "source ~/google_ws/devel_isolated/setup.bash" >> ~/.bashrc
source ~/.bashrc

而且你会发现使用catkin_make_isolated编译的时间会明显更长,是一轮一轮编译的,catkin_make则不是,这里共有5轮,执行中上方有提示:

执行完是这样的,下方提示编译完5个包,catkin_make则没有:

二、不考虑后期有编译自己的代码的需求只求测试样例的安装方法

下载安装功能包

由于ros在19年7月份已经将cartographer集成在软件源里,所以可以直接执行下句代替原来方法安装cartographer功能包及其所有依赖。

sudo apt-get install ros-kinetic-cartographer*


看看安装了哪些内容:

安装成功截图

可以开始使用cartographer启动仿真测试了。

三、cartographer仿真测试

注意:只有按照推荐的方式安装cartographer的后面的例子才能全部可以测试成功,直接sudo apt-get install ros-kinetic-cartographer*的不敢保证所有能测试成功,但第一个2D slam demo都是可以的

1.启动2D slam demo演示

wget -P ~/Downloads https://storage.googleapis.com/cartographer-public-data/bags/backpack_2d/cartographer_paper_deutsches_museum.bagroslaunch cartographer_ros demo_backpack_2d.launch bag_filename:=${HOME}/Downloads/cartographer_paper_deutsches_museum.bag

第一句执行完成截图

第二句执行成功截图

2.启动3D slam demo演示

wget -P ~/Downloads https://storage.googleapis.com/cartographer-public-data/bags/backpack_3d/b3-2016-04-05-14-14-00.bagroslaunch cartographer_ros demo_backpack_3d.launch bag_filename:=${HOME}/Downloads/b3-2016-04-05-14-14-00.bag

启动成功:

3.启动Revo LDS demo演示

wget -P ~/Downloads https://storage.googleapis.com/cartographer-public-data/bags/revo_lds/cartographer_paper_revo_lds.bagroslaunch cartographer_ros demo_revo_lds.launch bag_filename:=${HOME}/Downloads/cartographer_paper_revo_lds.bag

启动成功:

4.启动自己定义的cartographer_ros节点仿真演示

文件都已经包含在测试代码和cartographer安装包里,按照上面安装步骤安装并且下载测试代码编译到自己的工作空间就可以使用了。

下面是通常我们自己编写launch文件编译到cartographer_ros中的具体流程:

1.配置launch节点

添加自己的cartographer_demo_rplidar.launch文件到~/google_ws/src/cartographer_ros/cartographer_ros/launch

2.添加lua参数配置

添加和launch需要用到的rplidar.lua参数配置文件到~/google_ws/src/cartographer_ros/cartographer_ros/configuration_files

(测试文件已经包含在我发的安装包里,不用再去添加了)

回到google_ws工作空间根目录下执行编译:

cd ~/google_ws#下列3个,根据安装方式来选#1.一键安装并编译的编译命令
catkin_make_isolated --install --use-ninja
#2.分步安装catkin_make编译的命令
catkin_make
#3.分步安装catkin_make_isolated编译的命令
catkin_make_isolated

启动自己定义的cartographer节点仿真测试

roslaunch mbot_gazebo mbot_laser_nav_gazebo.launchroslaunch cartographer_ros cartographer_demo_rplidar.launchroslaunch mbot_teleop mbot_teleop.launch

键盘控制机器人建图没有任何问题

四、附上各种安装方法的cartographer相关库和功能包安装位置对比

一键安装并编译:

分步安装:

catkin_make:

catkin_make_isolated:

sudo apt-get install ros-kinetic-cartographer*安装:



[22/1/23/6:20]

写到这里,不知不觉就通了一宵o(╥﹏╥)o,终于算是圆满结束了!

第一次写这么长的文章,很累但是收获很大,希望能帮到大家!祝大家新年快乐!万事顺遂!

kinetic安装cartographer及gazebo仿真测试教程[22年1月23日测试]相关推荐

  1. 青龙面板多容器教程2023年3月23日

    代挂短信获取CK: Prohttp://152.69.226.3:5016/#/login 使用方法复制下面代码新建一个docker-compose.yml的文件扔进去就行 放到服务器根目录执行doc ...

  2. ICT,电路测试教程_您真得了解ICT测试吗?

    ICT,电路测试教程_您真得了解ICT测试吗? 本文介绍:有关用于PCB(印刷电路板)测试的在线测试,ICT和在线测试设备的所有基本要素的说明和详细信息. 自动测试设备(ATE)包括如下几个概念: 在 ...

  3. [分享] 从定制Win7母盘到封装详细教程 By BILL ( 10月23日补充说明 )

    [分享] 从定制Win7母盘到封装详细教程 By BILL ( 10月23日补充说明 ) billcheung 发表于 2011-10-23 00:07:49 https://www.itsk.com ...

  4. 安装ssr_12月23日先锋首测启动,累计登录3天必得SSR!

    悠长的等待即将结束.随着一代鬼王的离世,京都世界的各路妖怪正蠢蠢欲动,您,能成为众望所归的新一代鬼王吗? 很荣幸告诉各位少主,<百鬼夜行>手游不限量先锋首测将于12月23日启动,12月22 ...

  5. Vue教程-day05-2018年12月25日笔记

    文章目录 第79个视频 - webpack less文件的处理 考试 第80个视频 - webpack - 图片文件的处理 jpg和jpeg 效果分析 大图片 图片路径问题 注意点 总结 考试 第81 ...

  6. fluent二维叶型仿真_即将直播:虎门大桥异常抖动原因查明!流固耦合仿真与工程应用直播(5月21日)...

    恢复交通首日的虎门大桥现场监控截图作者 | 陈东阳博士  仿真秀专栏作者首发 | 仿真秀公众号(ID:fangzhenxiu2018)导读:据广东省交通集团发布消息,5 月 15 日 9 时,虎门大桥 ...

  7. BitCherry测试网络将于12月24日12:00上线

    据官方消息,BitCherry测试网络v1.0.1版本将于新加坡时间12月24日12:00点开启测试.BitCherry作为基于IPv8技术服务于商业的可扩容区块链基础设施,一直以来专注于定义和提供最 ...

  8. 微软免费服务器申请教程,2019年8月13日最新免费申请微软OneDrive5TB云盘超详细教程!...

    2019年8月13日最新免费申请微软OneDrive5TB云盘超详细教程!(已亲测!) 本人已于今天2019年8月13日日亲测,成功获取微软OneDrive 5T云盘! 第一步:.打开申请链接 学生版 ...

  9. kali kda安装 linux_LinuxIDC.com论坛邀请码1枚(8月21日)

    原标题:LinuxIDC.com论坛邀请码1枚(8月21日) Linux公社 LinuxIDC.com论坛邀请码一枚 ,速度抢,先到先得: xkda54 [抢到邀请码的微友5分钟内在下面留言,否则账号 ...

最新文章

  1. IDEA2021全局配置maven
  2. java常用类型转换
  3. Linux中读写权限
  4. centos7 安装配置mesos+marathon+zookeeper
  5. sharding-jdbc整合mybatis
  6. C# 7.1先睹为快(第一部分)
  7. 常用的sql语句用法
  8. java uml eclipse_eclipse uml 工具
  9. 安卓平板外接摄像头_华为?小米?千元安卓平板如何选择?
  10. activity状态的保存和恢复
  11. 堆排序代码详解(Java实现)
  12. github电脑壁纸_程序员必用的电脑桌面!
  13. 探索生产计划排程(APS)的发展历程
  14. DFRobot for Arduino 中级套件
  15. onlyoffice5.4.2删除字体和添加字体
  16. 微信刷票怎么查实_怎么检查“微信公众平台投票”是否有刷票?
  17. vue-cli脚手架和npm init vue@latest 区别
  18. Java文件操作、IO流
  19. 长【久】守护——Ag+生态抑菌给予家庭健康
  20. 如何成为一个区块链开发人员_成为开发人员是社会工作

热门文章

  1. 2020-08-14 理解 javascript 函数中的 curry
  2. 使用Spring Task实现定时任务
  3. 原来PID是在老王头和老斯基的斗争中诞生的
  4. Java高手速成 | 高质量代码编写最佳实践
  5. 人工智能自然语言处理技术在财务管理专业的应用
  6. CSS3中的关键帧@keyframes 和 动画animation
  7. Redux-Devtools调试工具安装使用
  8. 工商管理专业知识与实务(初级)【8】
  9. 字字珠玑的百度员工离职总结
  10. Win10配置Java开发环境