ROS导航-----slam_gmapping使用Log数据创建地图
来源:互联网 发布:华云数据集团有限公司 编辑:程序博客网 时间:2024/04/30 16:04
本文介绍了如何用记录的tf变换和激光扫描log数据建立2D地图。 在ROS的图形化模拟环境rviz中通过重放记录的数据作为机器人真实传感器采集的输入,来观测地图动态创建过程。
操作步骤如下:
1 slam_gmapping功能包安装
1.1 通过命令安装(较简单)
sudo apt-get install ros-kinetic-slam-gmapping
1.2 源码安装
你需要首先下载gmapping源码,然后编译并安装
2 获取记录数据bag包
1)从这里下载现存bag包
wget http://pr.willowgarage.com/data/gmapping/basic_localization_stage.bag
2)使用机器人创建自己的bag包
a)给机器人安装激光器,确保可以发布变换数据,且可以遥控操作
b)启动扫描和变换数据记录
rosbag record -O mylaserdata /base_scan /tf当前目录将创建一个名为mylaserdata_<DATE>-topic.bag的文件
c)让机器人动起来
d)kill掉rosbag用户可以看到记录文件已经创建
3 运行节点管理器master
roscore
4 设置参数,确保在任何节点使用前设定use_sim_time参数为true
rosparam set use_sim_time true
5运行slam_gmapping节点,它将在base_scan主题上监听激光扫描数据并创建地图
rosrun gmapping slam_gmapping scan:=base_scan
Note:在PR2上里程坐标系名字为odom_combined
命令为:
rosrun gmapping slam_gmapping scan:=base_scan _odom_frame:=odom_combined
6 在新终端使用模拟器rosbag启动bag包回放,将数据提供给slam_gmapping节点
rosbag play --clock basic_localization_stage.bag
7启动rviz,在左下方选择add,然后选择map,创建一副空地图;接着制定rviz的topic为/map可以监听到地图数据
rosrun rviz rviz
8 使用map_server功能包的map_saver保存新地图到磁盘(等rosbag结束后)
rosrun map_server map_saver
此时可以看到本地地图map.gpm已经生成,可以用图像浏览器(gimp, eog, gthumb, 等等)打开查看。
1 0
- ROS导航-----slam_gmapping使用Log数据创建地图
- ROS导航-----slam_gmapping简介
- (ros/navigation/slam_gmapping) map_server地图服务器
- (ros/navigation/slam_gmapping) map_server地图服务器
- ROS下编译slam_gmapping
- 编译 ROS slam_gmapping
- (ros/navigation/gmapping)导航/建地图
- (ros/navigation/gmapping)导航/建地图
- (ros/navigation/gmapping)导航/建地图
- 基于ros系统下使用Android应用 Make nav进行地图加载和导航
- 导航地图数据标准 简介
- 使用百度地图导航到门店
- (ros/navigation)how to build a map using logged data 怎样用记录的数据创建地图
- 百度地图导航初始化导航失败,不能使用导航
- 基于ROS平台的移动机器人-8-使用Kinect2导航
- 使用百度地图API实现驾车导航
- 使用百度地图API实现驾车导航
- 使用手机自带谷歌地图导航
- HihoCoder #1369 : 网络流一·Ford-Fulkerson算法
- GLM Intro - Matrix Transform Example
- codeforces 722C (并查集)
- android_07_表格布局
- 安卓混淆
- ROS导航-----slam_gmapping使用Log数据创建地图
- HDU 5514 Frogs(容斥原理 gcd)
- hdu2688 Rotate(树状数组)
- Java的自学之路-return与break的差别
- iOS10 Xcode8问题汇总
- python 3 mysql操作
- Apache kafka--高性能的分布式消息系统
- dfs,太巧妙了
- opencv——滤波