diff options
author | tumbili <bapstr@ethz.ch> | 2014-12-31 16:25:15 +0100 |
---|---|---|
committer | Lorenz Meier <lm@inf.ethz.ch> | 2014-12-31 16:40:16 +0100 |
commit | 72eafad5104ca0919f822fe44391c69f1ca80e8c (patch) | |
tree | dfe80337b5b0b8521a696986577e0167ce8dd30a /src/modules/commander | |
parent | 57ca716402c5f1bc0612532cbb0bd04edbb87ac4 (diff) | |
download | px4-firmware-72eafad5104ca0919f822fe44391c69f1ca80e8c.tar.gz px4-firmware-72eafad5104ca0919f822fe44391c69f1ca80e8c.tar.bz2 px4-firmware-72eafad5104ca0919f822fe44391c69f1ca80e8c.zip |
introduced vtol_fw_permanent stabilization: allows vtol to be attitude-stabilized in manual mode
Diffstat (limited to 'src/modules/commander')
-rw-r--r-- | src/modules/commander/commander.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/modules/commander/commander.cpp b/src/modules/commander/commander.cpp index dc0594bf2..086f291f6 100644 --- a/src/modules/commander/commander.cpp +++ b/src/modules/commander/commander.cpp @@ -1267,7 +1267,7 @@ int commander_thread_main(int argc, char *argv[]) if (updated) { /* vtol status changed */ orb_copy(ORB_ID(vtol_vehicle_status), vtol_vehicle_status_sub, &vtol_status); - + status.vtol_fw_permanent_stab = vtol_status.fw_permanent_stab; /* Make sure that this is only adjusted if vehicle realy is of type vtol*/ if (status.system_type == VEHICLE_TYPE_VTOL_DUOROTOR || VEHICLE_TYPE_VTOL_QUADROTOR) { status.is_rotary_wing = vtol_status.vtol_in_rw_mode; @@ -2246,8 +2246,8 @@ set_control_mode() case NAVIGATION_STATE_MANUAL: control_mode.flag_control_manual_enabled = true; control_mode.flag_control_auto_enabled = false; - control_mode.flag_control_rates_enabled = status.is_rotary_wing; - control_mode.flag_control_attitude_enabled = status.is_rotary_wing; + control_mode.flag_control_rates_enabled = (status.is_rotary_wing || status.vtol_fw_permanent_stab); + control_mode.flag_control_attitude_enabled = (status.is_rotary_wing || status.vtol_fw_permanent_stab); control_mode.flag_control_altitude_enabled = false; control_mode.flag_control_climb_rate_enabled = false; control_mode.flag_control_position_enabled = false; |