Paparazzi UAS  v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
eff_scheduling_nederdrone.c File Reference
+ Include dependency graph for eff_scheduling_nederdrone.c:

Go to the source code of this file.

Macros

#define INDI_SCHEDULING_LOWER_BOUND_G1   0.0001
 
#define INDI_SCHEDULING_LOW_AIRSPEED   12.0
 
#define INDI_SCHEDULING_TRIM_ELEVATOR   0.0
 
#define INDI_SCHEDULING_TRIM_FLAPS   0.0
 

Functions

void schdule_control_effectiveness (void)
 Function that calculates control effectiveness values for the Nederdrone inner loop. More...
 
void ctrl_eff_scheduling_init (void)
 Initialises periodic loop;. More...
 
void ctrl_eff_scheduling_periodic (void)
 Periodic function that interpolates between gain sets depending on the scheduling variable. More...
 

Variables

float trim_elevator = INDI_SCHEDULING_TRIM_ELEVATOR
 
float trim_flaps = INDI_SCHEDULING_TRIM_FLAPS
 
float pref_flaps_factor = INDI_SCHEDULING_PREF_FLAPS_FACTOR
 
float indi_Wu_original [INDI_NUM_ACT] = STABILIZATION_INDI_WLS_WU
 
bool all_act_fwd_sched = false
 
int32_t use_scheduling = 1
 
float thrust_eff_scaling = 1.0
 
float backwing_thrust_eff_scaling = 1.0
 
float backwing_pitch_eff_scaling = 1.0
 
static float g_forward [4][INDI_NUM_ACT] = {STABILIZATION_INDI_G1_ROLL_FWD, STABILIZATION_INDI_G1_PITCH_FWD, STABILIZATION_INDI_G1_YAW_FWD, STABILIZATION_INDI_G1_THRUST_FWD}
 
static float g_hover [4][INDI_NUM_ACT] = {STABILIZATION_INDI_G1_ROLL, STABILIZATION_INDI_G1_PITCH, STABILIZATION_INDI_G1_YAW, STABILIZATION_INDI_G1_THRUST}
 
float sched_ratio_tip_props = 1.0
 
float sched_tip_prop_upper_pitch_limit_deg = -45
 
float sched_tip_prop_lower_pitch_limit_deg = -65
 
bool sched_tip_props_always_on = false
 

Detailed Description

Author
Dennis van Wijngaarden D.C.v.nosp@m.anWi.nosp@m.jngaa.nosp@m.rden.nosp@m.@tude.nosp@m.lft..nosp@m.nl Interpolation of control effectivenss matrix of the Nederdrone.

If instead using online adaptation is an option, be sure to not use this module at the same time!

Definition in file eff_scheduling_nederdrone.c.

Macro Definition Documentation

◆ INDI_SCHEDULING_LOW_AIRSPEED

#define INDI_SCHEDULING_LOW_AIRSPEED   12.0

Definition at line 41 of file eff_scheduling_nederdrone.c.

◆ INDI_SCHEDULING_LOWER_BOUND_G1

#define INDI_SCHEDULING_LOWER_BOUND_G1   0.0001

Definition at line 37 of file eff_scheduling_nederdrone.c.

◆ INDI_SCHEDULING_TRIM_ELEVATOR

#define INDI_SCHEDULING_TRIM_ELEVATOR   0.0

Definition at line 49 of file eff_scheduling_nederdrone.c.

◆ INDI_SCHEDULING_TRIM_FLAPS

#define INDI_SCHEDULING_TRIM_FLAPS   0.0

Definition at line 53 of file eff_scheduling_nederdrone.c.

Function Documentation

◆ ctrl_eff_scheduling_init()

void ctrl_eff_scheduling_init ( void  )

Initialises periodic loop;.

Definition at line 92 of file eff_scheduling_nederdrone.c.

References g_forward, g_hover, and INDI_G_SCALING.

◆ ctrl_eff_scheduling_periodic()

void ctrl_eff_scheduling_periodic ( void  )

Periodic function that interpolates between gain sets depending on the scheduling variable.

Definition at line 108 of file eff_scheduling_nederdrone.c.

References act_pref, schdule_control_effectiveness(), sched_ratio_tip_props, trim_elevator, and trim_flaps.

+ Here is the call graph for this function:

◆ schdule_control_effectiveness()

void schdule_control_effectiveness ( void  )

Variable Documentation

◆ all_act_fwd_sched

bool all_act_fwd_sched = false

Definition at line 65 of file eff_scheduling_nederdrone.c.

Referenced by schdule_control_effectiveness().

◆ backwing_pitch_eff_scaling

float backwing_pitch_eff_scaling = 1.0

Definition at line 71 of file eff_scheduling_nederdrone.c.

Referenced by schdule_control_effectiveness().

◆ backwing_thrust_eff_scaling

float backwing_thrust_eff_scaling = 1.0

Definition at line 70 of file eff_scheduling_nederdrone.c.

Referenced by schdule_control_effectiveness().

◆ g_forward

float g_forward[4][INDI_NUM_ACT] = {STABILIZATION_INDI_G1_ROLL_FWD, STABILIZATION_INDI_G1_PITCH_FWD, STABILIZATION_INDI_G1_YAW_FWD, STABILIZATION_INDI_G1_THRUST_FWD}
static

◆ g_hover

float g_hover[4][INDI_NUM_ACT] = {STABILIZATION_INDI_G1_ROLL, STABILIZATION_INDI_G1_PITCH, STABILIZATION_INDI_G1_YAW, STABILIZATION_INDI_G1_THRUST}
static

◆ indi_Wu_original

float indi_Wu_original[INDI_NUM_ACT] = STABILIZATION_INDI_WLS_WU

Definition at line 63 of file eff_scheduling_nederdrone.c.

Referenced by schdule_control_effectiveness().

◆ pref_flaps_factor

float pref_flaps_factor = INDI_SCHEDULING_PREF_FLAPS_FACTOR

Definition at line 61 of file eff_scheduling_nederdrone.c.

Referenced by schdule_control_effectiveness().

◆ sched_ratio_tip_props

float sched_ratio_tip_props = 1.0

◆ sched_tip_prop_lower_pitch_limit_deg

float sched_tip_prop_lower_pitch_limit_deg = -65

Definition at line 86 of file eff_scheduling_nederdrone.c.

Referenced by schdule_control_effectiveness().

◆ sched_tip_prop_upper_pitch_limit_deg

float sched_tip_prop_upper_pitch_limit_deg = -45

Definition at line 84 of file eff_scheduling_nederdrone.c.

Referenced by schdule_control_effectiveness().

◆ sched_tip_props_always_on

bool sched_tip_props_always_on = false

Definition at line 88 of file eff_scheduling_nederdrone.c.

Referenced by schdule_control_effectiveness().

◆ thrust_eff_scaling

float thrust_eff_scaling = 1.0

Definition at line 69 of file eff_scheduling_nederdrone.c.

Referenced by schdule_control_effectiveness().

◆ trim_elevator

float trim_elevator = INDI_SCHEDULING_TRIM_ELEVATOR

Definition at line 56 of file eff_scheduling_nederdrone.c.

Referenced by ctrl_eff_scheduling_periodic().

◆ trim_flaps

float trim_flaps = INDI_SCHEDULING_TRIM_FLAPS

Definition at line 57 of file eff_scheduling_nederdrone.c.

Referenced by ctrl_eff_scheduling_periodic().

◆ use_scheduling

int32_t use_scheduling = 1

Definition at line 67 of file eff_scheduling_nederdrone.c.

Referenced by schdule_control_effectiveness().