行为树导航器

Github 上的源代码 [校准@小鱼]

BT Navigator (行为树导航器) 模块实现了NavigateToPose任务界面。它是一种基于行为树的导航实现,旨在允许导航任务的灵活性,并提供一种轻松指定复杂机器人行为 (包括恢复) 的方法。 [待校准@2530]

考虑查看使用Groot可视化和修改行为树的 Groot与行为树互动 [待校准@1432] 教程。 [待校准@2531]

参数

default_nav_to_pose_bt_xml

类型

默认值

string

N/A

描述

参数``NavigateToPose`` 默认行为树XML描述的路径,有关此文件的详细信息,请参见 行为树XML节点 。以前是 default_bt_xml_filename Galactic。 [待校准@2533]

default_nav_through_poses_bt_xml [待校准@2534]

类型

默认值

string

N/A

描述

参数 NavigateThroughPoses 默认行为树XML描述的路径,有关此文件的详细信息,请参见 行为树XML节点 。Galactic加入这个 NavigateThroughPoses 后新增。 [校准@小鱼]

plugin_lib_names [待校准@2536]

类型

默认值

vector<string>

["nav2_compute_path_to_pose_action_bt_node", "nav2_follow_path_action_bt_node", "nav2_back_up_action_bt_node", "nav2_spin_action_bt_node", "nav2_wait_action_bt_node", "nav2_clear_costmap_service_bt_node", "nav2_is_stuck_condition_bt_node", "nav2_goal_reached_condition_bt_node", "nav2_initial_pose_received_condition_bt_node", "nav2_goal_updated_condition_bt_node", "nav2_reinitialize_global_localization_service_bt_node", "nav2_rate_controller_bt_node", "nav2_distance_controller_bt_node", "nav2_speed_controller_bt_node", "nav2_recovery_node_bt_node", "nav2_pipeline_sequence_bt_node", "nav2_round_robin_node_bt_node", "nav2_transform_available_condition_bt_node", "nav2_time_expired_condition_bt_node", "nav2_distance_traveled_condition_bt_node", "nav2_single_trigger_bt_node"]

描述

List of behavior tree node shared libraries.

bt_loop_duration

类型

默认值

int

10 [校准@小鱼]

描述

BT 执行的每次迭代的持续时间(以毫秒为单位)。 [校准@songhuangong]

default_server_timeout

类型

默认值

int

20

描述

一个 BT 动作节点正在等待action server的确认时的默认超时值。如果提供了输入端口"server_timeout" ,对于 BT 节点,该值将被覆盖。 [校准@songhuangong]

transform_tolerance

类型

默认值

单元 [校准@songhuangong]

double

0.1

seconds [待校准@2374]

描述

TF transform tolerance.

global_frame [校准@小鱼]

类型

默认值

string

map

描述

参考框架。 [待校准@2323]

robot_base_frame

类型

默认值

string

base_link

描述

行为树XML描述的路径。 [待校准@2548]

odom_topic [校准@小鱼]

类型

默认值

string

odom [待校准@2550]

描述

里程计出版的主题 [待校准@2551]

goal_blackboard_id [校准@小鱼]

类型

默认值

string

"goal"

描述

黑板变量用来为 NavigateToPose 的行为树提供目标。应该与BT XML文件的端口匹配。 [待校准@2554]

path_blackboard_id [校准@小鱼]

类型

默认值

string

"path"

描述

黑板变量从行为树中获取 NavigateThroughPoses 反馈的路径。应与BT XML文件的端口名称匹配。 [待校准@2557]

goals_blackboard_id

类型

默认值

string

"goals"

描述

黑板变量用来为 NavigateThroughPoses 的行为树提供目标。应该与BT XML文件的端口匹配。 [待校准@2560]

use_sim_time [校准@小鱼]

类型

默认值

bool

false

描述

使用仿真提供的时间 [校准@小鱼]

Example

bt_navigator:
  ros__parameters:
    use_sim_time: true
    global_frame: map
    robot_base_frame: base_link
    transform_tolerance: 0.1
    default_nav_to_pose_bt_xml: replace/with/path/to/bt.xml
    default_nav_through_poses_bt_xml: replace/with/path/to/bt.xml
    goal_blackboard_id: goal
    goals_blackboard_id: goals
    path_blackboard_id: path
    plugin_lib_names:
    - nav2_compute_path_to_pose_action_bt_node
    - nav2_follow_path_action_bt_node
    - nav2_back_up_action_bt_node
    - nav2_spin_action_bt_node
    - nav2_wait_action_bt_node
    - nav2_clear_costmap_service_bt_node
    - nav2_is_stuck_condition_bt_node
    - nav2_goal_reached_condition_bt_node
    - nav2_initial_pose_received_condition_bt_node
    - nav2_goal_updated_condition_bt_node
    - nav2_reinitialize_global_localization_service_bt_node
    - nav2_rate_controller_bt_node
    - nav2_distance_controller_bt_node
    - nav2_speed_controller_bt_node
    - nav2_recovery_node_bt_node
    - nav2_pipeline_sequence_bt_node
    - nav2_round_robin_node_bt_node
    - nav2_transform_available_condition_bt_node
    - nav2_time_expired_condition_bt_node
    - nav2_distance_traveled_condition_bt_node
    - nav2_single_trigger_bt_node