escCheck: remove thrust threshold above which current model applies

The newer upper lower bound offset current model should apply more accurately and not require a lower bount for thrust where there's no detection.
This commit is contained in:
Matthias Grob 2026-02-23 14:33:39 +01:00
parent 6361b4cd7e
commit fb9f8d1835
3 changed files with 1 additions and 18 deletions

View File

@ -254,7 +254,6 @@ uint16_t EscChecks::checkMotorStatus(const Context &context, Report &reporter, c
thrust = fabsf(actuator_motors.control[actuator_function_index]);
}
bool thrust_above_threshold = thrust > _param_motfail_thr.get();
bool current_too_low = current < (thrust * _param_motfail_c2t.get()) - _param_motfail_low_off.get();
bool current_too_high = current > (thrust * _param_motfail_c2t.get()) + _param_motfail_high_off.get();
@ -263,7 +262,7 @@ uint16_t EscChecks::checkMotorStatus(const Context &context, Report &reporter, c
if (!_esc_undercurrent_hysteresis[i].get_state()) {
// Only set, never clear mid-air: stopping the motor in response could make it appear healthy again
_esc_undercurrent_hysteresis[i].set_state_and_update(thrust_above_threshold && current_too_low, now);
_esc_undercurrent_hysteresis[i].set_state_and_update(current_too_low, now);
}
if (!_esc_overcurrent_hysteresis[i].get_state()) {

View File

@ -72,7 +72,6 @@ private:
DEFINE_PARAMETERS_CUSTOM_PARENT(HealthAndArmingCheckBase,
(ParamBool<px4::params::COM_ARM_CHK_ESCS>) _param_com_arm_chk_escs,
(ParamBool<px4::params::FD_ACT_EN>) _param_fd_act_en,
(ParamFloat<px4::params::MOTFAIL_THR>) _param_motfail_thr,
(ParamFloat<px4::params::MOTFAIL_C2T>) _param_motfail_c2t,
(ParamInt<px4::params::MOTFAIL_TIME>) _param_motfail_time,
(ParamFloat<px4::params::MOTFAIL_LOW_OFF>) _param_motfail_low_off,

View File

@ -45,21 +45,6 @@
*/
PARAM_DEFINE_INT32(FD_ACT_EN, 0);
/**
* Motor Failure Thrust Threshold
*
* Failure detection per motor only triggers above this thrust value.
* Set to 1 to disable the detection.
*
* @group Motor Failure
* @unit norm
* @min 0.0
* @max 1.0
* @decimal 2
* @increment 0.01
*/
PARAM_DEFINE_FLOAT(MOTFAIL_THR, 0.2f);
/**
* Motor Failure Current/Throttle Scale
*