Index: firmware/App/Controllers/DialysatePumps.c =================================================================== diff -u -rb6d20d9e5c704a9f7ebceea9bb12731dac61fc2a -rbf8510b75b0e133bc3d933078f543e32e0f37c33 --- firmware/App/Controllers/DialysatePumps.c (.../DialysatePumps.c) (revision b6d20d9e5c704a9f7ebceea9bb12731dac61fc2a) +++ firmware/App/Controllers/DialysatePumps.c (.../DialysatePumps.c) (revision bf8510b75b0e133bc3d933078f543e32e0f37c33) @@ -178,7 +178,7 @@ dialysatePumps[ pumpId ].dialysatePumpMeasuredCurrentA.ovInitData = 0.0F; dialysatePumps[ pumpId ].dialysatePumpMeasuredCurrentA.ovData = 0.0F; dialysatePumps[ pumpId ].dialysatePumpMeasuredCurrentA.override = OVERRIDE_RESET; - dialysatePumps[ pumpId ].currentPumpSpeed = 0.0F; + dialysatePumps[ pumpId ].currentPumpSpeed = MIN_DIALYSATE_PUMP_RPM; dialysatePumps[ pumpId ].prevPumpTargetSpeed = 0.0F; dialysatePumps[ pumpId ].control = DIALYSATE_PUMP_CONTROL_STOP; dialysatePumps[ pumpId ].directionErrorCount = 0; @@ -300,7 +300,7 @@ } // Reset all the variables to stop mode - dialysatePumps[ pumpId ].currentPumpSpeed = 0.0F; + dialysatePumps[ pumpId ].currentPumpSpeed = MIN_DIALYSATE_PUMP_RPM; dialysatePumps[ pumpId ].pumpTargetSpeed.data = 0.0F; dialysatePumps[ pumpId ].dialysatePumpState = DIALYSATE_PUMP_OFF_STATE; dialysatePumps[ pumpId ].controlTimerCounter = 0; @@ -377,6 +377,7 @@ *************************************************************************/ void execDialysatePumpMonitor( void ) { +#if 0 U16 freshDialCurrent = getFPGAFreshDialysatePumpCurrentFeedback(); U16 spentDialCurrent = getFPGAFreshDialysatePumpCurrentFeedback(); BOOL isOffCurrentOut = FALSE; @@ -473,7 +474,7 @@ checkPersistentAlarm( ALARM_ID_DD_SPENT_DIALYSATE_PUMP_CURRENT_OUT_OF_RANGE, isCurrentOutOfRange, currentA, DIALYSATE_PUMP_MAX_CURRENT_A ); } } - +#endif // Publish dialysate pumps data on interval publishDialysatePumpsData(); } @@ -677,13 +678,13 @@ dialysatePumps[ pumpId ].currentPumpSpeed += speedIncrease; // If the pump's target speed is set to be 0, do not ramp down set it to zero immediately - if ( getDialysatePumpTargetSpeed( pumpId ) < ZERO_SPEED ) - { - dialysatePumps[ pumpId ].currentPumpSpeed = 0.0F; - } +// if ( getDialysatePumpTargetSpeed( pumpId ) < MIN_DIALYSATE_PUMP_RPM ) +// { +// dialysatePumps[ pumpId ].currentPumpSpeed = MIN_DIALYSATE_PUMP_RPM; +// } } - if ( dialysatePumps[ pumpId ].currentPumpSpeed > ZERO_SPEED ) + if ( dialysatePumps[ pumpId ].currentPumpSpeed >= MIN_DIALYSATE_PUMP_RPM ) { if ( FRESH_DIALYSATE_PUMP == pumpId ) { @@ -721,6 +722,7 @@ F32 measuredPressure = getFilteredPressure( PRESSURE_SENSOR_FRESH_DIALYSATE ); F32 targetPressure = getDialysatePumpTargetPressure( pumpId ); +#if 0 F32 control = runPIController( PI_CONTROLLER_ID_FRESH_DIALYSATE_PUMP, targetPressure, measuredPressure ); // TODO : get the equivalent speed for the given control F32 newSpeed = control * ( MAX_DIALYSATE_PUMP_RPM / DIALYSATE_PUMP_MAX_PRESSURE_PSI ); @@ -732,12 +734,13 @@ dialysatePumps[ pumpId ].currentPumpSpeed = newSpeed; //Set fresh dialyate pump speed setFPGAFreshDialysatePumpSpeed( (U16)dialysatePumps[ pumpId ].currentPumpSpeed ); +#endif } else { F32 measuredPressure = getFilteredPressure( PRESSURE_SENSOR_SPENT_DIALYSATE ); F32 targetPressure = getDialysatePumpTargetPressure( pumpId ); - +#if 0 F32 control = runPIController( PI_CONTROLLER_ID_SPENT_DIALYSATE_PUMP, targetPressure, measuredPressure ); // TODO : get the equivalent speed for the given control F32 newSpeed = control * ( MAX_DIALYSATE_PUMP_RPM / DIALYSATE_PUMP_MAX_PRESSURE_PSI ); @@ -749,6 +752,7 @@ dialysatePumps[ pumpId ].currentPumpSpeed = newSpeed; //Set spent dialyate pump speed setFPGASpentDialysatePumpSpeed( (U16)dialysatePumps[ pumpId ].currentPumpSpeed ); +#endif } dialysatePumps[ pumpId ].controlTimerCounter = 0; } Index: firmware/App/Controllers/DialysatePumps.h =================================================================== diff -u -rb6d20d9e5c704a9f7ebceea9bb12731dac61fc2a -rbf8510b75b0e133bc3d933078f543e32e0f37c33 --- firmware/App/Controllers/DialysatePumps.h (.../DialysatePumps.h) (revision b6d20d9e5c704a9f7ebceea9bb12731dac61fc2a) +++ firmware/App/Controllers/DialysatePumps.h (.../DialysatePumps.h) (revision bf8510b75b0e133bc3d933078f543e32e0f37c33) @@ -32,8 +32,8 @@ // ********** public definitions ********** -#define MIN_DIALYSATE_PUMP_RPM 300 ///< Minimum RPM target for dialysate pump (though zero is allowed if turning pump off). -#define MAX_DIALYSATE_PUMP_RPM 4500 ///< Maximum RPM target for dialysate pump. +#define MIN_DIALYSATE_PUMP_RPM 350 ///< Minimum RPM target for dialysate pump (though zero is allowed if turning pump off). +#define MAX_DIALYSATE_PUMP_RPM 3000 ///< Maximum RPM target for dialysate pump. /// Enumeration of dialysate pumps. typedef enum DialysatePumps