vehicle_status: move vtol_vehicle_status enum

It makes more sense to have the VTOL status in its own message.
This commit is contained in:
Julian Oes 2016-02-24 10:27:00 +00:00
parent 74072dbe74
commit 8e9e9f8a8b
5 changed files with 12 additions and 11 deletions

View File

@ -51,13 +51,6 @@ uint8 NAVIGATION_STATE_AUTO_LAND = 18 # Land
uint8 NAVIGATION_STATE_AUTO_FOLLOW_TARGET = 19 # Auto Follow
uint8 NAVIGATION_STATE_MAX = 20
# VEHICLE_VTOL_STATE, should match 1:1 MAVLinks's MAV_VTOL_STATE
uint8 VEHICLE_VTOL_STATE_UNDEFINED = 0
uint8 VEHICLE_VTOL_STATE_TRANSITION_TO_FW = 1
uint8 VEHICLE_VTOL_STATE_TRANSITION_TO_MC = 2
uint8 VEHICLE_VTOL_STATE_MC = 3
uint8 VEHICLE_VTOL_STATE_FW = 4
uint8 VEHICLE_BATTERY_WARNING_NONE = 0 # no battery low voltage warning active
uint8 VEHICLE_BATTERY_WARNING_LOW = 1 # warning of low voltage
uint8 VEHICLE_BATTERY_WARNING_CRITICAL = 2 # alerting of critical voltage

View File

@ -1,3 +1,10 @@
# VEHICLE_VTOL_STATE, should match 1:1 MAVLinks's MAV_VTOL_STATE
uint8 VEHICLE_VTOL_STATE_UNDEFINED = 0
uint8 VEHICLE_VTOL_STATE_TRANSITION_TO_FW = 1
uint8 VEHICLE_VTOL_STATE_TRANSITION_TO_MC = 2
uint8 VEHICLE_VTOL_STATE_MC = 3
uint8 VEHICLE_VTOL_STATE_FW = 4
uint64 timestamp # Microseconds since system boot
bool vtol_in_rw_mode # true: vtol vehicle is in rotating wing mode
bool vtol_in_trans_mode

View File

@ -523,7 +523,7 @@ MissionBlock::set_land_item(struct mission_item_s *item, bool at_current_locatio
if(_navigator->get_vstatus()->is_vtol && !_navigator->get_vstatus()->is_rotary_wing){
struct vehicle_command_s cmd = {};
cmd.command = NAV_CMD_DO_VTOL_TRANSITION;
cmd.param1 = vehicle_status_s::VEHICLE_VTOL_STATE_MC;
cmd.param1 = vtol_vehicle_status_s::VEHICLE_VTOL_STATE_MC;
if (_cmd_pub != nullptr) {
orb_publish(ORB_ID(vehicle_command), _cmd_pub, &cmd);
} else {

View File

@ -48,6 +48,7 @@
#include <uORB/topics/mission.h>
#include <uORB/topics/vehicle_global_position.h>
#include <uORB/topics/position_setpoint_triplet.h>
#include <uORB/topics/vtol_vehicle_status.h>
#include <uORB/topics/actuator_controls.h>
#include <uORB/topics/follow_target.h>

View File

@ -467,7 +467,7 @@ VtolAttitudeControl::is_fixed_wing_requested()
// listen to transition commands if not in manual
if (!_v_control_mode.flag_control_manual_enabled) {
to_fw = _transition_command == vehicle_status_s::VEHICLE_VTOL_STATE_FW;
to_fw = _transition_command == vtol_vehicle_status_s::VEHICLE_VTOL_STATE_FW;
}
// handle abort request
@ -699,10 +699,10 @@ void VtolAttitudeControl::task_main()
// reset transition command if not auto control
if (_v_control_mode.flag_control_manual_enabled) {
if (_vtol_type->get_mode() == ROTARY_WING) {
_transition_command = vehicle_status_s::VEHICLE_VTOL_STATE_MC;
_transition_command = vtol_vehicle_status_s::VEHICLE_VTOL_STATE_MC;
} else if (_vtol_type->get_mode() == FIXED_WING) {
_transition_command = vehicle_status_s::VEHICLE_VTOL_STATE_FW;
_transition_command = vtol_vehicle_status_s::VEHICLE_VTOL_STATE_FW;
}
}