Plane: crash detection hard landing detection should skip debounce

closes https://github.com/ArduPilot/ardupilot/issues/7683
This commit is contained in:
Tom Pittenger 2018-02-09 11:40:12 -08:00 committed by GitHub
parent 2aeda48512
commit 50a2d824c4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -208,8 +208,8 @@ void Plane::crash_detection_update(void)
if (!crash_state.checkedHardLanding && // only check once
been_auto_flying &&
(labs(ahrs.roll_sensor) > 6000 || labs(ahrs.pitch_sensor) > 6000)) {
crashed = true;
crash_state.debounce_time_total_ms = CRASH_DETECTION_DELAY_MS;
// did we "crash" within 75m of the landing location? Probably just a hard landing
crashed_near_land_waypoint =
@ -218,7 +218,8 @@ void Plane::crash_detection_update(void)
// trigger hard landing event right away, or never again. This inhibits a false hard landing
// event when, for example, a minute after a good landing you pick the plane up and
// this logic is still running and detects the plane is on its side as you carry it.
crash_state.debounce_timer_ms = now_ms + CRASH_DETECTION_DELAY_MS;
crash_state.debounce_timer_ms = now;
crash_state.debounce_time_total_ms = 0; // no debounce
}
crash_state.checkedHardLanding = true;