Index: firmware/App/Controllers/Heaters.c =================================================================== diff -u -r83352606f453107c3ac4636c8da0e8a65b17c723 -re8cd5cfca4acc41b33c012e4d8aa6e76f0c3c661 --- firmware/App/Controllers/Heaters.c (.../Heaters.c) (revision 83352606f453107c3ac4636c8da0e8a65b17c723) +++ firmware/App/Controllers/Heaters.c (.../Heaters.c) (revision e8cd5cfca4acc41b33c012e4d8aa6e76f0c3c661) @@ -238,6 +238,7 @@ { setMainPrimaryHeaterPWM ( HEATERS_MIN_DUTY_CYCLE ); setSmallPrimaryHeaterPWM ( HEATERS_MIN_DUTY_CYCLE ); + primaryHeatersExecState = PRIMARY_HEATERS_EXEC_STATE_OFF; } /*********************************************************************//** @@ -389,7 +390,7 @@ { startPrimaryHeater(); state = PRIMARY_HEATERS_EXEC_STATE_CONTROL_TO_TARGET; - temporaryStartROPump(); + //temporaryStartROPump(); temporaryStartFan(); } //state = PRIMARY_HEATERS_EXEC_STATE_CONTROL_TO_TARGET; @@ -472,7 +473,7 @@ temporaryStartROPump(); temporaryStartFan(); } - //state = TRIMMER_HEATER_EXEC_STATE_CONTROL_TO_TARGET; + state = TRIMMER_HEATER_EXEC_STATE_CONTROL_TO_TARGET; } // TODO remove this code for testing @@ -574,7 +575,9 @@ } else if ( heater == TRIMMER_HEATER ) { - // TODO setup the trimmer heater + F32 inletTemperatrue = getTemperatureValue ( TEMPSENSORS_OUTLET_REDUNDANCY_TEMP_SENSOR ); + trimmerHeaterDutyCycle = fabs(trimmerHeaterTargetTemperature - inletTemperatrue) * DELTA_TEMP_TO_PWM_DUTY_CYCLE_CONVERSION; + resetPIController ( PI_CONTROLLER_ID_TRIMMER_HEATER, trimmerHeaterDutyCycle ); } } @@ -594,19 +597,19 @@ { #ifdef DEBUG_ENABLED { - char debugTempStr[ 256 ]; - sprintf( debugTempStr, "MPDuty: %6.2f, SPDuty: %6.2f, THDuty: %6.2f, TPi: %6.2f, TPo: %6.2f, TD1: %6.2f, " - "TD2: %6.2f, TRo: %6.2f, TDi: %6.2f, TPh: %6.2f, TTh: %6.2f, PTarg: %6.2f\r\n", - mainPrimaryHeaterDutyCycle, smallPrimaryHeaterDutyCycle, trimmerHeaterDutyCycle, - getTemperatureValue ( TEMPSENSORS_INLET_PRIMARY_HEATER_TEMP_SENSOR ), - getTemperatureValue ( TEMPSENSORS_OUTLET_PRIMARY_HEATER_TEMP_SENSOR ), - getTemperatureValue ( TEMPSENSORS_CONDUCTIVITY_SENSOR_1_TEMP_SENSOR ), - getTemperatureValue ( TEMPSENSORS_CONDUCTIVITY_SENSOR_2_TEMP_SENSOR ), - getTemperatureValue ( TEMPSENSORS_OUTLET_REDUNDANCY_TEMP_SENSOR ), - getTemperatureValue ( TEMPSENSORS_INLET_DIALYSATE_TEMP_SENSOR ), - getTemperatureValue ( TEMPSENSORS_PRIMARY_HEATER_INTERNAL_TEMP_SENSOR ), - getTemperatureValue ( TEMPSENSORS_TRIMMER_HEATER_INTERNAL_TEMP_SESNOR ), - primaryHeaterTargetTemperature ); + char debugTempStr[ 256 ]; + sprintf( debugTempStr, "MPDuty: %6.2f, SPDuty: %6.2f, THDuty: %6.2f, TPi: %6.2f, TPo: %6.2f, TD1: %6.2f, " + "TD2: %6.2f, TRo: %6.2f, TDi: %6.2f, TPh: %6.2f, TTh: %6.2f, PTarg: %6.2f, TTarg: %6.2f\r\n", + mainPrimaryHeaterDutyCycle, smallPrimaryHeaterDutyCycle, trimmerHeaterDutyCycle, + getTemperatureValue ( TEMPSENSORS_INLET_PRIMARY_HEATER_TEMP_SENSOR ), + getTemperatureValue ( TEMPSENSORS_OUTLET_PRIMARY_HEATER_TEMP_SENSOR ), + getTemperatureValue ( TEMPSENSORS_CONDUCTIVITY_SENSOR_1_TEMP_SENSOR ), + getTemperatureValue ( TEMPSENSORS_CONDUCTIVITY_SENSOR_2_TEMP_SENSOR ), + getTemperatureValue ( TEMPSENSORS_OUTLET_REDUNDANCY_TEMP_SENSOR ), + getTemperatureValue ( TEMPSENSORS_INLET_DIALYSATE_TEMP_SENSOR ), + getTemperatureValue ( TEMPSENSORS_PRIMARY_HEATER_INTERNAL_TEMP_SENSOR ), + getTemperatureValue ( TEMPSENSORS_TRIMMER_HEATER_INTERNAL_TEMP_SESNOR ), + primaryHeaterTargetTemperature, trimmerHeaterTargetTemperature); sendDebugData ( (U08*)debugTempStr, strlen(debugTempStr) ); } #endif