Paparazzi UAS  v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
nav_survey_zamboni.h File Reference

Zamboni pattern survey for fixedwings. More...

#include "std.h"
#include "math/pprz_algebra_float.h"
+ Include dependency graph for nav_survey_zamboni.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ZamboniSurvey
 

Enumerations

enum  z_survey_stage {
  Z_ERR , Z_ENTRY , Z_SEG , Z_TURN1 ,
  Z_RET , Z_TURN2
}
 

Functions

void nav_survey_zamboni_setup (uint8_t center_wp, uint8_t dir_wp, float sweep_length, float sweep_spacing, int sweep_lines, float altitude)
 initializes the variables needed for the survey to start. More...
 
bool nav_survey_zamboni_run (void)
 main navigation routine. More...
 

Detailed Description

Zamboni pattern survey for fixedwings.

Definition in file nav_survey_zamboni.h.


Data Structure Documentation

◆ ZamboniSurvey

struct ZamboniSurvey

Definition at line 36 of file nav_survey_zamboni.h.

+ Collaboration diagram for ZamboniSurvey:
Data Fields
float altitude
int current_laps
float flight_angle in degrees
int pre_leave_angle in degrees.

Leave turncircles a small angle before the 180deg turns are completed to get a smoother transition to flight-lines

struct FloatVect2 ret_end
struct FloatVect2 ret_start
float return_angle in degrees
struct FloatVect2 seg_end
struct FloatVect2 seg_start
z_survey_stage stage z_stage starts at ENTRY and than circles trought the other states until to rectangle is completely covered ENTRY : getting in the right position and height for the first flyover SEG : fly from seg_start to seg_end and take pictures, then calculate navigation points of next flyover TURN1 : do a 180° turn around seg_center1 RET : fly from ret_start to ret_end TURN2 : do a 180° turn around seg_center2
struct FloatVect2 sweep_width
int total_laps
struct FloatVect2 turn_center1
struct FloatVect2 turn_center2
float turnradius1
float turnradius2
struct FloatVect2 wp_center
struct FloatVect2 wp_dir

Enumeration Type Documentation

◆ z_survey_stage

Enumerator
Z_ERR 
Z_ENTRY 
Z_SEG 
Z_TURN1 
Z_RET 
Z_TURN2 

Definition at line 34 of file nav_survey_zamboni.h.

Function Documentation

◆ nav_survey_zamboni_run()

◆ nav_survey_zamboni_setup()

void nav_survey_zamboni_setup ( uint8_t  center_wp,
uint8_t  dir_wp,
float  sweep_length,
float  sweep_spacing,
int  sweep_lines,
float  altitude 
)

initializes the variables needed for the survey to start.

Parameters
center_wpthe waypoint defining the center of the survey-rectangle
dir_wpthe waypoint defining the orientation of the survey-rectangle
sweep_lengththe length of the survey-rectangle
sweep_spacingdistance between the sweeps
sweep_linesnumber of sweep_lines to fly
altitudethe altitude that must be reached before the flyover starts

Definition at line 57 of file nav_survey_zamboni.c.

References ZamboniSurvey::altitude, altitude, ZamboniSurvey::current_laps, ZamboniSurvey::flight_angle, FLOAT_VECT2_NORMALIZE, NavVerticalAltitudeMode, NavVerticalAutoThrottleMode, ZamboniSurvey::pre_leave_angle, ZamboniSurvey::ret_end, ZamboniSurvey::ret_start, ZamboniSurvey::return_angle, ZamboniSurvey::seg_end, ZamboniSurvey::seg_start, ZamboniSurvey::stage, ZamboniSurvey::sweep_width, ZamboniSurvey::total_laps, ZamboniSurvey::turn_center1, ZamboniSurvey::turn_center2, ZamboniSurvey::turnradius1, ZamboniSurvey::turnradius2, VECT2_COPY, VECT2_DIFF, VECT2_SMUL, VECT2_SUM, waypoints, ZamboniSurvey::wp_center, ZamboniSurvey::wp_dir, FloatVect2::x, FloatVect2::y, Z_ENTRY, and zs.