67 float *pusher_RPM,
float *hover_RPM_array,
float *skew,
float *elevator_angle,
struct FloatVect3 *V_gnd,
68 struct FloatVect3 *acc_filt,
float *V_pitot,
float dt);
98 #define ekf_aw_update_Q_accel(_v) { \
99 ekf_aw_params.Q_accel = _v; \
100 ekf_aw_update_params(); \
103 #define ekf_aw_update_Q_gyro(_v) { \
104 ekf_aw_params.Q_gyro = _v; \
105 ekf_aw_update_params(); \
108 #define ekf_aw_update_Q_mu(_v) { \
109 ekf_aw_params.Q_mu = _v; \
110 ekf_aw_update_params(); \
113 #define ekf_aw_update_Q_k(_v) { \
114 ekf_aw_params.Q_k = _v; \
115 ekf_aw_update_params(); \
118 #define ekf_aw_update_R_V_gnd(_v) { \
119 ekf_aw_params.R_V_gnd = _v; \
120 ekf_aw_update_params(); \
123 #define ekf_aw_update_R_accel_filt_x(_v) { \
124 ekf_aw_params.R_accel_filt[0] = _v; \
125 ekf_aw_update_params(); \
128 #define ekf_aw_update_R_accel_filt_y(_v) { \
129 ekf_aw_params.R_accel_filt[1] = _v; \
130 ekf_aw_update_params(); \
133 #define ekf_aw_update_R_accel_filt_z(_v) { \
134 ekf_aw_params.R_accel_filt[2] = _v; \
135 ekf_aw_update_params(); \
138 #define ekf_aw_update_R_V_pitot(_v) { \
139 ekf_aw_params.R_V_pitot = _v; \
140 ekf_aw_update_params(); \
float Q_gyro
gyro process noise
void ekf_aw_get_hover_force(float force[3])
void ekf_aw_update_params(void)
float ekf_aw_get_innov_V_pitot(void)
struct FloatVect3 ekf_aw_get_innov_accel_filt(void)
void ekf_aw_get_meas_cov(float meas_cov[7])
void ekf_aw_set_speed_body(struct NedCoor_f *s)
void ekf_aw_get_state_cov(float state_cov[9])
struct NedCoor_f ekf_aw_get_speed_body(void)
float R_V_pitot
airspeed measurement noise
struct ekfHealth ekf_aw_get_health(void)
void ekf_aw_get_process_cov(float process_cov[9])
void ekf_aw_get_fuselage_force(float force[3])
float Q_k
offset process noise
float R_accel_filt[3]
filtered accel measurement noise
void ekf_aw_reset_health(void)
void ekf_aw_set_offset(struct NedCoor_f *s)
struct ekfAwParameters * ekf_aw_get_param_handle(void)
void ekf_aw_propagate(struct FloatVect3 *acc, struct FloatRates *gyro, struct FloatEulers *euler, float *pusher_RPM, float *hover_RPM_array, float *skew, float *elevator_angle, struct FloatVect3 *V_gnd, struct FloatVect3 *acc_filt, float *V_pitot, float dt)
float R_V_gnd
speed measurement noise
struct NedCoor_f ekf_aw_get_wind_ned(void)
void ekf_aw_get_elevator_force(float force[3])
struct FloatVect3 ekf_aw_get_innov_V_gnd(void)
void ekf_aw_get_pusher_force(float force[3])
float Q_mu
wind process noise
void ekf_aw_get_wing_force(float force[3])
struct ekfAwParameters ekf_aw_params
void ekf_aw_set_wind(struct NedCoor_f *s)
float Q_accel
accel process noise
struct NedCoor_f ekf_aw_get_offset(void)
Paparazzi floating point algebra.
Paparazzi floating point math for geodetic calculations.
vector in North East Down coordinates Units: meters
unsigned short uint16_t
Typedef defining 16 bit unsigned short type.