From 748b664ad0df9c21c4ea648cc28e0b46f122d483 Mon Sep 17 00:00:00 2001 From: Matthias Grob Date: Thu, 7 Nov 2019 20:35:05 +0100 Subject: [PATCH] Reposition landing gear check so that it is not overwritten by setpoint operations. (#13412) --- .../tasks/AutoMapper/FlightTaskAutoMapper.cpp | 12 ++++++------ .../tasks/AutoMapper2/FlightTaskAutoMapper2.cpp | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/lib/FlightTasks/tasks/AutoMapper/FlightTaskAutoMapper.cpp b/src/lib/FlightTasks/tasks/AutoMapper/FlightTaskAutoMapper.cpp index f50d95e87e..99d4a19799 100644 --- a/src/lib/FlightTasks/tasks/AutoMapper/FlightTaskAutoMapper.cpp +++ b/src/lib/FlightTasks/tasks/AutoMapper/FlightTaskAutoMapper.cpp @@ -70,6 +70,12 @@ bool FlightTaskAutoMapper::update() _thrust_setpoint = Vector3f(NAN, NAN, NAN); } + // during mission and reposition, raise the landing gears but only + // if altitude is high enough + if (_highEnoughForLandingGear()) { + _gear.landing_gear = _mission_gear; + } + if (_type == WaypointType::idle) { _generateIdleSetpoints(); @@ -92,12 +98,6 @@ bool FlightTaskAutoMapper::update() _yawspeed_setpoint); } - // during mission and reposition, raise the landing gears but only - // if altitude is high enough - if (_highEnoughForLandingGear()) { - _gear.landing_gear = _mission_gear; - } - // update previous type _type_previous = _type; diff --git a/src/lib/FlightTasks/tasks/AutoMapper2/FlightTaskAutoMapper2.cpp b/src/lib/FlightTasks/tasks/AutoMapper2/FlightTaskAutoMapper2.cpp index 34fdc1ad4e..0f7fbb3a33 100644 --- a/src/lib/FlightTasks/tasks/AutoMapper2/FlightTaskAutoMapper2.cpp +++ b/src/lib/FlightTasks/tasks/AutoMapper2/FlightTaskAutoMapper2.cpp @@ -62,6 +62,12 @@ bool FlightTaskAutoMapper2::update() _thrust_setpoint = Vector3f(NAN, NAN, NAN); } + // during mission and reposition, raise the landing gears but only + // if altitude is high enough + if (_highEnoughForLandingGear()) { + _gear.landing_gear = landing_gear_s::GEAR_UP; + } + switch (_type) { case WaypointType::idle: _prepareIdleSetpoints(); @@ -100,12 +106,6 @@ bool FlightTaskAutoMapper2::update() _generateSetpoints(); - // during mission and reposition, raise the landing gears but only - // if altitude is high enough - if (_highEnoughForLandingGear()) { - _gear.landing_gear = landing_gear_s::GEAR_UP; - } - // update previous type _type_previous = _type;