Fabio Bobrow / Cubli
Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers AttitudeEstimator.h Source File

AttitudeEstimator.h

00001 #ifndef AttitudeEstimator_h
00002 #define AttitudeEstimator_h
00003 
00004 #include "mbed.h"
00005 #include "Matrix.h"
00006 #include "LSM9DS1.h"
00007 
00008 // Attitude estimator class
00009 class AttitudeEstimator
00010 {
00011   public:
00012     // Class constructor
00013     AttitudeEstimator();
00014     // Initialize class
00015     void init();
00016     // Estimate Euler angles (rad) and angular velocities (rad/s)
00017     void estimate();
00018     //
00019     void get_output();
00020     //
00021     Matrix x;
00022     //
00023     Matrix A, H, P, K, Q, R;
00024     //
00025     Matrix g, a, m;
00026     //
00027     Matrix q;
00028     //
00029     Matrix BN;
00030     //
00031     Matrix I;
00032   private:
00033     // 
00034     float dt, dt_half;
00035     //
00036     void read();
00037     // IMU sensor object
00038     LSM9DS1 imu;
00039     //
00040 };
00041 
00042 #endif