Fix default handling for battery params

This commit is contained in:
Lorenz Meier 2016-07-02 12:59:49 +02:00
parent 9258bb2ae8
commit d85e416680

View File

@ -919,7 +919,7 @@ Sensors::parameters_update()
warnx("%s", paramerr);
_parameters.battery_v_div = 0.0f;
} else if (_parameters.battery_v_div < 0.0f) {
} else if (_parameters.battery_v_div <= 0.0f) {
/* apply scaling according to defaults if set to default */
#if defined (CONFIG_ARCH_BOARD_PX4FMU_V4)
_parameters.battery_v_div = 13.653333333f;
@ -929,6 +929,8 @@ Sensors::parameters_update()
_parameters.battery_v_div = 7.8196363636f;
#elif defined (CONFIG_ARCH_BOARD_PX4FMU_V1)
_parameters.battery_v_div = 5.7013919372f;
#elif defined (CONFIG_ARCH_BOARD_SITL)
_parameters.battery_v_div = 10.177939394f;
#else
/* ensure a missing default trips a low voltage lockdown */
_parameters.battery_v_div = 0.0f;
@ -940,7 +942,7 @@ Sensors::parameters_update()
warnx("%s", paramerr);
_parameters.battery_a_per_v = 0.0f;
} else if (_parameters.battery_a_per_v < 0.0f) {
} else if (_parameters.battery_a_per_v <= 0.0f) {
/* apply scaling according to defaults if set to default */
#if defined (CONFIG_ARCH_BOARD_PX4FMU_V4)
/* current scaling for ACSP4 */
@ -948,6 +950,8 @@ Sensors::parameters_update()
#elif defined (CONFIG_ARCH_BOARD_PX4FMU_V2) || defined (CONFIG_ARCH_BOARD_MINDPX_V2) || defined (CONFIG_ARCH_BOARD_AEROCORE) || defined (CONFIG_ARCH_BOARD_PX4FMU_V1)
/* current scaling for 3DR power brick */
_parameters.battery_a_per_v = 15.391030303f;
#elif defined (CONFIG_ARCH_BOARD_SITL)
_parameters.battery_a_per_v = 15.391030303f;
#else
/* ensure a missing default leads to an unrealistic current value */
_parameters.battery_a_per_v = 0.0f;