Skip to content

Repository files navigation

auto_apms_ros2control

This repository holds ROS 2 packages enabling behavior-based ROS 2 applications for the ros2_control framework. This implementation adopts the AutoAPMS framework and provides behavior tree nodes covering all services offered by the controller manager.

Behavior tree node reference

The reference documentation for all behavior tree node plugins from this repo can be found under Behavior Tree Nodes > auto_apms_ros2control.

Usage in downstream packages

All nodes resolve the targeted controller manager from the controller_manager input port (default: controller_manager, following the standard ROS 2 name expansion rules — relative, private ~/... and fully qualified /... names are all supported). The registrations are installed as the node manifest resource auto_apms_ros2control::behavior_tree_nodes, so downstream packages can either

  1. reference the manifest directly when registering behavior trees:

    auto_apms_behavior_tree_register_trees(
    "behavior/my_tree.xml"NODE_MANIFEST"auto_apms_ros2control::behavior_tree_nodes"
    )
  2. or derive customized registrations in their own node manifest using the parent field:

    ActivateMyController:
    parent: auto_apms_ros2control::behavior_tree_nodes.ActivateControllertopic: /my_robot/controller_manager/switch_controllerport_default:
    controller: my_controller

About

AutoAPMS plugins and extensions for the ros2_control framework

Resources

Contributing

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages