|
|
|
@ -31,35 +31,14 @@
@@ -31,35 +31,14 @@
|
|
|
|
|
* |
|
|
|
|
****************************************************************************/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @file fw_pos_control_l1_main.c |
|
|
|
|
* Implementation of a generic position controller based on the L1 norm. Outputs a bank / roll |
|
|
|
|
* angle, equivalent to a lateral motion (for copters and rovers). |
|
|
|
|
* |
|
|
|
|
* Original publication for horizontal control class: |
|
|
|
|
* S. Park, J. Deyst, and J. P. How, "A New Nonlinear Guidance Logic for Trajectory Tracking," |
|
|
|
|
* Proceedings of the AIAA Guidance, Navigation and Control |
|
|
|
|
* Conference, Aug 2004. AIAA-2004-4900. |
|
|
|
|
* |
|
|
|
|
* Original implementation for total energy control class: |
|
|
|
|
* Paul Riseborough and Andrew Tridgell, 2013 (code in lib/external_lgpl) |
|
|
|
|
* |
|
|
|
|
* More details and acknowledgements in the referenced library headers. |
|
|
|
|
* |
|
|
|
|
* @author Lorenz Meier <lm@inf.ethz.ch> |
|
|
|
|
* @author Thomas Gubler <thomasgubler@gmail.com> |
|
|
|
|
* @author Andreas Antener <andreas@uaventure.com> |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
#include "FixedwingPositionControl.hpp" |
|
|
|
|
|
|
|
|
|
extern "C" __EXPORT int fw_pos_control_l1_main(int argc, char *argv[]); |
|
|
|
|
|
|
|
|
|
FixedwingPositionControl *l1_control::g_control; |
|
|
|
|
static int _control_task = -1; ///< task handle for sensor task */
|
|
|
|
|
|
|
|
|
|
FixedwingPositionControl::FixedwingPositionControl() : |
|
|
|
|
/* performance counters */ |
|
|
|
|
_loop_perf(perf_alloc(PC_ELAPSED, "fw l1 control")) |
|
|
|
|
{ |
|
|
|
|
_parameter_handles.l1_period = param_find("FW_L1_PERIOD"); |
|
|
|
|