|
Paparazzi UAS
v6.1.0_stable
Paparazzi is a free software Unmanned Aircraft System.
|
#include "modules/guidance/gvf_parametric/trajectories/gvf_parametric_3d_ellipse.h"#include "modules/guidance/gvf_parametric/trajectories/gvf_parametric_3d_lissajous.h"#include "modules/guidance/gvf_parametric/trajectories/gvf_parametric_2d_trefoil.h"
Include dependency graph for gvf_parametric.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Data Structures | |
| struct | gvf_parametric_con |
| struct | gvf_parametric_tra |
Macros | |
| #define | GVF_PARAMETRIC_GRAVITY 9.806 |
| #define | GVF_PARAMETRIC_CONTROL_KROLL 1 |
| #define | GVF_PARAMETRIC_CONTROL_KCLIMB 1 |
| #define | GVF_PARAMETRIC_CONTROL_L 0.1 |
| #define | GVF_PARAMETRIC_CONTROL_BETA 0.01 |
| #define | GVF_PARAMETRIC_CONTROL_KPSI 1 |
Enumerations | |
| enum | trajectories_parametric { TREFOIL_2D = 0, ELLIPSE_3D = 1, LISSAJOUS_3D = 2, NONE_PARAMETRIC = 255 } |
Functions | |
| void | gvf_parametric_init (void) |
| void | gvf_parametric_set_direction (int8_t s) |
| void | gvf_parametric_control_2D (float, float, float, float, float, float, float, float) |
| void | gvf_parametric_control_3D (float, float, float, float, float, float, float, float, float, float, float, float) |
| bool | gvf_parametric_2D_trefoil_XY (float, float, float, float, float, float, float) |
| 2D TRAJECTORIES More... | |
| bool | gvf_parametric_2D_trefoil_wp (uint8_t, float, float, float, float, float) |
| bool | gvf_parametric_3D_ellipse_XYZ (float, float, float, float, float, float) |
| 3D TRAJECTORIES More... | |
| bool | gvf_parametric_3D_ellipse_wp (uint8_t, float, float, float, float) |
| bool | gvf_parametric_3D_ellipse_wp_delta (uint8_t, float, float, float, float) |
| bool | gvf_parametric_3D_lissajous_XYZ (float, float, float, float, float, float, float, float, float, float, float, float, float) |
| bool | gvf_parametric_3D_lissajous_wp_center (uint8_t, float, float, float, float, float, float, float, float, float, float, float) |
Variables | |
| gvf_parametric_con | gvf_parametric_control |
| gvf_parametric_tra | gvf_parametric_trajectory |
Guiding vector field algorithm for 2D and 3D parametric trajectories.
Definition in file gvf_parametric.h.
| struct gvf_parametric_con |
Definition at line 74 of file gvf_parametric.h.
| Data Fields | ||
|---|---|---|
| float | beta | |
| float | delta_T | |
| float | k_climb | |
| float | k_psi | |
| float | k_roll | |
| float | L | |
| int8_t | s | |
| float | w | |
| struct gvf_parametric_tra |
Definition at line 95 of file gvf_parametric.h.
| Data Fields | ||
|---|---|---|
| float | p_parametric[16] | |
| float | phi_errors[3] | |
| enum trajectories_parametric | type | |
| #define GVF_PARAMETRIC_CONTROL_BETA 0.01 |
Default scale for w
Definition at line 49 of file gvf_parametric.h.
| #define GVF_PARAMETRIC_CONTROL_KCLIMB 1 |
Default gain kclimb for tuning the climbing setting point
Definition at line 39 of file gvf_parametric.h.
| #define GVF_PARAMETRIC_CONTROL_KPSI 1 |
Default gain kpsi for tuning the alignment of the vehicle with the vector field
Definition at line 54 of file gvf_parametric.h.
| #define GVF_PARAMETRIC_CONTROL_KROLL 1 |
Default gain kroll for tuning the "coordinated turn"
Definition at line 34 of file gvf_parametric.h.
| #define GVF_PARAMETRIC_CONTROL_L 0.1 |
Default scale for the error signals
Definition at line 44 of file gvf_parametric.h.
| #define GVF_PARAMETRIC_GRAVITY 9.806 |
Definition at line 30 of file gvf_parametric.h.
| Enumerator | |
|---|---|
| TREFOIL_2D | |
| ELLIPSE_3D | |
| LISSAJOUS_3D | |
| NONE_PARAMETRIC | |
Definition at line 88 of file gvf_parametric.h.
| bool gvf_parametric_2D_trefoil_wp | ( | uint8_t | , |
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | |||
| ) |
Definition at line 343 of file gvf_parametric.cpp.
References alpha, gvf_parametric_2D_trefoil_XY(), waypoints, EnuCoor_f::x, and EnuCoor_f::y.
Here is the call graph for this function:| bool gvf_parametric_2D_trefoil_XY | ( | float | , |
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | |||
| ) |
2D TRAJECTORIES
Definition at line 323 of file gvf_parametric.cpp.
References alpha, gvf_parametric_2d_trefoil_info(), gvf_parametric_2d_trefoil_par, gvf_parametric_control_2D(), gvf_parametric_trajectory, gvf_par_2d_tre_par::kx, gvf_par_2d_tre_par::ky, gvf_parametric_tra::p_parametric, TREFOIL_2D, and gvf_parametric_tra::type.
Referenced by gvf_parametric_2D_trefoil_wp().
Here is the call graph for this function:
Here is the caller graph for this function:| bool gvf_parametric_3D_ellipse_wp | ( | uint8_t | , |
| float | , | ||
| float | , | ||
| float | , | ||
| float | |||
| ) |
Definition at line 385 of file gvf_parametric.cpp.
References alpha, gvf_parametric_3D_ellipse_XYZ(), waypoints, EnuCoor_f::x, and EnuCoor_f::y.
Here is the call graph for this function:| bool gvf_parametric_3D_ellipse_wp_delta | ( | uint8_t | , |
| float | , | ||
| float | , | ||
| float | , | ||
| float | |||
| ) |
Definition at line 391 of file gvf_parametric.cpp.
References alpha, gvf_parametric_3D_ellipse_XYZ(), waypoints, EnuCoor_f::x, and EnuCoor_f::y.
Here is the call graph for this function:| bool gvf_parametric_3D_ellipse_XYZ | ( | float | , |
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | |||
| ) |
3D TRAJECTORIES
Definition at line 352 of file gvf_parametric.cpp.
References alpha, ELLIPSE_3D, gvf_parametric_3d_ellipse_info(), gvf_parametric_3d_ellipse_par, gvf_parametric_control_3D(), gvf_parametric_trajectory, horizontal_mode, HORIZONTAL_MODE_CIRCLE, gvf_par_3d_ell_par::kx, gvf_par_3d_ell_par::ky, gvf_par_3d_ell_par::kz, gvf_parametric_tra::p_parametric, and gvf_parametric_tra::type.
Referenced by gvf_parametric_3D_ellipse_wp(), and gvf_parametric_3D_ellipse_wp_delta().
Here is the call graph for this function:
Here is the caller graph for this function:| bool gvf_parametric_3D_lissajous_wp_center | ( | uint8_t | , |
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | |||
| ) |
Definition at line 435 of file gvf_parametric.cpp.
References alpha, gvf_parametric_3D_lissajous_XYZ(), waypoints, EnuCoor_f::x, and EnuCoor_f::y.
Here is the call graph for this function:| bool gvf_parametric_3D_lissajous_XYZ | ( | float | , |
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | |||
| ) |
Definition at line 402 of file gvf_parametric.cpp.
References alpha, gvf_parametric_3d_lissajous_info(), gvf_parametric_3d_lissajous_par, gvf_parametric_control_3D(), gvf_parametric_trajectory, gvf_par_3d_lis_par::kx, gvf_par_3d_lis_par::ky, gvf_par_3d_lis_par::kz, LISSAJOUS_3D, gvf_parametric_tra::p_parametric, and gvf_parametric_tra::type.
Referenced by gvf_parametric_3D_lissajous_wp_center().
Here is the call graph for this function:
Here is the caller graph for this function:| void gvf_parametric_control_2D | ( | float | , |
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | |||
| ) |
Definition at line 130 of file gvf_parametric.cpp.
References gvf_parametric_con::beta, course, gvf_parametric_con::delta_T, get_sys_time_msec(), ground_speed, gvf_parametric_control, gvf_parametric_low_level_control_2D(), gvf_parametric_t0, gvf_parametric_trajectory, h(), I, J, gvf_parametric_con::k_psi, gvf_parametric_con::L, gvf_parametric_tra::phi_errors, gvf_parametric_con::s, stateGetHorizontalSpeedDir_f(), stateGetHorizontalSpeedNorm_f(), stateGetPositionEnu_f(), stateGetSpeedEnu_f(), gvf_parametric_con::w, mesonh.mesonh_atmosphere::X, EnuCoor_f::x, and EnuCoor_f::y.
Referenced by gvf_parametric_2D_trefoil_XY().
Here is the call graph for this function:
Here is the caller graph for this function:| void gvf_parametric_control_3D | ( | float | , |
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | , | ||
| float | |||
| ) |
Definition at line 219 of file gvf_parametric.cpp.
References gvf_parametric_con::beta, course, gvf_parametric_con::delta_T, E, get_sys_time_msec(), ground_speed, gvf_parametric_control, gvf_parametric_low_level_control_3D(), gvf_parametric_t0, gvf_parametric_trajectory, h(), I, J, gvf_parametric_con::k_psi, gvf_parametric_con::L, gvf_parametric_tra::phi_errors, gvf_parametric_con::s, stateGetHorizontalSpeedDir_f(), stateGetHorizontalSpeedNorm_f(), stateGetPositionEnu_f(), stateGetSpeedEnu_f(), gvf_parametric_con::w, mesonh.mesonh_atmosphere::X, EnuCoor_f::x, EnuCoor_f::y, and EnuCoor_f::z.
Referenced by gvf_parametric_3D_ellipse_XYZ(), and gvf_parametric_3D_lissajous_XYZ().
Here is the call graph for this function:
Here is the caller graph for this function:| void gvf_parametric_init | ( | void | ) |
Definition at line 107 of file gvf_parametric.cpp.
References gvf_parametric_con::beta, DefaultPeriodic, gvf_parametric_con::delta_T, gvf_parametric_control, GVF_PARAMETRIC_CONTROL_BETA, GVF_PARAMETRIC_CONTROL_KCLIMB, GVF_PARAMETRIC_CONTROL_KPSI, GVF_PARAMETRIC_CONTROL_KROLL, GVF_PARAMETRIC_CONTROL_L, gvf_parametric_con::k_climb, gvf_parametric_con::k_psi, gvf_parametric_con::k_roll, gvf_parametric_con::L, register_periodic_telemetry(), gvf_parametric_con::s, send_circle_parametric(), send_gvf_parametric(), and gvf_parametric_con::w.
Here is the call graph for this function:| void gvf_parametric_set_direction | ( | int8_t | s | ) |
Definition at line 125 of file gvf_parametric.cpp.
References gvf_parametric_control, s, and gvf_parametric_con::s.
| gvf_parametric_con gvf_parametric_control |
Definition at line 44 of file gvf_parametric.cpp.
Referenced by gvf_parametric_2d_trefoil_info(), gvf_parametric_3d_ellipse_info(), gvf_parametric_3d_lissajous_info(), gvf_parametric_control_2D(), gvf_parametric_control_3D(), gvf_parametric_init(), gvf_parametric_low_level_control_2D(), gvf_parametric_low_level_control_3D(), gvf_parametric_set_direction(), and send_gvf_parametric().
| gvf_parametric_tra gvf_parametric_trajectory |
Definition at line 47 of file gvf_parametric.cpp.
Referenced by gvf_parametric_2d_trefoil_info(), gvf_parametric_2D_trefoil_XY(), gvf_parametric_3d_ellipse_info(), gvf_parametric_3D_ellipse_XYZ(), gvf_parametric_3d_lissajous_info(), gvf_parametric_3D_lissajous_XYZ(), gvf_parametric_control_2D(), gvf_parametric_control_3D(), send_circle_parametric(), and send_gvf_parametric().