1. 测试环境

Ubuntu 16.04 x64、ROS Kinetic、Velodyne VLP-16、RoboWare Studio

2. 安装 ROS 功能包

sudo apt-get install ros-kinetic-velodyne
sudo apt-get install ros-kinetic-gmapping
sudo apt-get install ros-kinetic-laser-scan-matcher     

3. 连接激光雷达

网线直连本机与激光雷达,已知 Velodyne VLP-16 的 IP 地址为 192.168.1.201,配置本机地址为 192.168.1.77,打开浏览器输入 192.168.1.201 查看激光雷达的配置文件,确保其 Host (Destination) 的 IP 地址与本机相同。

4. 创建 ROS 工程

打开 RoboWare Studio,新建工作区 catkin_ws,然后在终端执行:

cd catkin_ws/src
git clone https://github.com/ros-drivers/velodyne.git

接下来采用 catkin_make 构建整个项目,最后在 .bashrc 文件末尾添加:

source /current_path/catkin_ws/devel/setup.bash

其中,current_path 根据自身工作目录而定

5. 把 Velodyne VLP-16.xml 转换成 VLP-16.yaml 文件

rosrun velodyne_pointcloud gen_calibration.py /current_path/VLP-16.xml  

6. 创建地图

(1) 在 Ubuntu 系统中打开一个终端,输入以下命令运行 ROS 节点管理器:

roscore

(2) 在 Ubuntu 系统中打开一个终端,运行 VLP16_points.launch:

roslaunch velodyne_pointcloud VLP16_points.launch calibration:=/current_path/VLP-16.yaml

(3) 在 Ubuntu 系统中打开一个终端,输入以下命令发布 tf 变换 base_link->velodyne:

rosrun tf static_transform_publisher 0 0 0 0 0 0 base_link velodyne 0

(4) 在 Ubuntu 系统中打开一个终端,启动 slam_gmapping:

rosrun gmapping slam_gmapping

(5) 在 Ubuntu 系统中打开一个终端,启动 laser_scan_matcher_node,并指定 fixed_frame 为 odom:

rosrun laser_scan_matcher laser_scan_matcher_node _fixed_frame:=odom

上述过程中,gmapping 提供 map->odom 之间的 tf 变换,laser_scan_matcher 提供 odom->base_link 之间的 tf 变换,static_transform_publisher 提供 base_link->velodyne 之间的 tf 变换。

7. 实时显示地图创建过程

在 Ubuntu 系统中打开一个终端,执行命令:

rosrun rviz rviz

然后在 rviz 中点击 Add -> By topic,添加 Map、LaserScan 或 PointCloud2 等,实时显示获取到的结果。

本文链接:https://www.cnblogs.com/lightweh/p/10076294.html,转载请注明出处。

