Paparazzi UAS  v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
stabilization_attitude_ref_quat_float.h File Reference

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, 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)
 

Detailed Description

Rotorcraft attitude reference generation.

(quaternion float version)

Definition in file stabilization_attitude_ref_quat_float.h.


Data Structure Documentation

◆ FloatRefModel

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

◆ AttRefQuatFloat

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

Macro Definition Documentation

◆ STABILIZATION_ATTITUDE_GAIN_NB

#define STABILIZATION_ATTITUDE_GAIN_NB   1

Definition at line 38 of file stabilization_attitude_ref_quat_float.h.

Function Documentation

◆ attitude_ref_quat_float_enter()

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().

+ Here is the caller graph for this function:

◆ attitude_ref_quat_float_idx_set_omega_p()

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.

References idx, and ref.

Referenced by attitude_ref_quat_float_set_omega_p().

+ Here is the caller graph for this function:

◆ attitude_ref_quat_float_idx_set_omega_q()

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.

References idx, and ref.

Referenced by attitude_ref_quat_float_set_omega_q().

+ Here is the caller graph for this function:

◆ attitude_ref_quat_float_idx_set_omega_r()

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.

References idx, and ref.

Referenced by attitude_ref_quat_float_set_omega_r().

+ Here is the caller graph for this function:

◆ attitude_ref_quat_float_init()

◆ attitude_ref_quat_float_schedule()

void attitude_ref_quat_float_schedule ( struct AttRefQuatFloat ref,
uint8_t  idx 
)

Definition at line 177 of file stabilization_attitude_ref_quat_float.c.

References idx, and ref.

Referenced by stabilization_attitude_gain_schedule(), and stabilization_attitude_quat_float_init().

+ Here is the caller graph for this function:

◆ attitude_ref_quat_float_set_omega_p()

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.

+ Here is the call graph for this function:

◆ attitude_ref_quat_float_set_omega_q()

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.

+ Here is the call graph for this function:

◆ attitude_ref_quat_float_set_omega_r()

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.

+ Here is the call graph for this function:

◆ attitude_ref_quat_float_update()

void attitude_ref_quat_float_update ( struct AttRefQuatFloat ref,
struct FloatQuat sp_quat,
float  dt 
)