34#include "generated/airframe.h"
40#define ANDI_NUM_ACT COMMANDS_NB_REAL
43#ifndef COMMANDS_NB_VIRTUAL
44#define COMMANDS_NB_VIRTUAL 0
47#ifndef ANDI_NUM_VIRTUAL_ACT
48#define ANDI_NUM_VIRTUAL_ACT COMMANDS_NB_VIRTUAL
51#define ANDI_NUM_ACT_TOT (ANDI_NUM_ACT + ANDI_NUM_VIRTUAL_ACT)
54#error "You must specify the number of controlled axis (outputs)"
57#define ANDI_G_SCALING 1000.0f
Simple first order low pass filter with bilinear transform.
Fourth order Butterworth low pass filter.
First order low pass filter structure.
Second order low pass filter structure.
float oneloop_nB_filt_cutoff
struct PolePlacement p_pos_e
struct OneloopGuidanceState gui_state
struct OneloopStabilizationState sta_state
float spin_man_blend_time
struct PolePlacement p_head_rm
struct Gains3rdOrder k_att_rm
struct guidance_indi_hybrid_params gih_params
struct FloatEulers eulers_zxy_des
struct PolePlacement p_att_rm
float g1g2_1l[ANDI_OUTPUTS][ANDI_NUM_ACT_TOT]
bool safety_killer_trigger
void guidance_set_max_bank_angle(float max_bank)
Guidance limit setters called by rotwing_state (also implemented by guidance_indi_hybrid).
struct Gains3rdOrder k_att_e
union LP_t::@275 meas_filt
void guidance_set_max_climb_speed(float max_climb_speed_quad, float max_climb_speed_fwd)
struct Gains3rdOrder k_pos_e
struct Gains2ndOrder k_head_rm
float spin_trim_release_rate
void oneloop_from_nav(bool in_flight)
Function that maps navigation inputs to the oneloop controller for the generated autopilot.
struct PolePlacement p_alt_rm
struct OneloopGuidanceRef gui_ref
struct Gains2ndOrder k_head_e
float safety_killer_cutoff
struct OneloopStabilizationRef sta_ref
void guidance_set_min_max_airspeed(float min_airspeed, float max_airspeed)
float andi_u[ANDI_NUM_ACT_TOT]
struct PolePlacement p_att_e
struct PolePlacement p_alt_e
struct OneloopStabilizationnBState sta_nB_state
struct PolePlacement p_head_e
float andi_du[ANDI_NUM_ACT_TOT]
float spin_trim_bleed_rate
struct OneloopGeneral oneloop_nB
struct Gains3rdOrder k_pos_rm
void guidance_set_max_descend_speed(float max_descend_speed_quad, float max_descend_speed_fwd)
bool state_compensation_on
void oneloop_nB_enter(bool half_loop_sp, int ctrl_type)
Function that resets important values upon engaging Oneloop ANDI.
enum FilterType filter_type
struct OneloopPushnB push_nB
float gi_unbounded_airspeed_sp
void oneloop_nB_read_rc(bool in_flight, bool in_carefree, bool coordinated_turn)
struct PolePlacement p_pos_rm
void oneloop_nB_set_failsafe_setpoint(void)
void oneloop_nB_run(bool in_flight, bool half_loop, struct FloatVect3 PSA_des)
Main function that runs the controller and performs control allocation.
float actuator_state_1l[ANDI_NUM_ACT_TOT]
float act_state_filt_vect_1l[ANDI_NUM_ACT]
void oneloop_nB_RM(bool half_loop, struct FloatVect3 PSA_des, bool in_flight_oneloop)
Function to generate the reference signals for the oneloop controller.
float spin_prot_start_rate
void oneloop_nB_init(void)
Init function of Oneloop ANDI controller
Paparazzi floating point algebra.
General stabilization interface for rotorcrafts.
Common data structures shared by euler and quaternion int implementations.
Rotorcraft attitude reference generation.
unsigned char uint8_t
Typedef defining 8 bit unsigned char type.
signed char int8_t
Typedef defining 8 bit char type.