Paparazzi UAS  v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
uav_recovery.c File Reference
#include "autopilot.h"
#include "state.h"
#include "firmwares/fixedwing/nav.h"
#include "modules/nav/common_nav.h"
#include "generated/flight_plan.h"
#include "generated/airframe.h"
#include "modules/datalink/datalink.h"
#include "modules/multi/traffic_info.h"
#include "modules/core/commands.h"
#include "uav_recovery.h"
#include "modules/datalink/telemetry.h"
+ Include dependency graph for uav_recovery.c:

Go to the source code of this file.

Macros

#define PARACHUTE_TRIGGER_DELAY   2.
 TERMINAL VELOCITY OF THE PARACHUTE PLUS PAYLOAD. More...
 
#define PARACHUTE_DESCENT_RATE   3.0
 
#define PARACHUTE_WIND_CORRECTION   1.0
 
#define PARACHUTE_LINE_LENGTH   3.0
 

Functions

static void send_wind_info (struct transport_tx *trans, struct link_device *dev)
 
void uav_recovery_init (void)
 
void uav_recovery_periodic (void)
 
uint8_t LockParachute (void)
 
uint8_t DeployParachute (void)
 
uint8_t calculate_wind_no_airspeed (uint8_t wp, float radius, float height)
 
unit_t parachute_compute_approach (uint8_t baseleg, uint8_t release, uint8_t wp_target)
 

Variables

float parachute_start_qdr
 
float parachute_z
 
float airborne_wind_dir = 0
 
float airborne_wind_speed = 0
 
float calculated_wind_dir = 0
 
bool wind_measurements_valid = true
 
bool wind_info_valid = false
 
bool deploy_parachute_var = 0
 
bool land_direction = 0
 

Macro Definition Documentation

◆ PARACHUTE_DESCENT_RATE

#define PARACHUTE_DESCENT_RATE   3.0

Definition at line 62 of file uav_recovery.c.

◆ PARACHUTE_LINE_LENGTH

#define PARACHUTE_LINE_LENGTH   3.0

Definition at line 68 of file uav_recovery.c.

◆ PARACHUTE_TRIGGER_DELAY

#define PARACHUTE_TRIGGER_DELAY   2.

TERMINAL VELOCITY OF THE PARACHUTE PLUS PAYLOAD.

Definition at line 58 of file uav_recovery.c.

◆ PARACHUTE_WIND_CORRECTION

#define PARACHUTE_WIND_CORRECTION   1.0

Definition at line 65 of file uav_recovery.c.

Function Documentation

◆ calculate_wind_no_airspeed()

◆ DeployParachute()

uint8_t DeployParachute ( void  )

Definition at line 139 of file uav_recovery.c.

References deploy_parachute_var.

◆ LockParachute()

uint8_t LockParachute ( void  )

Definition at line 131 of file uav_recovery.c.

References deploy_parachute_var.

◆ parachute_compute_approach()

◆ send_wind_info()

static void send_wind_info ( struct transport_tx *  trans,
struct link_device *  dev 
)
static

Definition at line 84 of file uav_recovery.c.

References airborne_wind_dir, airborne_wind_speed, and dev.

Referenced by uav_recovery_init().

+ Here is the caller graph for this function:

◆ uav_recovery_init()

void uav_recovery_init ( void  )

◆ uav_recovery_periodic()

void uav_recovery_periodic ( void  )

Variable Documentation

◆ airborne_wind_dir

float airborne_wind_dir = 0

Definition at line 73 of file uav_recovery.c.

Referenced by calculate_wind_no_airspeed(), send_wind_info(), and uav_recovery_init().

◆ airborne_wind_speed

float airborne_wind_speed = 0

◆ calculated_wind_dir

float calculated_wind_dir = 0

Definition at line 75 of file uav_recovery.c.

Referenced by calculate_wind_no_airspeed(), and parachute_compute_approach().

◆ deploy_parachute_var

bool deploy_parachute_var = 0

◆ land_direction

bool land_direction = 0

Definition at line 79 of file uav_recovery.c.

◆ parachute_start_qdr

float parachute_start_qdr

Definition at line 71 of file uav_recovery.c.

Referenced by parachute_compute_approach().

◆ parachute_z

float parachute_z

Definition at line 72 of file uav_recovery.c.

Referenced by parachute_compute_approach().

◆ wind_info_valid

bool wind_info_valid = false

Definition at line 77 of file uav_recovery.c.

Referenced by calculate_wind_no_airspeed(), and uav_recovery_init().

◆ wind_measurements_valid

bool wind_measurements_valid = true

Definition at line 76 of file uav_recovery.c.

Referenced by calculate_wind_no_airspeed(), and uav_recovery_init().