Browse Source

Rover: Add manual mode to MIS_DONE_BEHAVIOR

zr-v5.1
Shadow 5 years ago committed by Randy Mackay
parent
commit
db1c653cc6
  1. 2
      Rover/Parameters.cpp
  2. 3
      Rover/mode.h
  3. 4
      Rover/mode_auto.cpp

2
Rover/Parameters.cpp

@ -589,7 +589,7 @@ const AP_Param::GroupInfo ParametersG2::var_info[] = { @@ -589,7 +589,7 @@ const AP_Param::GroupInfo ParametersG2::var_info[] = {
// @Param: MIS_DONE_BEHAVE
// @DisplayName: Mission done behave
// @Description: Behaviour after mission completes
// @Values: 0:Hold,1:Loiter,2:Acro
// @Values: 0:Hold,1:Loiter,2:Acro,3:Manual
// @User: Standard
AP_GROUPINFO("MIS_DONE_BEHAVE", 38, ParametersG2, mis_done_behave, 0),

3
Rover/mode.h

@ -327,7 +327,8 @@ private: @@ -327,7 +327,8 @@ private:
enum Mis_Done_Behave {
MIS_DONE_BEHAVE_HOLD = 0,
MIS_DONE_BEHAVE_LOITER = 1,
MIS_DONE_BEHAVE_ACRO = 2
MIS_DONE_BEHAVE_ACRO = 2,
MIS_DONE_BEHAVE_MANUAL = 3
};
bool auto_triggered; // true when auto has been triggered to start

4
Rover/mode_auto.cpp

@ -449,6 +449,10 @@ void ModeAuto::exit_mission() @@ -449,6 +449,10 @@ void ModeAuto::exit_mission()
return;
}
if (g2.mis_done_behave == MIS_DONE_BEHAVE_MANUAL && rover.set_mode(rover.mode_manual, ModeReason::MISSION_END)) {
return;
}
start_stop();
}

Loading…
Cancel
Save