mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-28 12:13:33 +08:00
battery: make battery states not sticky
Signed-off-by: RomanBapst <bapstroman@gmail.com>
This commit is contained in:
@@ -210,14 +210,17 @@ Battery::determineWarning(bool connected)
|
|||||||
{
|
{
|
||||||
if (connected) {
|
if (connected) {
|
||||||
// propagate warning state only if the state is higher, otherwise remain in current warning state
|
// propagate warning state only if the state is higher, otherwise remain in current warning state
|
||||||
if (_remaining < _param_bat_emergen_thr.get() || (_warning == battery_status_s::BATTERY_WARNING_EMERGENCY)) {
|
if (_remaining < _param_bat_emergen_thr.get()) {
|
||||||
_warning = battery_status_s::BATTERY_WARNING_EMERGENCY;
|
_warning = battery_status_s::BATTERY_WARNING_EMERGENCY;
|
||||||
|
|
||||||
} else if (_remaining < _param_bat_crit_thr.get() || (_warning == battery_status_s::BATTERY_WARNING_CRITICAL)) {
|
} else if (_remaining < _param_bat_crit_thr.get()) {
|
||||||
_warning = battery_status_s::BATTERY_WARNING_CRITICAL;
|
_warning = battery_status_s::BATTERY_WARNING_CRITICAL;
|
||||||
|
|
||||||
} else if (_remaining < _param_bat_low_thr.get() || (_warning == battery_status_s::BATTERY_WARNING_LOW)) {
|
} else if (_remaining < _param_bat_low_thr.get()) {
|
||||||
_warning = battery_status_s::BATTERY_WARNING_LOW;
|
_warning = battery_status_s::BATTERY_WARNING_LOW;
|
||||||
|
|
||||||
|
} else {
|
||||||
|
_warning = battery_status_s::BATTERY_WARNING_NONE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user