aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded
diff options
context:
space:
mode:
authorRonen Sberlo <ronen.s@twine-s.com>2020-10-13 16:23:31 +0300
committerRonen Sberlo <ronen.s@twine-s.com>2020-10-13 16:23:31 +0300
commitfbcbb53bf8a04a5d487bf0a2cc497f69490f4bdb (patch)
treeb264f93ee2143c3ffbef461398a5a19940d5af9b /Software/Embedded_SW/Embedded
parent7e83c1a8c4d78a6a53825bed9bb2c40e00926bbf (diff)
downloadTango-fbcbb53bf8a04a5d487bf0a2cc497f69490f4bdb.tar.gz
Tango-fbcbb53bf8a04a5d487bf0a2cc497f69490f4bdb.zip
blower alarm fix
Diffstat (limited to 'Software/Embedded_SW/Embedded')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c49
1 files changed, 27 insertions, 22 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
index 58a3402ee..93548683f 100644
--- a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
+++ b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
@@ -1185,33 +1185,38 @@ uint32_t HeaterBlowerMaxTempCBFunction(uint32_t IfIndex, uint32_t readValue)
}
// alarm handling
- if (HeaterPreviousRead[index] >= HeaterControl[index].sensormaxvalue)
+ if ((HeaterPreviousRead[index] >= HeaterControl[index].sensormaxvalue) && (HeaterCmd[index].targettemperatue))
{
- if (HeaterCmd[index].targettemperatue)
+ if(OverHeatCounter[index]++ >=Overheat_Count_Limit)
{
- if(OverHeatCounter[index]++ >=Overheat_Count_Limit)
+ OverHeatCounter[index] = Overheat_Count_Limit;
+ if (JobIsActive()&&(HeaterReady[index]==true))
{
- OverHeatCounter[index] = Overheat_Count_Limit;
- if (JobIsActive()&&(HeaterReady[index]==true))
- {
- JobEndReason = JOB_TEMPERATURE_ALARM;
- SendJobProgress(0.0,0,false, "Temperature Error");
- AbortJob("Over Temperature Error");
- ReportWithPackageFilter(HeatersFilter, "Temperature Error",__FILE__,__LINE__,index,RpError, 0,0);
- return OK;
- }
+ JobEndReason = JOB_TEMPERATURE_ALARM;
+ SendJobProgress(0.0,0,false, "Temperature Error");
+ AbortJob("Over Temperature Error");
+ ReportWithPackageFilter(HeatersFilter, "Temperature Error",__FILE__,__LINE__,index,RpError, 0,0);
+ return OK;
+ }
- if ((HeaterReady[index]==false)&&(HeaterPreviousRead[index]>HeaterCmd[index].targettemperatue))
- {
- ReportWithPackageFilter(HeatersFilter,"DC Heater Over the max temperature, cooling off",__FILE__,index,HeaterPreviousRead[index],RpWarning, HeaterCmd[index].targettemperatue,0);
- }
- else
- {
- ReportWithPackageFilter(HeatersFilter,"DC Heater Over the max temperature, turned off",__FILE__,index,HeaterPreviousRead[index],RpWarning, HeaterReady[index],0);
- ReportWithPackageFilter(HeatersFilter,"Heater over the max temperature",__FILE__,index,OverHeatCounter[index],RpWarning,HeaterControl[index].sensormaxvalue, 0);
- AlarmHandlingSetAlarm(HeaterEventType[index], true);
- }
+ if ((HeaterReady[index]==false)&&(HeaterPreviousRead[index]>HeaterCmd[index].targettemperatue))
+ {
+ ReportWithPackageFilter(HeatersFilter,"DC Heater Over the max temperature, cooling off",__FILE__,index,HeaterPreviousRead[index],RpWarning, HeaterCmd[index].targettemperatue,0);
}
+ else
+ {
+ ReportWithPackageFilter(HeatersFilter,"DC Heater Over the max temperature, turned off",__FILE__,index,HeaterPreviousRead[index],RpWarning, HeaterReady[index],0);
+ ReportWithPackageFilter(HeatersFilter,"Heater over the max temperature",__FILE__,index,OverHeatCounter[index],RpWarning,HeaterControl[index].sensormaxvalue, 0);
+ AlarmHandlingSetAlarm(HeaterEventType[index], true);
+ }
+ }
+ }
+ else if ((HeaterPreviousRead[index] < HeaterControl[index].sensormaxvalue) && (!HeaterCmd[index].targettemperatue))
+ {
+ if(OverHeatCounter[index]++ >=Overheat_Count_Limit)
+ {
+ OverHeatCounter[index] = Overheat_Count_Limit;
+ AlarmHandlingSetAlarm(HeaterEventType[index], false);
}
}
else if ((HeaterPreviousRead[index]) < (HeaterControl[index].sensorminvalue))