Commit Graph
76 Commits
Author SHA1 Message Date
Dennis Mannhart c76621bdb2 RLT: set yaw to current yaw during climb 2018-08-03 08:24:34 +02:00
Dennis Mannhart 998a95db55 mission.h: remove MIS_YAWMODE 2018-08-03 08:24:34 +02:00
Dennis Mannhart e61131cf9c mission heading_sp_update: remove everthing except of MC and ROI logic. 2018-08-03 08:24:34 +02:00
Dennis Mannhart a3ca016c1d loiter.h: remove yawmode param 2018-08-03 08:24:34 +02:00
Dennis Mannhart f0140a6290 loiter: remove yaw_mode param and logic 2018-08-03 08:24:34 +02:00
Dennis Mannhart e51e1bbe74 mc_pos_control: replace legacy refactor
Until now we replaced legacy position controller functionality inside
the flight task architecture to split up the huge position control
module into the different tasks and have a modular setup with a clear
setpoint interface. This commit removes all the legacy code and hard
switches to using the flight task architecture for multicopter.

This is done because maintaining and testing everything in parallel is
not sustainable. The architecture is by now tested to cover all basic
legacy functionality and missing corner cases can be fixed a lot easier
with the new architecture.
2018-07-20 09:26:18 +02:00
Dennis Mannhart afd02aca92 FlightTask: fail activation if required states are not available 2018-07-20 09:26:18 +02:00
Dennis Mannhart e6f6e2085c ControlMath: remove false comment 2018-07-20 09:26:18 +02:00
Dennis Mannhart 3ea7f8783f FlightTaskManualAltitude: fix comment 2018-07-20 09:26:18 +02:00
Dennis Mannhart 414f38b677 test_controlmath: work around for internal compiler error: in trunc_int_for_mode, at explow.c:55 2018-07-20 09:26:18 +02:00
Dennis Mannhart c56ae130a7 test_controlmath remove static 2018-07-20 09:26:18 +02:00
Dennis Mannhart 9c7c60ddc8 remove mc_pos_control_tests 2018-07-20 09:26:18 +02:00
Dennis Mannhart 89c266e699 by value to reference 2018-07-20 09:26:18 +02:00
Dennis Mannhart a0c3c80b37 FlightTaskManualStabilized make reset counter for heading static 2018-07-20 09:26:18 +02:00
Dennis Mannhart 68dd2d739a ManualSmoothingXY indent 2018-07-20 09:26:18 +02:00
Dennis Mannhart 1317844a94 ManualSmoothingXY fix comments and style 2018-07-20 09:26:18 +02:00
Dennis Mannhart 250afd49a9 ManualSmoothingZ: update comments 2018-07-20 09:26:18 +02:00
Dennis Mannhart 216279b576 FlightTask: activate tasks with setpoints in use 2018-07-20 09:26:18 +02:00
Dennis Mannhart 389f897b04 mc_pos_control: member initialization during deceleration 2018-07-20 09:26:18 +02:00
Dennis Mannhart 46f91154a4 Smoothing: initialize ModuleParam in body of constructor because of compiler error 2018-07-20 09:26:18 +02:00
Dennis Mannhart 9c2ec3c229 PositionControl: add control states structure 2018-07-20 09:26:18 +02:00
Dennis Mannhart bf15e852ff style-check 2018-07-20 09:26:18 +02:00
Dennis Mannhart cfe7d64a42 cmake/configs: remove module test for mc_pos_control 2018-07-20 09:26:18 +02:00
Dennis Mannhart c6055c979a systemcmds/tests: add test_controlmath 2018-07-20 09:26:18 +02:00
Dennis Mannhart 90a7d836fc ControlMath:: add legacy cross_sphere_line method 2018-07-20 09:26:18 +02:00
Dennis Mannhart c2343589d8 move cross_sphere_line_test method into test_controlmath.cpp
remove mc_pos_control_tests since empty
move test_controlmath.cpp into systemcmds/tests directory
2018-07-20 09:26:18 +02:00
Dennis Mannhart 09b7d0f659 the static keywork is a workaround for an internal bug of GCC
"internal compiler error: in trunc_int_for_mode, at explow.c:55"
2018-07-20 09:26:18 +02:00
Dennis Mannhart 742e9f7b15 FlightTaskManualStabilzied: check for absolute yaw 2018-07-20 09:26:18 +02:00
Dennis Mannhart cfa412b55f make format 2018-07-20 09:26:18 +02:00
Dennis Mannhart afbeafebd8 replace heading_reset_counter 2018-07-20 09:26:18 +02:00
Dennis Mannhart 9ec47f2b74 replace reset counter logic for estimator reset for manual controlled mode 2018-07-20 09:26:18 +02:00
Dennis Mannhart 8a3c7f9e41 PositionControl: style check 2018-07-20 09:26:18 +02:00
Dennis Mannhart 2519d97aa2 PositionControl: add failsafe 2018-07-20 09:26:18 +02:00
Dennis Mannhart 2017e394b3 speed limitation during auto-takoff: remove from legacy and add to FlightTask 2018-07-20 09:26:18 +02:00
Dennis Mannhart dcdbdbd8eb FlightTaskAuto: need to remove check for yaw valid since there is a
bug in the navigator where this flag is not correctly set.
2018-07-20 09:26:18 +02:00
Dennis Mannhart 740f1f284f FlightTaskOffboard: enable triplet type takeoff, land etc 2018-07-20 09:26:18 +02:00
Dennis Mannhart 1099dd8c7d FlightTaskOffboard: first commit similar in logic to legacy code
FlightTaskOffboard: ensure supported offboard setpoints
2018-07-20 09:26:18 +02:00
Dennis Mannhart dca378fbfd FollowMe: legacy implementation. NOTE: FOLLOW-ME is already broken on legacy code. 2018-07-20 09:26:18 +02:00
Dennis Mannhart 547cdc051c FlightTask: apply gear switch depending on task 2018-07-20 09:26:18 +02:00
Dennis Mannhart c637ccb65f FlightTaskAutoLine: move altitude above ground computaiton to method 2018-07-20 09:26:18 +02:00
Dennis Mannhart 3ea0a53192 FlightTask: set landing gear up boolean to false 2018-07-20 09:26:18 +02:00
Dennis Mannhart cdb723e54c vehicle_constraints: landing gear up boolean 2018-07-20 09:26:18 +02:00
Dennis Mannhart 7d7a2dffbf Smoothing-classes: initialize to parameters 2018-07-20 09:26:18 +02:00
Dennis Mannhart 5ef2a61be5 ManualSmoothingXY: ensure that maximum speed is correctly propagated to the smoothing class 2018-07-20 09:26:18 +02:00
Dennis Mannhart 9df337e243 FlightTaskManualPosition: adjust scale based on vehicle maximum allowed speed sent by estimator 2018-07-20 09:26:18 +02:00
Dennis Mannhart 66d5f2ffd2 FlightTaskAuto: reference update only if refence altitude has not bee set. 2018-07-20 09:26:18 +02:00
Dennis Mannhart 45810ec2b4 PositionControl: replace constraint structure with new constraint message structure 2018-07-20 09:26:18 +02:00
Dennis Mannhart 9e740f1aff FlightTaskManualAlt/Position/Sport: replace limits with constraint member structure 2018-07-20 09:26:18 +02:00
Dennis Mannhart 6f704bd1e4 FlightTaskManualStabilized: replace limit with new member constraints structure 2018-07-20 09:26:18 +02:00
Dennis Mannhart dbb222e6ed FlightTaskAutoLine: set landing constraints and reset constraints 2018-07-20 09:26:18 +02:00
Dennis Mannhart 4d6539b076 FlightTaskAuto: override default constraints 2018-07-20 09:26:18 +02:00
Dennis Mannhart 962c2eff61 FlightTask: rename mehtod and add default parameter for constraints 2018-07-20 09:26:18 +02:00
Dennis Mannhart edb2e3256f FlightTask: getConstraints method and member 2018-07-20 09:26:18 +02:00
Dennis Mannhart 9f11f1afcf vehicle constraint message: fix range comment 2018-07-20 09:26:18 +02:00
Dennis Mannhart 0f4be12646 msg: first draft of vehicle_constraints message 2018-07-20 09:26:18 +02:00
Dennis Mannhart 51d4c1f305 FlightTasks: add getter method for constraints 2018-07-20 09:26:18 +02:00
Dennis Mannhart 63871bb4a5 FlightTaskManualAltitude: update comments 2018-07-20 09:26:18 +02:00
Dennis Mannhart 19bd7a9163 FlightTaskManualAltitude: terrain following 2018-07-20 09:26:18 +02:00
Dennis Mannhart ccd0be82ba FlightTaskManualAltitude: if flow is on, ensure minimum altitude 2018-07-20 09:26:18 +02:00
Dennis Mannhart 93ebb60b84 FlightTaskAutoLine: distance to bottom depending on the mode 2018-07-20 09:26:18 +02:00
Dennis Mannhart e1bc7a8e0a FlightTask.cpp resetSetpoints if subsctiption fails 2018-07-20 09:26:18 +02:00
Dennis Mannhart 5a4701c7de Flighttask: update comments 2018-07-20 09:26:18 +02:00
Dennis Mannhart 97be84b0e4 FlightTask: introduce method for limits and adjust accordingly for all the tasks 2018-07-20 09:26:18 +02:00
Dennis Mannhart 73b4f452cc FlightTask: add distance to bottom 2018-07-20 09:26:18 +02:00
Dennis Mannhart 1759e181dc FlightTaskAutoLine: legacy support velocity ramp at low altitude 2018-07-20 09:26:18 +02:00
Dennis Mannhart 7d30db1395 FlightTaskAuto: subscribe to home position 2018-07-20 09:26:18 +02:00
Dennis Mannhart 24e6e4041f PositionControl: format clean up 2018-07-20 09:26:18 +02:00
Dennis Mannhart 89c0259b2a PositionControl: replace overwrite with ModuleParams updateParams method 2018-07-20 09:26:18 +02:00
Dennis Mannhart 6d716f2d26 px4_module_params: make updateParams virtual 2018-07-20 09:26:18 +02:00
Dennis Mannhart 4c1fcca294 PositionControl.cpp: replace all params with ModuleParams type. Add method that overwrites
parameter values
2018-07-20 09:26:18 +02:00
Dennis Mannhart 7dbc368779 PositionControl.hpp: inherit from ModuleParams and replace params with ModuleParams type 2018-07-20 09:26:18 +02:00
Dennis Mannhart aef6b9216e FlightTasksAuto/Line: replace BlockParams with module params 2018-07-20 09:26:18 +02:00
Dennis Mannhart 6cfb89a8e8 test_controlmath rebase fix: EPS to FLT_EPSILON 2018-07-20 09:26:18 +02:00
Dennis Mannhart 4a9e5941b6 mc_pos_control and FlightTaskAuto rebase fix 2018-07-20 09:26:18 +02:00
Dennis Mannhart 3083de0979 FlightTaskAuto: typo fix 2018-07-20 09:26:18 +02:00
Dennis Mannhart e15240d3ad FlightTask: only allow for position and alitude control without smoothing.
This commit is only done to enable incremental testing of Flighttask.
2018-04-05 07:30:12 +02:00