/ COMPUTE LINE SPEED FROM MOTION PULSES 28-MAY-91 / / / / L IIIII N N EEEEE SSSS PPPP / L I N N E S P P / L I NN N E S P P / L I N N N EEEE SSS PPPP / L I N NN E S P / L I N N E S P / LLLLL IIIII N N EEEEE SSSS P / / / / /EDIT HISTORY: / /28-MAY-91 (LHN) / 1) REPLACED OLD LINESP TASK WITH THIS CODE / / / THIS TASK USES THE NUMBER OF MOTION PULSES / (FROM THE STACKER ENCODER) IN 200 MILLISECONDS / TO COMPUTE THE MACHINE LINE SPEED AND THE / REQUIRED STACKER VALVE TIMING ADVANCE. THE / TIMING ADVANCE IS USED TO COMPUTE THE NUMBER OF / MOTION PULSES TO DELAY THE TURN ON/OFF OF THE / INDIVIDUAL STACKER GATES. THE DELAY IS COMPUTED / IN MOTION PULSE UNITS USING THE INCLUDED STACKER / TIMING ADVANCE TABLE. / / THIS TASK RUNS EVERY 200 MILLISECONDS. TASK= LINESP CUR= LINEFLD INIWT= 0 VERS= 3 FIELD LINEFLD%10 *LINELOC / / / USEFULL DATA FOR TIMING COMPUTATIONS / / / / 1 MOTION PULSE => 4.128 MILLIMETERS / / THIS WAS COMPUTED FROM THE AVERAGE / OF THE MOTION PULSES PER CHOP FOR / ALL THE CHOP SIZES. / / / / / LINE MOTION PULSES TABLE INDEX MILLISECONDS/ / SPEED IN 200 MS (MP/200MS / 4 MOTION PULSE / M/MIN DEC. (OCTAL) [IN OCTAL]) / / 0 0 ( 0) 0 ---- / 25 20.2 ( 24) 5 9.90 / 50 40.4 ( 50) 12 4.95 / 75 60.6 ( 74) 17 3.30 / 100 80.7 (120) 24 2.47 / 125 100.9 (144) 31 1.98 / 150 121.9 (171) 36 1.65 / 175 144.3 (220) 43 1.42 / 200 161.5 (240) 50 1.23 / 225 181.7 (265) 55 1.10 / 250 201.9 (311) 62 .99 / / / / / COMPUTE LINE SPEED FROM MOTION PULSES / / / THIS TABLE IS CONSTRUCTED WHEN THE FINISHING / MACHINE IS DYMANICALLY TIMED, AND CONTAINS THE / NUMBER OF MOTION PULSES A GATE TURN ON/OFF MUST / BE ADVANCED FOR EACH UNIT OF MACHINE SPEED. THE / MACHINE LINE SPEED IS SCALED INTO THE RANGE OF / 0 TO 77 OCTAL, AND USED AS AN INDEX TO GET THE / GATE ADVANCE FROM THIS TABLE BELOW. / / / ADVANCE TABLE LINE SPEED / CONSTANT INDEX IN M/MIM /-------------------------------------------------------- LSPTBL, 0 / 0 STOPPED 1 / 1 2 / 2 4 / 3 5 / 4 6 / 5 25 7 / 6 10 / 7 11 / 10 12 / 11 13 / 12 50 14 / 13 15 / 14 16 / 15 20 / 16 21 / 17 75 22 / 20 24 / 21 25 / 22 26 / 23 27 / 24 100 30 / 25 32 / 26 33 / 27 34 / 30 35 / 31 125 37 / 32 40 / 33 41 / 34 42 / 35 43 / 36 150 44 / 37 / / / LINE SPEED ADVANCE TABLE - CONTINUED / / / / ADVANCE TABLE LINE SPEED / CONSTANT INDEX IN M/MIM /-------------------------------------------------------- 45 /40 160 46 /41 47 /42 47 /43 175 47 /44 47 /45 47 /46 47 /47 47 /50 200 47 /51 47 /52 47 /53 47 /54 47 /55 225 47 /56 47 /57 47 /60 47 /61 47 /62 250 47 /63 47 /64 47 /65 47 /66 47 /67 47 /70 47 /71 47 /72 47 /73 47 /74 47 /75 47 /76 47 /77 / START, CLB CAL /CALL THE CLOCK TASK TO WAKE US SENDW / IN 200 MS CLOCK CLKMG CLB /AWAKE AGAIN TAD LSPCTR /GET THE MOTION PULSE COUNT SINCE / THE LAST TIME WE RAN CLL RTR /DIVIDE BY 4 AND (0077) / MASK WITHIN 0 TO 77 TAD (LSPTBL) / ADD IN TABLE BASE TO FORM DCA LINEA / POINTER INTO THE TABLE TAD I LINEA /GET THE ADVANCE VALUE TAD LINEZ1 /ADD IN THE -(GATE OFFSET) AND DCA GATEDY / SAVE AS NEW GATING ADVANCE DCA LSPCTR /CLEAR THE MOTION PULSE COUNTER JMP START /ALL DONE, BACK TO SLLEEEEEEEPPPPP LINEA, 0 /POINTER INTO ADVANCE TABLE LINEZ1, -50 /THIS IS THE GATE TIMING OFFSET. / THIS NUMBER MUST BE GREATER THAN / THE LARGEST TIMING ADVANCE. /*********************************** / NOTE: CHANGING THIS CONSTANT / REQUIRES RETIMING ALL THE / MACHINE DISTANCES FOR 'BUILD' /*********************************** CLKMG, ZBLOCK 3 /MESSAGE FOR THE CLOCK TASK 0 0 24 /WAKE US IN 200MS PAGE NOPUNCH /F1COMM FILE FOLLOWS XLIST 1