/**********************************************************************//** * * Copyright (c) 2019-2020 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 DGInterface.c * * @date 08-Apr-2020 * @author S. Nash * * @brief Interfaces with and monitors the DG sub-system. * **************************************************************************/ #include "AlarmMgmt.h" #include "OperationModes.h" #include "SystemCommMessages.h" #include "DGInterface.h" /** * @addtogroup DGInterface * @{ */ // ********** private definitions ********** // ********** private data ********** static DG_OP_MODE_T dgCurrentOpMode = DG_MODE_INIT; static F32 dgPressures[ NUM_OF_DG_PRESSURE_SENSORS ]; static F32 dgROPumpFlowRateMlMin = 0.0; static U32 dgROPumpPressureSetPtPSI = 0; static U32 dgDrainPumpSpeedSetPtRPM = 0; static DG_RESERVOIR_ID_T dgActiveReservoir = DG_RESERVOIR_2; static DG_RESERVOIR_ID_T dgActiveReservoirSet = DG_RESERVOIR_2; static U32 dgReservoirFillVolumeTarget = 0; static U32 dgReservoirFillVolumeTargetSet = 0; static U32 dgReservoirDrainVolumeTarget = 0; static U32 dgReservoirDrainVolumeTargetSet = 0; // ********** private function prototypes ********** /*********************************************************************//** * @brief * The initDGInterface function initializes the DGInterface module. * @details * Inputs : none * Outputs : DGInterface module initialized. * @return none *************************************************************************/ void initDGInterface( void ) { // TODO - anything to initialize? } DG_OP_MODE_T getDGOpMode( void ) { DG_OP_MODE_T result = dgCurrentOpMode; return result; } /*********************************************************************//** * @brief * The getDGPressure function gets the latest pressure reported by the DG \n * for a given pressure sensor. * @details * Inputs : none * Outputs : none * @param sensorID : pressure sensor we are getting reading for. * @return Latest pressure reading reported by DG for the given sensor. *************************************************************************/ F32 getDGPressure( DG_PRESSURE_SENSORS_T sensorID ) { F32 result = 0.0; if ( sensorID < NUM_OF_DG_PRESSURE_SENSORS ) { result = dgPressures[ sensorID ]; } else { // TODO - s/w fault } return result; } U32 getDGROPumpPressureSetPt( void ) { U32 result = dgROPumpPressureSetPtPSI; return result; } F32 getDGROPumpFlowRateMlMin( void ) { F32 result = dgROPumpFlowRateMlMin; return result; } U32 getDGDrainPumpRPMSetPt( void ) { U32 result = dgDrainPumpSpeedSetPtRPM; return result; } void setDGOpMode( U32 opMode ) { } void setDGReservoirsData( U32 resID, U32 fillVol, U32 drainVol ) { } void setDGPressures( F32 roIn, F32 roOut, F32 drainIn, F32 drainOut ) { } void setDGROPumpData( U32 presSetPt, F32 flowRate ) { } void setDGDrainPumpData( U32 rpmSetPt ) { } void cmdSetDGDialysateTargetTemps( U32 primaryHtr, U32 trimmerHtr ) { } void cmdStartDG( void ) { } void cmdStopDG( void ) { } void cmdSetDGActiveReservoir( DG_RESERVOIR_ID_T resID ) { } void cmdStartDGFill( U32 fillToVolMl ) { } void cmdStartDGDrain( U32 drainToVolMl ) { } /**@}*/