Index: firmware/App/Controllers/ROPump.h =================================================================== diff -u -r45fe3b732b4fb769f7788bef699a8dd34b250425 -r6499ea25921fcf67826fa0c35bb03caf411ba542 --- firmware/App/Controllers/ROPump.h (.../ROPump.h) (revision 45fe3b732b4fb769f7788bef699a8dd34b250425) +++ firmware/App/Controllers/ROPump.h (.../ROPump.h) (revision 6499ea25921fcf67826fa0c35bb03caf411ba542) @@ -1,14 +1,14 @@ /************************************************************************** * -* Copyright (c) 2020-2022 Diality Inc. - All Rights Reserved. +* Copyright (c) 2020-2023 Diality Inc. - All Rights Reserved. * * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * @file ROPump.h * -* @author (last) Dara Navaei -* @date (last) 26-Aug-2022 +* @author (last) Michael Garthwaite +* @date (last) 21-Nov-2022 * * @author (original) Sean * @date (original) 04-Apr-2020 @@ -34,6 +34,18 @@ #define MAX_RO_FLOWRATE_LPM 1.8F ///< Maximum target RO flow rate in L/min. #define MIN_RO_FLOWRATE_LPM 0.0F ///< Minimum target RO flow rate in L/min. +/// Enumerations of RO pump PI controller profiles. +typedef enum +{ + RO_PI_FLOW_PROFILE_FLUSH = 0, + RO_PI_FLOW_PROFILE_GEN_IDLE, + RO_PI_FLOW_PROFILE_FILL, + RO_PI_FLOW_PROFILE_DRAIN, + RO_PI_FLOW_PROFILE_HEAT, + RO_PI_FLOW_PROFILE_OPEN_LOOP, + NUM_OF_RO_PI_FLOW_PROFILES, +}RO_PI_FLOW_PROFILES_T; + /// RO pump data struct. typedef struct { @@ -63,6 +75,7 @@ F32 getROGeneratedVolumeL( void ); void resetROGenerateVolumeL( void ); +void setROPIFlowProfile( RO_PI_FLOW_PROFILES_T profileID ); BOOL testSetROPumpDataPublishIntervalOverride( U32 value ); BOOL testResetROPumpDataPublishIntervalOverride( void ); @@ -73,6 +86,9 @@ BOOL testSetTargetDutyCycle( F32 value ); +BOOL testSetROPumpMeasuredFeedbackDutyCycleOverride( F32 value ); +BOOL testResetROPumpMeasuredFeedbackDutyCycleOverride( void ); + /**@}*/ #endif