-
Notifications
You must be signed in to change notification settings - Fork 2
Path Planning
The goal of path planning and execution is for one robot to come up with a route from a robot's current state to a goal pose. This is a process consisting of two components: A trajectory follower and a trajectory planner.
Relevant topics and services:
-
nav/goal
a topic which communicates the goal pose to each robot -
nav/follow_trajectory
a service, which allows the trajectory planner to submit a new planned trajectory to the trajectory follower -
nav/replan
a service which lets the trajectory follower request a new plan
The two services are used such that a planner can continuously run and update a trajectory, but also an 'expensive' planner can be requested to compute its plan once, in case a new plan is required.
The trajectory follower is responsible for making a request to the planner, in case a new goal arrives, and execute a given trajectory as received by the planner.
The planner is responsible for making a new plan. The simplest planner is the 'direct planner' which does not consider any obstacles but uses a vehicle model to compute a direct route from start to finish. Some other more complex planners are available as well.
Work in progress see polygonal roadmaps for implementation of the algorithm and the driving_swarm_nav_graph
for use with driving swarm.