Path planning in a complex environment.

asked 2016-03-17 16:01:16 -0600

pgigioli gravatar image

updated 2016-03-19 12:25:15 -0600

I am using a turtlebot2 with an ASUS XTION laser scanner and I am trying to develop autonomous mapping functionality but I am running into a lot of issues with path planning. The robot often gets stuck and is unable to find a path to its goal. I am currently testing in an office environment that has a lot of complex obstacle features (chair legs, table legs, human legs, etc.) and I was wondering if these features might be affecting the performance of the path planner? There are also a few ceiling-to-floor windows which may be confusing the laser scanner.

Does anyone know the limitations of the DWA local planner in complex environments? In videos I see online, people often create very structured maze like environments which make it easy for the robot to navigate.

EDIT: The error I get from move_base is "Aborting because a valid plan could not be found. Even after executing all recovery behaviors." This occurs once the robot has mapped out a small area and gets stuck. It may be trying to send a goal to a location not in its vicinity but I'm not sure.

Also, I tend to get the warning "scan matching failed using odometry" when using gmapping so maybe this has something to with it.

Finally, I often get the error "You must specify at least three points for the robot footprint,reverting to previous footprint" even though my robot_radius is set in the costmap_common_params file.

edit retag flag offensive close merge delete


By autonomous planning, are you referring to a frontier-exploration SLAM ? Or do you drive manually the robot during the mapping and then encounter motion planning problems after the mapping ? Your title is misleading, gmapping is the SLAM algorithm but you mention motion planning problems.

al-dev gravatar image al-dev  ( 2016-03-18 01:37:49 -0600 )edit

Sorry, the title should be path planning in a complex environment. I'll edit the title. But yes, I am trying to do frontier-exploration SLAM but I often get the error "aborting because a valid plan could not be found." I am wondering if this is because the complex environment confuses the robot?

pgigioli gravatar image pgigioli  ( 2016-03-18 08:44:52 -0600 )edit

Ok. Are you using an existing package for frontier-exploration SLAM or did you write your own ? If you are using the move_base library with DWA as your local planner, what is your global planner ? Are you sure that it is the local planner failing and not the global planner ?

al-dev gravatar image al-dev  ( 2016-03-18 14:06:36 -0600 )edit

I am using this existing package. How would I know if the global planner is failing? I do notice that the robot only plans goal nearby it and will never try to navigate across the room.

pgigioli gravatar image pgigioli  ( 2016-03-18 16:16:18 -0600 )edit

In fact, frontier exploration works at first until the robot gets caught in a corner and then I get an error that a valid plan was not found. So maybe you are on to something.

pgigioli gravatar image pgigioli  ( 2016-03-18 16:17:13 -0600 )edit

Ok then I suppose you are using the default global planner for move_base, navfn. Can you edit your post to add the exact error message that you are getting ? To help you it would help to know if it is the global or the local planner that is failing.

al-dev gravatar image al-dev  ( 2016-03-18 17:09:11 -0600 )edit

I edited my original post with some of the errors I get. I appreciate your help!!!

pgigioli gravatar image pgigioli  ( 2016-03-18 18:10:02 -0600 )edit

"scan matching failed using odometry" suggests that your odometry may not be properly calibrated/functioning. Have you tried building maps by driving around your turtlebot and using gmapping, instead of autonomous mapping ? Do the maps look good ? Some screenshots of the maps would help.

al-dev gravatar image al-dev  ( 2016-03-18 21:31:35 -0600 )edit