|
Paparazzi UAS
v5.18.0_stable
Paparazzi is a free software Unmanned Aircraft System.
|
Go to the documentation of this file.
33 #include "generated/airframe.h"
77 #if !defined IMU_BODY_TO_IMU_PHI && !defined IMU_BODY_TO_IMU_THETA && !defined IMU_BODY_TO_IMU_PSI
78 #define IMU_BODY_TO_IMU_PHI 0
79 #define IMU_BODY_TO_IMU_THETA 0
80 #define IMU_BODY_TO_IMU_PSI 0
83 #if !defined IMU_GYRO_P_NEUTRAL && !defined IMU_GYRO_Q_NEUTRAL && !defined IMU_GYRO_R_NEUTRAL
84 #define IMU_GYRO_P_NEUTRAL 0
85 #define IMU_GYRO_Q_NEUTRAL 0
86 #define IMU_GYRO_R_NEUTRAL 0
89 #if !defined IMU_ACCEL_X_NEUTRAL && !defined IMU_ACCEL_Y_NEUTRAL && !defined IMU_ACCEL_Z_NEUTRAL
90 #define IMU_ACCEL_X_NEUTRAL 0
91 #define IMU_ACCEL_Y_NEUTRAL 0
92 #define IMU_ACCEL_Z_NEUTRAL 0
95 #if !defined IMU_MAG_X_NEUTRAL && !defined IMU_MAG_Y_NEUTRAL && !defined IMU_MAG_Z_NEUTRAL
96 #define IMU_MAG_X_NEUTRAL 0
97 #define IMU_MAG_Y_NEUTRAL 0
98 #define IMU_MAG_Z_NEUTRAL 0
101 #if !defined IMU_GYRO_P_SIGN & !defined IMU_GYRO_Q_SIGN & !defined IMU_GYRO_R_SIGN
102 #define IMU_GYRO_P_SIGN 1
103 #define IMU_GYRO_Q_SIGN 1
104 #define IMU_GYRO_R_SIGN 1
106 #if !defined IMU_ACCEL_X_SIGN & !defined IMU_ACCEL_Y_SIGN & !defined IMU_ACCEL_Z_SIGN
107 #define IMU_ACCEL_X_SIGN 1
108 #define IMU_ACCEL_Y_SIGN 1
109 #define IMU_ACCEL_Z_SIGN 1
111 #if !defined IMU_MAG_X_SIGN & !defined IMU_MAG_Y_SIGN & !defined IMU_MAG_Z_SIGN
112 #define IMU_MAG_X_SIGN 1
113 #define IMU_MAG_Y_SIGN 1
114 #define IMU_MAG_Z_SIGN 1
struct Int32Rates gyro_unscaled
unscaled gyroscope measurements
void imu_scale_accel(struct Imu *_imu)
struct Int32Vect3 accel
accelerometer measurements in m/s^2 in BFP with INT32_ACCEL_FRAC
void imu_SetBodyToImuPhi(float phi)
bool b2i_set_current
flag for adjusting body_to_imu via settings.
struct Int32Vect3 mag_neutral
magnetometer neutral readings (bias) in raw/unscaled units
struct OrientationReps body_to_imu
rotation from body to imu frame
void imu_SetBodyToImuCurrent(float set)
Paparazzi floating point algebra.
void imu_SetBodyToImuPsi(float psi)
Paparazzi fixed point algebra.
struct Int32Vect3 accel_unscaled
unscaled accelerometer measurements
abstract IMU interface providing fixed point interface
struct Imu imu
global IMU state
struct Int32Rates gyro_neutral
static gyroscope bias from calibration in raw/unscaled units
struct Int32Vect3 accel_neutral
static accelerometer bias from calibration in raw/unscaled units
void imu_scale_gyro(struct Imu *_imu)
void imu_SetBodyToImuTheta(float theta)
struct Int32Vect3 accel_prev
previous accelerometer measurements
struct Int32Vect3 mag
magnetometer measurements scaled to 1 in BFP with INT32_MAG_FRAC
struct Int32Vect3 mag_unscaled
unscaled magnetometer measurements
void imu_ResetBodyToImu(float reset)
void imu_scale_mag(struct Imu *_imu)
struct Int32Rates gyro_prev
previous gyroscope measurements
struct Int32Rates gyro
gyroscope measurements in rad/s in BFP with INT32_RATE_FRAC