|
Paparazzi UAS v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
|
Include dependency graph for optical_flow_functions.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Data Structures | |
| struct | GainsPID |
| struct | OFhistory |
| struct | OpticalFlowHoverControl |
| struct | OpticalFlowHover |
| struct | DesiredInputs |
Functions | |
| float | set_cov_div (bool cov_method, struct OFhistory *history, struct DesiredInputs *inputs) |
| Set the covariance of the divergence and the thrust / past divergence This funciton should only be called once per time step. | |
| void | set_cov_flow (bool cov_method, struct OFhistory *historyX, struct OFhistory *historyY, struct DesiredInputs *inputs, struct FloatVect3 *covs) |
| Set the covariance of the flow and past flow / desired angle This funciton should only be called once per time step. | |
| float | PID_flow_control (float dt, struct OpticalFlowHoverControl *of_hover_ctrl) |
| Determine and set the desired angle for constant flow control. | |
| int32_t | PID_divergence_control (float dt, struct OpticalFlowHoverControl *of_hover_ctrl) |
| Determine and set the thrust for constant divergence control. | |
Variables | |
| uint32_t | ind_histXY |
| uint8_t | cov_array_filledXY |
| uint32_t | ind_histZ |
| uint8_t | cov_array_filledZ |
| struct OpticalFlowHover | of_hover |
| struct GainsPID |
Definition at line 27 of file optical_flow_functions.h.
| Data Fields | ||
|---|---|---|
| float | D | D-gain for control. |
| float | d_err | difference of error for the D-gain |
| float | err | Current tracking error. |
| float | I | I-gain for control. |
| float | P | P-gain for control. |
| float | previous_err | Previous tracking error. |
| float | sum_err | integration of the error for I-gain |
| struct OFhistory |
Definition at line 37 of file optical_flow_functions.h.
| Data Fields | ||
|---|---|---|
| float | input[COV_WINDOW_SIZE] | |
| float | OF[COV_WINDOW_SIZE] | |
| float | past_OF[COV_WINDOW_SIZE] | |
| struct OpticalFlowHoverControl |
Definition at line 43 of file optical_flow_functions.h.
Collaboration diagram for OpticalFlowHoverControl:| Data Fields | ||
|---|---|---|
| float | cov_setpoint | for adaptive gain control, setpoint of the covariance (oscillations) |
| float | nominal_value | The nominal value of thrust, phi or theta depending on Z, Y, X. |
| struct GainsPID | PID | The struct with the PID gains. |
| float | ramp | The ramp pused is increased with per dt. |
| float | reduction_factor | Reduce the gain by this factor when oscillating. |
| float | setpoint | setpoint for constant divergence/flow |
| struct OpticalFlowHover |
Definition at line 56 of file optical_flow_functions.h.
| Data Fields | ||
|---|---|---|
| float | divergence | Divergence estimate. |
| float | flowX | Flow estimate in X direction. |
| float | flowY | Flow estimate in Y direction. |
| struct DesiredInputs |
Definition at line 62 of file optical_flow_functions.h.
| Data Fields | ||
|---|---|---|
| float | phi | |
| float | theta | |
| int32_t | thrust | |
|
extern |
Determine and set the thrust for constant divergence control.
| [out] | thrust | |
| [in] | dt | time difference since last update |
| [in] | *of_hover_ctrl | OpticalFlowHoverControl structure |
Definition at line 161 of file optical_flow_functions.c.
References foo, lp_factor, MAX_PPRZ, and OF_LP_CONST.
Referenced by vertical_ctrl_module_run().
Here is the caller graph for this function:
|
extern |
Determine and set the desired angle for constant flow control.
| [out] | desired | angle |
| [in] | dt | time difference since last update |
| [in] | *of_hover_ctrl | OpticalFlowHoverControl structure |
Definition at line 133 of file optical_flow_functions.c.
References foo, lp_factor, OF_LP_CONST, and OFH_MAXBANK.
Referenced by horizontal_ctrl_module_run().
Here is the caller graph for this function:
|
extern |
Set the covariance of the divergence and the thrust / past divergence This funciton should only be called once per time step.
| [in] | thrust | the current thrust value |
Definition at line 53 of file optical_flow_functions.c.
References cov_array_filledZ, cov_div, cov_method, COV_WINDOW_SIZE, covariance_f(), OpticalFlowHover::divergence, foo, ind_histZ, MAX_PPRZ, normalized_thrust, OF_COV_DELAY_STEPS, of_hover, and DesiredInputs::thrust.
Referenced by vertical_ctrl_module_run().
Here is the call graph for this function:
Here is the caller graph for this function:
|
extern |
Set the covariance of the flow and past flow / desired angle This funciton should only be called once per time step.
Definition at line 90 of file optical_flow_functions.c.
References cov_array_filledXY, cov_method, COV_WINDOW_SIZE, covariance_f(), OpticalFlowHover::flowX, OpticalFlowHover::flowY, foo, historyX, historyY, ind_histXY, OFhistory::input, OFhistory::OF, OF_COV_DELAY_STEPS, of_hover, OFH_MAXBANK, OFhistory::past_OF, DesiredInputs::phi, and DesiredInputs::theta.
Referenced by horizontal_ctrl_module_run().
Here is the call graph for this function:
Here is the caller graph for this function:
|
extern |
Definition at line 42 of file optical_flow_functions.c.
Referenced by reset_horizontal_vars(), and set_cov_flow().
|
extern |
Definition at line 44 of file optical_flow_functions.c.
Referenced by reset_vertical_vars(), and set_cov_div().
|
extern |
Definition at line 41 of file optical_flow_functions.c.
Referenced by reset_horizontal_vars(), and set_cov_flow().
|
extern |
Definition at line 43 of file optical_flow_functions.c.
Referenced by reset_vertical_vars(), and set_cov_div().
|
extern |
Definition at line 46 of file optical_flow_functions.c.
Referenced by horizontal_ctrl_module_run(), reset_horizontal_vars(), reset_vertical_vars(), send_optical_flow_hover(), set_cov_div(), set_cov_flow(), and vertical_ctrl_module_run().