Paparazzi UAS  v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
wls_alloc.h File Reference
#include "generated/airframe.h"
+ Include dependency graph for wls_alloc.h:
+ This graph shows which files directly or indirectly include this file:

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...
 

Macro Definition Documentation

◆ WLS_N_U

#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.

Parameters
uThe control output vector
vThe control objective vector
BThe control effectiveness matrix
n_uLength of u
n_vLenght of v
u_guessInitial value for u
W_initInitial working set, if known
WvWeighting on different control objectives
WuWeighting on different controls
upPreferred control vector
gamma_sqPreference of satisfying control objective over desired control vector (sqare root of gamma)
imaxMax number of iterations
n_uLength of u (the number of actuators)
n_vLenght of v (the number of control objectives)
Returns
Number of iterations: (imax+1) means it ran out of iterations

Definition at line 58 of file wls_alloc.h.

◆ WLS_N_V

#define WLS_N_V   4

Definition at line 62 of file wls_alloc.h.

Function Documentation

◆ wls_alloc()

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

Parameters
uThe control output vector
vThe control objective vector
uminThe minimum u vector
umaxThe maximum u vector
BThe control effectiveness matrix
u_guessInitial value for u
W_initInitial working set, if known
WvWeighting on different control objectives
WuWeighting on different controls
upPreferred control vector
gamma_sqPreference of satisfying control objective over desired control vector (sqare root of gamma)
imaxMax number of iterations
n_uLength of u (the number of actuators)
n_vLenght of v (the number of control objectives)
Returns
Number of iterations which is (imax+1) if it ran out of iterations

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().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: