Paparazzi UAS
v5.14.0_stable-0-g3f680d1
Paparazzi is a free software Unmanned Aircraft System.
|
#include "std.h"
Go to the source code of this file.
Functions | |
void | nav_survey_poly_osam_setup (uint8_t FirstWP, uint8_t Size, float Sweep, float Orientation) |
Setup polygon survey. More... | |
void | nav_survey_poly_osam_setup_towards (uint8_t FirstWP, uint8_t Size, float Sweep, int SecondWP) |
Setup "dynamic" polygon survey with sweep orientation towards a waypoint. More... | |
bool | nav_survey_poly_osam_run (void) |
Run polygon survey. More... | |
void | nav_survey_poly_osam_ResetSweepNumber (bool rst) |
Reset sweep number. More... | |
Variables | |
uint8_t | Poly_Size |
float | Poly_Sweep |
uint16_t | PolySurveySweepNum |
uint16_t | PolySurveySweepBackNum |
bool | Half_Sweep_Enabled |
bool | Reset_Sweep |
void nav_survey_poly_osam_ResetSweepNumber | ( | bool | rst | ) |
Reset sweep number.
Definition at line 101 of file nav_survey_poly_osam.c.
References FALSE, PolySurveySweepBackNum, and Reset_Sweep.
bool nav_survey_poly_osam_run | ( | void | ) |
Run polygon survey.
Definition at line 347 of file nav_survey_poly_osam.c.
References CSurveyStatus, dc_autoshoot, DC_AUTOSHOOT_STOP, dSweep, EdgeMaxY, EdgeMinY, Edges, Entry, EvaluateLineForX(), Half_Sweep_Enabled, Init, LINE_START_FUNCTION, LINE_STOP_FUNCTION, MaxY, nav_approaching_xy(), nav_circle_XY(), nav_init_stage(), nav_route_xy(), NavCircleCount, NavCircleCountNoRewind, NavQdrCloseTo, NavVerticalAltitudeMode, NavVerticalAutoThrottleMode, POLY_OSAM_MIN_RADIUS, PolySurveySweepBackNum, PolySurveySweepNum, RotateAndTranslateToWorld(), SmallestCorner, stateGetPositionEnu_f(), stateGetPositionUtm_f(), SurveyCircle, SurveyCircleQdr, SurveyEntryWP, SurveyFromWP, SurveyRadius, SurveySize, SurveyTheta, SurveyToWP, Sweep, SweepCircle, TranslateAndRotateFromWorld(), use_full_circle, waypoints, EnuCoor_f::x, Point2D::x, EnuCoor_f::y, and Point2D::y.
Setup polygon survey.
FirstWP | first waypoint/corner of the polygon |
Size | number of waypoints/corners used to define the polygon |
Sweep | distance between scan lines |
Orientation | angle of scan lines in degrees (CCW, east) |
Definition at line 145 of file nav_survey_poly_osam.c.
References Line::b, CSurveyStatus, dSweep, EdgeMaxY, EdgeMinY, Edges, Entry, EntryRadius, EvaluateLineForX(), FindInterceptOfTwoLines(), Init, LINE_STOP_FUNCTION, Line::m, MaxFloat, MaxY, POLY_OSAM_ENTRY_RADIUS, POLY_OSAM_FIRST_SWEEP_DISTANCE, PolySurveySweepBackNum, PolySurveySweepNum, SmallestCorner, SurveyCircle, SurveyCircleQdr, SurveyEntryWP, SurveyFromWP, SurveyRadius, SurveySize, SurveyTheta, SurveyToWP, TranslateAndRotateFromWorld(), waypoints, point::x, Point2D::x, point::y, and Point2D::y.
Referenced by nav_survey_poly_osam_setup_towards().
void nav_survey_poly_osam_setup_towards | ( | uint8_t | FirstWP, |
uint8_t | Size, | ||
float | Sweep, | ||
int | SecondWP | ||
) |
Setup "dynamic" polygon survey with sweep orientation towards a waypoint.
Computes the sweep orientation angle from the line FirstWP-SecondWP. If you pass zero for Size and/or Sweep it will use the global Poly_Size and Poly_Sweep variables respectively (which can be changed via telemetry/settings).
FirstWP | first waypoint/corner of the polygon |
Size | number of waypoints/corners used to define the polygon, if zero uses Poly_Size |
Sweep | distance between scan lines, if zero uses Poly_Sweep |
SecondWP | second waypoint towards which the sweep orientation is computed |
Definition at line 81 of file nav_survey_poly_osam.c.
References nav_survey_poly_osam_setup(), Poly_Size, Poly_Sweep, waypoints, point::x, and point::y.
bool Half_Sweep_Enabled |
Definition at line 78 of file nav_survey_poly_osam.c.
uint8_t Poly_Size |
Definition at line 75 of file nav_survey_poly_osam.c.
float Poly_Sweep |
Definition at line 76 of file nav_survey_poly_osam.c.
Referenced by nav_survey_poly_osam_setup_towards().
uint16_t PolySurveySweepBackNum |
Definition at line 142 of file nav_survey_poly_osam.c.
uint16_t PolySurveySweepNum |
Definition at line 141 of file nav_survey_poly_osam.c.
bool Reset_Sweep |
Definition at line 79 of file nav_survey_poly_osam.c.
Referenced by nav_survey_poly_osam_ResetSweepNumber().