Paparazzi UAS
v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
|
Rotorcraft attitude reference generation. More...
#include "generated/airframe.h"
#include "math/pprz_algebra_float.h"
#include "attitude_ref_saturate_naive.h"
Go to the source code of this file.
Data Structures | |
struct | FloatRefModel |
Attitude reference model parameters (float) More... | |
struct | AttRefQuatFloat |
Attitude reference models and state/output (float) More... | |
Macros | |
#define | STABILIZATION_ATTITUDE_GAIN_NB 1 |
Functions | |
void | attitude_ref_quat_float_init (struct AttRefQuatFloat *ref) |
void | attitude_ref_quat_float_enter (struct AttRefQuatFloat *ref, struct FloatQuat *state_quat) |
void | attitude_ref_quat_float_update (struct AttRefQuatFloat *ref, struct FloatQuat *sp_quat, float dt) |
void | attitude_ref_quat_float_schedule (struct AttRefQuatFloat *ref, uint8_t idx) |
void | attitude_ref_quat_float_idx_set_omega_p (struct AttRefQuatFloat *ref, uint8_t idx, float omega) |
void | attitude_ref_quat_float_idx_set_omega_q (struct AttRefQuatFloat *ref, uint8_t idx, float omega) |
void | attitude_ref_quat_float_idx_set_omega_r (struct AttRefQuatFloat *ref, uint8_t idx, float omega) |
void | attitude_ref_quat_float_set_omega_p (struct AttRefQuatFloat *ref, float omega) |
void | attitude_ref_quat_float_set_omega_q (struct AttRefQuatFloat *ref, float omega) |
void | attitude_ref_quat_float_set_omega_r (struct AttRefQuatFloat *ref, float omega) |
Rotorcraft attitude reference generation.
(quaternion float version)
Definition in file stabilization_attitude_ref_quat_float.h.
struct FloatRefModel |
Attitude reference model parameters (float)
Definition at line 29 of file stabilization_attitude_ref_euler_float.h.
Data Fields | ||
---|---|---|
struct FloatRates | omega | |
struct FloatRates | two_omega2 | cached value of 2*omega*omega |
struct FloatRates | zeta |
struct AttRefQuatFloat |
Attitude reference models and state/output (float)
Definition at line 50 of file stabilization_attitude_ref_quat_float.h.
Data Fields | ||
---|---|---|
struct FloatRates | accel | |
uint8_t | cur_idx | |
struct FloatEulers | euler | |
struct FloatRefModel | model[STABILIZATION_ATTITUDE_GAIN_NB] | |
struct FloatQuat | quat | |
struct FloatRates | rate | |
struct FloatRefSat | saturation |
#define STABILIZATION_ATTITUDE_GAIN_NB 1 |
Definition at line 38 of file stabilization_attitude_ref_quat_float.h.
void attitude_ref_quat_float_enter | ( | struct AttRefQuatFloat * | ref, |
struct FloatQuat * | state_quat | ||
) |
Definition at line 78 of file stabilization_attitude_ref_quat_float.c.
References FLOAT_RATES_ZERO, QUAT_COPY, and ref.
Referenced by stabilization_attitude_enter().
void attitude_ref_quat_float_idx_set_omega_p | ( | struct AttRefQuatFloat * | ref, |
uint8_t | idx, | ||
float | omega | ||
) |
Definition at line 140 of file stabilization_attitude_ref_quat_float.c.
Referenced by attitude_ref_quat_float_set_omega_p().
void attitude_ref_quat_float_idx_set_omega_q | ( | struct AttRefQuatFloat * | ref, |
uint8_t | idx, | ||
float | omega | ||
) |
Definition at line 146 of file stabilization_attitude_ref_quat_float.c.
Referenced by attitude_ref_quat_float_set_omega_q().
void attitude_ref_quat_float_idx_set_omega_r | ( | struct AttRefQuatFloat * | ref, |
uint8_t | idx, | ||
float | omega | ||
) |
Definition at line 152 of file stabilization_attitude_ref_quat_float.c.
Referenced by attitude_ref_quat_float_set_omega_r().
void attitude_ref_quat_float_init | ( | struct AttRefQuatFloat * | ref | ) |
Definition at line 55 of file stabilization_attitude_ref_quat_float.c.
References FLOAT_EULERS_ZERO, float_quat_identity(), FLOAT_RATES_ZERO, omega_p, omega_q, omega_r, RATES_ASSIGN, ref, STABILIZATION_ATTITUDE_GAIN_NB, STABILIZATION_ATTITUDE_REF_MAX_P, STABILIZATION_ATTITUDE_REF_MAX_PDOT, STABILIZATION_ATTITUDE_REF_MAX_Q, STABILIZATION_ATTITUDE_REF_MAX_QDOT, STABILIZATION_ATTITUDE_REF_MAX_R, STABILIZATION_ATTITUDE_REF_MAX_RDOT, zeta_p, zeta_q, and zeta_r.
Referenced by stabilization_attitude_quat_float_init().
void attitude_ref_quat_float_schedule | ( | struct AttRefQuatFloat * | ref, |
uint8_t | idx | ||
) |
Definition at line 177 of file stabilization_attitude_ref_quat_float.c.
Referenced by stabilization_attitude_gain_schedule(), and stabilization_attitude_quat_float_init().
void attitude_ref_quat_float_set_omega_p | ( | struct AttRefQuatFloat * | ref, |
float | omega | ||
) |
Definition at line 158 of file stabilization_attitude_ref_quat_float.c.
References attitude_ref_quat_float_idx_set_omega_p(), and ref.
void attitude_ref_quat_float_set_omega_q | ( | struct AttRefQuatFloat * | ref, |
float | omega | ||
) |
Definition at line 163 of file stabilization_attitude_ref_quat_float.c.
References attitude_ref_quat_float_idx_set_omega_q(), and ref.
void attitude_ref_quat_float_set_omega_r | ( | struct AttRefQuatFloat * | ref, |
float | omega | ||
) |
Definition at line 168 of file stabilization_attitude_ref_quat_float.c.
References attitude_ref_quat_float_idx_set_omega_r(), and ref.
void attitude_ref_quat_float_update | ( | struct AttRefQuatFloat * | ref, |
struct FloatQuat * | sp_quat, | ||
float | dt | ||
) |
Definition at line 88 of file stabilization_attitude_ref_quat_float.c.
References attitude_ref_float_saturate_naive(), float_eulers_of_quat(), float_quat_comp(), float_quat_derivative(), float_quat_differential(), float_quat_inv_comp(), float_quat_normalize(), float_quat_wrap_shortest(), QUAT_ADD, QUAT_COPY, QUAT_SMUL, FloatQuat::qx, FloatQuat::qy, FloatQuat::qz, RATES_ADD, RATES_SMUL, and ref.
Referenced by stabilization_attitude_run().