diff --git a/configuration/packages/configuring-bt-navigator.rst b/configuration/packages/configuring-bt-navigator.rst index 534548eab6..35416b7c0c 100644 --- a/configuration/packages/configuring-bt-navigator.rst +++ b/configuration/packages/configuring-bt-navigator.rst @@ -180,50 +180,6 @@ Parameters Description Topic on which odometry is published -:goal_blackboard_id: - - ====== ======= - Type Default - ------ ------- - string "goal" - ====== ======= - - Description - Blackboard variable to use to supply the goal to the behavior tree for ``NavigateToPose``. Should match ports of BT XML file. - -:path_blackboard_id: - - ====== ======= - Type Default - ------ ------- - string "path" - ====== ======= - - Description - Blackboard variable to get the path from the behavior tree for ``NavigateThroughPoses`` feedback. Should match port names of BT XML file. - -:goals_blackboard_id: - - ====== ======= - Type Default - ------ ------- - string "goals" - ====== ======= - - Description - Blackboard variable to use to supply the goals to the behavior tree for ``NavigateThroughPoses``. Should match ports of BT XML file. - -:waypoint_statuses_blackboard_id: - - ====== =================== - Type Default - ------ ------------------- - string "waypoint_statuses" - ====== =================== - - Description - Blackboard variable to get the statuses of waypoints from the behavior tree for ``NavigateThroughPoses`` feedback/result. Should match ports of BT XML file. - :error_code_name_prefixes: ============== =========================== @@ -284,6 +240,28 @@ Parameters NavigateToPose Parameters ************************* +:````.goal_blackboard_id: + + ====== ======= + Type Default + ------ ------- + string "goal" + ====== ======= + + Description + Blackboard variable to use to supply the goal to the behavior tree for ``NavigateToPose``. Should match ports of BT XML file. + +:````.path_blackboard_id: + + ====== ======= + Type Default + ------ ------- + string "path" + ====== ======= + + Description + Blackboard variable to get the path from the behavior tree for ``NavigateToPose`` feedback. Should match port names of BT XML file. + :````.enable_groot_monitoring: ============== ======= @@ -309,6 +287,39 @@ NavigateToPose Parameters NavigateThroughPoses Parameters ******************************* +:````.goals_blackboard_id: + + ====== ======= + Type Default + ------ ------- + string "goals" + ====== ======= + + Description + Blackboard variable to use to supply the goals to the behavior tree for ``NavigateThroughPoses``. Should match ports of BT XML file. + +:````.path_blackboard_id: + + ====== ======= + Type Default + ------ ------- + string "path" + ====== ======= + + Description + Blackboard variable to get the path from the behavior tree for ``NavigateThroughPoses`` feedback. Should match port names of BT XML file. + +:````.waypoint_statuses_blackboard_id: + + ====== =================== + Type Default + ------ ------------------- + string "waypoint_statuses" + ====== =================== + + Description + Blackboard variable to get the statuses of waypoints from the behavior tree for ``NavigateThroughPoses`` feedback/result. Should match ports of BT XML file. + :````.enable_groot_monitoring: ============== ======= diff --git a/migration/Kilted.rst b/migration/Kilted.rst index 97c596ae2a..b673b83b9c 100644 --- a/migration/Kilted.rst +++ b/migration/Kilted.rst @@ -197,13 +197,13 @@ Now, it supports future extensions for lifecycle subscriptions or additional wra Additionally, it supports QoS override using the parameter ``allow_parameter_qos_overrides``. Removed Parameter action_server_result_timeout -********************************************** +---------------------------------------------- Removed the parameter ``action_server_result_timeout`` from all action servers after resolution within ``rcl`` and ``rclcpp`` to address early goal removal. This is not longer required to be set. Added Corner Smoothing functionality to route_server -**************************************************** +---------------------------------------------------- In `PR #5226 `_ the ability to stitch two successive edges in ``route_server`` with a smooth circular arc has been added. Below is an example of two successive edges forming a corner being smoothed with a radius of one. The red lines are the edges of the route graph and the green line is the resultant path that can be used by a local planner. @@ -212,14 +212,14 @@ In `PR #5226 `_ the abi New parameters include ``smooth_corners`` which enable or disable corner smoothing and ``smoothing_radius`` which specifies the radius of the corner to fit to a corner. The tangents of the starting and ending points of the circular arc will match the tangent of the edges that form the corner. In the event that two edges are basically straight, no corner arc is added and regular linear interpolation is done. In addition to that, if the corner arc requires a starting point and ending point that's longer than the edge lengths, then it will not add a corner arc. Added NonblockingSequence Control Node -************************************** +-------------------------------------- In `PR #5325 `_ a new Nav2 specific behavior tree control node has been added. The new behavior tree control node, ``NonblockingSequence``, allows every child node in the sequence to be ticked through even if one of the child node returns ``RUNNING``. This is done to prevent long running child nodes from blocking the sequence. For additional details regarding the ``NonblockingSequence`` please see the `Nav2 specific node walkthrough <../behavior_trees/overview/nav2_specific_nodes.html>`_ and `NonblockingSequence configuration guide <../configuration/packages/bt-plugins/controls/NonblockingSequence.html>`_. MPPI Optimal Trajectory Validator Plugin -**************************************** +---------------------------------------- The MPPI controller now has a plugin, ``OptimalTrajectoryValidator``, which can be used to validate an output trajectory for execution. This can be used to check for collisions, margin from obstacles, distance from a path, progress being made, etc. @@ -227,7 +227,7 @@ By default, it uses the ``DefaultOptimalTrajectoryValidator`` which checks for c Note that kinematic and dynamic constraints are not required to be checked as the Optimizer ensures these constraints are met. Added PersistentSequence and PauseResumeController Control Nodes -**************************************************************** +---------------------------------------------------------------- In `PR #5247 `_ two new Nav2 specific behavior tree control nodes have been added. @@ -289,3 +289,61 @@ Below are measured bandwidth values for different transport types with default p +------------------+----------------+ | zlib | 121.95 | +------------------+----------------+ + +Private BT Navigator's BlackBoard ID parameters +----------------------------------------------- + +The parameters ``xx_blackboard_id`` used in the BT navigator to specify the name of the blackboard variables from the +behavior trees were moved into the respective navigators. They now have to be specified under the namespace of the particular navigator. + +These parameters are: + + - NavigateToPose: + + - ``.goal_blackboard_id`` + - ``.path_blackboard_id`` + + - NavigateThroughPoses: + + - ``.goals_blackboard_id`` + - ``.path_blackboard_id`` + - ``.waypoint_statuses_blackboard_id`` + + - CoverageNavigator: + + - ``.path_blackboard_id`` + - ``.field_file_blackboard_id`` + - ``.field_polygon_blackboard_id`` + - ``.polygon_frame_blackboard_id`` + +Example: + +.. code-block:: yaml + + bt_navigator: + ros__parameters: + other parameters: .... + + navigate_to_pose: + plugin: "nav2_bt_navigator::NavigateToPoseNavigator" + enable_groot_monitoring: false + groot_server_port: 1667 + goal_blackboard_id: "goal" + path_blackboard_id: "path" + + navigate_through_poses: + plugin: "nav2_bt_navigator::NavigateThroughPosesNavigator" + enable_groot_monitoring: false + groot_server_port: 1669 + goals_blackboard_id: "goals" + path_blackboard_id: "path" + waypoint_statuses_blackboard_id: "waypoint_statuses" + + navigate_complete_coverage: + plugin: "opennav_coverage_navigator/CoverageNavigator" + path_blackboard_id: "path" + field_file_blackboard_id: "field_filepath" + field_polygon_blackboard_id: "field_polygon" + polygon_frame_blackboard_id: "polygon_frame_id" + +See also :ref:`configuring_bt_navigator`