Burhan's WIP version 6.1 from 2007-10-25

r3275 | dcl | 2011-11-24 10:02:28 +1100 (Thu, 24 Nov 2011) | 1 line
This commit is contained in:
Douglas Clowes
2011-11-24 10:02:28 +11:00
parent 66064554a8
commit 2fd7540445

View File

@@ -82,17 +82,19 @@ XQ #THREAD4,4
'EXECUTE THREAD 5--------------------------------- 'EXECUTE THREAD 5---------------------------------
XQ #THREAD5,5 XQ #THREAD5,5
#LOOP #LOOP
'SICS asks for a request before moving axes A and B 'SICS asks for a request before moving A axis (tube)
'IF (REQA=1)&(REQB=1) IF (REQA=1)&(RSPA=0)
'controller checks if motor can be driven and wedges can be moved 'controller checks if motor can be driven and wedges can be moved
'if motor can be driven and everything is ok 'if motor can be driven and everything is ok
'RSPA=1 RSPA=1
'RSPB=1 '(if motor fault)
'else(if motor fault)
'RSPA=-1 'RSPA=-1
'RSPB=-1 ENDIF
'endif 'if wedge shuffle routine has done,then SICS sends REQA=0
'endif IF (REQA=0)&(RSPA=1)
'GALIL resets RSPA flag
RSPA=0
ENDIF
JP #LOOP JP #LOOP
EN EN
'-----THREAD 0 ENDS------------------------------------------------- '-----THREAD 0 ENDS-------------------------------------------------
@@ -100,7 +102,7 @@ EN
#THREAD1 #THREAD1
#LOOP1 #LOOP1
'if everything is ok 'if everything is ok
IF (RSPA=1)&(RSPB=1) IF (REQA=1)&(RSPA=1)
'EXECUTING RECOVERY PROCEDURE IF WEDGE PATTERN IS (0,0) 'EXECUTING RECOVERY PROCEDURE IF WEDGE PATTERN IS (0,0)
IF (CNTLEFT=0)&(CNTRIGHT=0) IF (CNTLEFT=0)&(CNTRIGHT=0)
JS #WDG1CW JS #WDG1CW
@@ -108,7 +110,7 @@ JS #RECLPUP,(LOST=0)
JS #RECRDOP,(LOST=0) JS #RECRDOP,(LOST=0)
ELSE ELSE
'NORMAL ROUTINE -> MAIN DRIVE MOVES TO THE DESTINATION POSITION 'NORMAL ROUTINE -> MAIN DRIVE MOVES TO THE DESTINATION POSITION
JS #MOVEMD,(RUNA=1)&(RUNB=1)&(STOP=0)&(DONE=0)&(ERRORFLG=0)&(FBERROR=0) JS #MOVEMD,(RUNA=1)&(STOP=0)&(DONE=0)&(ERRORFLG=0)&(FBERROR=0)
ENDIF ENDIF
ENDIF ENDIF
JP #LOOP1 JP #LOOP1
@@ -220,7 +222,7 @@ ENDIF
EN EN
'SUBROUTINE "MOVEMD" BEGINS------------------------- 'SUBROUTINE "MOVEMD" BEGINS-------------------------
#MOVEMD #MOVEMD
ERROR=_TPC - DSTB ERROR=_TPC - DSTA
'IF MD HAS REACHED FINAL DESTINATION 'IF MD HAS REACHED FINAL DESTINATION
IF @ABS[ERROR]<DEADBAND IF @ABS[ERROR]<DEADBAND
'STOP MD 'STOP MD
@@ -229,15 +231,8 @@ MC B
'IT INDICATES MD HAS REACHED FINAL DEST 'IT INDICATES MD HAS REACHED FINAL DEST
DONE=1 DONE=1
'Wedge Shuffle Routine is complete 'Wedge Shuffle Routine is complete
IF (CURPOS=DSTB)
RUNA=0 RUNA=0
RUNB=0 POSA=DSTA
ENDIF
'after SICS resets REQ flags,then GALIL resets RSP flags
IF (REQA=0)&(REQB=0)
RSPA=0
RSPB=0
ENDIF
MG "WEDGE SHUFFLE ROUTINE HAS BEEN COMPLETED" {EB} MG "WEDGE SHUFFLE ROUTINE HAS BEEN COMPLETED" {EB}
ELSE ELSE
MG "MD IS MOVING TO THE DESTINATION" {EB} MG "MD IS MOVING TO THE DESTINATION" {EB}
@@ -255,7 +250,7 @@ EN
JS #CKMDDIR JS #CKMDDIR
'DECIDE UNLATCH RANGE,LOCATION OF THE WEDGE LATCH 'DECIDE UNLATCH RANGE,LOCATION OF THE WEDGE LATCH
JS #PROCESS JS #PROCESS
'CKECK LEFT & RIGHT CAM SWITCH BEFORE MOVING WEDGE 'CHECK LEFT & RIGHT CAM SWITCH BEFORE MOVING WEDGE
JS #CKLSMD,(STOP=0)&(RECOVER=0)&(ERRORFLG=0) JS #CKLSMD,(STOP=0)&(RECOVER=0)&(ERRORFLG=0)
'STOP MD WHEN MD IS WITHIN UNLATCH RANGE 'STOP MD WHEN MD IS WITHIN UNLATCH RANGE
JS #STOPMD,(OKFLG=1) JS #STOPMD,(OKFLG=1)
@@ -269,6 +264,7 @@ AT 500
REFPOS=_TPC REFPOS=_TPC
AT 1000 AT 1000
CURPOS=_TPC CURPOS=_TPC
POSA=_TPC
'IF MD MOVES CLOCKWISE THEN VARIABLE "DIR" IS '1' 'IF MD MOVES CLOCKWISE THEN VARIABLE "DIR" IS '1'
IF CURPOS < REFPOS IF CURPOS < REFPOS
DIR=1 DIR=1
@@ -372,6 +368,7 @@ EN
IF (DIR=0)&(@IN[1]=1) IF (DIR=0)&(@IN[1]=1)
OKFLG=0 OKFLG=0
ERRORFLG=1 ERRORFLG=1
'RUNA=-1
MG "ERROR.MD CCW" {EB} MG "ERROR.MD CCW" {EB}
MG "LEFT CAM LIM SWI SHOULDN'T BE ACTIVATED BEFORE MOVING A WDG" {EB} MG "LEFT CAM LIM SWI SHOULDN'T BE ACTIVATED BEFORE MOVING A WDG" {EB}
ENDIF ENDIF
@@ -380,6 +377,7 @@ ENDIF
IF (DIR=0)&(@IN[2]=0)&(_TPC >= ULMAX) IF (DIR=0)&(@IN[2]=0)&(_TPC >= ULMAX)
OKFLG=0 OKFLG=0
ERRORFLG=1 ERRORFLG=1
'RUNA=-1
MG "ERROR.MD CCW" {EB} MG "ERROR.MD CCW" {EB}
MG "MD PASSED UNLATCHED RANGE BUT RIGHT CAM LIM SWI ISN'T ACTIVATED" {EB} MG "MD PASSED UNLATCHED RANGE BUT RIGHT CAM LIM SWI ISN'T ACTIVATED" {EB}
ENDIF ENDIF
@@ -391,6 +389,7 @@ ELSE
MG "ERROR.MD CCW.(0,3).RIGHT CAM LIM SWI ISN'T SUPPOSED TO CLICK" {EB} MG "ERROR.MD CCW.(0,3).RIGHT CAM LIM SWI ISN'T SUPPOSED TO CLICK" {EB}
OKFLG=0 OKFLG=0
ERRORFLG=1 ERRORFLG=1
'RUNA=-1
ENDIF ENDIF
ENDIF ENDIF
IF (DIR=0)&(@IN[2]=1)&(CNTLEFT=1)&(CNTRIGHT=2) IF (DIR=0)&(@IN[2]=1)&(CNTLEFT=1)&(CNTRIGHT=2)
@@ -400,6 +399,7 @@ ELSE
MG "ERROR.MD CCW.(1,2).RIGHT CAM LIM SWI ISN'T SUPPOSED TO CLICK" {EB} MG "ERROR.MD CCW.(1,2).RIGHT CAM LIM SWI ISN'T SUPPOSED TO CLICK" {EB}
OKFLG=0 OKFLG=0
ERRORFLG=1 ERRORFLG=1
'RUNA=-1
ENDIF ENDIF
ENDIF ENDIF
IF (DIR=0)&(@IN[2]=1)&(CNTLEFT=2)&(CNTRIGHT=1) IF (DIR=0)&(@IN[2]=1)&(CNTLEFT=2)&(CNTRIGHT=1)
@@ -409,6 +409,7 @@ ELSE
MG "ERROR.MD CCW.(2,1).RIGHT CAM LIM SWI ISN'T SUPPOSED TO CLICK" {EB} MG "ERROR.MD CCW.(2,1).RIGHT CAM LIM SWI ISN'T SUPPOSED TO CLICK" {EB}
OKFLG=0 OKFLG=0
ERRORFLG=1 ERRORFLG=1
'RUNA=-1
ENDIF ENDIF
ENDIF ENDIF
IF (DIR=0)&(@IN[2]=1)&(CNTLEFT=3)&(CNTRIGHT=0) IF (DIR=0)&(@IN[2]=1)&(CNTLEFT=3)&(CNTRIGHT=0)
@@ -418,6 +419,7 @@ ELSE
MG "ERROR.MD CCW.(3,0).RIGHT CAM LIM SWI ISN'T SUPPOSED TO CLICK" {EB} MG "ERROR.MD CCW.(3,0).RIGHT CAM LIM SWI ISN'T SUPPOSED TO CLICK" {EB}
OKFLG=0 OKFLG=0
ERRORFLG=1 ERRORFLG=1
'RUNA=-1
ENDIF ENDIF
ENDIF ENDIF
'IF MD CCW AND RIGHT CAM LIM SWI IS ACTIVATED 'IF MD CCW AND RIGHT CAM LIM SWI IS ACTIVATED
@@ -454,6 +456,7 @@ MG "OK.MD CW.LATCH HITS RIGHT CAM LIM SWI" {EB}
ELSE ELSE
OKFLG=0 OKFLG=0
ERRORFLG=1 ERRORFLG=1
'RUNA=-1
MG "ERROR.MD CW.RIGHT CAM LIM SWI NOT SUPPOSED TO CLICK" {EB} MG "ERROR.MD CW.RIGHT CAM LIM SWI NOT SUPPOSED TO CLICK" {EB}
ENDIF ENDIF
ENDIF ENDIF
@@ -462,6 +465,7 @@ ENDIF
IF (DIR=1)&(@IN[1]=0)&(_TPC <= ULMAX) IF (DIR=1)&(@IN[1]=0)&(_TPC <= ULMAX)
OKFLG=0 OKFLG=0
ERRORFLG=1 ERRORFLG=1
'RUNA=-1
MG "ERROR.MAIN DRIVE CW" {EB} MG "ERROR.MAIN DRIVE CW" {EB}
MG "MD PASSED UNLATCH RANGE BUT LEFT CAM LIM SWI ISN'T ACTIVATED" {EB} MG "MD PASSED UNLATCH RANGE BUT LEFT CAM LIM SWI ISN'T ACTIVATED" {EB}
ENDIF ENDIF
@@ -487,6 +491,7 @@ ENDIF
ELSE ELSE
OKFLG=0 OKFLG=0
ERRORFLG=1 ERRORFLG=1
'RUNA=-1
MG "ERROR.MD CW.LEFT CAM LIM SWI CLICKS OUTSIDE UNLATCH RANGE" {EB} MG "ERROR.MD CW.LEFT CAM LIM SWI CLICKS OUTSIDE UNLATCH RANGE" {EB}
ENDIF ENDIF
ENDIF ENDIF
@@ -769,6 +774,7 @@ ST A
MC A MC A
MG "ERROR.LEFT CAM LIMIT ACTIVATES OUTSIDE RANGE" {EB} MG "ERROR.LEFT CAM LIMIT ACTIVATES OUTSIDE RANGE" {EB}
WDGCCW=0 WDGCCW=0
'RUNA=-1
ENDIF ENDIF
ENDIF ENDIF
'====================================================================== '======================================================================
@@ -783,6 +789,7 @@ ST A
MC A MC A
MG "ERROR.RIGHT CAM LIMIT ACTIVATES OUTSIDE RANGE" {EB} MG "ERROR.RIGHT CAM LIMIT ACTIVATES OUTSIDE RANGE" {EB}
WDGCW=0 WDGCW=0
'RUNA=-1
ENDIF ENDIF
ENDIF ENDIF
'CHECK LEFT CAM LIM SWI AFTER PICK UP A WDG 'CHECK LEFT CAM LIM SWI AFTER PICK UP A WDG
@@ -792,6 +799,7 @@ ST A
MC A MC A
MG "ERROR.LEFT CAM LIMIT NOT SUPPOSED TO CLICK AFTER ARM PICKS UP A WDG" {EB} MG "ERROR.LEFT CAM LIMIT NOT SUPPOSED TO CLICK AFTER ARM PICKS UP A WDG" {EB}
WDGCW=0 WDGCW=0
'RUNA=-1
ENDIF ENDIF
ENDIF ENDIF
'+++++++++++++++++++++++++++++++++++++++++++++++++ '+++++++++++++++++++++++++++++++++++++++++++++++++