MulticopterLandDetector: remove arbitrary maximum altitude based on battery percentage

This commit is contained in:
Matthias Grob
2020-06-08 10:41:19 +02:00
parent 39a33a35ae
commit c36c8d161c
2 changed files with 3 additions and 20 deletions
@@ -90,7 +90,6 @@ void MulticopterLandDetector::_update_topics()
LandDetector::_update_topics();
_actuator_controls_sub.update(&_actuator_controls);
_battery_sub.update(&_battery_status);
_vehicle_angular_velocity_sub.update(&_vehicle_angular_velocity);
_vehicle_control_mode_sub.update(&_vehicle_control_mode);
_vehicle_local_position_setpoint_sub.update(&_vehicle_local_position_setpoint);
@@ -256,26 +255,12 @@ bool MulticopterLandDetector::_get_landed_state()
float MulticopterLandDetector::_get_max_altitude()
{
/* TODO: add a meaningful altitude */
float valid_altitude_max = _param_lndmc_alt_max.get();
if (valid_altitude_max < 0.0f) {
if (_param_lndmc_alt_max.get() < 0.0f) {
return INFINITY;
}
if (_battery_status.warning == battery_status_s::BATTERY_WARNING_LOW) {
valid_altitude_max = _param_lndmc_alt_max.get() * 0.75f;
} else {
return _param_lndmc_alt_max.get();
}
if (_battery_status.warning == battery_status_s::BATTERY_WARNING_CRITICAL) {
valid_altitude_max = _param_lndmc_alt_max.get() * 0.5f;
}
if (_battery_status.warning == battery_status_s::BATTERY_WARNING_EMERGENCY) {
valid_altitude_max = _param_lndmc_alt_max.get() * 0.25f;
}
return valid_altitude_max;
}
bool MulticopterLandDetector::_has_altitude_lock()