Browse Source

Set up landing gear logic for standard VTOL. Gear is set down when in hover mode, else gear is set up.

v1.13.0-BW
Konrad 3 years ago committed by Silvan Fuhrer
parent
commit
d7de67844f
  1. 7
      src/modules/vtol_att_control/standard.cpp

7
src/modules/vtol_att_control/standard.cpp

@ -45,6 +45,7 @@ @@ -45,6 +45,7 @@
#include "vtol_att_control_main.h"
#include <float.h>
#include <uORB/topics/landing_gear.h>
using namespace matrix;
@ -362,7 +363,7 @@ void Standard::fill_actuator_outputs() @@ -362,7 +363,7 @@ void Standard::fill_actuator_outputs()
mc_out[actuator_controls_s::INDEX_PITCH] = mc_in[actuator_controls_s::INDEX_PITCH];
mc_out[actuator_controls_s::INDEX_YAW] = mc_in[actuator_controls_s::INDEX_YAW];
mc_out[actuator_controls_s::INDEX_THROTTLE] = mc_in[actuator_controls_s::INDEX_THROTTLE];
mc_out[actuator_controls_s::INDEX_LANDING_GEAR] = mc_in[actuator_controls_s::INDEX_LANDING_GEAR];
mc_out[actuator_controls_s::INDEX_LANDING_GEAR] = landing_gear_s::GEAR_DOWN;
// FW out = 0, other than roll and pitch depending on elevon lock
fw_out[actuator_controls_s::INDEX_ROLL] = elevon_lock ? 0 : fw_in[actuator_controls_s::INDEX_ROLL];
@ -383,7 +384,7 @@ void Standard::fill_actuator_outputs() @@ -383,7 +384,7 @@ void Standard::fill_actuator_outputs()
mc_out[actuator_controls_s::INDEX_PITCH] = mc_in[actuator_controls_s::INDEX_PITCH] * _mc_pitch_weight;
mc_out[actuator_controls_s::INDEX_YAW] = mc_in[actuator_controls_s::INDEX_YAW] * _mc_yaw_weight;
mc_out[actuator_controls_s::INDEX_THROTTLE] = mc_in[actuator_controls_s::INDEX_THROTTLE] * _mc_throttle_weight;
mc_out[actuator_controls_s::INDEX_LANDING_GEAR] = 0;
mc_out[actuator_controls_s::INDEX_LANDING_GEAR] = landing_gear_s::GEAR_UP;
// FW out = FW in, with VTOL transition controlling throttle and airbrakes
fw_out[actuator_controls_s::INDEX_ROLL] = fw_in[actuator_controls_s::INDEX_ROLL];
@ -401,7 +402,7 @@ void Standard::fill_actuator_outputs() @@ -401,7 +402,7 @@ void Standard::fill_actuator_outputs()
mc_out[actuator_controls_s::INDEX_PITCH] = 0;
mc_out[actuator_controls_s::INDEX_YAW] = 0;
mc_out[actuator_controls_s::INDEX_THROTTLE] = 0;
mc_out[actuator_controls_s::INDEX_LANDING_GEAR] = 0;
mc_out[actuator_controls_s::INDEX_LANDING_GEAR] = landing_gear_s::GEAR_UP;
// FW out = FW in
fw_out[actuator_controls_s::INDEX_ROLL] = fw_in[actuator_controls_s::INDEX_ROLL];

Loading…
Cancel
Save