How to avoid sending a robot to an unsafe area?

asked 2020-08-24 21:53:48 -0600

Redhwan gravatar image

updated 2020-08-24 23:37:53 -0600

I am using some data to predict the trajectory using the global and local planners, the model sometime predicts the position of the final goal out of the map. image description

Note: I am using python code, the figure only shows us where the model predicts the goal.

How to make it to send the goal at least near the boundary map.

Please your suggestion.

edit retag flag offensive close merge delete

Comments

If you want to assure the planner will not route out of the map, you should edit the map file and manually complete the perimeter with a solid black line. With that, the planner will not plan outside the map. I've used the same method to prevent planning the robot down my stairs.

billy gravatar image billy  ( 2020-08-24 22:15:27 -0600 )edit

@billy, I did that, but when the goal is out of the map, it gives me a message shows that there are some errors. Thereby, the robot doesn't move at all. How to solved it, please?

Redhwan gravatar image Redhwan  ( 2020-08-24 23:29:54 -0600 )edit

So you want the planner to provide a plan to a goal outside your map....I've never tried it and don't think it will work, assuming you're using the planners in move base, you could try setting your goal tolerance really really large and see what happens. I've always assumed the goal tolerance is for how close the actual robot gets to the goal, but maybe it works for how close the planner can get to it as well.

~<name>/xy_goal_tolerance (double, default: 0.10)
The tolerance in meters for the controller in the x & y distance when achieving a goal

also work with

~<name>/pdist_scale (double, default: 0.6)
The weighting for how much the controller should stay close to the path it was given, maximal possible value is 5.0
~<name>/gdist_scale (double, default: 0.8)
The weighting for how much the controller ...
(more)
billy gravatar image billy  ( 2020-08-25 00:10:57 -0600 )edit