Paparazzi UAS v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
Loading...
Searching...
No Matches
guidance_indi.h File Reference

A guidance mode based on Incremental Nonlinear Dynamic Inversion. More...

+ Include dependency graph for guidance_indi.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define GUIDANCE_INDI_NV   3
 
#define GUIDANCE_INDI_NU   3
 

Enumerations

enum  GuidanceIndi_HMode { GUIDANCE_INDI_H_POS , GUIDANCE_INDI_H_SPEED , GUIDANCE_INDI_H_ACCEL }
 
enum  GuidanceIndi_VMode { GUIDANCE_INDI_V_POS , GUIDANCE_INDI_V_SPEED , GUIDANCE_INDI_V_ACCEL }
 

Functions

void guidance_indi_init (void)
 Init function.
 
void guidance_indi_enter (void)
 Call upon entering indi guidance.
 
struct StabilizationSetpoint guidance_indi_run (struct FloatVect3 *accep_sp, float heading_sp)
 
struct StabilizationSetpoint guidance_indi_run_mode (bool in_flight, struct HorizontalGuidance *gh, struct VerticalGuidance *gv, enum GuidanceIndi_HMode h_mode, enum GuidanceIndi_VMode v_mode)
 
struct FloatVect3 guidance_indi_controller (bool in_flight, struct HorizontalGuidance *gh, struct VerticalGuidance *gv, enum GuidanceIndi_HMode h_mode, enum GuidanceIndi_VMode v_mode)
 
void guidance_indi_calcG (float Gmat[GUIDANCE_INDI_NV][GUIDANCE_INDI_NU], struct FloatEulers att)
 

Variables

float guidance_indi_specific_force_gain
 
float guidance_indi_pos_gain
 
float guidance_indi_speed_gain
 
float guidance_indi_max_bank
 

Detailed Description

A guidance mode based on Incremental Nonlinear Dynamic Inversion.

Definition in file guidance_indi.h.

Macro Definition Documentation

◆ GUIDANCE_INDI_NU

#define GUIDANCE_INDI_NU   3

Definition at line 63 of file guidance_indi.h.

◆ GUIDANCE_INDI_NV

#define GUIDANCE_INDI_NV   3

Definition at line 58 of file guidance_indi.h.

Enumeration Type Documentation

◆ GuidanceIndi_HMode

Enumerator
GUIDANCE_INDI_H_POS 
GUIDANCE_INDI_H_SPEED 
GUIDANCE_INDI_H_ACCEL 

Definition at line 39 of file guidance_indi.h.

◆ GuidanceIndi_VMode

Enumerator
GUIDANCE_INDI_V_POS 
GUIDANCE_INDI_V_SPEED 
GUIDANCE_INDI_V_ACCEL 

Definition at line 45 of file guidance_indi.h.

Function Documentation

◆ guidance_indi_calcG()

void guidance_indi_calcG ( float  Gmat[GUIDANCE_INDI_NV][GUIDANCE_INDI_NU],
struct FloatEulers  att 
)
extern

Referenced by guidance_indi_run().

+ Here is the caller graph for this function:

◆ guidance_indi_controller()

struct FloatVect3 guidance_indi_controller ( bool  in_flight,
struct HorizontalGuidance gh,
struct VerticalGuidance gv,
enum GuidanceIndi_HMode  h_mode,
enum GuidanceIndi_VMode  v_mode 
)
extern

◆ guidance_indi_enter()

void guidance_indi_enter ( void  )
extern

Call upon entering indi guidance.

Definition at line 205 of file guidance_indi.c.

◆ guidance_indi_init()

void guidance_indi_init ( void  )
extern

Init function.

Definition at line 190 of file guidance_indi.c.

◆ guidance_indi_run()

struct StabilizationSetpoint guidance_indi_run ( struct FloatVect3 accel_sp,
float  heading_sp 
)
extern
Parameters
accel_spaccel setpoint in NED frame [m/s^2]
heading_spthe desired heading [rad]
Returns
stabilization setpoint structure

main indi guidance function

Definition at line 239 of file guidance_indi.c.

◆ guidance_indi_run_mode()

Variable Documentation

◆ guidance_indi_max_bank

float guidance_indi_max_bank
extern

Definition at line 147 of file guidance_indi.c.

◆ guidance_indi_pos_gain

float guidance_indi_pos_gain
extern

Definition at line 53 of file guidance_indi.c.

Referenced by guidance_indi_controller().

◆ guidance_indi_specific_force_gain

float guidance_indi_specific_force_gain
extern

◆ guidance_indi_speed_gain

float guidance_indi_speed_gain
extern

Definition at line 59 of file guidance_indi.c.

Referenced by guidance_indi_controller(), and guidance_indi_run_mode().