热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ROSkineticSLAM功能包的使用方法

gmapping功能包基于激光雷达Rao-Blackwellized粒子滤波算法二维栅格地图需要机器人提供里程计信息OpenSlam开
gmapping 功能包
基于激光雷达
Rao-Blackwellized 粒子滤波算法
二维栅格地图
需要机器人提供里程计信息

OpenSlam开源算法
输出地图话题:nav_msgs/OccupancyGrid

kinetic@vm:~$ rosmsg show nav_msgs/OccupancyGrid 
std_msgs/Header header
  uint32 seq
  time stamp
  string frame_id
nav_msgs/MapMetaData info
  time map_load_time
  float32 resolution
  uint32 width
  uint32 height
  geometry_msgs/Pose origin
    geometry_msgs/Point position
      float64 x
      float64 y
      float64 z
    geometry_msgs/Quaternion orientation
      float64 x
      float64 y
      float64 z
      float64 w

int8[] data

参考:http://openslam.org/gmapping.html

gmapping 功能包框架图 (即时定位与地图建模)

安装gmapping 
        kinetic@vm:~$ sudo apt-get install ros-kinetic-gmapping

gmapping 功能包中话题和服务

gmapping 功能包中的TF变换

栅格地图取值原理
致命障碍:栅格值为254,障碍物与机器人的中心重合,此时机器人必然与障碍物发生碰撞。
内切障碍:栅格值为253,障碍物处于机器人轮廓的内切圆内,此时机器人也必然与障碍物发生碰撞。
外切障碍:栅格值为252~128,障碍物处于机器人的轮廓的外切圆内,此时机器人与障碍物临界接触,不一定发生碰撞。
非自由空间:栅格值为128~0,障碍物附近区域,一旦机器人进入该区域,将有较大概率发生碰撞,属于危险警戒区,机器人应该尽量避免进入。
自由区域:栅格值为0,此处没有障碍物,机器人可以自由通过。
未知区域:栅格值为255,此处还没有探知是否有障碍物,机器人可以前往继续建图。

参考: http://wiki.ros.org/gmapping

catkin_ws/src/mbot_navigation/launch/gmapping.launch


    

    
        		设置要订阅的里程计信息在那一个坐标系下的,里程计的坐标系一般是odom坐标系。
        		地图的更新频率,5秒钟更新一次地图
        
        	最大范围5米
        	激光雷达所检测的最大范围4.5米
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        		设置功能包的输入的激光雷达的话题
    

启动gmapping演示(激光雷达)
kinetic@vm:~/catkin_ws$ roslaunch mbot_gazebo mbot_laser_nav_gazebo.launch 
kinetic@vm:~/catkin_ws$ roslaunch mbot_navigation gmapping_demo.launch
kinetic@vm:~/catkin_ws$ roslaunch mbot_teleop mbot_teleop.launch

建图完毕,保存地图
kinetic@vm:~/catkin_ws$ rosrun map_server map_saver -f cloister_gmapping

启动gmapping(kinect)
ubuntu@T430:~$ roslaunch mbot_gazebo mbot_kinect_nav_gazebo.launch
ubuntu@T430:~$ roslaunch mbot_navigation gmapping_demo.launch
ubuntu@T430:~$ roslaunch mbot_teleop mbot_teleop.launch






推荐阅读
author-avatar
mobiledu2502887153
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有