|
Paparazzi UAS
v5.12_stable-4-g9b43e9b
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"
Include dependency graph for stabilization_attitude_ref_quat_float.h:
This graph shows which files directly or indirectly include this file: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, float psi) |
| 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.
Collaboration diagram for FloatRefModel:| 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.
Collaboration diagram for AttRefQuatFloat:| 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, |
| float | psi | ||
| ) |
Definition at line 80 of file stabilization_attitude_ref_quat_float.c.
References reset_psi_ref().
Referenced by stabilization_attitude_enter().
Here is the call graph for this function:
Here is the caller graph for this function:| void attitude_ref_quat_float_idx_set_omega_p | ( | struct AttRefQuatFloat * | ref, |
| uint8_t | idx, | ||
| float | omega | ||
| ) |
Definition at line 156 of file stabilization_attitude_ref_quat_float.c.
References idx, AttRefQuatFloat::model, FloatRefModel::omega, FloatRates::p, and FloatRefModel::two_omega2.
Referenced by attitude_ref_quat_float_set_omega_p().
Here is the caller graph for this function:| void attitude_ref_quat_float_idx_set_omega_q | ( | struct AttRefQuatFloat * | ref, |
| uint8_t | idx, | ||
| float | omega | ||
| ) |
Definition at line 162 of file stabilization_attitude_ref_quat_float.c.
References idx, AttRefQuatFloat::model, FloatRefModel::omega, FloatRates::q, and FloatRefModel::two_omega2.
Referenced by attitude_ref_quat_float_set_omega_q().
Here is the caller graph for this function:| void attitude_ref_quat_float_idx_set_omega_r | ( | struct AttRefQuatFloat * | ref, |
| uint8_t | idx, | ||
| float | omega | ||
| ) |
Definition at line 168 of file stabilization_attitude_ref_quat_float.c.
References idx, AttRefQuatFloat::model, FloatRefModel::omega, FloatRates::r, and FloatRefModel::two_omega2.
Referenced by attitude_ref_quat_float_set_omega_r().
Here is the caller graph for this function:| void attitude_ref_quat_float_init | ( | struct AttRefQuatFloat * | ref | ) |
Definition at line 57 of file stabilization_attitude_ref_quat_float.c.
References AttRefQuatFloat::accel, AttRefQuatFloat::cur_idx, AttRefQuatFloat::euler, FLOAT_EULERS_ZERO, float_quat_identity(), FLOAT_RATES_ZERO, FloatRefSat::max_accel, FloatRefSat::max_rate, AttRefQuatFloat::model, FloatRefModel::omega, omega_p, omega_q, omega_r, FloatRates::p, FloatRates::q, AttRefQuatFloat::quat, FloatRates::r, AttRefQuatFloat::rate, RATES_ASSIGN, AttRefQuatFloat::saturation, 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, FloatRefModel::two_omega2, FloatRefModel::zeta, zeta_p, zeta_q, and zeta_r.
Referenced by stabilization_attitude_init().
Here is the call graph for this function:
Here is the caller graph for this function:| void attitude_ref_quat_float_schedule | ( | struct AttRefQuatFloat * | ref, |
| uint8_t | idx | ||
| ) |
Definition at line 193 of file stabilization_attitude_ref_quat_float.c.
References AttRefQuatFloat::cur_idx, and idx.
Referenced by stabilization_attitude_gain_schedule(), and stabilization_attitude_init().
Here is the caller graph for this function:| void attitude_ref_quat_float_set_omega_p | ( | struct AttRefQuatFloat * | ref, |
| float | omega | ||
| ) |
Definition at line 174 of file stabilization_attitude_ref_quat_float.c.
References attitude_ref_quat_float_idx_set_omega_p(), and AttRefQuatFloat::cur_idx.
Here is the call graph for this function:| void attitude_ref_quat_float_set_omega_q | ( | struct AttRefQuatFloat * | ref, |
| float | omega | ||
| ) |
Definition at line 179 of file stabilization_attitude_ref_quat_float.c.
References attitude_ref_quat_float_idx_set_omega_q(), and AttRefQuatFloat::cur_idx.
Here is the call graph for this function:| void attitude_ref_quat_float_set_omega_r | ( | struct AttRefQuatFloat * | ref, |
| float | omega | ||
| ) |
Definition at line 184 of file stabilization_attitude_ref_quat_float.c.
References attitude_ref_quat_float_idx_set_omega_r(), and AttRefQuatFloat::cur_idx.
Here is the call graph for this function:| void attitude_ref_quat_float_update | ( | struct AttRefQuatFloat * | ref, |
| struct FloatQuat * | sp_quat, | ||
| float | dt | ||
| ) |
Definition at line 86 of file stabilization_attitude_ref_quat_float.c.
References AttRefQuatFloat::accel, attitude_ref_float_saturate_naive(), AttRefQuatFloat::cur_idx, AttRefQuatFloat::euler, float_eulers_of_quat(), float_quat_comp(), float_quat_derivative(), float_quat_differential(), float_quat_inv_comp(), float_quat_normalize(), float_quat_wrap_shortest(), AttRefQuatFloat::model, FloatRefModel::omega, FloatRates::p, FloatRates::q, AttRefQuatFloat::quat, QUAT_ADD, QUAT_COPY, QUAT_SMUL, FloatQuat::qx, FloatQuat::qy, FloatQuat::qz, FloatRates::r, AttRefQuatFloat::rate, RATES_ADD, RATES_SMUL, AttRefQuatFloat::saturation, FloatRefModel::two_omega2, and FloatRefModel::zeta.
Referenced by stabilization_attitude_run().
Here is the call graph for this function:
Here is the caller graph for this function: