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

Revision history [back]

As move_base and thus also the BaseGlobalPlanner interface are written in C++ you can't trivially inject your Python code there. Here are a few options I see:

  • Use the already available A* implementation (see global_planner) and not your own.
  • Manually reimplement in C++ (or try some sort of Python to C++ tool, but I'd expect that to be more of a timesink than anything else)
  • Implement a thin BaseGlobalPlanner plugin that calls your Python planner running in it's own external (rospy) ROS node, for instance via a service call. In that case, the C++ plugin doesn't do more than forwarding the request outside and then forwarding the response via the planner interface.