Index: firmware/App/Services/PIControllers.h =================================================================== diff -u -r54f45c387430e440ab4607451fc84dea61f273f1 -re4b79bd0d31e779619a787f9ce4352d0fd3d4dce --- firmware/App/Services/PIControllers.h (.../PIControllers.h) (revision 54f45c387430e440ab4607451fc84dea61f273f1) +++ firmware/App/Services/PIControllers.h (.../PIControllers.h) (revision e4b79bd0d31e779619a787f9ce4352d0fd3d4dce) @@ -14,53 +14,54 @@ * @date (original) 04-Feb-2020 * ***************************************************************************/ - -#ifndef __PICONTROLLERS_H__ -#define __PICONTROLLERS_H__ - -#include "DGCommon.h" - -/** - * @defgroup PIControllers PIControllers - * @brief PIControllers service module. Provides PI controllers for various actuators. - * - * @addtogroup PIControllers - * @{ - */ - -// ********** public definitions ********** - -/// Enumeration of PI controllers. -typedef enum ControllerList -{ - PI_CONTROLLER_ID_RO_PUMP = 0, ///< RO Pump controller - PI_CONTROLLER_ID_PRIMARY_HEATER, ///< Primary Heater controller - PI_CONTROLLER_ID_TRIMMER_HEATER, ///< Trimmer Heater controller - NUM_OF_PI_CONTROLLERS_IDS ///< Number of PI controllers -} PI_CONTROLLER_ID_T; - -/// Enumeration of PI controller signals. -typedef enum ControllerSignals -{ - CONTROLLER_SIGNAL_REFERENCE = 0, ///< Reference value - CONTROLLER_SIGNAL_MEASURED, ///< Measured value - CONTROLLER_SIGNAL_ERROR, ///< Error value - CONTROLLER_SIGNAL_ERROR_SUM, ///< Error sum before anti-windup - CONTROLLER_SIGNAL_ERROR_SUM_AFTER_WINDUP, ///< Error sum after anti-windup - CONTROLLER_SIGNAL_PROPORTIONAL_OUTPUT, ///< P portion of controller output signal - CONTROLLER_SIGNAL_INTEGRAL_OUTPUT, ///< I portion of controller output signal - CONTROLLER_SIGNAL_CONTROL, ///< Controller output signal - NUM_OF_CONTROLLER_SIGNAL ///< Number of PI controller signals -} PI_CONTROLLER_SIGNALS_ID; - -// ********** public function prototypes ********** - -void initializePIController( PI_CONTROLLER_ID_T controllerID, F32 initialControlSignal, - F32 kP, F32 kI, F32 controlMin, F32 controlMax ); -void resetPIController( PI_CONTROLLER_ID_T controllerID, F32 initialControlSignal ); -F32 runPIController( PI_CONTROLLER_ID_T controllerID, F32 referenceSignal, F32 measuredSignal ); -F32 getPIControllerSignals( PI_CONTROLLER_ID_T controllerID, PI_CONTROLLER_SIGNALS_ID signalID ); - -/**@}*/ - -#endif + +#ifndef __PICONTROLLERS_H__ +#define __PICONTROLLERS_H__ + +#include "DGCommon.h" + +/** + * @defgroup PIControllers PIControllers + * @brief PIControllers service module. Provides PI controllers for various actuators. + * + * @addtogroup PIControllers + * @{ + */ + +// ********** public definitions ********** + +/// Enumeration of PI controllers. +typedef enum ControllerList +{ + PI_CONTROLLER_ID_RO_PUMP = 0, ///< RO Pump controller + PI_CONTROLLER_ID_PRIMARY_HEATER, ///< Primary Heater controller + PI_CONTROLLER_ID_TRIMMER_HEATER, ///< Trimmer Heater controller + PI_CONTROLLER_ID_DRAIN_PUMP, ///< Drain Pump controller. + NUM_OF_PI_CONTROLLERS_IDS ///< Number of PI controllers +} PI_CONTROLLER_ID_T; + +/// Enumeration of PI controller signals. +typedef enum ControllerSignals +{ + CONTROLLER_SIGNAL_REFERENCE = 0, ///< Reference value + CONTROLLER_SIGNAL_MEASURED, ///< Measured value + CONTROLLER_SIGNAL_ERROR, ///< Error value + CONTROLLER_SIGNAL_ERROR_SUM, ///< Error sum before anti-windup + CONTROLLER_SIGNAL_ERROR_SUM_AFTER_WINDUP, ///< Error sum after anti-windup + CONTROLLER_SIGNAL_PROPORTIONAL_OUTPUT, ///< P portion of controller output signal + CONTROLLER_SIGNAL_INTEGRAL_OUTPUT, ///< I portion of controller output signal + CONTROLLER_SIGNAL_CONTROL, ///< Controller output signal + NUM_OF_CONTROLLER_SIGNAL ///< Number of PI controller signals +} PI_CONTROLLER_SIGNALS_ID; + +// ********** public function prototypes ********** + +void initializePIController( PI_CONTROLLER_ID_T controllerID, F32 initialControlSignal, + F32 kP, F32 kI, F32 controlMin, F32 controlMax ); +void resetPIController( PI_CONTROLLER_ID_T controllerID, F32 initialControlSignal ); +F32 runPIController( PI_CONTROLLER_ID_T controllerID, F32 referenceSignal, F32 measuredSignal ); +F32 getPIControllerSignals( PI_CONTROLLER_ID_T controllerID, PI_CONTROLLER_SIGNALS_ID signalID ); + +/**@}*/ + +#endif