Paparazzi UAS  v5.0.5_stable-7-g4b8bbb7
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
imu_apogee.h File Reference

Driver for the IMU on the Apogee board. More...

#include "std.h"
#include "generated/airframe.h"
#include "subsystems/imu.h"
#include "peripherals/mpu60x0_i2c.h"
+ Include dependency graph for imu_apogee.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ImuApogee
 

Macros

#define IMU_GYRO_P_SIGN   1
 
#define IMU_GYRO_Q_SIGN   1
 
#define IMU_GYRO_R_SIGN   1
 
#define IMU_ACCEL_X_SIGN   1
 
#define IMU_ACCEL_Y_SIGN   1
 
#define IMU_ACCEL_Z_SIGN   1
 
#define IMU_GYRO_P_SENS   2.17953
 default gyro sensitivy and neutral from the datasheet MPU with 1000 deg/s has 32.8 LSB/(deg/s) sens = 1/32.8 * pi/180 * 2^INT32_RATE_FRAC sens = 1/32.8 * pi/180 * 4096 = 2.17953 I More...
 
#define IMU_GYRO_P_SENS_NUM   18271
 
#define IMU_GYRO_P_SENS_DEN   8383
 
#define IMU_GYRO_Q_SENS   2.17953
 
#define IMU_GYRO_Q_SENS_NUM   18271
 
#define IMU_GYRO_Q_SENS_DEN   8383
 
#define IMU_GYRO_R_SENS   2.17953
 
#define IMU_GYRO_R_SENS_NUM   18271
 
#define IMU_GYRO_R_SENS_DEN   8383
 
#define IMU_GYRO_P_NEUTRAL   0
 
#define IMU_GYRO_Q_NEUTRAL   0
 
#define IMU_GYRO_R_NEUTRAL   0
 
#define IMU_ACCEL_X_SENS   2.4525
 default accel sensitivy from the datasheet MPU with 8g has 4096 LSB/g sens = 9.81 [m/s^2] / 4096 [LSB/g] * 2^INT32_ACCEL_FRAC = 2.4525 More...
 
#define IMU_ACCEL_X_SENS_NUM   981
 
#define IMU_ACCEL_X_SENS_DEN   400
 
#define IMU_ACCEL_Y_SENS   2.4525
 
#define IMU_ACCEL_Y_SENS_NUM   981
 
#define IMU_ACCEL_Y_SENS_DEN   400
 
#define IMU_ACCEL_Z_SENS   2.4525
 
#define IMU_ACCEL_Z_SENS_NUM   981
 
#define IMU_ACCEL_Z_SENS_DEN   400
 
#define IMU_ACCEL_X_NEUTRAL   0
 
#define IMU_ACCEL_Y_NEUTRAL   0
 
#define IMU_ACCEL_Z_NEUTRAL   0
 

Functions

void imu_apogee_event (void)
 
void imu_apogee_downlink_raw (void)
 
static void ImuEvent (void(*_gyro_handler)(void), void(*_accel_handler)(void), void(*_mag_handler)(void))
 

Variables

struct ImuApogee imu_apogee
 

Detailed Description

Driver for the IMU on the Apogee board.

Invensense MPU-6050

Definition in file imu_apogee.h.

Macro Definition Documentation

#define IMU_ACCEL_X_NEUTRAL   0

Definition at line 92 of file imu_apogee.h.

Referenced by imu_init().

#define IMU_ACCEL_X_SENS   2.4525

default accel sensitivy from the datasheet MPU with 8g has 4096 LSB/g sens = 9.81 [m/s^2] / 4096 [LSB/g] * 2^INT32_ACCEL_FRAC = 2.4525

Definition at line 81 of file imu_apogee.h.

#define IMU_ACCEL_X_SENS_DEN   400

Definition at line 83 of file imu_apogee.h.

Referenced by imu_quality_assessment_periodic().

#define IMU_ACCEL_X_SENS_NUM   981

Definition at line 82 of file imu_apogee.h.

