Paparazzi UAS  v5.15_devel-230-gc96ce27
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
stabilization_attitude_ref_quat_float.c File Reference

Rotorcraft attitude reference generation. More...

+ Include dependency graph for stabilization_attitude_ref_quat_float.c:

Go to the source code of this file.

Macros

#define STABILIZATION_ATTITUDE_REF_QUAT_INFINITESIMAL_STEP   TRUE
 default to fast but less precise quaternion integration More...
 

Functions

static void reset_psi_ref (struct AttRefQuatFloat *ref, float psi)
 
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_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)
 
void attitude_ref_quat_float_schedule (struct AttRefQuatFloat *ref, uint8_t idx)
 

Variables

static const float omega_p [] = STABILIZATION_ATTITUDE_REF_OMEGA_P
 
static const float zeta_p [] = STABILIZATION_ATTITUDE_REF_ZETA_P
 
static const float omega_q [] = STABILIZATION_ATTITUDE_REF_OMEGA_Q
 
static const float zeta_q [] = STABILIZATION_ATTITUDE_REF_ZETA_Q
 
static const float omega_r [] = STABILIZATION_ATTITUDE_REF_OMEGA_R
 
static const float zeta_r [] = STABILIZATION_ATTITUDE_REF_ZETA_R
 

Detailed Description

Rotorcraft attitude reference generation.

(quaternion float version)

Definition in file stabilization_attitude_ref_quat_float.c.

Macro Definition Documentation

#define STABILIZATION_ATTITUDE_REF_QUAT_INFINITESIMAL_STEP   TRUE

default to fast but less precise quaternion integration

Definition at line 37 of file stabilization_attitude_ref_quat_float.c.

Function Documentation

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_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:

static void reset_psi_ref ( struct AttRefQuatFloat ref,
float  psi 
)
inlinestatic

Definition at line 139 of file stabilization_attitude_ref_quat_float.c.

References AttRefQuatFloat::accel, AttRefQuatFloat::euler, float_quat_of_eulers(), float_quat_wrap_shortest(), FloatEulers::psi, AttRefQuatFloat::quat, FloatRates::r, and AttRefQuatFloat::rate.

Referenced by attitude_ref_quat_float_enter().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Variable Documentation

const float omega_p[] = STABILIZATION_ATTITUDE_REF_OMEGA_P
static
const float omega_q[] = STABILIZATION_ATTITUDE_REF_OMEGA_Q
static
const float omega_r[] = STABILIZATION_ATTITUDE_REF_OMEGA_R
static
const float zeta_p[] = STABILIZATION_ATTITUDE_REF_ZETA_P
static
const float zeta_q[] = STABILIZATION_ATTITUDE_REF_ZETA_Q
static
const float zeta_r[] = STABILIZATION_ATTITUDE_REF_ZETA_R
static