Index: firmware/App/Controllers/Heaters.c =================================================================== diff -u -rf14371c9c14b461a50d7b08336e2e5fbed16f360 -r0d0febfa1b9e9e8d72f9db47f21b8c7882d91740 --- firmware/App/Controllers/Heaters.c (.../Heaters.c) (revision f14371c9c14b461a50d7b08336e2e5fbed16f360) +++ firmware/App/Controllers/Heaters.c (.../Heaters.c) (revision 0d0febfa1b9e9e8d72f9db47f21b8c7882d91740) @@ -82,6 +82,7 @@ #define AC_HEATER_PWM_PERIOD 10000 ///< PWM period 100 ms( in 10us resoultion), 1/10Hz = 1000000us/10us = 10000. #define AC_HEATER_EFFICIENCY 0.90F ///< Approximated AC heater efficiency to be used in energy calcualtions. #define DC_HEATER_EFFICIENCY 1.0F ///< DC heater efficiency +#define D5_HEAT_CONTROL_INTERVAL_START_COUNT ( D5_HEAT_CONTROL_INTERVAL_COUNT - 10 ) ///< AC heater control interval start count to jump feedforward control from open loop. #define DATA_PUBLISH_COUNTER_START_COUNT 70 ///< Data publish counter start count. @@ -176,7 +177,7 @@ controlInterval[ D45_HEAT ] = D45_HEAT_CONTROL_INTERVAL_COUNT; // Assign counter close to the target period - heatersStatus[ D5_HEAT ].controlIntervalCounter = 590; + heatersStatus[ D5_HEAT ].controlIntervalCounter = D5_HEAT_CONTROL_INTERVAL_START_COUNT; heatersStatus[ D45_HEAT ].controlIntervalCounter = 0; startupHeaterControl = TRUE; @@ -371,7 +372,7 @@ heatersStatus[ heater ].heaterOnState = FALSE; control[ heater ].data = HEATERS_MIN_DUTY_CYCLE; heatersStatus[ heater ].state = HEATER_EXEC_STATE_OFF; - heatersStatus[ D5_HEAT ].controlIntervalCounter = 590; + heatersStatus[ D5_HEAT ].controlIntervalCounter = D5_HEAT_CONTROL_INTERVAL_START_COUNT; heatersStatus[ D45_HEAT ].controlIntervalCounter = 0; startupHeaterControl = TRUE;