aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c17
-rw-r--r--Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c4
-rw-r--r--Software/Embedded_SW/Embedded/Modules/IFS/ifs.c4
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Thread/ThreadLoad.c26
4 files changed, 37 insertions, 14 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
index c5fffff60..f9401c248 100644
--- a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
+++ b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
@@ -618,7 +618,7 @@ uint16_t realtimetest[101];
uint16_t dbgflag[50];
uint32_t dbttime[50];
bool Ten_msTick, Fifty_msTick, Hundred_msTick , m20msecTick,m90msecTick, Onesecond_Tick,Tensecond_Tick,OneMinute_Tick,TenMinutes_Tick,OneHourTick,Gradient_Tick;
-bool O700Millisecond_Tick,O200Millisecond_Tick,O400Millisecond_Tick,O500Millisecond_Tick,O600Millisecond_Tick,O800Millisecond_Tick;
+bool O700Millisecond_Tick,O200Millisecond_Tick,O400Millisecond_Tick,O500Millisecond_Tick,O600Millisecond_Tick,O800Millisecond_Tick,m50msecTick;
uint32_t MillisecLowLoop(uint32_t tick)
{
@@ -636,7 +636,7 @@ uint32_t MillisecLowLoop(uint32_t tick)
Fifty_msTick = (tick%eHundredMillisecond == 40) ?true:false; //eFiftyMillisecond
Hundred_msTick = (tick%eHundredMillisecond == 0) ?true:false;
m20msecTick = (tick%eHundredMillisecond == 20) ?true:false;
- //m70msecTick = (tick%eHundredMillisecond == 70) ?true:false;
+ m50msecTick = (tick%50== 0) ?true:false;
m90msecTick = (tick%eHundredMillisecond == 90) ?true:false;
O700Millisecond_Tick = (tick%eOneSecond == 700) ?true:false;
O200Millisecond_Tick = (tick%eOneSecond == 200) ?true:false;
@@ -672,6 +672,14 @@ uint32_t MillisecLowLoop(uint32_t tick)
dbgflag[2]++;
dbttime[2] = msec_millisecondCounter;
Read_Dryer_ENC_Position();
+ dbgflag[3]++;
+ }
+ if (m50msecTick) //50 milli
+ {
+#ifdef USE_UART4_FOR_BTSR
+ //call every 50mSec
+ BTSR_State_Machine(RUFeeder1);
+#endif
}
if (m20msecTick)
{
@@ -682,11 +690,6 @@ uint32_t MillisecLowLoop(uint32_t tick)
WHS_Read_GPI_Registers();
Trigger_PT100_Read();//call every 50mSec (minimum delay 30mSec)
//Set_HeadCard_PT100();//call every 50mSec (minimum delay 30mSec)
-
- #ifdef USE_UART4_FOR_BTSR
- //call every 50mSec
- BTSR_State_Machine(RUFeeder1);
- #endif
}
if (m90msecTick)
{
diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c
index 19507775e..71bae1f40 100644
--- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c
+++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c
@@ -1376,8 +1376,8 @@ uint32_t IDSCheckSegmentData(void *SegmentDetails, int SegmentId)
//for (Brush_i=JobBrushStopId;Brush_i<PrevSegment->brushstopscount;Brush_i++) #bug 3348 - unhandled jobstops stops too soon
for (Brush_i=JobBrushStopId;Brush_i<PrevSegment->brushstopscount;Brush_i++)
{
- if (status == ERROR)
- break;
+ //if (status == ERROR)
+ // break;
tFileBrushStop = GetNextBrushStopFromJobFile();
if (tFileBrushStop)
{
diff --git a/Software/Embedded_SW/Embedded/Modules/IFS/ifs.c b/Software/Embedded_SW/Embedded/Modules/IFS/ifs.c
index 2c67a623b..5b0cf9cb7 100644
--- a/Software/Embedded_SW/Embedded/Modules/IFS/ifs.c
+++ b/Software/Embedded_SW/Embedded/Modules/IFS/ifs.c
@@ -49,7 +49,7 @@ double MidTankEmptyLimit = MidTank_Pressure_EMPTY;
MidTankStateEnum midTankState = 0;
char CartridgeRequestToken[36+1];
-int CartridgeRequestId = 0x01010101;
+int CartridgeRequestId = 0x31313131;
bool RdInkCartridgeSensor()
{
@@ -199,7 +199,7 @@ uint32_t ReadInkCartridgeData()
CartridgeValidationRequest ValidationReq = CARTRIDGE_VALIDATION_REQUEST__INIT;
Cartridge CartridgeData;
- strcpy(CartridgeRequestToken,"Happy days are coming to us, soon");
+ strcpy(CartridgeRequestToken,"Happy days are coming to us, soonXXX");
memcpy(&CartridgeRequestToken[32],&CartridgeRequestId,sizeof(CartridgeRequestId));
CartridgeRequestId++;
diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/ThreadLoad.c b/Software/Embedded_SW/Embedded/Modules/Thread/ThreadLoad.c
index ffbb504db..2b1e52134 100644
--- a/Software/Embedded_SW/Embedded/Modules/Thread/ThreadLoad.c
+++ b/Software/Embedded_SW/Embedded/Modules/Thread/ThreadLoad.c
@@ -320,8 +320,21 @@
{
TimeoutsCounter = 0;
load.color = fastBILNK;
- usnprintf(LoadErrorMsg, 100, "/Stage %s - %s timeout",LoadStagesStr[LoadStages], MotorStr[MotorId]);
- Report(LoadErrorMsg,__FILE__,__LINE__,LoadStages,RpWarning,TimeoutsCounter,0);
+ if (LoadStages == THREAD_LOAD_INITIAL_TENSION)
+ {
+ usnprintf(LoadErrorMsg, 100, "/Stage %s - no cone in winder!!",LoadStagesStr[LoadStages]);
+ Report(LoadErrorMsg,__FILE__,__LINE__,LoadStages,RpWarning,TimeoutsCounter,0);
+ }
+ else if (LoadStages == THREAD_LOAD_JOG_THREAD)
+ {
+ usnprintf(LoadErrorMsg, 100, "/Stage %s - Dryer door is open!!",LoadStagesStr[LoadStages]);
+ Report(LoadErrorMsg,__FILE__,__LINE__,LoadStages,RpWarning,TimeoutsCounter,0);
+ }
+ else
+ {
+ usnprintf(LoadErrorMsg, 100, "/Stage %s - %s timeout",LoadStagesStr[LoadStages], MotorStr[MotorId]);
+ Report(LoadErrorMsg,__FILE__,__LINE__,LoadStages,RpWarning,TimeoutsCounter,0);
+ }
LoadStatus = ERROR;
ThreadLoadingReport();
@@ -447,13 +460,13 @@
{
REPORT_MSG(LoadStages, "Thread Load State Machine step Thread_Load_Initial_Tension");
load.color = BLINK;
+ CallbackCounter++;
if (FPGA_Read_limit_Switches(GPI_SW_SPOOL_EXISTS)==LIMIT)
{
REPORT_MSG(LIMIT, "No cone in winder");
Thread_Load_HomingCallback(HARDWARE_MOTOR_TYPE__MOTO_WINDER,NO_LIMIT);
//return ERROR;
}
- CallbackCounter++;
MotorMovetoBreakSensor (HARDWARE_MOTOR_TYPE__MOTO_WINDER,MotorsCfg[HARDWARE_MOTOR_TYPE__MOTO_WINDER].directionthreadwize, 500, Thread_Load_HomingCallback,10000);
return OK;
@@ -805,6 +818,13 @@
//Jog Thread Shortly To Make Sure Spool Is Running. Report End Of Loading
{
REPORT_MSG(LoadStages, "Thread Load State Machine step Thread_Load_Jog_Thread");
+ if (Get_COVER_1_State(DryerDoor))
+ {
+ CallbackCounter++;
+ REPORT_MSG(LIMIT, "Dryer door open");
+ Thread_Load_HomingCallback(HARDWARE_MOTOR_TYPE__MOTO_WINDER,NO_LIMIT);
+ return ERROR;
+ }
keepfeedertension = feedertension;
ProcessParametersKeep.feedertension = 0.0;
ThreadJoggingFunc(20);