AHRS

Dependencies:   Eigen

Dependents:   IndNav_QK3_T265

Revision:
28:21dfb161c67c
Parent:
25:fe14dbcef82d
diff -r 973e495f4711 -r 21dfb161c67c AHRS.h
--- a/AHRS.h	Tue Jan 14 14:24:03 2020 +0000
+++ b/AHRS.h	Mon Jan 20 12:41:13 2020 +0000
@@ -7,6 +7,7 @@
 #include "LinearCharacteristics.h"
 #include "LSM9DS1_i2c.h"
 #include "BMX055.h"
+#include "BMI088.h"
 
 #include "Signal.h"
 #include "EKF.h"
@@ -17,8 +18,6 @@
 #include "Data_Logger.h"
 #include "Read_Xtern_Sensors.h"
 
-
-
 extern DATA_Xchange data;
 
 class AHRS
@@ -70,11 +69,11 @@
     }
     #if _LSM9DS
         LSM9DS1 imu;
-    #elif BMI088
-        BMX055 imu;
-        BMI088 imu2;
     #else
         BMX055 imu;
+        #if _BMI088    
+            BMI088 imu2;
+        #endif
     #endif
     Mahony Mahony_filter;
     EKF ekf;
@@ -88,6 +87,12 @@
     LinearCharacteristics raw_ax2ax;
     LinearCharacteristics raw_ay2ay;
     LinearCharacteristics raw_az2az;
+    LinearCharacteristics raw_gx2gx88;
+    LinearCharacteristics raw_gy2gy88;
+    LinearCharacteristics raw_gz2gz88;
+    LinearCharacteristics raw_ax2ax88;
+    LinearCharacteristics raw_ay2ay88;
+    LinearCharacteristics raw_az2az88;
     LinearCharacteristics raw_mx2mx;
     LinearCharacteristics raw_my2my;
     LinearCharacteristics raw_mz2mz;
@@ -98,12 +103,12 @@
     float v_xyzOF[2];
     float xyzOF[3];
     float xyzLIDAR[3];
+    float xyzRS[3];
     float magnet_cal_0[3];
     void update();
     void update_as_thread(void);
     void start_loop(void);
 private:
-
     float local_time;
     uint8_t filtertype;
     Signal signal;
@@ -112,8 +117,9 @@
     void sendSignal();
     void imu_setup_LSM9DS(bool calib);
     void imu_setup_BMX055(bool calib);
+    void imu_setup_BMI088(bool calib);
     float Ts;
-    DigitalOut dout3;
+    DigitalOut dout1;
     Mutex mutex;
 };