aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2020-12-10 08:44:23 +0200
committerShlomo Hecht <shlomo@twine-s.com>2020-12-10 08:44:23 +0200
commit322073a52f4afc5c09903a92dd1c12bd111cd040 (patch)
tree8c7da6dc858ba4c818813c5eee146d21d49e3122 /Software/Embedded_SW
parent90a01b662322c7e52aa242ae23a0ee33e61b9380 (diff)
parent8cf2490a30fd21959cea4baa0afc9cdced434593 (diff)
downloadTango-322073a52f4afc5c09903a92dd1c12bd111cd040.tar.gz
Tango-322073a52f4afc5c09903a92dd1c12bd111cd040.zip
merge
Diffstat (limited to 'Software/Embedded_SW')
-rw-r--r--Software/Embedded_SW/Embedded/Common/SWUpdate/FileSystem.c13
-rw-r--r--Software/Embedded_SW/Embedded/Common/report/reportInit.c2
-rw-r--r--Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c5
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c15
-rw-r--r--Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.c4
5 files changed, 25 insertions, 14 deletions
diff --git a/Software/Embedded_SW/Embedded/Common/SWUpdate/FileSystem.c b/Software/Embedded_SW/Embedded/Common/SWUpdate/FileSystem.c
index f3d42b01a..a59a14dcf 100644
--- a/Software/Embedded_SW/Embedded/Common/SWUpdate/FileSystem.c
+++ b/Software/Embedded_SW/Embedded/Common/SWUpdate/FileSystem.c
@@ -794,8 +794,11 @@ FRESULT FileWrite(void * buffer, uint16_t size,char *path, uint32_t timeout)
{
LOG_ERROR (Fresult,"fwrite error");
}
- //LOG_ERROR (Bytes,"f_write ok no of bytes");
- Report("f_write ok no of bytes", __FILE__, __LINE__, Bytes, RpWarning, (int)size, 0);
+ else
+ {
+ //LOG_ERROR (Bytes,"f_write ok no of bytes");
+ Report("f_write ok no of bytes", __FILE__, __LINE__, Bytes, RpWarning, (int)size, 0);
+ }
f_close(FileHandle);
}
else
@@ -875,12 +878,14 @@ FRESULT FileRead(char *path, uint32_t *Size, void **Buffer)
}
else
{
- LOG_ERROR (Fresult,"malloc error");
+ Report("malloc error", __FILE__, __LINE__, Fresult, RpWarning, (int)fno->fsize, 0);
+ Fresult = FR_DENIED;
}
}
else
{
- LOG_ERROR (Fresult,"f_stat error");
+ Report("f_stat error", __FILE__, __LINE__, Fresult, RpWarning, (int)0, 0);
+ Fresult = FR_DENIED;
}
my_free(fno);
return Fresult;
diff --git a/Software/Embedded_SW/Embedded/Common/report/reportInit.c b/Software/Embedded_SW/Embedded/Common/report/reportInit.c
index a11f9db73..633b8ca34 100644
--- a/Software/Embedded_SW/Embedded/Common/report/reportInit.c
+++ b/Software/Embedded_SW/Embedded/Common/report/reportInit.c
@@ -134,6 +134,8 @@ uint32_t LogToFile(char *message, /* The formatted message
len = usnprintf(RepMessage, 300, "\r\nfile %s\t line %d\t code %d\t sev %d,\tparam %d,\t %s",FileName, LineNumber,errorCode, Severity, parameter,message);
LogFresult = f_write(LogFileHandle,RepMessage,len,&Bytes );
+ if (LogFileHandle->fsize > 100000)
+ f_lseek(LogFileHandle, 0);
return LogFresult;
}
diff --git a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
index 7b4a30dd2..010fc9607 100644
--- a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
+++ b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
@@ -220,7 +220,7 @@ void LoadConfigurationParameters(ConfigurationParameters *Params)
EmbeddedParameters->has_initialdispenserpressure = true;
EmbeddedParameters->initialdispenserpressure=3.85;
EmbeddedParameters->has_initialdispensertimeout = true;
- EmbeddedParameters->initialdispensertimeout=120000.0 ;
+ EmbeddedParameters->initialdispensertimeout=119999.0 ;
EmbeddedParameters->has_initialdispensertimelag = true;
EmbeddedParameters->initialdispensertimelag=100.0 ;
@@ -229,7 +229,7 @@ void LoadConfigurationParameters(ConfigurationParameters *Params)
EmbeddedParameters->has_dispenserbuildpressurelimit = true;
EmbeddedParameters->dispenserbuildpressurelimit=1.0 ;
EmbeddedParameters->has_dispenserbuildpressuretimeout = true;
- EmbeddedParameters->dispenserbuildpressuretimeout=150000;
+ EmbeddedParameters->dispenserbuildpressuretimeout=419999.0;
EmbeddedParameters->has_dispenserbuildpressurelag = true;
EmbeddedParameters->dispenserbuildpressurelag=50;
@@ -297,6 +297,7 @@ void LoadConfigurationParameters(ConfigurationParameters *Params)
EmbeddedParameters->powerofftemperaturelimit = 90;
EmbeddedParameters->has_ids_presegment_wfcf_timebeforesegment = true;
EmbeddedParameters->ids_presegment_wfcf_timebeforesegment = 20000;
+ EmbeddedParameters->description = "default embedded parameters";
uint8_t* response_buffer = my_malloc(configuration_parameters__get_packed_size(EmbeddedParameters));
if (response_buffer)
diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c
index 8f9246f8f..03bc9d24d 100644
--- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c
+++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c
@@ -50,6 +50,7 @@ bool WinderMotorSpeedRollOver = false;
int StartWinderCalculation = 0;
#define DEFAULT_SCREW_SPEED 1200
double ScrewSpeed = DEFAULT_SCREW_SPEED;
+double RetreatTime = 0;
double ScrewRunningTime = 0;
uint32_t ScrewNumberOfSteps = 0; //holds the current number of steps for the next screw run - will be used to build the cone
bool SCREW_TimerActivated = false;
@@ -635,6 +636,7 @@ uint32_t Winder_Presegment(void *SegmentDetails, uint32_t SegmentId)
temp *= ScrewNumberOfSteps;
temp /= ScrewSpeed;
ScrewRunningTime = temp;//(SYS_CLK_FREQ*InternalWinderCfg.segmentoffsetpulses)/ScrewSpeed;
+ RetreatTime = ScrewNumberOfSteps*1000/ScrewSpeed;
REPORT_MSG((int)ScrewNumberOfSteps,"Winder pre segment - ScrewNumberOfSteps");
REPORT_MSG((int)ScrewRunningTime,"Winder pre segment - ScrewRunningTime");
//MotorSetDirection (HARDWARE_MOTOR_TYPE__MOTO_SCREW, ScrewCurrentDirection);
@@ -673,11 +675,11 @@ uint32_t ScrewDTSCallback(uint32_t deviceID, uint32_t BusyFlag)
//move the cart to the edge so the spool can be easily replaced
//MotorMovetoLimitSwitch (HARDWARE_MOTOR_TYPE__MOTO_SCREW,MotorsCfg[HARDWARE_MOTOR_TYPE__MOTO_SCREW].directionthreadwize, 1000, GPI_LS_SCREW_RIGHT, NULL,0);
//MotorStop(HARDWARE_MOTOR_TYPE__MOTO_SCREW,Hard_Hiz);
- MotorMovetoLimitSwitch (HARDWARE_MOTOR_TYPE__MOTO_SCREW,MotorsCfg[HARDWARE_MOTOR_TYPE__MOTO_SCREW].directionthreadwize, ScrewSpeed, GPI_LS_SCREW_RIGHT, WinderDistanceToSpoolEnded,4000);
+ MotorMovetoLimitSwitch (HARDWARE_MOTOR_TYPE__MOTO_SCREW,MotorsCfg[HARDWARE_MOTOR_TYPE__MOTO_SCREW].directionthreadwize, ScrewSpeed, GPI_LS_SCREW_RIGHT, WinderDistanceToSpoolEnded,RetreatTime*2);
#ifdef FOUR_WINDERS
- MotorMovetoLimitSwitch (SCREW_2_Motor,MotorsCfg[SCREW_2_Motor].directionthreadwize, ScrewSpeed, GPI_LS_SPARE2_2, NULL,4000);
- MotorMovetoLimitSwitch (SCREW_3_Motor,MotorsCfg[SCREW_3_Motor].directionthreadwize, ScrewSpeed, GPI_LS_SPARE1_2, NULL,4000);
- MotorMovetoLimitSwitch (SCREW_4_Motor,MotorsCfg[SCREW_4_Motor].directionthreadwize, ScrewSpeed, GPI_LS_RDANCER_UP, NULL,4000);
+ MotorMovetoLimitSwitch (SCREW_2_Motor,MotorsCfg[SCREW_2_Motor].directionthreadwize, ScrewSpeed, GPI_LS_SPARE2_2, NULL,RetreatTime*2);
+ MotorMovetoLimitSwitch (SCREW_3_Motor,MotorsCfg[SCREW_3_Motor].directionthreadwize, ScrewSpeed, GPI_LS_SPARE1_2, NULL,RetreatTime*2);
+ MotorMovetoLimitSwitch (SCREW_4_Motor,MotorsCfg[SCREW_4_Motor].directionthreadwize, ScrewSpeed, GPI_LS_RDANCER_UP, NULL,RetreatTime*2);
#endif
return OK;
@@ -688,9 +690,10 @@ uint32_t WinderDistanceToSpoolState(void )
double WinderBackTimeBySpeed = WinderBackToBaseTime;
WinderBackTimeBySpeed *= 50;
WinderBackTimeBySpeed /= dyeingspeed;
- REPORT_MSG ((int)DTS_Time,"WinderDistanceToSpoolState");
+ Report("WinderDistanceToSpoolState start", __FILE__,DTS_Time,RetreatTime, RpMessage, (int)WinderBackTimeBySpeed, 0);
+ //REPORT_MSG ((int)DTS_Time,"WinderDistanceToSpoolState");
- ScrewDTSControlId = AddControlCallback("screw DTS",ScrewDTSCallback, DTS_Time-WinderBackTimeBySpeed,TemplateDataReadCBFunction,0,0,0);
+ ScrewDTSControlId = AddControlCallback("screw DTS",ScrewDTSCallback, DTS_Time-RetreatTime,TemplateDataReadCBFunction,0,0,0);
Report("ScrewDTSCallback start", __FILE__,DTS_Time,msec_millisecondCounter, RpMessage, (int)WinderBackTimeBySpeed, 0);
return OK;
diff --git a/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.c b/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.c
index 3e790eabe..cb0703f27 100644
--- a/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.c
+++ b/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.c
@@ -203,7 +203,7 @@ JobDescriptionFileSegment *GetNextSegmentFromJobFile()
}//segment malloc
else
{
- LOG_ERROR (SegmentPtr, "malloc error");
+ LOG_ERROR (SegmentSize, "malloc error");
//status = ERROR;
}
}//segment read size
@@ -270,7 +270,7 @@ JobDescriptionFileBrushStop *GetNextBrushStopFromJobFile()
}//brushstop size read ok
else
{
- LOG_ERROR (BrushStopPtr, "malloc error");
+ Report("malloc error", __FILE__, __LINE__, BrushStopSize, RpWarning, (int)0, 0);
//status = ERROR;
}
}// if brush stop count