Improvements to the global planner and move base

Improved the Gradient extraction logic 
Added loop check to the GridPath extractor
Added GridPath extractor as a backup extractor (when the gradient extractor is used - which sometimes is unable to extract a path using the value function)
Added plannerThread over clocking - so that when a new goal comes in - the planner responds immediately
Added option to the move_base so that when the over clocking is enabled - only if the option is set will the planner get called immediately when the controller fails - if you expect dynamic obstacles to be in the environment - best option is not to set this flag 

sure, i was halfway to fixing the function but I wasn't able to finish a
full fix - will comment it better.

The basic improvements were to add better checks to see when the gradients
aren't good enough - and then use a simple grid search


On Thu, Aug 14, 2014 at 8:04 PM, Dejan Pangercic <notifications@github.com>
wrote:

> In global_planner/src/gradient_path.cpp:
>
> >
> > -        //printf("[Path] Pot: %0.1f  grad: %0.1f,%0.1f  pos: %0.1f,%0.1f\n",
> > -        //         potential[stc], dx, dy, path[npath-1].first, path[npath-1].second);
> > +            //ROS_DEBUG("[Path] Pot: %0.1f  pos: %0.1f,%0.1f",
> > +            //    potential[stc], path[npath-1].first, path[npath-1].second);
> > +
> > +            if (potential[stc] >= POT_HIGH) {
> > +                ROS_WARN("[PathCalc] No path found, high potential");
> > +                //savemap("navfn_highpot");
> > +                return 0;
> > +            }
> > +        }
> >      }
> >
> >      return false;
> >  }
>
> I don't have enough time right to fully understand what does your
> improvement bring. It would be great if you could briefly document getPath
> function.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/bosch-ros-pkg/navigation/pull/11/files#r16278664>.
>