Local Navigation

Related C++ Header in the Auterion SDK:<auterion_sdk/navigation/local_navigation.hpp>

The local navigation interface allows you to send measurements of your drone's local position to the FMU.

Instantiation

You can instantiate a local navigation interface by instantiating an object of type auterion::LocalNavigationInterface:

auterion::LocalNavigationInterface nav_interface(sdk);

The interface provides an update method which expects a LocalPositionMeasurement object as an argument, and which sends your position measurements to the state estimator of the FMU.

Local Position Measurements

To send local position measurements, you must first build a LocalPositionMeasurement object and fill in the fields you want to send updates for. A LocalPositionMeasurement object holds the following fields:

  • The timestamp of your measurement sample

  • A 3D position (in meters, ENU frame)

  • The position error variance (in m²)

  • A 3D velocity (in meters, ENU frame)

  • The velocity error variance (in m²)

  • An attitude quaternion (Hamiltonian convention)

  • The attitude error variance (in rad²)

To instantiate a local position measurement, you need to provide the time at which the measurement was captured:

The LocalPositionMeasurement class then provides builder methods to populate your measurement instance with the data that you have collected. You can choose which builder methods to call depending on which states you have measured:

Sending Measurements

You can now send your local position measurement by simply calling the interface's update method:

Last updated