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

Robot goes through lethal terrain using the navigation stack.

asked 2019-02-06 05:21:35 -0500

SleepyTurtle gravatar image

I want to make the robot navigate an environment with a maximum possible offset with respect to a user specified path. In order to accomplish this, I had thought of creating a virtual "tunnel" around the path so that the robot may be able to navigate around small obstacles but never wander too far from the path.

The original idea was to implement this as a costmap2D layer in the local costmap, but to try it out quickly, I simply modified the global costmap by hand.

When testing my robot in simulation, the global planner performed as was expected, but when navigating, the robot steered clear of an obstacle and traversed lethal terrain.

This leaves me wondering if the local planner ignores the static map and global costmap, which seems to be a dangerous behaviour, what if, for example, there's a glass wall included in the static map that's not detectable by the range finder and thus is not included in the local costmap?

I've attached an image of the simulation in rviz. In it you will be able to observe the robot path though the odometry readings and how the robot went though the walls of the virtual tunnel.

Thank you for your time.

IMAGE: https://imgur.com/a/y4mlzem

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2019-02-06 06:25:16 -0500

mgruhler gravatar image

(I post this as a an answer, as your question is basically: "does the local planner ignore the static map / global costmap", and not what to do about it)

Your observation is correct. I'd say this is intended behavior, depending on your configuration of the local costmap.

Even though I understand your use case and why you DON'T want this to happen, think of another use case:

You created a map of your environment, with a door being closed and thus marked as an obstacle. But you might want to move into the room nonetheless, if the door is open. Thus, the behavior you experience is what you actually want.

AFAIR, you need to have a static_map_layer in your local costamp to achieve what you want. Though it might be also required to tweak your obstacle_layer settings as well. If you share your costmap configuration, we could help further.

edit flag offensive delete link more

Comments

1

Thank you for your answer. This does not affect me directly, as I was already planning on adding the layer to the local costmap, but I asked anyway because it conflicted with my understanding of how the navigation stack worked.

SleepyTurtle gravatar image SleepyTurtle  ( 2019-02-06 07:08:14 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2019-02-06 05:21:35 -0500

Seen: 285 times

Last updated: Feb 06 '19