From 39cc75b4a0c45bc251a4a46ec7766296649d8856 Mon Sep 17 00:00:00 2001 From: Sander Smeets Date: Fri, 4 Nov 2016 00:59:49 +0100 Subject: [PATCH] Rebase of vtol_land_weathervane patch --- src/modules/navigator/mission.cpp | 1 + src/modules/navigator/mission_block.cpp | 3 ++- src/modules/navigator/navigation.h | 3 ++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/modules/navigator/mission.cpp b/src/modules/navigator/mission.cpp index f50ba79edd..de5263b680 100644 --- a/src/modules/navigator/mission.cpp +++ b/src/modules/navigator/mission.cpp @@ -622,6 +622,7 @@ Mission::set_mission_items() _mission_item.nav_cmd = NAV_CMD_WAYPOINT; _mission_item.autocontinue = true; _mission_item.time_inside = 0.0f; + _mission_item.disable_mc_yaw = true; } /* we just moved to the landing waypoint, now descend */ diff --git a/src/modules/navigator/mission_block.cpp b/src/modules/navigator/mission_block.cpp index 2d4ad6ab12..0573fd837c 100644 --- a/src/modules/navigator/mission_block.cpp +++ b/src/modules/navigator/mission_block.cpp @@ -488,7 +488,8 @@ MissionBlock::mission_item_to_position_setpoint(const struct mission_item_s *ite _navigator->get_loiter_radius(); sp->loiter_direction = (item->loiter_radius > 0) ? 1 : -1; sp->acceptance_radius = item->acceptance_radius; - sp->disable_mc_yaw_control = false; + sp->disable_mc_yaw_control = item->disable_mc_yaw; + sp->cruising_speed = _navigator->get_cruising_speed(); sp->cruising_throttle = _navigator->get_cruising_throttle(); diff --git a/src/modules/navigator/navigation.h b/src/modules/navigator/navigation.h index 30d9b7278c..062b60ab1e 100644 --- a/src/modules/navigator/navigation.h +++ b/src/modules/navigator/navigation.h @@ -127,7 +127,8 @@ struct mission_item_s { loiter_exit_xtrack : 1, /**< exit xtrack location: 0 for center of loiter wp, 1 for exit location */ force_heading : 1, /**< heading needs to be reached ***/ altitude_is_relative : 1, /**< true if altitude is relative from start point */ - autocontinue : 1; /**< true if next waypoint should follow after this one */ + autocontinue : 1, /**< true if next waypoint should follow after this one */ + disable_mc_yaw : 1; /**< weathervane mode */ }; }; #pragma pack(pop)