Paparazzi UAS
v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
|
#include "throttle_curve.h"
#include "modules/core/commands.h"
#include "autopilot.h"
#include "modules/radio_control/radio_control.h"
#include "modules/core/abi.h"
#include "modules/datalink/telemetry.h"
Go to the source code of this file.
Macros | |
#define | THROTTLE_CURVE_SWITCH_VAL (MAX_PPRZ*2/THROTTLE_CURVES_NB) |
#define | THROTTLE_CURVE_RPM_FB_P 0.0 |
#define | THROTTLE_CURVE_RPM_FB_I 0.0 |
#define | THROTTLE_CURVE_RPM_INC_LIMIT 512 |
#define | THROTTLE_CURVE_ACT_FEEDBACK_ID ABI_BROADCAST |
Functions | |
static void | act_feedback_cb (uint8_t sender_id UNUSED, struct act_feedback_t *feedback, uint8_t num_act) |
RPM callback for RPM based control throttle curves. More... | |
static void | throttle_curve_send_telem (struct transport_tx *trans, struct link_device *dev) |
void | throttle_curve_init (void) |
Initialize the default throttle curve values. More... | |
void | throttle_curve_run (pprz_t cmds[], uint8_t ap_mode) |
Run the throttle curve and generate the output throttle and pitch This depends on the FMODE(flight mode) and TRHUST command. More... | |
void | nav_throttle_curve_set (uint8_t mode) |
Set a specific throttle curve based on the mode given with this function. More... | |
Variables | |
static abi_event | act_feedback_ev |
struct throttle_curve_t | throttle_curve |
Definition in file throttle_curve.c.
#define THROTTLE_CURVE_ACT_FEEDBACK_ID ABI_BROADCAST |
Definition at line 54 of file throttle_curve.c.
#define THROTTLE_CURVE_RPM_FB_I 0.0 |
Definition at line 43 of file throttle_curve.c.
#define THROTTLE_CURVE_RPM_FB_P 0.0 |
Definition at line 38 of file throttle_curve.c.
#define THROTTLE_CURVE_RPM_INC_LIMIT 512 |
Definition at line 48 of file throttle_curve.c.
#define THROTTLE_CURVE_SWITCH_VAL (MAX_PPRZ*2/THROTTLE_CURVES_NB) |
Definition at line 34 of file throttle_curve.c.
|
static |
RPM callback for RPM based control throttle curves.
Definition at line 110 of file throttle_curve.c.
References idx, act_feedback_t::rpm, throttle_curve_t::rpm_meas, throttle_curve_t::rpm_measured, and throttle_curve.
Referenced by stabilization_indi_init(), and throttle_curve_init().
void nav_throttle_curve_set | ( | uint8_t | mode | ) |
Set a specific throttle curve based on the mode given with this function.
Definition at line 218 of file throttle_curve.c.
References mode, throttle_curve_t::nav_mode, and throttle_curve.
void throttle_curve_init | ( | void | ) |
Initialize the default throttle curve values.
Definition at line 87 of file throttle_curve.c.
References act_feedback_cb(), act_feedback_ev, throttle_curve_t::coll_trim, curve_t::collective, throttle_curve_t::collective, throttle_curve_t::curves, DefaultPeriodic, throttle_curve_t::mode, throttle_curve_t::nav_mode, register_periodic_telemetry(), throttle_curve_t::rpm_err_sum, throttle_curve_t::rpm_fb_i, throttle_curve_t::rpm_fb_p, throttle_curve_t::rpm_measured, curve_t::throttle, throttle_curve_t::throttle, throttle_curve, THROTTLE_CURVE_ACT_FEEDBACK_ID, THROTTLE_CURVE_RPM_FB_I, THROTTLE_CURVE_RPM_FB_P, throttle_curve_send_telem(), and throttle_curve_t::throttle_trim.
Run the throttle curve and generate the output throttle and pitch This depends on the FMODE(flight mode) and TRHUST command.
Definition at line 125 of file throttle_curve.c.
References AP_MODE_FAILSAFE, AP_MODE_NAV, autopilot_get_motors_on(), cmds, throttle_curve_t::coll_trim, curve_t::collective, throttle_curve_t::collective, throttle_curve_t::curves, MAX_PPRZ, throttle_curve_t::mode, mode, throttle_curve_t::nav_mode, curve_t::nb_points, radio_control, curve_t::rpm, throttle_curve_t::rpm, throttle_curve_t::rpm_err_sum, throttle_curve_t::rpm_fb_i, throttle_curve_t::rpm_fb_p, throttle_curve_t::rpm_meas, throttle_curve_t::rpm_measured, curve_t::throttle, throttle_curve_t::throttle, throttle_curve, THROTTLE_CURVE_RPM_INC_LIMIT, THROTTLE_CURVE_SWITCH_VAL, throttle_curve_t::throttle_trim, and RadioControl::values.
|
static |
Definition at line 76 of file throttle_curve.c.
References throttle_curve_t::collective, dev, throttle_curve_t::mode, throttle_curve_t::rpm, throttle_curve_t::rpm_err_sum, throttle_curve_t::rpm_meas, throttle_curve_t::throttle, and throttle_curve.
Referenced by throttle_curve_init().
|
static |
Definition at line 64 of file throttle_curve.c.
Referenced by throttle_curve_init().
struct throttle_curve_t throttle_curve |
Definition at line 65 of file throttle_curve.c.
Referenced by act_feedback_cb(), nav_throttle_curve_set(), throttle_curve_init(), throttle_curve_run(), and throttle_curve_send_telem().