Paparazzi UAS
v5.14.0_stable-0-g3f680d1
Paparazzi is a free software Unmanned Aircraft System.
|
example vertical controller More...
#include "modules/ctrl/vertical_ctrl_module_demo.h"
#include "generated/airframe.h"
#include "paparazzi.h"
#include "subsystems/abi.h"
#include "firmwares/rotorcraft/stabilization.h"
Go to the source code of this file.
Macros | |
#define | VERTICAL_CTRL_MODULE_AGL_ID ABI_BROADCAST |
#define | VERTICAL_CTRL_MODULE_PGAIN 1.0 |
#define | VERTICAL_CTRL_MODULE_IGAIN 0.01 |
Functions | |
static void | vertical_ctrl_agl_cb (uint8_t sender_id, float distance) |
Callback function of the ground altitude. More... | |
void | vertical_ctrl_module_init (void) |
void | vertical_ctrl_module_run (bool in_flight) |
void | guidance_v_module_init (void) |
void | guidance_v_module_enter (void) |
Entering the vertical module (user switched to module) More... | |
void | guidance_v_module_run (bool in_flight) |
Variables | |
static abi_event | agl_ev |
The altitude ABI event. More... | |
struct VerticalCtrlDemo | v_ctrl |
example vertical controller
Definition in file vertical_ctrl_module_demo.c.
#define VERTICAL_CTRL_MODULE_AGL_ID ABI_BROADCAST |
Definition at line 36 of file vertical_ctrl_module_demo.c.
Referenced by vertical_ctrl_module_init().
#define VERTICAL_CTRL_MODULE_IGAIN 0.01 |
Definition at line 45 of file vertical_ctrl_module_demo.c.
Referenced by vertical_ctrl_module_init().
#define VERTICAL_CTRL_MODULE_PGAIN 1.0 |
Definition at line 41 of file vertical_ctrl_module_demo.c.
Referenced by vertical_ctrl_module_init().
void guidance_v_module_enter | ( | void | ) |
Entering the vertical module (user switched to module)
Entering the vertical module (user switched to module)
Definition at line 101 of file vertical_ctrl_module_demo.c.
References VerticalCtrlDemo::sum_err, and v_ctrl.
void guidance_v_module_init | ( | void | ) |
Definition at line 96 of file vertical_ctrl_module_demo.c.
References vertical_ctrl_module_init().
void guidance_v_module_run | ( | bool | in_flight | ) |
Definition at line 107 of file vertical_ctrl_module_demo.c.
References AP_MODE_NAV, autopilot_static_set_mode(), Electrical::bat_low, electrical, and vertical_ctrl_module_run().
|
static |
Callback function of the ground altitude.
Definition at line 88 of file vertical_ctrl_module_demo.c.
References VerticalCtrlDemo::agl, and v_ctrl.
Referenced by vertical_ctrl_module_init().
void vertical_ctrl_module_init | ( | void | ) |
Definition at line 59 of file vertical_ctrl_module_demo.c.
References VerticalCtrlDemo::agl, VerticalCtrlDemo::igain, VerticalCtrlDemo::pgain, VerticalCtrlDemo::setpoint, VerticalCtrlDemo::sum_err, v_ctrl, vertical_ctrl_agl_cb(), VERTICAL_CTRL_MODULE_AGL_ID, VERTICAL_CTRL_MODULE_IGAIN, and VERTICAL_CTRL_MODULE_PGAIN.
Referenced by guidance_v_module_init().
void vertical_ctrl_module_run | ( | bool | in_flight | ) |
Definition at line 72 of file vertical_ctrl_module_demo.c.
References VerticalCtrlDemo::agl, VerticalCtrlDemo::igain, MAX_PPRZ, VerticalCtrlDemo::pgain, VerticalCtrlDemo::setpoint, stabilization_cmd, VerticalCtrlDemo::sum_err, and v_ctrl.
Referenced by guidance_v_module_run().
|
static |
The altitude ABI event.
Definition at line 48 of file vertical_ctrl_module_demo.c.
struct VerticalCtrlDemo v_ctrl |
Definition at line 53 of file vertical_ctrl_module_demo.c.
Referenced by guidance_v_module_enter(), vertical_ctrl_agl_cb(), vertical_ctrl_module_init(), and vertical_ctrl_module_run().