/************************************************************************** * * Copyright (c) 2020-2024 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) Sean Nash * @date (last) 12-Nov-2024 * * @author (original) Sean Nash * @date (original) 12-Nov-2024 * ***************************************************************************/ #ifndef __RO_PUMP_H__ #define __RO_PUMP_H__ #include "ROCommon.h" #include "BoostPump.h" /** * @defgroup ROPump ROPump * @brief RO Pump controller unit. Controls and monitors the RO pump. * The diaphragm (RO) pump is manufactured by Aquatec, PN: 5889-2MM1-V724DY. * * @addtogroup ROPump * @{ */ // ********** public definitions ********** /// RO pump data record. typedef struct { U32 roPumpState; ///< RO pump current state. U32 roPumpDutyCycle; ///< RO pump duty cycle. U32 roPumpFBDutyCycle; ///< RO pump feedback duty cycle. F32 roPumpSpeed; ///< RO pump speed (RPM). U32 bstPumpState; ///< Boost pump current state. U32 bstPumpDutyCycle; ///< Boost pump duty cycle. U32 bstPumpFBDutyCycle; ///< Boost pump feedback duty cycle. F32 bstPumpSpeed; ///< Boost pump speed (RPM). } RO_PUMP_DATA_T; // ********** public function prototypes ********** void initROPump( void ); void execROPumpController( void ); void signalROPumpStop( RO_BOOST_PUMP_T pumpID ); BOOL testROPumpDataPublishIntervalOverride( MESSAGE_T *message ); /**@}*/ #endif