OpenShoe  1.0
nav_eq.h
Go to the documentation of this file.
00001 
00020 #ifndef NAV_EQ_H_
00021 #define NAV_EQ_H_
00022 
00023 
00024 #include "nav_types.h"
00025 #include <math.h>
00026 #include <stdint.h>
00027 #include "compiler.h"
00028 
00029 
00030 //************* Definitions *************//
00031 
00032 
00034 #define MAX_ORIENTATIONS 12
00035 
00037 #define MIN_ORIENTATIONS 3
00038 
00040 #define MATRIX_INVERSION_ERROR 1
00041 
00043 #define ACC_STATIONARITY_ERROR 2
00044 
00046 #define ACC_CALIBRATION_ILLCONDITIONED 3
00047 
00049 #define NUMBER_OF_ORIENTATIONS_TO_LARGE 4   
00050 
00052 #define NUMBER_OF_ORIENTATIONS_TO_SMALL 5   
00053 
00055 #define absf(a)(a>0 ? a:-a)
00056 
00057 
00058 //************* Function declarations  **************//
00059 
00060 
00061 
00094 void calibrate_accelerometers(void);
00095 
00103 void estimate_accelerometer_biases(void);
00104 
00119 void correct_navigation_states(void);
00120 
00121 
00122 
00134 void gain_matrix(void);
00135 
00136 
00137 
00166 void initialize_navigation_algorithm(void);
00167 
00168 
00169 
00170 
00179 void measurement_update(void);
00180 
00181 
00182 
00204 void strapdown_mechanisation_equations(void);
00205 
00206 
00207 
00220 void time_up_data(void);
00221 
00222 
00223 
00239 void update_imu_data_buffers(void);
00240 
00241 
00260 void ZUPT_detector(void);
00261 
00262    
00263 
00276 void zupt_update(void);
00277 
00278 
00279 #endif /* NAV_EQ_H_ */
00280 
 All Data Structures Files Functions Variables Typedefs Defines