Paparazzi UAS
v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
|
#include "generated/airframe.h"
Go to the source code of this file.
Macros | |
#define | WLS_N_U 6 |
active set algorithm for control allocation More... | |
#define | WLS_N_V 4 |
Functions | |
int | wls_alloc (float *u, float *v, float *umin, float *umax, float **B, float *u_guess, float *W_init, float *Wv, float *Wu, float *ud, float gamma, int imax, int n_u, int n_v) |
active set algorithm for control allocation More... | |
#define WLS_N_U 6 |
active set algorithm for control allocation
Takes the control objective and max and min inputs from pprz and calculates the inputs that will satisfy most of the control objective, subject to the weighting matrices Wv and Wu
The dimension of the input vectors u and v are defined at compilation time and must be large enough for all the considered cases.
u | The control output vector |
v | The control objective vector |
B | The control effectiveness matrix |
n_u | Length of u |
n_v | Lenght of v |
u_guess | Initial value for u |
W_init | Initial working set, if known |
Wv | Weighting on different control objectives |
Wu | Weighting on different controls |
up | Preferred control vector |
gamma_sq | Preference of satisfying control objective over desired control vector (sqare root of gamma) |
imax | Max number of iterations |
n_u | Length of u (the number of actuators) |
n_v | Lenght of v (the number of control objectives) |
Definition at line 58 of file wls_alloc.h.
#define WLS_N_V 4 |
Definition at line 62 of file wls_alloc.h.
int wls_alloc | ( | float * | u, |
float * | v, | ||
float * | umin, | ||
float * | umax, | ||
float ** | B, | ||
float * | u_guess, | ||
float * | W_init, | ||
float * | Wv, | ||
float * | Wu, | ||
float * | up, | ||
float | gamma_sq, | ||
int | imax, | ||
int | n_u, | ||
int | n_v | ||
) |
active set algorithm for control allocation
Takes the control objective and max and min inputs from pprz and calculates the inputs that will satisfy most of the control objective, subject to the weighting matrices Wv and Wu
u | The control output vector |
v | The control objective vector |
umin | The minimum u vector |
umax | The maximum u vector |
B | The control effectiveness matrix |
u_guess | Initial value for u |
W_init | Initial working set, if known |
Wv | Weighting on different control objectives |
Wu | Weighting on different controls |
up | Preferred control vector |
gamma_sq | Preference of satisfying control objective over desired control vector (sqare root of gamma) |
imax | Max number of iterations |
n_u | Length of u (the number of actuators) |
n_v | Lenght of v (the number of control objectives) |
Definition at line 108 of file wls_alloc.c.
References A, alpha, B, b, lambda, p, qr_solve_wrapper(), UNUSED, up, WLS_N_C, WLS_N_U, Wu, and Wv.
Referenced by oneloop_andi_run(), and stabilization_indi_rate_run().