aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules/Heaters
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2020-01-30 16:47:22 +0200
committerShlomo Hecht <shlomo@twine-s.com>2020-01-30 16:47:22 +0200
commitbdb2ae480c0616dff10deabaa7c8cbb6fa16ffff (patch)
treebd5b6068a5e56b30cd26a025a20cc456c4d9fcdf /Software/Embedded_SW/Embedded/Modules/Heaters
parente1a8c002ded63f0ff87f8b2e9dc93370ff51e5ba (diff)
downloadTango-bdb2ae480c0616dff10deabaa7c8cbb6fa16ffff.tar.gz
Tango-bdb2ae480c0616dff10deabaa7c8cbb6fa16ffff.zip
Version 1.4.6.7 : beginning of removing the #ifdefs. Sylco head and arc head temperature control fixed. new events (version 18),
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules/Heaters')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c31
1 files changed, 17 insertions, 14 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
index 3baa81193..6b7a01103 100644
--- a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
+++ b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
@@ -80,10 +80,10 @@ HeaterControlConfig_t HeaterPIDConfig[HEATER_TYPE_MAX_HEATERS] = {0,0,0,0,0,0,0
/******************** GLOBAL PARAMETERS ********************************************/
HeaterCommand HeaterCmd[HEATER_TYPE_MAX_HEATERS];
-uint32_t ControlIdtoHeaterId [HEATER_TYPE_MAX_HEATERS] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};
-uint32_t ControlIdtoMaxHeaterId [HEATER_TYPE_MAX_HEATERS] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};
-uint32_t OverHeatCounter [HEATER_TYPE_MAX_HEATERS] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
-uint32_t UnderHeatCounter [HEATER_TYPE_MAX_HEATERS] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
+uint32_t ControlIdtoHeaterId [HEATER_TYPE_MAX_HEATERS] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};
+uint32_t ControlIdtoMaxHeaterId [HEATER_TYPE_MAX_HEATERS] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};
+uint32_t OverHeatCounter [HEATER_TYPE_MAX_HEATERS] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
+uint32_t UnderHeatCounter [HEATER_TYPE_MAX_HEATERS] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
uint32_t MainDryerHeaterMaxTempControl = 0xFF;
uint32_t SecondDryerHeaterMaxTempControl = 0xFF;
uint32_t DisasterControlId = 0xFF;
@@ -96,7 +96,7 @@ uint32_t DisasterControlId = 0xFF;
#ifdef Use_Head_Card
uint32_t HeaterId2PT100Id[HEATER_TYPE_MAX_HEATERS] = {DRYER_AIR_PT100,DRYER_MAIN_PT100,DRYER_SECONDARY_PT100,HEAD_PT100_ZONE_1_0X80_0, HEAD_PT100_ZONE_2_0X80_1, HEAD_PT100_ZONE_3_0X82_0,
HEAD_PT100_ZONE_4_0X82_1, HEAD_PT100_ZONE_5_0X84_0, HEAD_PT100_ZONE_6_0X84_1,HEAD_PT100_MIXER_0X8E_0, HEAD_PT100_ZONE_7_0X86_0, HEAD_PT100_ZONE_8_0X86_1,
- HEAD_PT100_ZONE_9_0X88_0, HEAD_PT100_ZONE_10_0X88_1, HEAD_PT100_ZONE_11_0X8A_0, HEAD_PT100_ZONE_12_0X8A_1,HEAD_PT100_AIR_HEATER_1_0X8C_0,HEAD_PT100_AIR_HEATER_2_0X8C_1 };
+ HEAD_PT100_ZONE_9_0X88_0, HEAD_PT100_ZONE_10_0X88_1, HEAD_PT100_ZONE_11_0X8A_0, HEAD_PT100_ZONE_12_0X8A_1,HEAD_PT100_AIR_HEATER_2_0X8C_1,HEAD_PT100_AIR_HEATER_1_0X8C_0 };
HEATERS_CURRENT HeaterId2CurrentId[HEATER_TYPE_MAX_HEATERS] = {NUM_OF_CURRENT_HEATERS,HEATER_DRYER_CURRENT_1,HEATER_DRYER_CURRENT_2,HEAD_CURRENT_ZONE_1, HEAD_CURRENT_ZONE_2,
HEAD_CURRENT_ZONE_3, HEAD_CURRENT_ZONE_4, HEAD_CURRENT_ZONE_5, HEAD_CURRENT_ZONE_6, HEAD_CURRENT_MIXER, HEAD_CURRENT_ZONE_7,
HEAD_CURRENT_ZONE_8, HEAD_CURRENT_ZONE_9, HEAD_CURRENT_ZONE_10, HEAD_CURRENT_ZONE_11, HEAD_CURRENT_ZONE_12,HEAD_CURRENT_HTIN_1,HEAD_CURRENT_HTOT_1};
@@ -107,14 +107,14 @@ HEATERS_CURRENT HeaterId2CurrentId[HEATER_TYPE_MAX_HEATERS] = {NUM_OF_CURRENT_HE
uint32_t DryerInternalPT100Id = DRYER_AIR_PT100;
bool HeatersRestart = false;
-bool HeaterMaxTempFlag[HEATER_TYPE_MAX_HEATERS] = {false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false};
-bool HeaterMinTempFlag[HEATER_TYPE_MAX_HEATERS] = {true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true};
+bool HeaterMaxTempFlag[HEATER_TYPE_MAX_HEATERS] = {false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false};
+bool HeaterMinTempFlag[HEATER_TYPE_MAX_HEATERS] = {true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true};
uint32_t OutputProportionalSingleStep = 0; //A/C Heaters step size from one decision point to another - in cpu clocks. 120000 = 1 millisecod
uint32_t Heater_timerBase = TIMER2_BASE; //Timer handle
uint32_t OutputProportionalCycleTime = 0; //A/C Heaters Cycle time in milliseconds - one for all heaters
char TimeSliceAllocation[MAX_TIMESLICES] = {0xFF};
-int DCTimeSliceAllocation[HEATER_TYPE_MAX_HEATERS] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
+int DCTimeSliceAllocation[HEATER_TYPE_MAX_HEATERS] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
bool TimerActivated = false;
char ACheatstr[100];
@@ -124,19 +124,22 @@ Mailbox_Handle HeatersControlMsgQ = NULL;
//bool DCInitialHeating[HEATER_TYPE_MAX_HEATERS] = {true};
bool HeaterReady[HEATER_TYPE_MAX_HEATERS] = {true};
bool HeaterAtTemp[HEATER_TYPE_MAX_HEATERS] = {true};
-uint32_t HeaterPreviousRead[HEATER_TYPE_MAX_HEATERS] = {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
+uint32_t HeaterPreviousRead[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
EventType HeaterEventType[HEATER_TYPE_MAX_HEATERS] = {EVENT_TYPE__DRYER_ZONE_1_OVERTEMPERATURE,EVENT_TYPE__DRYER_ZONE_2_OVERTEMPERATURE,EVENT_TYPE__DRYER_ZONE_1_OVERTEMPERATURE,EVENT_TYPE__DYEING_HEAD_ZONE_1_OVERTEMPERATURE,EVENT_TYPE__DYEING_HEAD_ZONE_2_OVERTEMPERATURE,
EVENT_TYPE__DYEING_HEAD_ZONE_3_OVERTEMPERATURE,EVENT_TYPE__DYEING_HEAD_ZONE_4_OVERTEMPERATURE,EVENT_TYPE__DYEING_HEAD_ZONE_5_OVERTEMPERATURE,EVENT_TYPE__DYEING_HEAD_ZONE_6_OVERTEMPERATURE,
- EVENT_TYPE__MIXER_OVERTEMPERATURE,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None};
+ EVENT_TYPE__MIXER_OVERTEMPERATURE,EVENT_TYPE__DYEING_HEAD_ZONE_7_OVERTEMPERATURE,EVENT_TYPE__DYEING_HEAD_ZONE_8_OVERTEMPERATURE,EVENT_TYPE__DYEING_HEAD_ZONE_9_OVERTEMPERATURE,
+ EVENT_TYPE__DYEING_HEAD_ZONE_10_OVERTEMPERATURE,EVENT_TYPE__DYEING_HEAD_ZONE_11_OVERTEMPERATURE,EVENT_TYPE__DYEING_HEAD_ZONE_12_OVERTEMPERATURE,EVENT_TYPE__DYEING_HEAD_BLOWER_1_OVERTEMPERATURE,EVENT_TYPE__DYEING_HEAD_BLOWER_2_OVERTEMPERATURE};
EventType HeaterUnderEventType[HEATER_TYPE_MAX_HEATERS] = {EVENT_TYPE__DRYER_ZONE_1_UNDERTEMPERATURE_A,EVENT_TYPE__DRYER_ZONE_2_UNDERTEMPERATURE_A,EVENT_TYPE__DRYER_ZONE_1_UNDERTEMPERATURE_A,EVENT_TYPE__DYEING_HEAD_ZONE_1_UNDERTEMPERATURE_A,EVENT_TYPE__DYEING_HEAD_ZONE_2_UNDERTEMPERATURE_A,
EVENT_TYPE__DYEING_HEAD_ZONE_3_UNDERTEMPERATURE_A,EVENT_TYPE__DYEING_HEAD_ZONE_4_UNDERTEMPERATURE_A,EVENT_TYPE__DYEING_HEAD_ZONE_5_UNDERTEMPERATURE_A,EVENT_TYPE__DYEING_HEAD_ZONE_6_UNDERTEMPERATURE_A,
- EVENT_TYPE__MIXER_UNDERTEMPERATURE_A,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None};
+ EVENT_TYPE__MIXER_UNDERTEMPERATURE_A,EVENT_TYPE__DYEING_HEAD_ZONE_7_UNDERTEMPERATURE_A,EVENT_TYPE__DYEING_HEAD_ZONE_8_UNDERTEMPERATURE_A,EVENT_TYPE__DYEING_HEAD_ZONE_9_UNDERTEMPERATURE_A,EVENT_TYPE__DYEING_HEAD_ZONE_10_UNDERTEMPERATURE_A,EVENT_TYPE__DYEING_HEAD_ZONE_11_UNDERTEMPERATURE_A,
+ EVENT_TYPE__DYEING_HEAD_ZONE_12_UNDERTEMPERATURE_A,EVENT_TYPE__DYEING_HEAD_BLOWER_1_UNDERTEMPERATURE_A,EVENT_TYPE__DYEING_HEAD_BLOWER_2_UNDERTEMPERATURE_A};
EventType HeaterUnderEventType_B[HEATER_TYPE_MAX_HEATERS] = {EVENT_TYPE__DRYER_ZONE_1_UNDERTEMPERATURE_B,EVENT_TYPE__DRYER_ZONE_2_UNDERTEMPERATURE_B,EVENT_TYPE__DRYER_ZONE_1_UNDERTEMPERATURE_B,EVENT_TYPE__DYEING_HEAD_ZONE_1_UNDERTEMPERATURE_B,EVENT_TYPE__DYEING_HEAD_ZONE_2_UNDERTEMPERATURE_B,
EVENT_TYPE__DYEING_HEAD_ZONE_3_UNDERTEMPERATURE_B,EVENT_TYPE__DYEING_HEAD_ZONE_4_UNDERTEMPERATURE_B,EVENT_TYPE__DYEING_HEAD_ZONE_5_UNDERTEMPERATURE_B,EVENT_TYPE__DYEING_HEAD_ZONE_6_UNDERTEMPERATURE_B,
- EVENT_TYPE__MIXER_UNDERTEMPERATURE_B,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None,EVENT_TYPE__None};
+ EVENT_TYPE__MIXER_UNDERTEMPERATURE_B,EVENT_TYPE__DYEING_HEAD_ZONE_7_UNDERTEMPERATURE_B,EVENT_TYPE__DYEING_HEAD_ZONE_8_UNDERTEMPERATURE_B,EVENT_TYPE__DYEING_HEAD_ZONE_9_UNDERTEMPERATURE_B,EVENT_TYPE__DYEING_HEAD_ZONE_10_UNDERTEMPERATURE_B,EVENT_TYPE__DYEING_HEAD_ZONE_11_UNDERTEMPERATURE_B,
+ EVENT_TYPE__DYEING_HEAD_ZONE_12_UNDERTEMPERATURE_B,EVENT_TYPE__DYEING_HEAD_BLOWER_1_UNDERTEMPERATURE_B,EVENT_TYPE__DYEING_HEAD_BLOWER_2_UNDERTEMPERATURE_B};
-int HeaterDisasterCounter[HEATER_TYPE_MAX_HEATERS] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
+int HeaterDisasterCounter[HEATER_TYPE_MAX_HEATERS] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
#define DISASTER_COUNTER_LIMIT 10
/******************** FUNCTIONS ********************************************/
@@ -1447,7 +1450,7 @@ uint32_t HeatersControlLoop(uint32_t tick)
}
}
}
- for ( DcHeaterId = HEATER_TYPE__HeaterZone1; DcHeaterId<= HEATER_TYPE__HeaterZone12;DcHeaterId++)
+ for ( DcHeaterId = HEATER_TYPE__HeaterZone1; DcHeaterId<= HEATER_TYPE__HeadCoverHeater2;DcHeaterId++)
{
if (HeaterDisasterCounter[DcHeaterId] >= DISASTER_COUNTER_LIMIT)
{