Skip to content

Commit bcdbf3b

Browse files
more explicit footprint info (ros-navigation#484)
1 parent 182f2f2 commit bcdbf3b

File tree

3 files changed

+8
-1
lines changed

3 files changed

+8
-1
lines changed

concepts/index.rst

+5
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,11 @@ Use of a separate smoother over one that is included as part of a planner is adv
196196
The general task in Nav2 for a smoother is to receive a path and return its improved version.
197197
However, for different input paths, criteria of the improvements and methods of acquiring them exist, creating space for a multitude of smoothers that can be registered in this server.
198198

199+
Robot Footprints
200+
================
201+
202+
It is worth remarking that in the cost maps, we set a robot's footprint either as a circle of radius ``robot_radius`` or as a vector of points ``footprint`` representing an arbitrary polygon if the robot is non-circular. This can also be adjusted over time using the costmap's ``~/footprint`` topic, which will update the polygon over time as needed due to changes in the robot's state, such as movement of an attached manipulator, picking up a pallet, or other actions that adjust a robot's shape. That polygon will then automatically be used by the planners and controllers.
203+
199204
Waypoint Following
200205
==================
201206

configuration/packages/configuring-costmaps.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ Costmap2D ROS Parameters
4444
============== =======
4545

4646
Description
47-
Ordered set of footprint points passed in as a string, must be closed set. For example, the following defines a square base with side lengths of 0.2 meters `footprint: "[ [0.1, 0.1], [0.1, -0.1], [-0.1, -0.1], [-0.1, 0.1] ]"`.
47+
Ordered set of footprint points passed in as a string, must be closed set. For example, the following defines a square base with side lengths of 0.2 meters `footprint: "[ [0.1, 0.1], [0.1, -0.1], [-0.1, -0.1], [-0.1, 0.1] ]"`. Note that this can also be adjusted over time using the costmap's ``~/footprint`` topic, which will update the polygon over time as needed due to changes in the robot's state, such as movement of an attached manipulator, picking up a pallet, or other actions that adjust a robot's shape.
4848

4949
:global_frame:
5050

setup_guides/footprint/setup_footprint.rst

+2
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ For the global costmap footprint, the decision to choose between the ``robot_rad
1919

2020
For the local costmap footprint, it is typical for non-circular robots to be set up with ``footprint`` (polygon). Some situations where this is not recommended is when you do not have enough computing resources to implement collision avoidance algorithms on a polygon-shaped footprint. Another possible reason to use ``robot_radius`` (circular) for the local costmap is when the robot is very small relative to its environment such that precise collision avoidance is not necessary. However, generally the local trajectory planner should use the actual footprint polygon of the robot.
2121

22+
Note that this can also be adjusted over time using the costmap's ``~/footprint`` topic, which will update the polygon over time as needed due to changes in the robot's state, such as movement of an attached manipulator, picking up a pallet, or other actions that adjust a robot's shape. That polygon will then automatically be used by the planners and controllers.
23+
2224
Configuring the Robot's Footprint
2325
*********************************
2426
In this section, we will configure the footprint of ``sam_bot`` such that ``footprint`` (polygon) is used for the local costmap and ``robot_radius`` (circular) is used for the global costmap. We will utilize the default configuration file of Nav2 with a modified footprint parameter for the global and local costmaps.

0 commit comments

Comments
 (0)