From 560e9e88dc0977bbecd53386fa5572347d5fd43e Mon Sep 17 00:00:00 2001 From: sanderux Date: Thu, 3 Aug 2017 15:16:19 +0200 Subject: [PATCH] Apply slew rate to reverse thrust --- src/modules/vtol_att_control/standard.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/modules/vtol_att_control/standard.cpp b/src/modules/vtol_att_control/standard.cpp index 4bbc6c8ebb..08c5cf2599 100644 --- a/src/modules/vtol_att_control/standard.cpp +++ b/src/modules/vtol_att_control/standard.cpp @@ -348,6 +348,12 @@ void Standard::update_transition_state() q_sp.copyTo(_v_att_sp->q_d); _v_att_sp->q_d_valid = true; + if (_params_handles_standard.reverse_output > FLT_EPSILON) { + _pusher_throttle = _params_standard.reverse_throttle * (float)hrt_elapsed_time(&_vtol_schedule.transition_start) / + (_params_standard.front_trans_dur * 1000000.0f); + _pusher_throttle = math::constrain(_pusher_throttle, 0.0f, _params_standard.reverse_throttle); + } + // continually increase mc attitude control as we transition back to mc mode if (_params_standard.back_trans_dur > FLT_EPSILON) { float weight = (float)hrt_elapsed_time(&_vtol_schedule.transition_start) /