Skip to content

Latest commit

 

History

History
 
 

nav2_core

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

Nav2 Core

This package hosts the abstract interface (virtual base classes) for plugins to be used with the following:

  • navigators (e.g., navigate_to_pose)
  • global planner (e.g., nav2_navfn_planner)
  • controller (e.g., path execution controller, e.g nav2_dwb_controller)
  • smoother (e.g., nav2_ceres_costaware_smoother)
  • goal checker (e.g. simple_goal_checker)
  • behaviors (e.g. drive_on_heading)
  • progress checker (e.g. simple_progress_checker)
  • waypoint task executor (e.g. take_pictures)
  • exceptions in planning and control

The purposes of these plugin interfaces are to create a separation of concern from the system software engineers and the researcher / algorithm designers. Each plugin type is hosted in a "task server" (e.g. planner, recovery, control servers) which handles requests and multiple algorithm plugin instances. The plugins are used to compute a value back to the server without having to worry about ROS 2 actions, topics, or other software utilities. A plugin designer can simply use the tools provided in the API to do their work, or create new ones if they like internally to gain additional information or capabilities.