Skip to content

Commit 04943e5

Browse files
authored
Update moved BT Navigator params (#768)
* fix headers Signed-off-by: Adi Vardi <adi.vardi@enway.ai> * Document moved parameters Signed-off-by: Adi Vardi <adi.vardi@enway.ai> * Expand migration guide Signed-off-by: Adi Vardi <adi.vardi@enway.ai> --------- Signed-off-by: Adi Vardi <adi.vardi@enway.ai>
1 parent c0e2994 commit 04943e5

2 files changed

Lines changed: 118 additions & 49 deletions

File tree

configuration/packages/configuring-bt-navigator.rst

Lines changed: 55 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -180,50 +180,6 @@ Parameters
180180
Description
181181
Topic on which odometry is published
182182

183-
:goal_blackboard_id:
184-
185-
====== =======
186-
Type Default
187-
------ -------
188-
string "goal"
189-
====== =======
190-
191-
Description
192-
Blackboard variable to use to supply the goal to the behavior tree for ``NavigateToPose``. Should match ports of BT XML file.
193-
194-
:path_blackboard_id:
195-
196-
====== =======
197-
Type Default
198-
------ -------
199-
string "path"
200-
====== =======
201-
202-
Description
203-
Blackboard variable to get the path from the behavior tree for ``NavigateThroughPoses`` feedback. Should match port names of BT XML file.
204-
205-
:goals_blackboard_id:
206-
207-
====== =======
208-
Type Default
209-
------ -------
210-
string "goals"
211-
====== =======
212-
213-
Description
214-
Blackboard variable to use to supply the goals to the behavior tree for ``NavigateThroughPoses``. Should match ports of BT XML file.
215-
216-
:waypoint_statuses_blackboard_id:
217-
218-
====== ===================
219-
Type Default
220-
------ -------------------
221-
string "waypoint_statuses"
222-
====== ===================
223-
224-
Description
225-
Blackboard variable to get the statuses of waypoints from the behavior tree for ``NavigateThroughPoses`` feedback/result. Should match ports of BT XML file.
226-
227183
:error_code_name_prefixes:
228184

229185
============== ===========================
@@ -284,6 +240,28 @@ Parameters
284240
NavigateToPose Parameters
285241
*************************
286242

243+
:``<navigate_to_pose_name>``.goal_blackboard_id:
244+
245+
====== =======
246+
Type Default
247+
------ -------
248+
string "goal"
249+
====== =======
250+
251+
Description
252+
Blackboard variable to use to supply the goal to the behavior tree for ``NavigateToPose``. Should match ports of BT XML file.
253+
254+
:``<navigate_to_pose_name>``.path_blackboard_id:
255+
256+
====== =======
257+
Type Default
258+
------ -------
259+
string "path"
260+
====== =======
261+
262+
Description
263+
Blackboard variable to get the path from the behavior tree for ``NavigateToPose`` feedback. Should match port names of BT XML file.
264+
287265
:``<navigate_to_pose_name>``.enable_groot_monitoring:
288266

289267
============== =======
@@ -309,6 +287,39 @@ NavigateToPose Parameters
309287
NavigateThroughPoses Parameters
310288
*******************************
311289

290+
:``<navigate_through_poses>``.goals_blackboard_id:
291+
292+
====== =======
293+
Type Default
294+
------ -------
295+
string "goals"
296+
====== =======
297+
298+
Description
299+
Blackboard variable to use to supply the goals to the behavior tree for ``NavigateThroughPoses``. Should match ports of BT XML file.
300+
301+
:``<navigate_through_poses>``.path_blackboard_id:
302+
303+
====== =======
304+
Type Default
305+
------ -------
306+
string "path"
307+
====== =======
308+
309+
Description
310+
Blackboard variable to get the path from the behavior tree for ``NavigateThroughPoses`` feedback. Should match port names of BT XML file.
311+
312+
:``<navigate_through_poses>``.waypoint_statuses_blackboard_id:
313+
314+
====== ===================
315+
Type Default
316+
------ -------------------
317+
string "waypoint_statuses"
318+
====== ===================
319+
320+
Description
321+
Blackboard variable to get the statuses of waypoints from the behavior tree for ``NavigateThroughPoses`` feedback/result. Should match ports of BT XML file.
322+
312323
:``<navigate_through_poses>``.enable_groot_monitoring:
313324

314325
============== =======

migration/Kilted.rst

Lines changed: 63 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -197,13 +197,13 @@ Now, it supports future extensions for lifecycle subscriptions or additional wra
197197
Additionally, it supports QoS override using the parameter ``allow_parameter_qos_overrides``.
198198

199199
Removed Parameter action_server_result_timeout
200-
**********************************************
200+
----------------------------------------------
201201

202202
Removed the parameter ``action_server_result_timeout`` from all action servers after resolution within ``rcl`` and ``rclcpp`` to address early goal removal.
203203
This is not longer required to be set.
204204

205205
Added Corner Smoothing functionality to route_server
206-
****************************************************
206+
----------------------------------------------------
207207

208208
In `PR #5226 <https://github.com/ros-navigation/navigation2/pull/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.
209209

@@ -212,22 +212,22 @@ In `PR #5226 <https://github.com/ros-navigation/navigation2/pull/5226>`_ the abi
212212
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.
213213

214214
Added NonblockingSequence Control Node
215-
**************************************
215+
--------------------------------------
216216

217217
In `PR #5325 <https://github.com/ros-navigation/navigation2/pull/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.
218218

219219
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>`_.
220220

221221
MPPI Optimal Trajectory Validator Plugin
222-
****************************************
222+
----------------------------------------
223223

224224
The MPPI controller now has a plugin, ``OptimalTrajectoryValidator``, which can be used to validate an output trajectory for execution.
225225
This can be used to check for collisions, margin from obstacles, distance from a path, progress being made, etc.
226226
By default, it uses the ``DefaultOptimalTrajectoryValidator`` which checks for collisions.
227227
Note that kinematic and dynamic constraints are not required to be checked as the Optimizer ensures these constraints are met.
228228

229229
Added PersistentSequence and PauseResumeController Control Nodes
230-
****************************************************************
230+
----------------------------------------------------------------
231231

232232
In `PR #5247 <https://github.com/ros-navigation/navigation2/pull/5247>`_ two new Nav2 specific behavior tree control nodes have been added.
233233

@@ -289,3 +289,61 @@ Below are measured bandwidth values for different transport types with default p
289289
+------------------+----------------+
290290
| zlib | 121.95 |
291291
+------------------+----------------+
292+
293+
Private BT Navigator's BlackBoard ID parameters
294+
-----------------------------------------------
295+
296+
The parameters ``xx_blackboard_id`` used in the BT navigator to specify the name of the blackboard variables from the
297+
behavior trees were moved into the respective navigators. They now have to be specified under the namespace of the particular navigator.
298+
299+
These parameters are:
300+
301+
- NavigateToPose:
302+
303+
- ``<navigate_to_pose_name>.goal_blackboard_id``
304+
- ``<navigate_to_pose_name>.path_blackboard_id``
305+
306+
- NavigateThroughPoses:
307+
308+
- ``<navigate_through_poses_name>.goals_blackboard_id``
309+
- ``<navigate_through_poses_name>.path_blackboard_id``
310+
- ``<navigate_through_poses_name>.waypoint_statuses_blackboard_id``
311+
312+
- CoverageNavigator:
313+
314+
- ``<coverage_navigator_name>.path_blackboard_id``
315+
- ``<coverage_navigator_name>.field_file_blackboard_id``
316+
- ``<coverage_navigator_name>.field_polygon_blackboard_id``
317+
- ``<coverage_navigator_name>.polygon_frame_blackboard_id``
318+
319+
Example:
320+
321+
.. code-block:: yaml
322+
323+
bt_navigator:
324+
ros__parameters:
325+
other parameters: ....
326+
327+
navigate_to_pose:
328+
plugin: "nav2_bt_navigator::NavigateToPoseNavigator"
329+
enable_groot_monitoring: false
330+
groot_server_port: 1667
331+
goal_blackboard_id: "goal"
332+
path_blackboard_id: "path"
333+
334+
navigate_through_poses:
335+
plugin: "nav2_bt_navigator::NavigateThroughPosesNavigator"
336+
enable_groot_monitoring: false
337+
groot_server_port: 1669
338+
goals_blackboard_id: "goals"
339+
path_blackboard_id: "path"
340+
waypoint_statuses_blackboard_id: "waypoint_statuses"
341+
342+
navigate_complete_coverage:
343+
plugin: "opennav_coverage_navigator/CoverageNavigator"
344+
path_blackboard_id: "path"
345+
field_file_blackboard_id: "field_filepath"
346+
field_polygon_blackboard_id: "field_polygon"
347+
polygon_frame_blackboard_id: "polygon_frame_id"
348+
349+
See also :ref:`configuring_bt_navigator`

0 commit comments

Comments
 (0)