Principle

An Inertial Navigation System (INS) is a device that relies on a triad of gyroscopes and accelerometers to compute a 6 degrees of freedom navigation output (orientation, velocity and position).

raw INS diagram

The INS is highly efficient for short term navigation. As the sensors are integrated over time, there is a residual error that tends to increase. Therefore, corrections must be regularly applied on the INS outputs to keep reasonable errors.

GNSS aided INS

In order to implement these regular corrections, it's very convenient to fuse GNSS receivers with inertial sensor data: In this scenario, the GNSS short term errors are efficiently corrected by inertial sensors, and inertial drift is corrected by GNSS. A common way to do this sensor fusion is to use an Extended Kalman Filte (EKF). The major advantage of EKF is that it tracks the navigation states, but also accounts for sensor biases, and computes an estimate of uncertainties, giving critical information to user about system performance.

Other external aiding sensors such magnetometer, odometer, or dual antenna GNSS heading sensor can also complement the system to further improve performance.

The main advantages of INS compared to standalone GNSS, or AHRS systems is to provide high rate orientation and navigation outputs, as well as a highly accurate solution in all dynamic conditions. An INS is also able to estimate accurate heading without any dependence on magnetic field.

On the other hand, the INS is a bit more complex to setup as the mechanical installation needs to be known (GNSS antenna lever arm etc), although it is possible to mitigate this complexity by automated calibration procedures.

INS diagram

Loosely vs Tightly Coupled INS

Various schemes of integration exist when coupling inertial sensors and GNSS technology.

The most used ones are the loosely coupled and tightly coupled integrations. We will describe here how they work and see the pros & cons of each scheme.

In both cases we use an INS to compute short term navigation equations and provide accurate navigation outputs.

Loosely coupled integration

In the loosely coupled scheme, the INS is directly fused with GNSS navigation outputs (position, velocity), using typically an Extended Kalman Fitler.

INS integration errors are corrected by the GNSS position inputs. Accurate and stable navigation outputs are then delivered by the EKF.

This scheme has a major advantage in terms of simplicity and can be operated on miniature devices, with limited computational power. It is also the best solution for integration with external receivers such as SAASM (military) or third party devices using standard NMEA protocol.

However, it's important to understand that the GNSS receiver also needs to run some internal filtering algorithms (typically a Kalman filter) to compute its navigation solution. When using only position inputs from the receiver, we will lose some information about the actual GNSS satellites in view. That's why this solution is more dependent on a good GNSS signal processing.

looseCoupling

Tightly coupled integration

A tightly coupled INS/ GNSS is a more advanced device. In this scheme, the GNSS receiver only computes "RAW measurements", giving various measures of position with respect to each satellite in view. The GNSS receiver does not run any navigation filter. All GNSS equations are directly integrated into the INS/GNSS Extended Kalman filter.

This type of integration has the great advantage of giving a much wider ability to identify faulty measurements from individual satellites, or the possibility to temporarily operate with a limited number of satellites in view (<4). This provides an excellent robustness to the tightly coupled solution compared to the loosely coupled integration.

In high precision applications (RTK) the tight coupling also allows to increase the availability of centimeter level accuracy, with faster RTK fix recovery after an outage.

The main limitation of tight coupling is that it is not easily suitable with external GNSS receivers that often do not provide Raw measurements.

tightCoupling