mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-05-31 18:47:21 +08:00
landdetector + mc_pos_control cherry-pick fix
This commit is contained in:
committed by
Lorenz Meier
parent
69ecfef8a4
commit
e6f7af2dcf
@@ -224,7 +224,8 @@ bool MulticopterLandDetector::_get_ground_contact_state()
|
|||||||
|
|
||||||
// If pilots commands down or in auto mode and we are already below minimal thrust and we do not move down we assume ground contact
|
// If pilots commands down or in auto mode and we are already below minimal thrust and we do not move down we assume ground contact
|
||||||
// TODO: we need an accelerometer based check for vertical movement for flying without GPS
|
// TODO: we need an accelerometer based check for vertical movement for flying without GPS
|
||||||
if (manual_control_idle_or_auto && _has_low_thrust() && (!horizontalMovement || !_has_position_lock()) &&
|
if (manual_control_idle_or_auto && (_has_low_thrust() || hit_ground) && (!horizontalMovement || !_has_position_lock())
|
||||||
|
&&
|
||||||
(!verticalMovement || !_has_altitude_lock())) {
|
(!verticalMovement || !_has_altitude_lock())) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1807,7 +1807,7 @@ MulticopterPositionControl::calculate_thrust_setpoint(float dt)
|
|||||||
thrust_sp(1) = 0.0f;
|
thrust_sp(1) = 0.0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!in_auto_takeoff) {
|
if (!in_auto_takeoff()) {
|
||||||
if (_vehicle_land_detected.ground_contact) {
|
if (_vehicle_land_detected.ground_contact) {
|
||||||
/* if still or already on ground command zero xy thrust_sp in body
|
/* if still or already on ground command zero xy thrust_sp in body
|
||||||
* frame to consider uneven ground */
|
* frame to consider uneven ground */
|
||||||
|
|||||||
Reference in New Issue
Block a user