aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
index 6345ff201..c3d163c24 100644
--- a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
+++ b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
@@ -1000,6 +1000,36 @@ bool HeaterCheckReady(void)
}
return true;
}
+int HeaterPrepareFailureCheckCounter = 0;
+uint32_t HeaterPrepareFailureCheckTemperatures[HEATER_TYPE_MAX_HEATERS] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; //A/C Heaters Cycle time in milliseconds - one for all heaters
+
+void HeaterPrepareFailureCheck(void)
+{
+ int i;
+ if (GetHeatersPrepareWaiting() == false)
+ {
+ HeaterPrepareFailureCheckCounter = 0;
+ return;
+ }
+ if ((HeaterPrepareFailureCheckCounter>=300)&&(HeaterPrepareFailureCheckCounter%60 == 0))
+ {
+ for (i = 0; i<HEATER_TYPE_MAX_HEATERS; i++)
+ {
+ if(HeaterReady[i] == false)
+ {
+ if (abs (HeaterPrepareFailureCheckTemperatures[i] - HeaterPreviousRead[i])<200) // no temperature move in the last 5 minutes
+ {
+ ReportWithPackageFilter(HeatersFilter,"HeaterPrepareFailureCheck",__FILE__,i,HeaterPrepareFailureCheckTemperatures[i],RpWarning,HeaterPreviousRead[i], 0);
+ //PrepareReady(Module_Heaters,ModuleFail);
+ //return;
+ }
+ }
+ HeaterPrepareFailureCheckTemperatures[i] = HeaterPreviousRead[i];
+ }
+ //test temp progress
+ }
+ HeaterPrepareFailureCheckCounter++;
+}
void HeaterPrepareReady(void)
{
int i;