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
spiral.c File Reference

Fixedwing navigation in a spiral/helix from Uni Stuttgart. More...

#include "subsystems/navigation/spiral.h"
#include "subsystems/nav.h"
#include "state.h"
#include "autopilot.h"
#include "generated/flight_plan.h"
+ Include dependency graph for spiral.c:

Go to the source code of this file.

Macros

#define MIN_CIRCLE_RADIUS   120
 

Enumerations

enum  SpiralStatus { Outside, StartCircle, Circle, IncSpiral }
 

Functions

bool_t InitializeSpiral (uint8_t CenterWP, uint8_t EdgeWP, float StartRad, float IncRad, float Segments, float ZKoord)
 
bool_t SpiralNav (void)
 

Variables

static enum SpiralStatus CSpiralStatus
 
static float FlyFromX
 
static float FlyFromY
 
static float TransCurrentX
 
static float TransCurrentY
 
static float TransCurrentZ
 
static float EdgeCurrentX
 
static float EdgeCurrentY
 
static float LastCircleX
 
static float LastCircleY
 
static float DistanceFromCenter
 
static float Spiralradius
 
static uint8_t Center
 
static uint8_t Edge
 
static float SRad
 
static float IRad
 
static float Alphalimit
 
static float Segmente
 
static float ZPoint
 
static float nav_radius_min
 

Detailed Description

Fixedwing navigation in a spiral/helix from Uni Stuttgart.

creating a helix:

  • start radius to end radius, increasing after reaching alphamax
  • Alphamax is calculated from given segments
  • IMPORTANT: numer of segments has to be larger than 2!

Definition in file spiral.c.

Macro Definition Documentation

#define MIN_CIRCLE_RADIUS   120

Definition at line 71 of file spiral.c.

Referenced by InitializeSpiral().

Enumeration Type Documentation

Enumerator
Outside 
StartCircle 
Circle 
IncSpiral 

Definition at line 44 of file spiral.c.

Function Documentation

bool_t InitializeSpiral ( uint8_t  CenterWP,
uint8_t  EdgeWP,
float  StartRad,
float  IncRad,
float  Segments,
float  ZKoord 
)

Variable Documentation

float Alphalimit
static

Definition at line 65 of file spiral.c.

Referenced by InitializeSpiral(), and SpiralNav().

uint8_t Center
static

Definition at line 61 of file spiral.c.

Referenced by InitializeSpiral(), and SpiralNav().

enum SpiralStatus CSpiralStatus
static

Definition at line 45 of file spiral.c.

Referenced by InitializeSpiral(), and SpiralNav().

float DistanceFromCenter
static

Definition at line 59 of file spiral.c.

Referenced by InitializeSpiral(), and SpiralNav().

uint8_t Edge
static

Definition at line 62 of file spiral.c.

Referenced by InitializeSpiral().

float EdgeCurrentX
static

Definition at line 55 of file spiral.c.

Referenced by InitializeSpiral().

float EdgeCurrentY
static

Definition at line 56 of file spiral.c.

Referenced by InitializeSpiral().

float FlyFromX
static

Definition at line 50 of file spiral.c.

Referenced by InitializeSpiral(), and SpiralNav().

float FlyFromY
static

Definition at line 51 of file spiral.c.

Referenced by InitializeSpiral(), and SpiralNav().

float IRad
static

Definition at line 64 of file spiral.c.

Referenced by InitializeSpiral(), and SpiralNav().

float LastCircleX
static

Definition at line 57 of file spiral.c.

Referenced by SpiralNav().

float LastCircleY
static

Definition at line 58 of file spiral.c.

Referenced by SpiralNav().

float nav_radius_min
static

Definition at line 68 of file spiral.c.

Referenced by InitializeSpiral().

float Segmente
static

Definition at line 66 of file spiral.c.

Referenced by InitializeSpiral(), and SpiralNav().

float Spiralradius
static

Definition at line 60 of file spiral.c.

Referenced by InitializeSpiral(), and SpiralNav().

float SRad
static

Definition at line 63 of file spiral.c.

Referenced by InitializeSpiral(), and SpiralNav().

float TransCurrentX
static

Definition at line 52 of file spiral.c.

Referenced by InitializeSpiral(), and SpiralNav().

float TransCurrentY
static

Definition at line 53 of file spiral.c.

Referenced by InitializeSpiral(), and SpiralNav().

float TransCurrentZ
static

Definition at line 54 of file spiral.c.

Referenced by InitializeSpiral(), and SpiralNav().

float ZPoint
static

Definition at line 67 of file spiral.c.

Referenced by InitializeSpiral(), and SpiralNav().