Referenced by imu_quality_assessment_periodic().

#define IMU_ACCEL_X_SIGN   1

Definition at line 46 of file imu_apogee.h.

#define IMU_ACCEL_Y_NEUTRAL   0

Definition at line 93 of file imu_apogee.h.

Referenced by imu_init().

#define IMU_ACCEL_Y_SENS   2.4525

Definition at line 84 of file imu_apogee.h.

#define IMU_ACCEL_Y_SENS_DEN   400

Definition at line 86 of file imu_apogee.h.

#define IMU_ACCEL_Y_SENS_NUM   981

Definition at line 85 of file imu_apogee.h.

#define IMU_ACCEL_Y_SIGN   1

Definition at line 47 of file imu_apogee.h.

#define IMU_ACCEL_Z_NEUTRAL   0

Definition at line 94 of file imu_apogee.h.

Referenced by imu_init().

#define IMU_ACCEL_Z_SENS   2.4525

Definition at line 87 of file imu_apogee.h.

#define IMU_ACCEL_Z_SENS_DEN   400

Definition at line 89 of file imu_apogee.h.

#define IMU_ACCEL_Z_SENS_NUM   981

Definition at line 88 of file imu_apogee.h.

#define IMU_ACCEL_Z_SIGN   1

Definition at line 48 of file imu_apogee.h.

#define IMU_GYRO_P_NEUTRAL   0

Definition at line 69 of file imu_apogee.h.

Referenced by imu_init().

#define IMU_GYRO_P_SENS   2.17953

default gyro sensitivy and neutral from the datasheet MPU with 1000 deg/s has 32.8 LSB/(deg/s) sens = 1/32.8 * pi/180 * 2^INT32_RATE_FRAC sens = 1/32.8 * pi/180 * 4096 = 2.17953 I

Definition at line 58 of file imu_apogee.h.

#define IMU_GYRO_P_SENS_DEN   8383

Definition at line 60 of file imu_apogee.h.

#define IMU_GYRO_P_SENS_NUM   18271

Definition at line 59 of file imu_apogee.h.

#define IMU_GYRO_P_SIGN   1

Definition at line 41 of file imu_apogee.h.

#define IMU_GYRO_Q_NEUTRAL   0

Definition at line 70 of file imu_apogee.h.

Referenced by imu_init().

#define IMU_GYRO_Q_SENS   2.17953

Definition at line 61 of file imu_apogee.h.

#define IMU_GYRO_Q_SENS_DEN   8383

Definition at line 63 of file imu_apogee.h.

#define IMU_GYRO_Q_SENS_NUM   18271

Definition at line 62 of file imu_apogee.h.

#define IMU_GYRO_Q_SIGN   1

Definition at line 42 of file imu_apogee.h.

#define IMU_GYRO_R_NEUTRAL   0

Definition at line 71 of file imu_apogee.h.

Referenced by imu_init().

#define IMU_GYRO_R_SENS   2.17953

Definition at line 64 of file imu_apogee.h.

#define IMU_GYRO_R_SENS_DEN   8383

Definition at line 66 of file imu_apogee.h.

#define IMU_GYRO_R_SENS_NUM   18271

Definition at line 65 of file imu_apogee.h.

#define IMU_GYRO_R_SIGN   1

Definition at line 43 of file imu_apogee.h.

Function Documentation

void imu_apogee_downlink_raw ( void  )
static void ImuEvent ( void(*)(void)  _gyro_handler,
void(*)(void)  _accel_handler,
void(*)(void)  _mag_handler 
)
inlinestatic

Definition at line 116 of file imu_apogee.h.

References ImuApogee::acc_valid, FALSE, ImuApogee::gyr_valid, imu_apogee, and imu_apogee_event().

+ Here is the call graph for this function:

Variable Documentation

struct ImuApogee imu_apogee

Definition at line 62 of file imu_apogee.c.

Referenced by baro_periodic(), imu_apogee_event(), imu_periodic(), and ImuEvent().