[mrpt-nav]

Overview

Autonomous navigation, path planning

Library mrpt-nav

This library is part of MRPT and can be installed in Debian-based systems with:

sudo apt install libmrpt-nav-dev

Read also how to import MRPT into your CMake scripts.

Overview

mrpt-nav provides reactive and planned navigation for mobile robots. The architecture is layered:

CAbstractNavigator                base state machine (IDLE / NAVIGATING / SUSPENDED / NAV_ERROR)
  └── CWaypointsNavigator         waypoint sequencing on top of single-goal navigation
        └── CAbstractPTGBasedReactive    TP-Space reactive core
              ├── CReactiveNavigationSystem     2-D robots
              └── CReactiveNavigationSystem3D   multi-level 3-D robots

Reactive navigation

Robot interface

Users must implement mrpt::nav::CRobot2NavInterface, providing:

  • getCurrentPoseAndSpeeds() — current robot pose and velocity

  • changeSpeed() / stop() — velocity commands

  • Event callbacks: sendNavigationStartEvent(), sendNavigationEndEvent(), etc.

mrpt::nav::CRobot2NavInterfaceForSimulator offers a ready-made implementation backed by a kinematic simulator.

Library contents