aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules/Thread
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2020-02-25 11:35:18 +0200
committerShlomo Hecht <shlomo@twine-s.com>2020-02-25 11:35:18 +0200
commit5c8596be64deacfbe282c03ba21cec66ed4e2494 (patch)
treea8d3632748b8a56859936810e170883f92e4fbc0 /Software/Embedded_SW/Embedded/Modules/Thread
parentc3b9b401883c2ef45accfa2d26c7ff6276691c34 (diff)
parentfdb539e472eaaaff74a05aa661e471543ae07313 (diff)
downloadTango-5c8596be64deacfbe282c03ba21cec66ed4e2494.tar.gz
Tango-5c8596be64deacfbe282c03ba21cec66ed4e2494.zip
Merge branch 'master' of https://twinetfs.visualstudio.com/Tango/_git/Tango
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules/Thread')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c13
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c14
2 files changed, 16 insertions, 11 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c
index 78092ae2b..78150e9f9 100644
--- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c
+++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c
@@ -213,9 +213,16 @@ uint32_t Winder_PrepareStage2(uint32_t deviceID, uint32_t ReadValue)
REPORT_MSG(millisecondCounter/*MotorsCfg[HARDWARE_MOTOR_TYPE__MOTO_SCREW].maxfrequency*/, "Winder_PrepareStage2");
if (ReadValue != LIMIT)
{
- LOG_ERROR(ReadValue,"Screw failed to reach the limit switch!!");
- //returned with a timeout
- Winder_ScrewAtOffsetCallback(0,0);
+ if (JobIsActive()==true)
+ {
+ LOG_ERROR(ReadValue,"Screw failed to reach the limit switch!!");
+ //returned with a timeout
+ Winder_ScrewAtOffsetCallback(0,0);
+ }
+ else //short jog, etc
+ {
+ AlarmHandlingSetAlarm (EVENT_TYPE__SCREW_MOTOR_LIMIT_TIMEOUT,OFF); //on a short jog, this callback will be called without need
+ }
}
else
{
diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c
index 1dd101f82..9e0a2ac7f 100644
--- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c
+++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c
@@ -442,7 +442,6 @@ void testDancersControl()
ThreadControlActive = false;
}
#endif
-bool dancerinvalid = false;
int MotorFailedSample[MAX_THREAD_MOTORS_NUM] = {0,0,0,0,0};
char TMessage[150];
//char time[150];
@@ -481,21 +480,20 @@ uint32_t ThreadControlCBFunction(uint32_t IfIndex, uint32_t ReadValue)
//if (MotorDriverResponse[ThreadMotorIdToMotorId[index]].Busy == true)
// return OK;
DancerId = ThreadMotorIdToDancerId[index];
- if (ReadValue < 10)
+/* if (ReadValue < 10)
{
MotorFailedSample[index]++;
ReportWithPackageFilter(ThreadFilter,"Dancer value read too small.",__FILE__,__LINE__,DancerId,RpError,ReadValue,0);
return OK;
- }
+ }*/
if (ReadValue == 0x3FFF)
{
- MotorFailedSample[index]++;
- if (dancerinvalid == false)
+ if (Read_Dryer_Status(DancerId) != OK)
{
- dancerinvalid = true;
- ReportWithPackageFilter(ThreadFilter,"Dancer value invalid.",__FILE__,__LINE__,(int)IfIndex,RpError,(int)ReadValue,0);
+ ReportWithPackageFilter(ThreadFilter,"Dancer value invalid.",__FILE__,ReadValue,(int)DancerId,RpError,(int)Read_Dryer_Status(DancerId),0);
+ MotorFailedSample[index]++;
+ return OK;
}
- return OK;
}
KeepReadValue = ReadValue;
TranslatedReadValue = ReadValue - DancersCfg[DancerId].zeropoint;