University of Calgary
UofC Navigation

Aided Inertial Navigation System (AINS) Toolbox for MatLab Software


The aided inertial navigation system (AINS) Toolbox is a set of libraries written for MatLabsoftware, a standard scientific computing environment, each of which can be called separately. It also provides estimation tools to optimally combine the data files from an inertial measurement unit (IMU) together with information from other aiding sensors, such as the global positioning system (GPS), odometers, heading, and non-holonomic constraints.

The toolbox supports various attitude parameterizations including the direction cosine matrix (DCM), Euler angles, rotation vector, and quaternion. Transformations between these parameterizations are also implemented as shown in Figure 1.

1: Attitude parameterizations and transforms

The toolbox uses state-of-the-art strapdown integration algorithms and estimation techniques. The INS mechanization applies second-order coning and sculling corrections. Many options exist for the initial alignment. For tactical or navigation grade IMUs, the analytical coarse alignment and fine alignment techniques are implemented. In-motion alignment uses GPS-derived velocities for pitch and heading initialization. Leveling with user-given heading information can be used for the alignment of low-cost IMUs. The following estimation techniques are implemented in the toolbox:

  • Linearized Kalman filter with feedback (extended Kalman filter)
  • The Rauch-Tung-Striebel (RTS) smoother
  • A quaternion-based unscented Kalman filter
  • Backward unscented Kalman filter and smoother


The toolbox uses state-of-the-art strapdown integration algorithms and estimation techniques. Each of the functions has modular structure, and therefore it can be used separately. The followings briefly describe the functions of the toolbox:

    • Attitude representation
      • Euler angles to direction cosine matrix (DCM) conversion
      • DCM to quaternion vector conversion
      • Quaternion to DCM conversion
      • DCM to Euler angles conversion


    • INS Calibration module can estimate biases, scale factors and non-orthogonalities of the sensor triads, i.e., accelerometers and gyroscopes.
    • INS Alignment
      • Analytical coarse alignment
      • Fine alignment with zero velocity updates


    • INS Mechanization:
      • Second order coning and sculling correction
      • Velocity integration
      • Position integration
      • Attitude integration


    • Extended Kalman Filter
      • 15 states incorporating errors in position, velocity, attitude, and sensor biases
      • Coordinate update (GPS and conventional surveying)
      • The navigation frame velocity update (GPS)
      • The body frame velocity update (odometer and speedometer)
      • Zero velocity update (ZUPT)
      • Non-holonomic constraints


    • A fixed interval smoother yields best solution utilizing all the measurements of past,current, and future.


Contact Information
For more information, please contact Dr. Naser El-Sheimy.
Phone: (403) 220-7587
Fax: (403) 284-1980