OpenShoe  1.0
Defines | Functions
nav_eq.h File Reference

Header file for the OpenShoe navigation algorithm. More...

#include "nav_types.h"
#include <math.h>
#include <stdint.h>
#include "compiler.h"

Go to the source code of this file.

Defines

#define MAX_ORIENTATIONS   12
 Maximum numbers of orientations that can be used in the accelerometer calibration.
#define MIN_ORIENTATIONS   3
 Minimum numbers of orientations that can be used in the accelerometer calibration.
#define MATRIX_INVERSION_ERROR   1
 Value returned in the error message if an error occurred in the matrix inversion.
#define ACC_STATIONARITY_ERROR   2
 Value returned in the error message if the IMU was not stationary during the accelerometer calibration.
#define ACC_CALIBRATION_ILLCONDITIONED   3
 Value returned in the error message if the orientations used in the accelerometer calibration were poorly chosen.
#define NUMBER_OF_ORIENTATIONS_TO_LARGE   4
 Value returned in the error message if the number of orientations specified for the accelerometer calibration is to large. It has been changed to 12.
#define NUMBER_OF_ORIENTATIONS_TO_SMALL   5
 Value returned in the error message if the number of orientations specified for the accelerometer calibration is to few. It has been changed to 3.
#define absf(a)   (a>0 ? a:-a)
 Absolute value of a floating point variable.

Functions

void calibrate_accelerometers (void)
 Function for calibrating the accelerometer biases.
void estimate_accelerometer_biases (void)
 Function that estimates the accelerometer biases given a matrix of the mean of the measured acceleration at different orientations.
void correct_navigation_states (void)
 Function for correcting the navigation states given a zero-velocity detection.
void gain_matrix (void)
 Function for calculating the Kalman filter gain matrix.
void initialize_navigation_algorithm (void)
 Function for initializing the navigation algorithm.
void measurement_update (void)
 Function for doing a measurement update of the Kalman filter covariance.
void strapdown_mechanisation_equations (void)
 Function for doing a time update of the mechanized navigation equations.
void time_up_data (void)
 Function for doing a time update of the Kalman filter state covariance.
void update_imu_data_buffers (void)
 Function that updates the IMU data buffers with the latest values read from the IMU, and writes the IMU data to that should be process at the current iteration to the processing variables.
void ZUPT_detector (void)
 Function for detecting when the system has zero-velocity.
void zupt_update (void)
 Wrapper function that checks if a zero-velocity update should be done, and then calls all navigation algorithm functions that should be executed during a zero-velocity update.

Detailed Description

Header file for the OpenShoe navigation algorithm.

This is the header file for the OpenShoe navigation algorithm. It includes the function declarations for all the signal processing functions needed to implement a zero-velocity aided inertial navigation system using a nine state Kalman filter working in a complimentary feedback configuration. It also includes function declarations for the functions needed to implement a accelerometer bias calibration framework.

Authors:
John-Olof Nilsson, Isaac Skog
 All Data Structures Files Functions Variables Typedefs Defines