Index: firmware/App/Monitors/WaterQualityMonitor.c =================================================================== diff -u -r97e213fb0ea379165bd2ffeb45b942bf206feabb -r846073b88a25474464d43b4c0e8f300b52021f96 --- firmware/App/Monitors/WaterQualityMonitor.c (.../WaterQualityMonitor.c) (revision 97e213fb0ea379165bd2ffeb45b942bf206feabb) +++ firmware/App/Monitors/WaterQualityMonitor.c (.../WaterQualityMonitor.c) (revision 846073b88a25474464d43b4c0e8f300b52021f96) @@ -70,7 +70,7 @@ #define RO_PUMP_DUTY_CYCLE_WARNING_CLEAR_MS ( 1 * MS_PER_SECOND ) ///< Persistence period for duty cycle warning range clear in milliseconds. // pump manufacturer's data for pump current draw based on pump speed and outlet pressure If 58 PSI ≤ P13 < 120 PSI, -// the currently set P12 duty cycle (% PWM) must be < 0.0065(x^2) - 1.9859(x)+193.23, where x = measured P13 pressure in PSI +// the currently set P12 duty cycle (% PWM) must be < 0.0065(x^2) - 1.9859(x) + 193.23, where x = measured P13 pressure in PSI #define QUADRATIC_COEFFICIENT 0.0065F ///< X2 quadratic coefficient #define LINEAR_COEFFICIENT 1.9895F ///< X linear coefficient #define CONSTANT_TERM 193.23F ///< Constant term @@ -229,10 +229,10 @@ F32 currentDutyCyclePct = getCurrentROPumpDutyCyclePCT(); BOOL isFdutyCycleOfRange = FALSE; // TODO verify the calculated dutycycle unit - // If 58 PSI ≤ P13 < 120 PSI, the currently set P12 duty cycle (% PWM) must be < 0.0065(x^2) - 1.9859(x)+193.23, where x = measured P13 pressure in PSI + // If 58 PSI ≤ P13 < 120 PSI, the currently set P12 duty cycle (% PWM) must be < 0.0065(x^2) - 1.9859(x) + 193.23, where x = measured P13 pressure in PSI F32 calculatedDutyCyclePct = ( ( QUADRATIC_COEFFICIENT * ( pressureP13 * pressureP13 ) ) - ( LINEAR_COEFFICIENT * ( pressureP13 ) ) ) + CONSTANT_TERM; - if ( ( pressureP13 >= MAX_INLET_RO_PUMP_PRESSURE_WARNING_LOW_PSIG ) && ( pressureP13 < MAX_INLET_RO_PUMP_PRESSURE_WARNING_HIGH_PSIG) ) + if ( ( pressureP13 >= MAX_INLET_RO_PUMP_PRESSURE_WARNING_LOW_PSIG ) && ( pressureP13 < MAX_INLET_RO_PUMP_PRESSURE_WARNING_HIGH_PSIG ) ) { isFdutyCycleOfRange = currentDutyCyclePct > calculatedDutyCyclePct; checkPersistentAlarm( ALARM_ID_FP_POWER_BUDGET_OUT_OF_RANGE, isFdutyCycleOfRange, calculatedDutyCyclePct, getCurrentROPumpDutyCyclePCT() );