Velodyne VLP-16 gmapping 建图的更多相关文章

  1. TurtleBot3 Waffle (tx2版华夫)(9)建图-gmapping建图(A2雷达)

    9.1. 说明 这一节我们来讲 Turtlebot3 的 SLAMSLAM(The Simultaneous Localization and Mapping) 同步定位与地图构建: 希望机器人从未知 ...

  2. 通过gmapping和伪造的odom,完成Kinect建图

    传感器信息: 环境深度信息:sensor_msgs/laserScan -----> RGBD三维点云数据:通过ros功能包depthimage to laserscan完成深度相机数据转换成激 ...

  3. 【BZOJ-2879】美食节 最小费用最大流 + 动态建图

    2879: [Noi2012]美食节 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 1366  Solved: 737[Submit][Status] ...

  4. poj 3281 Dining 网络流-最大流-建图的题

    题意很简单:JOHN是一个农场主养了一些奶牛,神奇的是这些个奶牛有不同的品味,只喜欢吃某些食物,喝某些饮料,傻傻的John做了很多食物和饮料,但她不知道可以最多喂饱多少牛,(喂饱当然是有吃有喝才会饱) ...

  5. SLAM+语音机器人DIY系列:(六)SLAM建图与自主避障导航——2.google-cartographer机器人SLAM建图

    摘要 通过前面的基础学习,本章进入最为激动的机器人自主导航的学习.在前面的学习铺垫后,终于迎来了最大乐趣的时刻,就是赋予我们的miiboo机器人能自由行走的生命.本章将围绕机器人SLAM建图.导航避障 ...

  6. 牛客多校第四场 J.Hash Function(线段树优化建图+拓扑排序)

    题目传送门:https://www.nowcoder.com/acm/contest/142/J 题意:给一个hash table,求出字典序最小的插入序列,或者判断不合法. 分析: eg.对于序列{ ...

  7. 【ARC069F】Flags 2-sat+线段树优化建图+二分

    Description ​ 数轴上有 n 个旗子,第 ii 个可以插在坐标 xi或者 yi,最大化两两旗子之间的最小距离. Input ​ 第一行一个整数 N. ​ 接下来 N 行每行两个整数 xi, ...

  8. 【转】Codeforces Round #406 (Div. 1) B. Legacy 线段树建图&&最短路

    B. Legacy 题目连接: http://codeforces.com/contest/786/problem/B Description Rick and his co-workers have ...

  9. Nowcoder Hash Function ( 拓扑排序 && 线段树优化建图 )

    题目链接 题意 : 给出一个哈希表.其避免冲突的方法是线性探测再散列.现在问你给出的哈希表是否合法.如果合法则输出所有元素插入的顺序.如果有多解则输出字典序最小的那一个.如果不合法则输出 -1 分析 ...

随机推荐

  1. 【翻译】浏览器渲染Rendering那些事:repaint、reflow/relayout、restyle

    原文链接:http://www.phpied.com/rendering-repaint-reflowrelayout-restyle/ 有没有被标题中的5个“R”吓到?今天,我们来讨论一下浏览器的渲 ...

  2. [ Talk is Cheap Show me the CODE ] : jQuery Mobile页面布局

    当我们专注地研究人类生活的空虚,并考虑荣华富贵空幻无常时,也许我们正在阿谀逢迎自己懒惰的天性. Written In The Font 为了app的手机端,我选择了 jQuery Mobile  ,学 ...

  3. 图片预览(适用于IE6,9,10,Firefox)

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  4. Nginx 配置https 服务

    一.HTTPS 服务 为什么需要HTTPS? 原因:HTTP不安全 1.传输数据被中间人盗用.信息泄露 2.数据内容劫持.篡改 HTTPS协议的实现 对传输内容进行加密以及身份验证 HTTPS加密校验 ...

  5. 【原创】c++拷贝初始化和直接初始化的底层区别

    说明:如果看不懂的童鞋,可以直接跳到最后看总结,再回头看上文内容,如有不对,请指出~ 环境:visual studio 2013(编译器优化关闭) 源代码 下面的源代码修改自http://blog.c ...

  6. Linux常用命令之帮助和用户管理命令

    目录 1.帮助命令 一.获得命令或配置文件帮助信息:man 二.获得shell内置命令的帮助信息:help 三.获得命令的中文帮助信息:--help 2.用户管理命令 一.添加新用户:useradd ...

  7. datatables 配套bootstrap3样式使用小结(1)

    今天介绍汇总一下datatables. 网址: www.datatables.net 公司CMS内容资讯站的后台管理界面用了大量的table来管理数据,试用了之后,感觉挺不错,推荐一下. 先上一个基本 ...

  8. Perl基础速成

    本文是针对没有Perl基础,但想用perl一行式命令取代grep/awk/sed的人,用于速学Perl基础知识. Perl一行式系列文章:Perl一行式程序 perl的-e选项 perl命令的-e选项 ...

  9. 未能加载文件或程序集 Microsoft.ReportViewer.ProcessingObjectModel, Version=10.0.0.0…错误问题的解决

    1.分析原因: 出现未能加载文件或程序集 Microsoft.ReportViewer.ProcessingObjectModel, Version=10.0.0.0的问题的原因是,Microsoft ...

  10. H5 video播放视频遇到的问题

    我在别的网站上下载了一个mp4格式的视频,加到video标签里可以正常播放, 然后我用FLV自己转成mp4,却提示不支持的格式和mine类型, 后来找到一篇文章 http://jingyan.baid ...