Paparazzi UAS
v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
|
Guidance controllers (horizontal and vertical) for Hybrid UAV configurations. More...
#include "math/pprz_algebra_int.h"
#include "firmwares/rotorcraft/guidance.h"
#include "firmwares/rotorcraft/stabilization.h"
Go to the source code of this file.
Variables | |
int32_t | guidance_hybrid_norm_ref_airspeed |
int32_t | max_airspeed |
int32_t | wind_gain |
int32_t | horizontal_speed_gain |
float | max_turn_bank |
float | turn_bank_gain |
int32_t | cruise_throttle |
int32_t | fwd_speed_p_gain |
float | fwd_alt_thrust_gain |
float | fwd_pid_div |
float | fwd_nominal_pitch |
float | fwd_pitch_gain |
int32_t | hover_p_gain |
bool | force_forward_flight |
Guidance controllers (horizontal and vertical) for Hybrid UAV configurations.
Definition in file guidance_hybrid.h.
void guidance_hybrid_airspeed_to_attitude | ( | struct Int32Eulers * | ypr_sp | ) |
Convert a required airspeed to a certain attitude for the Hybrid.
ypr_sp | Attitude set-point |
Convert a required airspeed to a certain attitude for the Hybrid.
if required speed is lower than 4 m/s act like a rotorcraft
if required speed is higher than 4 m/s act like a fixedwing
Definition at line 206 of file guidance_hybrid.c.
References AIRSPEED_FORWARD, AIRSPEED_HOVER, airspeed_sp_heading_disp, ANGLE_BFP_OF_REAL, ANGLE_FLOAT_OF_BFP, FLOAT_ANGLE_NORMALIZE, FLOAT_OF_BFP, fwd_nominal_pitch, guidance_hybrid_airspeed_sp, guidance_hybrid_norm_ref_airspeed, guidance_hybrid_norm_ref_airspeed_f, guidance_hybrid_ref_airspeed, heading_diff_disp, high_res_psi, hover_p_gain, INT32_ANGLE_FRAC, INT32_ANGLE_HIGH_RES_FRAC, INT32_ANGLE_HIGH_RES_NORMALIZE, INT32_ANGLE_PI, INT32_POS_FRAC, INT32_TRIG_FRAC, int32_vect2_norm(), max_turn_bank, norm_sp_airspeed_disp, omega_disp, Int32Eulers::phi, POS_FLOAT_OF_BFP, PPRZ_ITRIG_COS, PPRZ_ITRIG_SIN, Int32Eulers::psi, Int32Eulers::theta, turn_bank_gain, v_control_pitch, Int32Vect2::x, and Int32Vect2::y.
void guidance_hybrid_determine_wind_estimate | ( | void | ) |
Description.
Definition at line 385 of file guidance_hybrid.c.
References guidance_hybrid_ref_airspeed, INT32_VECT2_RSHIFT, stateGetSpeedNed_i(), VECT2_DIFF, wind_estimate, wind_estimate_high_res, wind_gain, Int32Vect2::x, and Int32Vect2::y.
void guidance_hybrid_groundspeed_to_airspeed | ( | void | ) |
Description.
Definition at line 324 of file guidance_hybrid.c.
References force_forward_flight, guidance_hybrid_airspeed_sp, guidance_hybrid_groundspeed_sp, guidance_hybrid_ypr_sp, INT32_TRIG_FRAC, int32_vect2_norm(), INT_MULT_RSHIFT, INT_VECT2_ZERO, max_airspeed, POS_BFP_OF_REAL, POS_FLOAT_OF_BFP, PPRZ_ITRIG_COS, PPRZ_ITRIG_SIN, Int32Eulers::psi, VECT2_ADD, wind_estimate, Int32Vect2::x, and Int32Vect2::y.
struct StabilizationSetpoint guidance_hybrid_h_run_accel | ( | bool | in_flight, |
struct HorizontalGuidance * | gh | ||
) |
struct StabilizationSetpoint guidance_hybrid_h_run_pos | ( | bool | in_flight, |
struct HorizontalGuidance * | gh | ||
) |
Definition at line 123 of file guidance_hybrid.c.
struct StabilizationSetpoint guidance_hybrid_h_run_speed | ( | bool | in_flight, |
struct HorizontalGuidance * | gh | ||
) |
Definition at line 123 of file guidance_hybrid.c.
void guidance_hybrid_init | ( | void | ) |
Hybrid Guidance Initialization function.
Definition at line 123 of file guidance_hybrid.c.
struct StabilizationSetpoint guidance_hybrid_run | ( | void | ) |
Runs the Hybrid Guidance main functions.
Definition at line 123 of file guidance_hybrid.c.
struct StabilizationSetpoint guidance_hybrid_set_cmd_i | ( | struct Int32Eulers * | sp_cmd | ) |
Creates the attitude set-points from an orientation vector.
sp_cmd | The orientation vector |
Definition at line 385 of file guidance_hybrid.c.
struct ThrustSetpoint guidance_hybrid_v_run_accel | ( | bool | in_flight, |
struct VerticalGuidance * | gv | ||
) |
Definition at line 123 of file guidance_hybrid.c.
struct ThrustSetpoint guidance_hybrid_v_run_pos | ( | bool | in_flight, |
struct VerticalGuidance * | gv | ||
) |
Definition at line 123 of file guidance_hybrid.c.
struct ThrustSetpoint guidance_hybrid_v_run_speed | ( | bool | in_flight, |
struct VerticalGuidance * | gv | ||
) |
Definition at line 123 of file guidance_hybrid.c.
struct ThrustSetpoint guidance_hybrid_vertical | ( | struct ThrustSetpoint * | th | ) |
Description.
Change thurst command from standard hover loop to hybrid thrust command
delta_t | original thurst command |
Description.
Definition at line 385 of file guidance_hybrid.c.
|
extern |
Definition at line 72 of file guidance_hybrid.c.
|
extern |
Definition at line 96 of file guidance_hybrid.c.
Referenced by guidance_hybrid_groundspeed_to_airspeed(), and guidance_hybrid_h_run_accel().
|
extern |
Definition at line 74 of file guidance_hybrid.c.
|
extern |
Definition at line 76 of file guidance_hybrid.c.
Referenced by guidance_hybrid_airspeed_to_attitude().
|
extern |
Definition at line 75 of file guidance_hybrid.c.
|
extern |
Definition at line 77 of file guidance_hybrid.c.
|
extern |
Definition at line 73 of file guidance_hybrid.c.
|
extern |
Definition at line 54 of file guidance_hybrid.c.
Referenced by guidance_hybrid_airspeed_to_attitude(), guidance_hybrid_h_run_accel(), and send_hybrid_guidance().
|
extern |
Definition at line 58 of file guidance_hybrid.c.
Referenced by guidance_hybrid_h_run_accel().
|
extern |
Definition at line 78 of file guidance_hybrid.c.
Referenced by guidance_hybrid_airspeed_to_attitude().
|
extern |
Definition at line 56 of file guidance_hybrid.c.
Referenced by compute_accel_from_speed_sp(), guidance_hybrid_groundspeed_to_airspeed(), and guidance_set_min_max_airspeed().
|
extern |
Definition at line 59 of file guidance_hybrid.c.
Referenced by guidance_hybrid_airspeed_to_attitude(), and guidance_hybrid_h_run_accel().
|
extern |
Definition at line 60 of file guidance_hybrid.c.
Referenced by guidance_hybrid_airspeed_to_attitude(), and guidance_hybrid_h_run_accel().
|
extern |
Definition at line 57 of file guidance_hybrid.c.
Referenced by guidance_hybrid_determine_wind_estimate(), and guidance_hybrid_h_run_accel().