aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2018-12-19 13:55:03 +0200
committerShlomo Hecht <shlomo@twine-s.com>2018-12-19 13:55:03 +0200
commit882fbad8c582fc8f381e1fa38f142f4eb287d589 (patch)
treed4ce14552a30e282ceaf648837be03ab06750ae2 /Software/Embedded_SW/Embedded
parenta57535d08a68e67fd2f73d5742fc4517817d5f92 (diff)
downloadTango-882fbad8c582fc8f381e1fa38f142f4eb287d589.tar.gz
Tango-882fbad8c582fc8f381e1fa38f142f4eb287d589.zip
Heaters: start printing only when reaching 99% of the running temperature
Diffstat (limited to 'Software/Embedded_SW/Embedded')
-rw-r--r--Software/Embedded_SW/Embedded/Communication/CommunicationTask.c2
-rw-r--r--Software/Embedded_SW/Embedded/Embedded.cfg2
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c34
3 files changed, 29 insertions, 9 deletions
diff --git a/Software/Embedded_SW/Embedded/Communication/CommunicationTask.c b/Software/Embedded_SW/Embedded/Communication/CommunicationTask.c
index be3c0d3d4..d5d465adb 100644
--- a/Software/Embedded_SW/Embedded/Communication/CommunicationTask.c
+++ b/Software/Embedded_SW/Embedded/Communication/CommunicationTask.c
@@ -234,7 +234,7 @@ void communicationTxTask(UArg arg0, UArg arg1)
if (diagnosticscontainer_buffer == Message.Buff)
diagnosticscontainer_buffer = 0;
my_free(Message.Buff);
- delayms(5); //wait 5 milliseconds between messages
+ //delayms(1); //wait 5 milliseconds between messages
}
}
diff --git a/Software/Embedded_SW/Embedded/Embedded.cfg b/Software/Embedded_SW/Embedded/Embedded.cfg
index 4f2dfa09c..240a79a6f 100644
--- a/Software/Embedded_SW/Embedded/Embedded.cfg
+++ b/Software/Embedded_SW/Embedded/Embedded.cfg
@@ -17,7 +17,7 @@ var Task = xdc.useModule('ti.sysbios.knl.Task');
BIOS.heapSize = 30767; // bios heapmem
//Memory.defaultHeapSize = 48767;
-Program.heap = 40000; //sysmem
+Program.heap = 50000; //sysmem
Clock.timerId = 7;
diff --git a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
index 35b8ea9f7..fe18d9d84 100644
--- a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
+++ b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
@@ -153,6 +153,7 @@ uint32_t LoadHeaterSetPoint(HeaterType HeaterType)
void LoadHeaterState(HeaterType HeaterType,HeaterState *HeaterState)
{
int HeaterId = HeaterType;
+ double temp = TemperatureSensorRead(HeaterId2PT100Id[HeaterId]);
HeaterState->has_heatertype = true;
HeaterState->heatertype = HeaterType;
@@ -160,17 +161,19 @@ void LoadHeaterState(HeaterType HeaterType,HeaterState *HeaterState)
// HeaterState->setpoint = HeaterCmd[HeaterId].targettemperatue/100;
// if (HeaterType >= HEATER_TYPE__HeaterZone1)
HeaterState->setpoint = DCTimeSliceAllocation[HeaterId]*100/NumberOFSlicesInUse;
- if (HeaterId == HARDWARE_PID_CONTROL_TYPE__DryerAirTemperature)
- HeaterState->setpoint = HeaterControl[HARDWARE_PID_CONTROL_TYPE__DryerHeaterMain].outputproportionalpowerlimit;
HeaterState->has_currentvalue = true;
- HeaterState->currentvalue = TemperatureSensorRead(HeaterId2PT100Id[HeaterId])/100;
+ HeaterState->currentvalue = temp/100;//TemperatureSensorRead(HeaterId2PT100Id[HeaterId])/100;
HeaterState->has_isactive = true;
HeaterState->isactive = GetHeaterState(HeaterId);
HeaterState->has_isrampingup = true;
HeaterState->isrampingup = DCInitialHeating[HeaterId];
HeaterState->has_isinsetpoint = true;
HeaterState->isinsetpoint = HeaterReady[HeaterId];
-
+ if (HeaterId == HARDWARE_PID_CONTROL_TYPE__DryerAirTemperature)
+ {
+ HeaterState->setpoint = HeaterControl[HARDWARE_PID_CONTROL_TYPE__DryerHeaterMain].outputproportionalpowerlimit;
+ HeaterState->isrampingup = InitialHeating;
+ }
return;
}
uint32_t HeatersSingleHeaterEnd(HardwarePidControlType HeaterId)
@@ -543,8 +546,8 @@ uint32_t HeaterControlCBFunction(uint32_t IfIndex, uint32_t readValue)
DeActivateHeater(HARDWARE_PID_CONTROL_TYPE__DryerHeaterSecondary);
HeaterRecalculateSharedHeatersParams(HARDWARE_PID_CONTROL_TYPE__DryerHeaterSecondary, 0);
HeatersControlStart();
- HeaterReady[index] = true;
- HeaterPrepareReady();
+ //HeaterReady[index] = true;
+ //HeaterPrepareReady();
if (BlowerCfg.enabled == true)
{
Turn_the_Blower_On();//Turn on with the Default_Voltage
@@ -554,6 +557,14 @@ uint32_t HeaterControlCBFunction(uint32_t IfIndex, uint32_t readValue)
}
}
}
+ if (HeaterReady[index]==false)
+ {
+ if ((readValue > (HeaterCmd[index].targettemperatue * 99/100))&&(readValue < (HeaterCmd[index].targettemperatue * 101/100)))//read value within 0.5 percent from target
+ {
+ HeaterReady[index] = true;
+ HeaterPrepareReady();
+ }
+ }
if(HeaterPIDConfig[index].m_isEnabled && (HeaterPIDConfig[index].m_SetParam != 0))
{
HeaterPIDConfig[index].m_mesuredParam = readValue;
@@ -654,10 +665,19 @@ uint32_t DCHeaterControlCBFunction(uint32_t IfIndex, uint32_t readValue)
{
DCInitialHeating[index] = false;
HeatersControlStart();
+ //HeaterReady[index] = true;
+ //HeaterPrepareReady();
+ }
+ }
+ if (HeaterReady[index]==false)
+ {
+ if ((readValue > (HeaterCmd[index].targettemperatue * 99/100))&&(readValue < (HeaterCmd[index].targettemperatue * 101/100)))//read value within 0.5 percent from target
+ {
HeaterReady[index] = true;
HeaterPrepareReady();
}
}
+
if(HeaterPIDConfig[index].m_isEnabled && (HeaterPIDConfig[index].m_SetParam != 0))
{
if (HeaterControl[index].pidactive == false)
@@ -792,7 +812,7 @@ uint32_t HeatersControlLoop(uint32_t tick)
}
for ( DcHeaterId = HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ1; DcHeaterId<= HARDWARE_PID_CONTROL_TYPE__MixerHeater;DcHeaterId++)
{
- if (HeaterReady[DcHeaterId] == false)
+ if (DCInitialHeating[DcHeaterId] == true)
continue;
if (DCTimeSliceAllocation[DcHeaterId] > 0) //heater active
{