mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-05-30 12:30:27 +08:00
fw pos ctrl: head straight for next waypoint after takeoff
This commit is contained in:
committed by
Daniel Agar
parent
721131a135
commit
2d5f1a5c6b
@@ -1092,15 +1092,13 @@ FixedwingPositionControl::control_auto_position(const float control_interval, co
|
|||||||
/* current waypoint (the one currently heading for) */
|
/* current waypoint (the one currently heading for) */
|
||||||
curr_wp = Vector2d(pos_sp_curr.lat, pos_sp_curr.lon);
|
curr_wp = Vector2d(pos_sp_curr.lat, pos_sp_curr.lon);
|
||||||
|
|
||||||
if (pos_sp_prev.valid) {
|
if (pos_sp_prev.valid && pos_sp_prev.type != position_setpoint_s::SETPOINT_TYPE_TAKEOFF) {
|
||||||
prev_wp(0) = pos_sp_prev.lat;
|
prev_wp(0) = pos_sp_prev.lat;
|
||||||
prev_wp(1) = pos_sp_prev.lon;
|
prev_wp(1) = pos_sp_prev.lon;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
/*
|
// No valid previous waypoint, go for the current wp.
|
||||||
* No valid previous waypoint, go for the current wp.
|
// This is automatically handled by the L1/NPFG libraries.
|
||||||
* This is automatically handled by the L1 library.
|
|
||||||
*/
|
|
||||||
prev_wp(0) = pos_sp_curr.lat;
|
prev_wp(0) = pos_sp_curr.lat;
|
||||||
prev_wp(1) = pos_sp_curr.lon;
|
prev_wp(1) = pos_sp_curr.lon;
|
||||||
}
|
}
|
||||||
@@ -1269,15 +1267,13 @@ FixedwingPositionControl::control_auto_loiter(const float control_interval, cons
|
|||||||
/* current waypoint (the one currently heading for) */
|
/* current waypoint (the one currently heading for) */
|
||||||
curr_wp = Vector2d(pos_sp_curr.lat, pos_sp_curr.lon);
|
curr_wp = Vector2d(pos_sp_curr.lat, pos_sp_curr.lon);
|
||||||
|
|
||||||
if (pos_sp_prev.valid) {
|
if (pos_sp_prev.valid && pos_sp_prev.type != position_setpoint_s::SETPOINT_TYPE_TAKEOFF) {
|
||||||
prev_wp(0) = pos_sp_prev.lat;
|
prev_wp(0) = pos_sp_prev.lat;
|
||||||
prev_wp(1) = pos_sp_prev.lon;
|
prev_wp(1) = pos_sp_prev.lon;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
/*
|
// No valid previous waypoint, go for the current wp.
|
||||||
* No valid previous waypoint, go for the current wp.
|
// This is automatically handled by the L1/NPFG libraries.
|
||||||
* This is automatically handled by the L1 library.
|
|
||||||
*/
|
|
||||||
prev_wp(0) = pos_sp_curr.lat;
|
prev_wp(0) = pos_sp_curr.lat;
|
||||||
prev_wp(1) = pos_sp_curr.lon;
|
prev_wp(1) = pos_sp_curr.lon;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user