ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

This looks like it's being caused by your laser driver reporting 0 and NaN when it actually means maxRange or inf.

This can be a safety constraint when your scanner can't detect anything in range, in case of situations such as scanning a mirrored surface which doesn't get picked up as on obstacle.

In practice, for controlled environments, this is not desired behaviour. You can setup a custom node, or implement a laser_filter which would convert the 0s and NaNs to maxRange (which the costmap obstacle layer will pick up as 'no obstacles') or inf (which requires the inf_is_valid parameter to be set on the costmap for that sensor source). This will allow the costmap to properly clear 'empty space' for rays with no obstacles in range.

This looks like it's being caused by your laser driver reporting 0 and NaN when you'd like it actually means to report maxRange or inf.

This can be a safety constraint when your scanner can't detect anything in range, in case of situations such as scanning a mirrored surface which doesn't get picked up as on obstacle.

obstacle. In practice, for controlled environments, this is probably not your desired behaviour. behaviour.

You can setup a custom node, or implement a laser_filter which would convert the 0s and NaNs to maxRange (which the costmap obstacle layer will pick up as 'no obstacles') or inf (which requires the inf_is_valid parameter to be set on the costmap obstacle layer for that sensor source). sensor), and then republish the scan message on a filtered topic. This will allow the costmap to properly clear 'empty space' for rays with no obstacles in range.