当前位置:   article > 正文

gazebo 中使用gmaping 建图_gazebo建图

gazebo建图

一、使用gmapping 建图

  1. 启动roscore
  2. roslaunch wpr_simulation wpb_stage_robocup.launch
  3. sudo apt install ros-noetic-gmapping
  4. rosrun gmapping slam_gmapping
  5. 启动rviz (rosrun rviz rviz)。添加RobotModel、LaserScan、Map后

    显示如下:

6.rosrun wpr_simulation keyboard_vel_ctrl   控制机器人运动

二、launch 文件启动slam gmapping 建图

1、cd catkin_ws/src/

2、catkin_create_pkg slam_pkg roscpp rospy std_msgs

3、cd slam_pkg ;mkdir launch

4、创建launch文件 gmapping.launch

文件内容如下:

<launch>

        <include file="$(find wpr_simulation)/launch/wpb_stage_robocup.launch"/>

        <node pkg="gmapping" type="slam_gmapping" name="slam_gmapping"/>

        <node pkg="rviz" type="rviz" name="rviz"/>

        <node pkg="wpr_simulation" type="keyboard_vel_ctrl" name="keyboard_vel_ctrl"/>

</launch>

  1. cd catkin_ws; catkin_make 编译
  2. 执行  roslaunch  slam_pkg    gmapping.launch
  3. Gmapping 参数解释

49.Gmapping建图的参数设置_哔哩哔哩_bilibili

三、保存与加载地图

  1. sudo apt install ros-noetic-map-server
  2. rosrun map_server map_saver -f map

   

     3.加载地图   rosrun map_server map_server map.yaml

四、amcl 定位

1、sudo apt install ros-<ROS版本>-navigation

2、roscd amcl     ;ls examples

该目录下会列出两个文件: amcl_diff.launch 和 amcl_omni.launch 文件,前者适用于差分移动机器人,后者适用于全向移动机器人,可以按需选择。

3、创建nav功能包,在nav功能包中创建launch目录。复制amcl_diff.launch文件到launch目录中 。

4、在nav功能包中的launch目录中创建amcl_test.launch文件。文件内容如下

  1. <launch>
  2. <node name="map_server" pkg="map_server" type="map_server" args="/home/map.yaml"/>
  3. <!-- 启动AMCL节点 -->
  4. <include file="$(find nav)/launch/amcl.launch" />
  5. <!-- 运行rviz -->
  6. <node pkg="rviz" type="rviz" name="rviz"/>
  7. </launch>

5、启动gazebo :roslaunch wpr_simulation wpb_stage_robocup.launch

     启动roslaunch nav amcl_test.launch

     启动 rosrun wpr_simulation keyboard_vel_ctrl  控制机器人运动

6、rviz 显示如下

 但是定位并不准确,有时候机器人会跑飞。问题以后处理。

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号