更流畅的服务器

源代码在 Github.

Smoother Server 实现了处理平滑路径请求和托管实现各种 C++ 平滑器的插件向量的服务器。 该服务器公开了一个操作接口,用于使用共享成本图和 TF 缓冲区等资源的多个平滑器进行平滑。

更平滑的服务器参数

costmap_topic:

Type

Default

string

“global_costmap/costmap_raw”

Description

用于碰撞检查的原始成本地图主题。

footprint_topic:

Type

Default

string

“global_costmap/published_footprint”

Description

代价地图框架中的足迹主题。

transform_tolerance:

Type

Default

double

0.1

Description

TF 变换容差。

action_server_result_timeout:

Type

Default

Unit

double

10.0

seconds

Description

如果未产生结果,则操作服务器丢弃目标句柄的超时值(以秒为单位)。这在 rcl 中默认为 15 分钟,但在此 PR #1012 中更改为 10 秒,这可能小于 Nav2 中某些操作的运行时间。对于大多数应用程序,只要服务器内的操作不超过此期限,就不需要调整。 此问题已向 OSRF 提出,以寻找另一种解决方案来避免记账时出现活动目标超时,因此这是一个半临时的解决方法

robot_base_frame:

Type

Default

string

“base_link”

Description

机器人底座框架。

smoother_plugins:

Type

Default

vector<string>

{“nav2_smoother::SimpleSmoother”}

Description

要使用的插件名称列表,也匹配动作服务器名称。

Note

此列表中定义的每个插件命名空间都需要有一个:code:plugin 参数来定义要在命名空间中加载的插件类型。

Example:

smoother_server:
  ros__parameters:
    smoother_plugins: ["simple_smoother", "curvature_smoother"]
    curvature_smoother:
      plugin: "nav2_ceres_costaware_smoother/CeresCostawareSmoother"
    simple_smoother:
      plugin: "nav2_smoother::SimpleSmoother"
bond_heartbeat_period:

Type

Default

double

0.1

Description

生命周期节点债券机制发布周期(在 /bond 主题上)。如果小于或等于 0.0,则禁用。

Example

smoother_server:
  ros__parameters:
    costmap_topic: global_costmap/costmap_raw
    footprint_topic: global_costmap/published_footprint
    robot_base_frame: base_link
    transform_timeout: 0.1
    smoother_plugins: ["simple_smoother"]
    simple_smoother:
      plugin: "nav2_smoother::SimpleSmoother"
      tolerance: 1.0e-10
      do_refinement: True