今天看啥  ›  专栏  ›  YottaYuan

Flatsim

YottaYuan  · 简书  ·  · 2020-03-23 04:03

Flatsim

flatsim 代表 flatworld simulation ,是一个小型模拟应用程序,可让您运行几乎完整的Isaac导航堆栈。flatsim应用程序通过将射线投射到给定的占用栅格图中来模拟激光测距仪。与在完整3D环境中进行更昂贵的3D射线扫描相比,这种模拟速度非常快。因此,这是测试导航堆栈的快速且高性能的方法。

Flatsim应用程序无法提供与实际场景中基于完整3D的模拟相同的准确性,尤其是在反射或透明对象的精确模拟方面。

flatsim 使用导航堆栈中的节点集,并添加了两个新节点:

  • DifferentialBaseSimulator: 运行基本的差分基本驱动器模型,以根据导航堆栈发送的命令来移动机器人。这为范围扫描仿真提供了机器人的地面真实姿势。它还提供了车轮里程表,它被导航堆栈用作另一个输入。
  • RangeScanSimulator: 根据机器人的当前位置和所需的地图计算模拟的平面范围扫描。

运行Flatsim应用程序

  1. 使用以下命令从Isaac源代码树内部启动flatsim:
bob@desktop:~/isaac$ bazel run //apps/flatsim
  1. http://localhost:3000 在Web浏览器中加载Sight Web界面。

默认情况下,flatsim应用程序以随机​​游走模式启动。在此模式下,代表机器人的点导航到地图上的随机目标。当机器人到达目标时,将确定一个新的目标,然后机器人会朝该目标移动。

在Flatsim中使用交互式标记

作为Flatsim的第一个实验,请执行以下步骤将交互式标记添加到地图。您可以单击此标记并将其拖动到地图上的其他位置。完成后,机器人会更改路线以移动到标记的新位置。

  1. 如果尚未运行,请使用以下命令启动flatsim:
bob@desktop:~/isaac$ bazel run //apps/flatsim
  1. http://localhost:3000 在Web浏览器中加载Sight Web界面。机械手点开始导航到第一个随机目标。

  2. 在Sight Web界面右侧的“配置”部分中的goals.goal_behavior中,将所需的行为从更改 random pose 。机器人停止移动是因为您已更改其行为,但尚未添加将配置为新行为目标的交互式标记。

  3. 在flatsim-地图视图窗口中右键单击,然后选择设置。

  4. 在设置中,单击选择标记,然后选择pose_as_goal。

  5. 点击添加标记。

  6. 单击更新。标记会添加到地图,与随机行走目标分开,仍会显示。您可能需要放大地图才能看到新标记。机械手不会立即开始导航到标记。

  7. 点击并将标记拖动到地图上的新位置。机器人开始导航到标记位置。

有关更多信息,请参见 交互式标记




原文地址:访问原文地址
快照地址: 访问文章快照