Browse Source

Commander: remove permanent stabilization option for fixed-wing flight

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
main
Silvan Fuhrer 3 years ago
parent
commit
635f64a2e5
  1. 1
      ROMFS/px4fmu_common/init.d/airframes/13013_deltaquad
  2. 1
      msg/vehicle_status.msg
  3. 1
      msg/vtol_vehicle_status.msg
  4. 7
      src/modules/commander/Commander.cpp
  5. 2
      src/modules/vtol_att_control/vtol_att_control_main.cpp
  6. 3
      src/modules/vtol_att_control/vtol_att_control_main.h
  7. 11
      src/modules/vtol_att_control/vtol_att_control_params.c

1
ROMFS/px4fmu_common/init.d/airframes/13013_deltaquad

@ -131,7 +131,6 @@ param set-default VT_F_TRANS_DUR 1 @@ -131,7 +131,6 @@ param set-default VT_F_TRANS_DUR 1
param set-default VT_IDLE_PWM_MC 1025
param set-default VT_B_REV_OUT 0.5
param set-default VT_B_TRANS_THR 0.7
param set-default VT_FW_PERM_STAB 1
param set-default VT_TRANS_TIMEOUT 22
param set-default VT_F_TRANS_RAMP 4

1
msg/vehicle_status.msg

@ -75,7 +75,6 @@ uint8 vehicle_type # Type of vehicle (fixed-wing, rotary wing, ground) @@ -75,7 +75,6 @@ uint8 vehicle_type # Type of vehicle (fixed-wing, rotary wing, ground)
bool is_vtol # True if the system is VTOL capable
bool is_vtol_tailsitter # True if the system performs a 90° pitch down rotation during transition from MC to FW
bool vtol_fw_permanent_stab # True if VTOL should stabilize attitude for fw in manual mode
bool in_transition_mode # True if VTOL is doing a transition
bool in_transition_to_fw # True if VTOL is doing a transition from MC to FW

1
msg/vtol_vehicle_status.msg

@ -11,4 +11,3 @@ bool vtol_in_rw_mode # true: vtol vehicle is in rotating wing mode @@ -11,4 +11,3 @@ bool vtol_in_rw_mode # true: vtol vehicle is in rotating wing mode
bool vtol_in_trans_mode
bool in_transition_to_fw # True if VTOL is doing a transition from MC to FW
bool vtol_transition_failsafe # vtol in transition failsafe mode
bool fw_permanent_stab # In fw mode stabilize attitude even if in manual mode

7
src/modules/commander/Commander.cpp

@ -2300,7 +2300,6 @@ Commander::run() @@ -2300,7 +2300,6 @@ Commander::run()
if (_vtol_vehicle_status_sub.updated()) {
/* vtol status changed */
_vtol_vehicle_status_sub.copy(&_vtol_status);
_status.vtol_fw_permanent_stab = _vtol_status.fw_permanent_stab;
/* Make sure that this is only adjusted if vehicle really is of type vtol */
if (is_vtol(_status)) {
@ -3536,11 +3535,7 @@ Commander::update_control_mode() @@ -3536,11 +3535,7 @@ Commander::update_control_mode()
bool
Commander::stabilization_required()
{
return (_status.vehicle_type == vehicle_status_s::VEHICLE_TYPE_ROTARY_WING || // is a rotary wing, or
_status.vtol_fw_permanent_stab || // is a VTOL in fixed wing mode and stabilisation is on, or
(_vtol_status.vtol_in_trans_mode && // is currently a VTOL transitioning AND
_status.vehicle_type ==
vehicle_status_s::VEHICLE_TYPE_FIXED_WING)); // is a fixed wing, ie: transitioning back to rotary wing mode
return _status.vehicle_type == vehicle_status_s::VEHICLE_TYPE_ROTARY_WING;
}
void

2
src/modules/vtol_att_control/vtol_att_control_main.cpp

@ -234,8 +234,6 @@ VtolAttitudeControl::parameters_update() @@ -234,8 +234,6 @@ VtolAttitudeControl::parameters_update()
if (_vtol_type != nullptr) {
_vtol_type->parameters_update();
}
_vtol_vehicle_status.fw_permanent_stab = _param_vt_fw_perm_stab.get();
}
}

3
src/modules/vtol_att_control/vtol_att_control_main.h

@ -232,7 +232,6 @@ private: @@ -232,7 +232,6 @@ private:
void parameters_update();
DEFINE_PARAMETERS(
(ParamInt<px4::params::VT_TYPE>) _param_vt_type,
(ParamBool<px4::params::VT_FW_PERM_STAB>) _param_vt_fw_perm_stab
(ParamInt<px4::params::VT_TYPE>) _param_vt_type
)
};

11
src/modules/vtol_att_control/vtol_att_control_params.c

@ -51,17 +51,6 @@ @@ -51,17 +51,6 @@
*/
PARAM_DEFINE_INT32(VT_IDLE_PWM_MC, 900);
/**
* Permanent stabilization in fw mode
*
* If set to one this parameter will cause permanent attitude stabilization in fw mode.
* This parameter has been introduced for pure convenience sake.
*
* @boolean
* @group VTOL Attitude Control
*/
PARAM_DEFINE_INT32(VT_FW_PERM_STAB, 0);
/**
* VTOL Type (Tailsitter=0, Tiltrotor=1, Standard=2)
*

Loading…
Cancel
Save