Move_base: Unable to create a path planning

Hi,

I am struggling to launch the move_base properly, so I can send goals to the navigation stack and get a path plan.

Here’s my launch file:

The static map is as follows:

The global cost map looks like the following:

1st question: What are those red points in the global cost map ?

Finally, in I launch the move_robot_launcher.launch and try to get a path the service is failing to give me the path:

Anyone as any idea on what I might be doing wrong ?

Hi,

Pease, I need your help! Anyone has managed to navigate in the real robot lab ?

I observed that the map is too small, my local cost map covers all the map:

image

image

I think that might be normal, given the fact that the working area is really too small.

But still move_base does not manage to get a path plan. I have no idea on what might be going wrong. Please let me know if anyone out there has manage to do navigation on this map, if so, could you share your map ?

Thank you in advance!

OK, I found out the issue, but I do not know how to solve it. As the map is way too small and adding to that the inflation layer, the robot will not be able to navigate on it (check figure above of the local cost map)

If I remove the inflation layers (both in the global cost map and local cost map) the robot will behave better, but, still not perfect. For example, in the image below, the robot cannot reach the destination because he thinks does not fit:

image

Anyone knows how to address this issue ? (when the map is way too small)

Thank you
Fred Gomes

Hello @fred.p.gomes92 ,

Could you share your rosject link here so that we can check it? You can tune (increase/decrease) the inflation you want to add to the obstacles, it’s not necessary that you completely remove it. Also, you can try to tune the footprint of the robot.

hi @albertoezquerro thank you for your reply,

I already decrease the inflation for 0.1m (radius) and it already generates the path. However, the robot is still very irresponsive, for example in the example below the robot is not following the path, I think it is doing recovery behaviours do not crash into the objects.

image

Could you please help me to understand why the robot is not following the path ?

Ps: The rosjet link is the following: Learn Robotics from Zero - Robotics & ROS Online Courses

Thank you in advance
Fred Gomes

Hi,

Anyone has managed to navigate in the realrobot lab ?

I am struggling to set up the parameters for the local map. As the map is too small, the robot is always doing recovery behaviours (rotating 360º). Also, it is always going forwards and backwards because the local path is computed in both directions, which I do not understand why.

Anyone has any idea on what I am configuring wrong ? if anyone has managed to navigate on this map, could you please share your rosjet ? so I can have a look at the parameteres …

This is my rosjet: Learn Robotics from Zero - Robotics & ROS Online Courses

Thank you in advance
Fred Gomes

Hello @fred.p.gomes92 ,

I’ve been doing some tests with your rosject and I’ve managed to navigate quite correctly. Basically, I’ve been playing with the inflation parameters, the footprint of the robot (which I’ve finally changed to use the robot_radius), and the resolution of the costmaps, which is helpful in these kind of situations when you are dealing with very small elements in the map.

I’ve emailed you the package so that you can have a look at it and check the modifications I’ve made.
Hope this helps,

Hi @albertoezquerro,

Thank you so much for your answer,

It behaves way better now. I also modified the obstacle_range: 2 and raytrace_range: 2 to make it perform better.

So overall it works well, but it still fails in some cases, for example:

in the example below, the robot is stuck and do not trigger the recovery behaviour (rotate 360º), therefore it did not reach the goal. Do you have any idea why I the recovered behaviour is not being triggered ? or how I could go around this problem.

image

Once again, thank you for the help.

Best regards,
Fred Gomes