ROS系列之初识gmapping
来源:互联网 发布:马东眼袋在哪割的 知乎 编辑:程序博客网 时间:2024/05/21 07:47
个人能力有限,若有错误请批评指正!
转载请标明出处:http://www.cnblogs.com/wenhust/
简介
ROS 提供的 gmaping 包是用来生成地图的,它是对著名的开源 OpenSlam 包在 ROS 框架下的一个实现。这个包提供了对激光设备的 Slam,根据激光设备的输入和姿态数据从而建立一个基于网格的的2D地图。它需要从 ROS 系统监听许多 Topic,并输出一个 Topic——map(nav_msgs/OccupancyGrid),这也是 RViz 的输入 Topic。
操作流程
下载gmaping及示例数据
sudo apt-get install ros-indigo-slam-gmapping
wget http://pr.willowgarage.com/data/gmapping/basic_localization_stage.bag
启动ROS master
这是所有 ROS 操作的第一步,就像开机一样。roscore
启动后将终端挂起,另开终端进行其他程序。
设置ROS系统时间
配置 ROS 启用重放数据中的时间而非本机时间,影响整个系统所有时间 API 的输出结果。在默认情况下,ROS 使用 ubuntu 系统的时间,也就是墙上时钟时间(wall clock)。但我们重播一个记录历史文件时,里面记录的是历史时间,所以我们需要告诉ROS从现在起开始启用模拟时间。rosparam set use_sim_time true
启动gmapping
启动 gmapping, 并监听 scan_base topic 发来的消息。该 topic 是由模拟器发布的。rosrun gmapping slam_gmapping scan:=base_scan
启动后将终端挂起,另开终端进行其他程序。
启动RViz
启动 RViz,点击 add 按钮(左下方),在弹出的列表中选择 map,点击 OK,这时开始展现一个空的地图。rosrun rviz rviz
最关键的一步,要告诉 RViz 生成 map 信息的 topic 是什么,我们前面讲到过,gmapping 输出的 topic 是 /map ,因此将其 topic 配置成 /map。
启动后将终端挂起,另开终端进行其他程序。
启动模拟器重放数据
rosbag play --clock basic_localization_stage.bag
立即可以在 RViz 中可以看到地图的动态建立了。
- ROS系列之初识gmapping
- ROS系列之初识gmapping(转载)
- ROS和SLAM 【gmapping】
- ros的navigation之———gmapping应用详解(in ros)
- [置顶] ros的navigation之———gmapping应用详解(in ros)
- ros的navigation之———gmapping应用详解(in ros)
- (ros/navigation/gmapping)导航/建地图
- ROS slam gmapping不能画地图
- ROS slam gmapping不能画地图
- ros中kobuki(turtlebot)+rplidar 跑gmapping
- (ros/navigation/gmapping)导航/建地图
- Kinect ROS Gmapping 2D地图
- Kinect ROS Gmapping 2D地图
- (ros/navigation/gmapping)导航/建地图
- Kinect ROS Gmapping 2D地图
- 初识ROS
- RxJava 系列之初识
- angular4系列之初识
- 使用AKKA做分布式爬虫的思路
- 202 Happy Number
- Java基础之反射机制
- 基于docker的hexo博客系统
- 《用python写网络爬虫》--寻找网站所有者
- ROS系列之初识gmapping
- 可变参数...
- 实现单链表及其基本操作
- WordPress插件 Pdf Premium PFD完美嵌入式专业版插件[更新至3.0.1]
- WordPress插件 WooCommerce最新微信支付接口集成插件
- 《用python写网络爬虫》--识别网站所用技术
- 大整数类
- css3的pointer-events属性
- swift3使用协议和泛型简化UITableView的使用