Index: firmware/App/Controllers/ConcentratePumps.c =================================================================== diff -u -r5aa0b08cb09b06af807687fe03db5137e388da82 -r95e32e6462b952f744f77c7e56f00bffdf8ec5bd --- firmware/App/Controllers/ConcentratePumps.c (.../ConcentratePumps.c) (revision 5aa0b08cb09b06af807687fe03db5137e388da82) +++ firmware/App/Controllers/ConcentratePumps.c (.../ConcentratePumps.c) (revision 95e32e6462b952f744f77c7e56f00bffdf8ec5bd) @@ -41,11 +41,11 @@ #define CONCENTRATE_PUMP_SPD_OUT_OF_RANGE_TOL_WHEN_SLOW_MLPM 1.0F ///< Concentrate pump speed out of range tolerance when slow in mL/min. #define CONCENTRATE_PUMP_LOW_SPEED_THRESHOLD_MLPM 10.0F ///< Concentrate pump low speed threshold in mL/min. #define CONCENTRATE_PUMP_ZERO_FLOW_RATE 0xFFFF ///< Pulse width value when zero flow rate or pump is off. -#ifdef __PUMPTEST__ -#define PISTON_PUMP_REV_PER_ML 700.0F ///< Revolution count for 1ml volume delivery. -#define CONCENTRATE_PUMP_VOLUME_PER_REV ( CONCENTRATE_PUMP_STEP_PER_REV / PISTON_PUMP_REV_PER_ML ) ///< Volume output every revolution (mL). -#else +#ifndef __PUMPTEST__ #define CONCENTRATE_PUMP_VOLUME_PER_REV 0.1F ///< Volume output every revolution (mL). +#else +#define PISTON_PUMP_STEPS_PER_ML 342.0F ///< Revolution count for 1ml volume delivery. +#define CONCENTRATE_PUMP_VOLUME_PER_REV ( CONCENTRATE_PUMP_STEP_PER_REV / PISTON_PUMP_STEPS_PER_ML ) ///< Volume output every revolution (mL). #endif #define CONCENTRATE_PUMP_PULSE_PER_REV 2.0F ///< Number of pulses generate for every revolution. #define CONCENTRATE_PUMP_STEP_PER_REV 200.0F ///< Number of steps for every revolution. @@ -58,7 +58,7 @@ ( CONCENTRATE_PUMP_STEP_PER_REV * \ CONCENTRATE_PUMP_MICRO_STEPS_PER_STEP ) ) ///< Convert volume in to number of revolutions needed. #ifdef __PUMPTEST__ -#define PISTON_PUMP_VOLUME_TO_REVOLUTION ( PISTON_PUMP_REV_PER_ML * CONCENTRATE_PUMP_MICRO_STEPS_PER_STEP ) ///< Convert volume in to number of revolutions needed. +#define PISTON_PUMP_VOLUME_TO_REVOLUTION ( PISTON_PUMP_STEPS_PER_ML * CONCENTRATE_PUMP_MICRO_STEPS_PER_STEP ) ///< Convert volume in to number of revolutions needed. #endif #define CONCENTRATE_PUMP_STEP_PERIOD_RESOLUTION ( 0.50F / ( US_PER_SECOND * SEC_PER_MIN ) ) ///< Convert step period resolution (0.50 us) to minute. @@ -505,10 +505,10 @@ //Update target revolution count if ( targetVolume_ml > 0.0 ) { -#ifdef __PUMPTEST__ - pumpTargetRevCnt[ pumpId ].data = (U32)( targetVolume_ml * PISTON_PUMP_VOLUME_TO_REVOLUTION ); -#else +#ifndef __PUMPTEST__ pumpTargetRevCnt[ pumpId ].data = (U32)( targetVolume_ml * CONCENTRATE_PUMP_VOLUME_TO_REVOLUTION ); +#else + pumpTargetRevCnt[ pumpId ].data = (U32)( targetVolume_ml * PISTON_PUMP_VOLUME_TO_REVOLUTION ); #endif if ( CONCENTRATEPUMPS_CP1_ACID == pumpId ) { @@ -790,7 +790,7 @@ //concentratePumps[ CONCENTRATEPUMPS_CP2_BICARB ].controlSet |= CONCENTRATE_PUMP_CONTROL_ENABLE_MASK; //setFPGABicarbPumpControl( concentratePumps[ CONCENTRATEPUMPS_CP2_BICARB ].controlSet ); } - +#ifndef __PUMPTEST__ // Park concentrate pump too if requested if ( TRUE == parkPump ) { @@ -806,6 +806,7 @@ } concentratePumps[ pumpId ].isConcPumpParkInProgress = TRUE; } +#endif } /*********************************************************************//** @@ -1313,7 +1314,9 @@ { // Handle start command if ( ( TRUE == payload.startStop ) && +#ifndef __PUMPTEST__ ( ( payload.speed >= CONCENTRATE_PUMP_MIN_SPEED ) && ( payload.speed <= CONCENTRATE_PUMP_MAX_SPEED ) ) && +#endif ( payload.volume > 0.0 ) ) { setConcentratePumpTargetSpeed( (CONCENTRATE_PUMPS_T)payload.pumpID, payload.speed, payload.volume );