Home » PX4与仿真入门教程 » PX4与仿真入门教程-dronedoc-使用 Gazebo 插件创建地图

PX4与仿真入门教程-dronedoc-使用 Gazebo 插件创建地图

PX4与仿真入门教程-dronedoc-使用 Gazebo 插件创建地图

说明:

  • 介绍如何使用 Gazebo 插件。
  • 创建 Gazebo 插件涉及高级内容,所以这次我们将使用一个已经创建好的插件。
  • 本章使用的 Gazebo 插件程序在创建 Gazebo 插件以生成地图。

步骤:

  • 首先,让我们下载并构建包含插件的包。
cd ~/catkin_ws/src
git clone https://github.com/uenota/dronedoc.git
cd ..
catkin build
  • 接下来,将以下内容添加到 World 文件中,以便您可以使用插件进行地图输出。
<plugin filename="map_builder.so" name="map_builder"/>
  • 如果变成下面的例子就OK了​​。
<?xml version ='1.0'?>
<sdf version ='1.4'>
  <world name='default'>
    <include>
      <uri>model://ground_plane</uri>
    </include>

    <include>
      <uri>model://sun</uri>
    </include>

    <include>
      <uri>model://willowgarage</uri>
    </include>

    <plugin filename="map_builder.so" name="map_builder"/>
  </world>
</sdf>

输出地图

  • 启动您要绘制的世界。
roslaunch gazebo_ros empty_world.launch world_name:=$HOME/catkin_ws/src/px4_sim_pkg/worlds/willow_garage.world
  • Gazebo 启动后,执行以下命令。
rosrun dronedoc request_publisher 10 0.01 "(-12,0)" 60 50 map.png 255
  • 执行该命令时,以x,y坐标(-12, 0)为原点的50m x 60m矩形围成的区域内高度低于10m的障碍物地图将在当前目录中创建为map.png。 网格间距为0.01m,判断网格被占用的阈值为255。 同时还生成了一个地图配置文件~/map.yaml。
  • 该命令的用法如下。
Usage: rosrun dronedoc request_publisher a1 a2 a3 a4 a5 [a6 a7]
      a1: height
      a2: resolution
      a3: "(origin.x, origin.y)"
        Origin is the point on lower left corner of map image
      a4: map_width
      a5: map_height
      a6: filename    [default="map"]
      a7: threshold   [default=255]
  • 如果你对下面的世界执行上面的命令

请输入图片描述

  • 将生成以下地图。 图像的左下角是原点。

请输入图片描述

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: px4与仿真入门教程