Paparazzi UAS  v5.0.5_stable-7-g4b8bbb7
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
guidance_v.h File Reference

Vertical guidance for rotorcrafts. More...

#include "std.h"
#include "generated/airframe.h"
#include "firmwares/rotorcraft/guidance/guidance_v_ref.h"
#include "firmwares/rotorcraft/guidance/guidance_v_adpt.h"
+ Include dependency graph for guidance_v.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define GUIDANCE_V_MODE_KILL   0
 
#define GUIDANCE_V_MODE_RC_DIRECT   1
 
#define GUIDANCE_V_MODE_RC_CLIMB   2
 
#define GUIDANCE_V_MODE_CLIMB   3
 
#define GUIDANCE_V_MODE_HOVER   4
 
#define GUIDANCE_V_MODE_NAV   5
 
#define guidance_v_SetKi(_val)
 

Functions

void guidance_v_init (void)
 
void guidance_v_read_rc (void)
 
void guidance_v_mode_changed (uint8_t new_mode)
 
void guidance_v_notify_in_flight (bool_t in_flight)
 
void guidance_v_run (bool_t in_flight)
 

Variables

uint8_t guidance_v_mode
 
int32_t guidance_v_z_sp
 altitude setpoint in meters (input). More...
 
int32_t guidance_v_zd_sp
 vertical speed setpoint in meter/s (input). More...
 
int32_t guidance_v_z_ref
 altitude reference in meters. More...
 
int32_t guidance_v_zd_ref
 vertical speed reference in meter/s. More...
 
int32_t guidance_v_zdd_ref
 vertical acceleration reference in meter/s^2. More...
 
int32_t guidance_v_z_sum_err
 accumulator for I-gain More...
 
int32_t guidance_v_ff_cmd
 feed-forward command More...
 
int32_t guidance_v_fb_cmd
 feed-back command More...
 
int32_t guidance_v_delta_t
 thrust command. More...
 
float guidance_v_nominal_throttle
 nominal throttle for hover. More...
 
int32_t guidance_v_kp
 vertical control P-gain More...
 
int32_t guidance_v_kd
 vertical control D-gain More...
 
int32_t guidance_v_ki
 vertical control I-gain More...
 

Detailed Description

Vertical guidance for rotorcrafts.

Definition in file guidance_v.h.

Macro Definition Documentation

#define GUIDANCE_V_MODE_CLIMB   3
#define GUIDANCE_V_MODE_HOVER   4
#define GUIDANCE_V_MODE_KILL   0

Definition at line 37 of file guidance_v.h.

Referenced by autopilot_set_mode(), and guidance_v_init().

#define GUIDANCE_V_MODE_NAV   5

Definition at line 42 of file guidance_v.h.

Referenced by autopilot_set_mode(), guidance_v_mode_changed(), and guidance_v_run().

#define GUIDANCE_V_MODE_RC_CLIMB   2

Definition at line 39 of file guidance_v.h.

Referenced by autopilot_set_mode(), guidance_v_mode_changed(), and guidance_v_run().

#define GUIDANCE_V_MODE_RC_DIRECT   1

Definition at line 38 of file guidance_v.h.

Referenced by autopilot_set_mode(), and guidance_v_run().

#define guidance_v_SetKi (   _val)
Value:
{ \
}
int32_t guidance_v_z_sum_err
accumulator for I-gain
Definition: guidance_v.c:83
int32_t guidance_v_ki
vertical control I-gain
Definition: guidance_v.c:81

Definition at line 102 of file guidance_v.h.

Function Documentation

void guidance_v_init ( void  )

Definition at line 97 of file guidance_v.c.

References guidance_v_kd, guidance_v_ki, guidance_v_kp, guidance_v_mode, GUIDANCE_V_MODE_KILL, guidance_v_nominal_throttle, guidance_v_z_sum_err, and gv_adapt_init().

Referenced by autopilot_init(), and main_init().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void guidance_v_mode_changed ( uint8_t  new_mode)
void guidance_v_notify_in_flight ( bool_t  in_flight)

Definition at line 155 of file guidance_v.c.

References gv_adapt_init().

+ Here is the call graph for this function:

void guidance_v_read_rc ( void  )

Definition at line 115 of file guidance_v.c.

References guidance_v_rc_delta_t, guidance_v_rc_zd_sp, MAX_PPRZ, radio_control, RADIO_THROTTLE, and RadioControl::values.

Referenced by autopilot_on_rc_frame().

+ Here is the caller graph for this function:

Variable Documentation

int32_t guidance_v_delta_t

thrust command.

summation of feed-forward and feed-back commands, valid range 0 : MAX_PPRZ

Definition at line 57 of file guidance_v.c.

Referenced by guidance_v_run(), and run_hover_loop().

int32_t guidance_v_fb_cmd

feed-back command

Definition at line 56 of file guidance_v.c.

Referenced by run_hover_loop().

int32_t guidance_v_ff_cmd

feed-forward command

Definition at line 55 of file guidance_v.c.

Referenced by run_hover_loop().

int32_t guidance_v_kd

vertical control D-gain

Definition at line 80 of file guidance_v.c.

Referenced by guidance_v_init(), and run_hover_loop().

int32_t guidance_v_ki

vertical control I-gain

Definition at line 81 of file guidance_v.c.

Referenced by guidance_v_init(), and run_hover_loop().

int32_t guidance_v_kp

vertical control P-gain

Definition at line 79 of file guidance_v.c.

Referenced by guidance_v_init(), and run_hover_loop().

uint8_t guidance_v_mode
float guidance_v_nominal_throttle

nominal throttle for hover.

This is only used if #"GUIDANCE_V_NOMINAL_HOVER_THROTTLE is defined! Unit: factor of MAX_PPRZ with range 0.1 : 0.9

Definition at line 59 of file guidance_v.c.

Referenced by guidance_v_init(), and run_hover_loop().

int32_t guidance_v_z_ref

altitude reference in meters.

fixed point representation: Q23.8 accuracy 0.0039, range 8388km

Definition at line 75 of file guidance_v.c.

Referenced by run_hover_loop().

int32_t guidance_v_z_sp

altitude setpoint in meters (input).

fixed point representation: Q23.8 accuracy 0.0039, range 8388km

Definition at line 73 of file guidance_v.c.

Referenced by guidance_v_mode_changed(), and guidance_v_run().

int32_t guidance_v_z_sum_err

accumulator for I-gain

Definition at line 83 of file guidance_v.c.

Referenced by guidance_v_init(), guidance_v_mode_changed(), and run_hover_loop().

int32_t guidance_v_zd_ref

vertical speed reference in meter/s.

fixed point representation: Q12.19 accuracy 0.0000038, range 4096

Definition at line 76 of file guidance_v.c.

Referenced by guidance_v_run(), and run_hover_loop().

int32_t guidance_v_zd_sp

vertical speed setpoint in meter/s (input).

fixed point representation: Q12.19 accuracy 0.0000019, range +/-4096

Definition at line 74 of file guidance_v.c.

Referenced by autopilot_set_mode(), guidance_v_mode_changed(), and guidance_v_run().

int32_t guidance_v_zdd_ref

vertical acceleration reference in meter/s^2.

fixed point representation: Q21.10 accuracy 0.0009766, range 2097152

Definition at line 77 of file guidance_v.c.

Referenced by run_hover_loop().