aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules
diff options
context:
space:
mode:
authorVictoria Plitt <Victoria.Plitt@twine-s.com>2020-05-17 11:35:50 +0300
committerVictoria Plitt <Victoria.Plitt@twine-s.com>2020-05-17 11:35:50 +0300
commit7e8a9cd6d70fb8b2f7334d6fcb2486dc21c81382 (patch)
tree6f2888a4743e7e49c9a6bf283465b96e1989ba87 /Software/Embedded_SW/Embedded/Modules
parent623fc9d184cf937441f14b532efc5f3deec5783e (diff)
parentdbaa3118334f2de0a8225dbc130404e3085c551e (diff)
downloadTango-7e8a9cd6d70fb8b2f7334d6fcb2486dc21c81382.tar.gz
Tango-7e8a9cd6d70fb8b2f7334d6fcb2486dc21c81382.zip
Merge branch 'master' of https://twinetfs.visualstudio.com/Tango/_git/Tango
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/General/process.c4
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c1
-rw-r--r--Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c2
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c29
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Waste/Waste_init.c3
5 files changed, 34 insertions, 5 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/General/process.c b/Software/Embedded_SW/Embedded/Modules/General/process.c
index ab4c6daac..fafdbed65 100644
--- a/Software/Embedded_SW/Embedded/Modules/General/process.c
+++ b/Software/Embedded_SW/Embedded/Modules/General/process.c
@@ -320,10 +320,7 @@ void ProcessRequestFunc(MessageContainer* requestContainer)
*/
/////////////////////////////////////////////////////////
UploadProcessParametersResponse response = UPLOAD_PROCESS_PARAMETERS_RESPONSE__INIT;
-
responseContainer = createContainer(MESSAGE_TYPE__UploadProcessParametersResponse, requestContainer->token, true, &response, &upload_process_parameters_response__pack, &upload_process_parameters_response__get_packed_size);
- container_buffer = my_malloc(message_container__get_packed_size(&responseContainer));
-
//REPORT_MSG (ProcessParams->dryerzone1temp,"Process Params Dryer");
PowerIdleOutOfIdleState();
@@ -336,6 +333,7 @@ void ProcessRequestFunc(MessageContainer* requestContainer)
responseContainer.error = (ErrorCode)status;
responseContainer.errormessage = ProcessErrorMsg;
}
+ container_buffer = my_malloc(message_container__get_packed_size(&responseContainer));
size_t container_size = message_container__pack(&responseContainer, container_buffer);
my_free(responseContainer.data.data);
SendChars(container_buffer, container_size);
diff --git a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
index 89bdcc66b..45a0e374b 100644
--- a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
+++ b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
@@ -1131,6 +1131,7 @@ uint32_t HeaterControlCBFunction(uint32_t IfIndex, uint32_t readValue)
if ((readValue>(HeaterCmd[index].targettemperatue+800))&&(getIdleState() == false))
{
ReportWithPackageFilter(HeatersFilter, "AC OverHeating in progress",__FILE__,readValue,HeaterReady[index],RpError, HeaterAtTemp[index],0);
+ ReportWithPackageFilter(HeatersFilter, "AC OverHeating PID",__FILE__,(int)HeaterPIDConfig[index].m_calculatedError,(int)HeaterPIDConfig[index].m_SetParam,RpError, (int)HeaterPIDConfig[index].m_integral,0);
}
// check if the read value is within the proportional band
if (HeaterReady[index]==false)
diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c
index bb9f0616e..3798e9aee 100644
--- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c
+++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c
@@ -366,7 +366,7 @@ void IDS_Dispenser_Content_Calculation (char DispenserId)
}
if (DispenserId == 0)
{
- if ((seconds_counter++>=900)&&(DispenserDataUpdated == true))//9000)// - one hour)
+ if ((seconds_counter++>=9000)&&(DispenserDataUpdated == true))//9000)// - one hour)
{
seconds_counter = 0;
if (IDS_Dispenser_Data[DispenserId].consumedinnanolitter)
diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c
index 69f640c45..f0e459514 100644
--- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c
+++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c
@@ -140,6 +140,13 @@ uint32_t Control_Delta_Position_Pass(uint32_t Current_Read,uint32_t Previous_Rea
* **************************************************************************************/
uint32_t initialpos = 0xFFFF;
uint32_t Poolerinitialpos = 0xFFFF;
+#define SPEED_STORE_SIZE 20
+float PullerSpeedStore[SPEED_STORE_SIZE];
+float PullerSpeedAverage;
+int PullerSpeedIndex = 0;
+float FeederSpeedStore[SPEED_STORE_SIZE];
+float FeederSpeedAverage;
+int FeederSpeedIndex = 0,Speed_i;
void ThreadUpdateProcessLength (double length, void *Funcptr)
{
@@ -206,6 +213,15 @@ uint32_t ThreadLengthCBFunction(uint32_t IfIndex, uint32_t ReadValue)
}
}
+ FeederSpeedStore[FeederSpeedIndex++] = length;
+ if (FeederSpeedIndex>=SPEED_STORE_SIZE)
+ {
+ FeederSpeedIndex = 0;
+ for (Speed_i = 0;Speed_i<SPEED_STORE_SIZE;Speed_i++)
+ FeederSpeedAverage+=FeederSpeedStore[Speed_i];
+ FeederSpeedAverage = FeederSpeedAverage/SPEED_STORE_SIZE;
+ ReportWithPackageFilter(ThreadFilter,"Average Speed 2 second",__FILE__,__LINE__,(int)(FeederSpeedAverage*100),RpWarning,(int)(PullerSpeedAverage*100),0);
+ }
TotalProcessedLength += (length/100);
TempTotalProcessedLength = TotalProcessedLength;
#ifdef FEEDER_LENGTH_CALCULATION
@@ -242,7 +258,6 @@ uint32_t ThreadLengthCBFunction(uint32_t IfIndex, uint32_t ReadValue)
return OK;
}
-
uint32_t PoolerThreadLengthCBFunction(uint32_t IfIndex, uint32_t ReadValue)
{
uint32_t positionDiff = 0,prevprev;
@@ -297,6 +312,15 @@ uint32_t PoolerThreadLengthCBFunction(uint32_t IfIndex, uint32_t ReadValue)
length = 0;
}
+ PullerSpeedStore[PullerSpeedIndex++] = length;
+ if (PullerSpeedIndex>=SPEED_STORE_SIZE)
+ {
+ PullerSpeedIndex = 0;
+ for (Speed_i = 0;Speed_i<SPEED_STORE_SIZE;Speed_i++)
+ PullerSpeedAverage+=PullerSpeedStore[Speed_i];
+ PullerSpeedAverage = PullerSpeedAverage/SPEED_STORE_SIZE;
+ //ReportWithPackageFilter(ThreadFilter,"Average Speed 2 second",__FILE__,__LINE__,(int)(FeederSpeedAverage*100),RpWarning,(int)(PullerSpeedAverage*100),0);
+ }
//}
@@ -1101,6 +1125,9 @@ uint32_t ThreadPreSegmentState(void *SegmentDetails, uint32_t SegmentId)
SetOriginMotorSpeed(process_speed);
ThreadControlActive = true;
PrepareState = false;
+ PullerSpeedIndex = 0;
+ FeederSpeedIndex = 0;
+
#ifndef TEST_PID_THREAD
// set the new speed in the dryer motor to the speed of the new segment
if(MotorsCfg[HARDWARE_MOTOR_TYPE__MOTO_RDRIVING].speedmaster == false)
diff --git a/Software/Embedded_SW/Embedded/Modules/Waste/Waste_init.c b/Software/Embedded_SW/Embedded/Modules/Waste/Waste_init.c
index 922da21b1..f266cb9da 100644
--- a/Software/Embedded_SW/Embedded/Modules/Waste/Waste_init.c
+++ b/Software/Embedded_SW/Embedded/Modules/Waste/Waste_init.c
@@ -834,6 +834,7 @@ bool WasteTankCBFunction()
MidTankValvesAction(Cartridge_MidTank_OFF);
IFS_info.Ink.time_out = 0;
IFS_info.Cartridge_Ink_TimeOut_device_Id = RemoveControlCallback(IFS_info.Cartridge_Ink_TimeOut_device_Id, WasteTankCBFunction );
+ WHS_Set_IFS_Clearing_Suction();
}
}
break;
@@ -884,6 +885,7 @@ bool WasteTankCBFunction()
Pannel_Leds(CART_2, MODE_OFF);
cart2.color = colorOFF;
WHS_info.cartridge_1.autheticate = FAILED;
+ WHS_Set_IFS_Clearing_Suction();
}
//SetActiveWastCartridge();
break;
@@ -926,6 +928,7 @@ bool WasteTankCBFunction()
WHS_info.WHS_valve = waste_cartridge1;
*/
}
+ WHS_Set_IFS_Clearing_Suction();
//SetActiveWastCartridge();
break;