ROS 2 Navigation Stack (Nav2)
Nav2CommonROS 2's official navigation framework, letting a mobile robot autonomously drive itself from point A to point B.
Nav2 is ROS 2's navigation framework, succeeding the move_base-centered navigation stack from ROS 1, led primarily by Steve Macenski and others. Given a map and a goal point, it handles localization (commonly AMCL), maintains a costmap, does global path planning (e.g. NavFn or the Smac Planner), tracks a local trajectory (e.g. DWB, MPPI, or Regulated Pure Pursuit), and orchestrates the whole process with a behavior tree — automatically backing up, rotating, or performing other recovery behaviors when the robot gets stuck. Every stage is a swappable plugin. Indoor navigation for wheeled bases and quadrupeds most often starts here, typically paired with a SLAM package to build a map first, then Nav2 to run point-to-point navigation.
ExampleClicking a “2D Goal Pose” in RViz gives Nav2 a target; it plans a path and drives a TurtleBot around obstacles to reach it.
- Also called
- Navigation2, ROS navigation stack, move_base
- Related
- Navigation · Costmap · Adaptive Monte Carlo Localization · Behavior Tree · Global Planning and Local Planning · Robot Operating System 2
- Sources
- Nav2 Documentation
ros-navigation/navigation2 - GitHub