diff options
| author | Ronen Sberlo <ronen.s@twine-s.com> | 2020-10-13 16:23:31 +0300 |
|---|---|---|
| committer | Ronen Sberlo <ronen.s@twine-s.com> | 2020-10-13 16:23:31 +0300 |
| commit | fbcbb53bf8a04a5d487bf0a2cc497f69490f4bdb (patch) | |
| tree | b264f93ee2143c3ffbef461398a5a19940d5af9b /Software/Embedded_SW/Embedded/Modules | |
| parent | 7e83c1a8c4d78a6a53825bed9bb2c40e00926bbf (diff) | |
| download | Tango-fbcbb53bf8a04a5d487bf0a2cc497f69490f4bdb.tar.gz Tango-fbcbb53bf8a04a5d487bf0a2cc497f69490f4bdb.zip | |
blower alarm fix
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules')
| -rw-r--r-- | Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c | 49 |
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)) |
