mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-04-14 10:07:39 +08:00
mc_pos_control: refactor switch case logic for modes
This commit is contained in:
parent
38cf89ee9c
commit
d76aec4eb2
@ -919,13 +919,7 @@ MulticopterPositionControl::start_flight_task()
|
||||
should_disable_task = false;
|
||||
int error = 0;
|
||||
switch (MPC_AUTO_MODE.get()) {
|
||||
case 0:
|
||||
case 1:
|
||||
case 2:
|
||||
error = _flight_tasks.switchTask(FlightTaskIndex::AutoLine);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
error = _flight_tasks.switchTask(FlightTaskIndex::AutoLineSmoothVel);
|
||||
break;
|
||||
|
||||
@ -965,7 +959,6 @@ MulticopterPositionControl::start_flight_task()
|
||||
error = _flight_tasks.switchTask(FlightTaskIndex::ManualPositionSmoothVel);
|
||||
break;
|
||||
|
||||
case 0:
|
||||
default:
|
||||
error = _flight_tasks.switchTask(FlightTaskIndex::ManualPosition);
|
||||
break;
|
||||
@ -994,9 +987,6 @@ MulticopterPositionControl::start_flight_task()
|
||||
error = _flight_tasks.switchTask(FlightTaskIndex::ManualAltitudeSmooth);
|
||||
break;
|
||||
|
||||
case 0:
|
||||
case 2:
|
||||
case 3:
|
||||
default:
|
||||
error = _flight_tasks.switchTask(FlightTaskIndex::ManualAltitude);
|
||||
break;
|
||||
|
||||
@ -681,22 +681,11 @@ PARAM_DEFINE_INT32(MPC_POS_MODE, 1);
|
||||
/**
|
||||
* Auto sub-mode.
|
||||
*
|
||||
* The supported sub-modes are:
|
||||
* 0 Direct line tracking, no smoothing
|
||||
*
|
||||
* 1 Not used
|
||||
*
|
||||
* 2 Not used
|
||||
*
|
||||
* 3 Jerk-limited trajectory
|
||||
*
|
||||
* @value 0 Default line tracking
|
||||
* @value 1 N/A
|
||||
* @value 2 N/A
|
||||
* @value 3 Jerk-limited trajectory
|
||||
* @value 1 Jerk-limited trajectory
|
||||
* @group Multicopter Position Control
|
||||
*/
|
||||
PARAM_DEFINE_INT32(MPC_AUTO_MODE, 3);
|
||||
PARAM_DEFINE_INT32(MPC_AUTO_MODE, 1);
|
||||
|
||||
/**
|
||||
* Delay from idle state to arming state.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user