From b40ab5471055626774295ac8d1433ebe57440067 Mon Sep 17 00:00:00 2001 From: Dan Bartlett Date: Wed, 31 Jan 2007 12:03:44 +1100 Subject: [PATCH] no message r1413 | dbx | 2007-01-31 12:03:44 +1100 (Wed, 31 Jan 2007) | 2 lines --- .../instrument/hipd/DMC2280/controller1.txt | 146 ++++++++++++++++++ .../instrument/hipd/DMC2280/controller2.txt | 141 +++++++++++++++++ .../instrument/hipd/DMC2280/controller3.txt | 138 +++++++++++++++++ .../instrument/hipd/DMC2280/controller4.txt | 117 ++++++++++++++ .../instrument/hrpd/DMC2280/controller1.txt | 113 ++++++++------ .../instrument/hrpd/DMC2280/controller2.txt | 135 ++++++++-------- .../instrument/hrpd/DMC2280/controller3.txt | 52 +++++-- .../instrument/hrpd/DMC2280/controller4.txt | 51 ++++-- 8 files changed, 754 insertions(+), 139 deletions(-) create mode 100644 site_ansto/instrument/hipd/DMC2280/controller1.txt create mode 100644 site_ansto/instrument/hipd/DMC2280/controller2.txt create mode 100644 site_ansto/instrument/hipd/DMC2280/controller3.txt create mode 100644 site_ansto/instrument/hipd/DMC2280/controller4.txt diff --git a/site_ansto/instrument/hipd/DMC2280/controller1.txt b/site_ansto/instrument/hipd/DMC2280/controller1.txt new file mode 100644 index 00000000..6a5fadcb --- /dev/null +++ b/site_ansto/instrument/hipd/DMC2280/controller1.txt @@ -0,0 +1,146 @@ +NO TE: WOMBAT - CONTROLLER 1 +NO +NO TE: A-MONOCHROMATOR UPPER TILT - TILT 1 +NO TE: B-MONOCHROMATOR LOWER TILT - TILT 2 +NO TE: C-MONOCHROMATOR UPPER TRANSLATION - LINEAR 1 +NO TE: D-MONOCHROMATOR LOWER TRANSLATION - LINEAR 2 +NO TE: E-MONOCHROMATOR ROTATION - ROTATE +NO TE: F-FLIGHT TUBE ROTATE +NO TE: G-SPARE +NO TE: H-SPARE +NO ---------------------------------------- +#AUTO +NO TE: THIS IS THE PROGRAM THAT RUNS AUTOMATICALLY ON CONTROLLER STARTUP +MT-2,-2,-2,-2,-2,-2,-2,-2;'CONFIGURES ALL AXES AS STEPPER +MO;' FIRST TIME MOTOR OFF +CN 1;' CONFIGURES LIMIT SWITCHES TO ACCEPT NC CONTACTS +II 8,,,0;' CONFIGURES THE 8TH INPUT TO ACTIVATE THE #ININT ROUTINE +OP 65280;' SETS OUTPUTS 9-16 ON = RELAYS OFF +IA 137,157,201,67;' CONFIGURES IP ADDRESS +AC 25000,25000,25000,25000,50000,10000,25000,25000;' SET ACELERATION +DC 25000,25000,25000,25000,50000,10000,25000,25000;' SET DECELERATION +SP 25000,25000,25000,25000,25000,100000,25000,25000;' SET SPEED +SIA=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIB=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIC=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SID=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIE=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIF=1,25,25,0<-2>2;'HEIDENHAIN RCN226 +SIG=0,25,13,0<-2>2;'NOT USED +SIH=0,25,13,0<-2>2;'NOT USED +APDONE=0;' FIRST TIME THROUGH AIRPAD CONTROL NOT DONE +JS #THREAD0 +EN +NO ---------------------------------------- +#THREAD0 +NO TE: THERE MUST BE A THREAD RUNNING FOR #LIMSWI, #TCPERR AND #ININT TO WORK +NO TE: CHECKS IF SPEEDS ARE ABOVE MAXIMUM ALLOWED +IF (_SPA>50000) +SPA=50000 +ENDIF +IF (_SPB>50000) +SPB=50000 +ENDIF +IF (_SPC>50000) +SPC=50000 +ENDIF +IF (_SPD>50000) +SPD=50000 +ENDIF +IF (_SPE>50000) +SPE=50000 +ENDIF +IF (_SPF>100000) +SPF=100000 +ENDIF +NO IF (_SPG>50000) AXES NOT USED, COMMENTED OUT +NO SPG=50000 +NO ENDIF +NO IF (_SPH>50000) +NO SPH=50000 +NO ENDIF +NO TE: CONTROLS THE AIRPAD SOLENOID VALVES +IF (_MOF=0);'FLIGHT TUBE MOTOR IS ON +SB 10;'SAMPLE STAGE AIR PAD OFF-SOLENOID OFF +SB 12;'DRIVE WHEEL UP-SOLENOID OFF +CB 9;'SAMPLE STAGE AIR PAD ON-SOLENOID ON +CB 11;'DRIVE WHEEL DOWN-SOLENOID ON +APDONE=0 +ENDIF +IF (_MOF=1)&(APDONE=0);'FLIGHT TUBE MOTOR IS OFF +SB 9;'SAMPLE STAGE AIR PAD ON-SOLENOID OFF +SB 11;'DRIVE WHEEL DOWN-SOLENOID OFF +CB 10;'SAMPLE STAGE AIR PAD OFF-SOLENOID ON +CB 12;'DRIVE WHEEL UP-SOLENOID ON +WT500;'WAIT 1/2 SEC +SB 10;'SAMPLE STAGE AIR PAD OFF-SOLENOID OFF +SB 12;'DRIVE WHEEL UP-SOLENOID OFF +APDONE=1 +ENDIF +JP #THREAD0 +EN +NO ---------------------------------------- +#TCPERR +NO TE: EMPTY ROUTINE FOR A TCP ERROR +RE +NO ---------------------------------------- +#ININT +NO TE: INTERUPT ROUTINE TO STOP ALL AXES +NO TE: WHEN SAFETY & INTERLOCK SYSTEM REQUESTS IT +STA,B,C,D,E,F,G,H +AM +MO +RI +NO ---------------------------------------- +#LIMSWI +NO TE: LIMIT SWITCH ROUTINE WHICH SHORTENS DECEL TIME WHEN A LIMIT IS HIT +OLDDCA=_DCA;' REMEMBERS CURRENT DECEL +OLDDCB=_DCB +OLDDCC=_DCC +OLDDCD=_DCD +OLDDCE=_DCE +OLDDCF=_DCF +NO OLDDCG=_DCG AXIS NOT USED +NO OLDDCH=_DCH AXIS NOT USED +IF (_LFA = 0) | (_LRA = 0) +DCA=100000;' DECEL FOR LIMIT HIT OCCURENCE +STA +ENDIF +IF (_LFB = 0) | (_LRB = 0) +DCB=100000;' DECEL FOR LIMIT HIT OCCURENCE +STB +ENDIF +IF (_LFC = 0) | (_LRC = 0) +DCC=100000;' DECEL FOR LIMIT HIT OCCURENCE +STC +ENDIF +IF (_LFD = 0) | (_LRD = 0) +DCD=100000;' DECEL FOR LIMIT HIT OCCURENCE +STD +ENDIF +IF (_LFE = 0) | (_LRE = 0) +DCE=100000;' DECEL FOR LIMIT HIT OCCURENCE +STE +ENDIF +IF (_LFF = 0) | (_LRF = 0) +DCF=50000;' DECEL FOR LIMIT HIT OCCURENCE +STF +ENDIF +NO IF (_LFG = 0) | (_LRG = 0) AXES NOT USED, COMMENTED OUT +NO DCG=100000;' DECEL FOR LIMIT HIT OCCURENCE +NO STG +NO ENDIF +NO IF (_LFH = 0) | (_LRH = 0) +NO DCH=100000;' DECEL FOR LIMIT HIT OCCURENCE +NO STH +NO ENDIF +AM ABCDEFGH;' AFTER ALL AXES STOPPED +DCA=OLDDCA;' RESET DECEL TO OLD VALUE +DCB=OLDDCB +DCC=OLDDCC +DCD=OLDDCD +DCE=OLDDCE +DCF=OLDDCF +NO DCG=OLDDCG AXIS NOT USED +NO DCH=OLDDCH AXIS NOT USED +RE \ No newline at end of file diff --git a/site_ansto/instrument/hipd/DMC2280/controller2.txt b/site_ansto/instrument/hipd/DMC2280/controller2.txt new file mode 100644 index 00000000..a78a87d7 --- /dev/null +++ b/site_ansto/instrument/hipd/DMC2280/controller2.txt @@ -0,0 +1,141 @@ +NO TE: WOMBAT - CONTROLLER 2 +NO TE: +NO TE: A-SAMPLE UPPER TILT +NO TE: B-SAMPLE LOWER TILT +NO TE: C-SAMPLE UPPER LINEAR +NO TE: D-SAMPLE LOWER LINEAR +NO TE: E-SAMPLE ROTATE +NO TE: F-DETECTOR ROTATE +NO TE: G-OSCILLATING COLLIMATOR +NO TE: H-SPARE +NO ---------------------------------------- +#AUTO +NO TE: THIS IS THE PROGRAM THAT RUNS AUTOMATICALLY ON CONTROLLER STARTUP +MT-2,-2,-2,-2,-2,-2,-2,-2;'CONFIGURES ALL AXES AS STEPPER +MO;' FIRST TIME MOTOR OFF +CN 1;' CONFIGURES LIMIT SWITCHES TO ACCEPT NC CONTACTS +II 8,,,0;' CONFIGURES THE 8TH INPUT TO ACTIVATE THE #ININT ROUTINE +OP 65280;' SETS OUTPUTS 9-16 ON = RELAYS OFF +IA 137,157,201,68;' CONFIGURES IP ADDRESS +AC 25000,25000,25000,25000,50000,10000,25000,;' SET ACELERATION +DC 25000,25000,25000,25000,50000,10000,25000,;' SET DECELERATION +SP 25000,25000,25000,25000,25000,100000,25000,;' SET SPEED +SIA=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIB=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIC=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SID=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIE=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIF=1,25,25,0<-2>2;'HEIDENHAIN RCN226 +SIG=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIH=0,25,13,0<-2>2;'NOT USED +APDONE=0;' FIRST TIME THROUGH AIRPAD CONTROL NOT DONE +JS #THREAD0 +EN +NO ---------------------------------------- +#THREAD0 +NO TE: THERE MUST BE A THREAD RUNNING FOR #LIMSWI, #TCPERR AND #ININT TO WORK +NO TE: CHECKS IF SPEEDS ARE ABOVE MAXIMUM ALLOWED +IF (_SPA>50000) +SPA=50000 +ENDIF +IF (_SPB>50000) +SPB=50000 +ENDIF +IF (_SPC>50000) +SPC=50000 +ENDIF +IF (_SPD>50000) +SPD=50000 +ENDIF +IF (_SPE>50000) +SPE=50000 +ENDIF +IF (_SPF>150000) +SPF=150000 +ENDIF +IF (_SPG>50000) +SPG=50000 +ENDIF +NO IF (_SPH>50000) AXIS NOT USED, COMMENTED OUT +NO SPH=50000 +NO ENDIF +NO TE: CONTROLS THE AIRPAD SOLENOID VALVES +IF (_MOF=0);'DETECTOR MOTOR IS ON +SB 10;'DETECTOR AIR PAD OFF-SOLENOID OFF +CB 9;'DETECTOR AIR PAD ON-SOLENOID ON +APDONE=0 +ENDIF +IF (_MOF=1)&(APDONE=0);'FLIGHT TUBE MOTOR IS OFF +SB 9;'DETECTOR AIR PAD ON-SOLENOID OFF +CB 10;'DETECTOR AIR PAD OFF-SOLENOID ON +WT500;'WAIT 1/2 SEC +SB 10;'DETECTOR AIR PAD OFF-SOLENOID OFF +APDONE=1 +ENDIF +JP #THREAD0 +EN +NO ---------------------------------------- +#TCPERR +NO TE: EMPTY ROUTINE FOR A TCP ERROR +RE +NO ---------------------------------------- +#ININT +NO TE: INTERUPT ROUTINE TO STOP ALL AXES +NO TE: WHEN SAFETY & INTERLOCK SYSTEM REQUESTS IT +STA,B,C,D,E,F,G,H +AM +MO +RI +NO ---------------------------------------- +#LIMSWI +NO TE: LIMIT SWITCH ROUTINE WHICH SHORTENS DECEL TIME WHEN A LIMIT IS HIT +OLDDCA=_DCA;' REMEMBERS CURRENT DECEL +OLDDCB=_DCB +OLDDCC=_DCC +OLDDCD=_DCD +OLDDCE=_DCE +OLDDCF=_DCF +OLDDCG=_DCG +NO OLDDCH=_DCH AXIS NOT USED +IF (_LFA = 0) | (_LRA = 0) +DCA=100000;' DECEL FOR LIMIT HIT OCCURENCE +STA +ENDIF +IF (_LFB = 0) | (_LRB = 0) +DCB=100000;' DECEL FOR LIMIT HIT OCCURENCE +STB +ENDIF +IF (_LFC = 0) | (_LRC = 0) +DCC=100000;' DECEL FOR LIMIT HIT OCCURENCE +STC +ENDIF +IF (_LFD = 0) | (_LRD = 0) +DCD=100000;' DECEL FOR LIMIT HIT OCCURENCE +STD +ENDIF +IF (_LFE = 0) | (_LRE = 0) +DCE=100000;' DECEL FOR LIMIT HIT OCCURENCE +STE +ENDIF +IF (_LFF = 0) | (_LRF = 0) +DCF=50000;' DECEL FOR LIMIT HIT OCCURENCE +STF +ENDIF +IF (_LFG = 0) | (_LRG = 0) AXES NOT USED, COMMENTED OUT +DCG=100000;' DECEL FOR LIMIT HIT OCCURENCE +STG +ENDIF +NO IF (_LFH = 0) | (_LRH = 0) +NO DCH=100000;' DECEL FOR LIMIT HIT OCCURENCE +NO STH +NO ENDIF +AM ABCDEFGH;' AFTER ALL AXES STOPPED +DCA=OLDDCA;' RESET DECEL TO OLD VALUE +DCB=OLDDCB +DCC=OLDDCC +DCD=OLDDCD +DCE=OLDDCE +DCF=OLDDCF +DCG=OLDDCG +NO DCH=OLDDCH AXIS NOT USED +RE \ No newline at end of file diff --git a/site_ansto/instrument/hipd/DMC2280/controller3.txt b/site_ansto/instrument/hipd/DMC2280/controller3.txt new file mode 100644 index 00000000..8196d4ff --- /dev/null +++ b/site_ansto/instrument/hipd/DMC2280/controller3.txt @@ -0,0 +1,138 @@ +NO TE: WOMBAT - CONTROLLER 3 +NO TE: +NO TE: A-MONOCHROMATOR FOCUS +NO TE: B-MONOCHROMATOR FOCUS +NO TE: C-SPARE +NO TE: D-SPARE +NO TE: E-SLIT 1 LEFT BLADE +NO TE: F-SLIT 1 RIGHT BLADE +NO TE: G-SLIT 1 TOP BLADE +NO TE: H-SLIT 1 BOTTOM BLADE +NO ---------------------------------------- +#AUTO +NO TE: THIS IS THE PROGRAM THAT RUNS AUTOMATICALLY ON CONTROLLER STARTUP +MT-2,-2,-2,-2,-2,-2,-2,-2;'CONFIGURES ALL AXES AS STEPPER +MO;' FIRST TIME MOTOR OFF +CN 1;' CONFIGURES LIMIT SWITCHES TO ACCEPT NC CONTACTS +II 8,,,0;' CONFIGURES THE 8TH INPUT TO ACTIVATE THE #ININT ROUTINE +IA 137,157,201,69;' CONFIGURES IP ADDRESS +AC 12500,12500,,,60000,60000,60000,60000;' SET ACELERATION +DC 12500,12500,,,60000,60000,60000,60000;' SET DECELERATION +SP 25000,25000,,,30000,30000,30000,30000;' SET SPEED +HOMERUN=0;' HOMING PROCEDURE HAS NOT BEEN RUN +JS #THREAD0 +EN +NO ---------------------------------------- +#THREAD0 +NO TE: THERE MUST BE A THREAD RUNNING FOR #LIMSWI, #TCPERR AND #ININT TO WORK +NO TE: CHECKS IF SPEEDS ARE ABOVE MAXIMUM ALLOWED +IF (_SPA>50000) +SPA=50000 +ENDIF +IF (_SPB>50000) +SPB=50000 +ENDIF +NO IF (_SPC>50000) AXES NOT USED, COMMENTED OUT +NO SPC=50000 +NO ENDIF +NO IF (_SPD>50000) +NO SPD=50000 +NO ENDIF +IF (_SPE>30000) +SPE=30000 +ENDIF +IF (_SPF>30000) +SPF=30000 +ENDIF +IF (_SPG>30000) +SPG=30000 +ENDIF +IF (_SPH>30000) +SPH=30000 +ENDIF +JP#THREAD0 +EN +NO ---------------------------------------- +#RES +SB1 +CB1 +AI31 +IOBYTE1=_TI2 +IOBYTE2=_TI3 +IOBYTE2=(IOBYTE2&63) +IOBYTE2=(IOBYTE2*256) +FOCUS1=(IOBYTE1+IOBYTE2) +SB1 +SB2 +CB2 +AI31 +IOBYTE3=_TI4 +IOBYTE4=_TI5 +IOBYTE4=(IOBYTE2&63) +IOBYTE4=(IOBYTE2*256) +FOCUS2=(IOBYTE3+IOBYTE4) +SB2 +EN +NO ---------------------------------------- +#TCPERR +NO TE: EMPTY ROUTINE FOR A TCP ERROR +RE +NO ---------------------------------------- +#ININT +NO TE: INTERUPT ROUTINE TO STOP ALL AXES +NO TE: WHEN SAFETY & INTERLOCK SYSTEM REQUESTS IT +STA,B,C,D,E,F,G,H +AM +MO +RI +NO ---------------------------------------- +#HOME +IF (HOMERUN = 1) +JP #ENDHOME +ENDIF +NO TE: MOVE SLIT FORWARD 10MM IF IT IS AGAINST THE REVERSE LIMIT SWITCH +IF ((_TSE & 4) = 0) +SHE +PRE=200000 +BGE +ENDIF +NO TE: MOVE SLIT FORWARD 10MM IF IT IS AGAINST THE REVERSE LIMIT SWITCH +IF ((_TSF & 4) = 0) +SHF +PRF=200000 +BGF +ENDIF +NO TE: MOVE SLIT FORWARD 10MM IF IT IS AGAINST THE REVERSE LIMIT SWITCH +IF ((_TSG & 4) = 0) +SHG +PRG=200000 +BGG +ENDIF +NO TE: MOVE SLIT FORWARD 10MM IF IT IS AGAINST THE REVERSE LIMIT SWITCH +IF ((_TSH & 4) = 0) +SHH +PRH=200000 +BGH +ENDIF +AMEFGH +NO TE: DRIVE ALL SLITS INTO REVERSE LIMIT SWITCH +SHEFGH +JG ,,,,-25000,-25000,-25000,-25000 +BGEFGH +AMEFGH +NO TE: MOVE AWAY FROM SWITCHES BY 2MM AND DRIVE BACK SLOWLY +PR ,,,,80000,80000,80000,80000 +BGEFGH +AMEFGH +JG,,,,-5000,-5000,-5000,-5000 +BGEFGH +AMEFGH +NO TE: MOVE FORWARD FROM SWITCH BY 2MM AND SET ZERO +PR ,,,,40000,40000,40000,40000 +BGEFGH +AMEFGH +DP ,,,,0,0,0,0 +SP ,,,,30000,30000,30000,30000 +HOMERUN=1;'HOMING PROCEDURE HAS BEEN RUN +#ENDHOME +EN \ No newline at end of file diff --git a/site_ansto/instrument/hipd/DMC2280/controller4.txt b/site_ansto/instrument/hipd/DMC2280/controller4.txt new file mode 100644 index 00000000..11aae86b --- /dev/null +++ b/site_ansto/instrument/hipd/DMC2280/controller4.txt @@ -0,0 +1,117 @@ +NO TE: WOMBAT - CONTROLLER 4 +NO TE: +NO TE: A-SPARE +NO TE: B-SPARE +NO TE: C-SPARE +NO TE: D-SPARE +NO TE: E-SLIT 1 LEFT BLADE +NO TE: F-SLIT 1 RIGHT BLADE +NO TE: G-SLIT 1 TOP BLADE +NO TE: H-SLIT 1 BOTTOM BLADE +NO ---------------------------------------- +#AUTO +NO TE: THIS IS THE PROGRAM THAT RUNS AUTOMATICALLY ON CONTROLLER STARTUP +MT-2,-2,-2,-2,-2,-2,-2,-2;'CONFIGURES ALL AXES AS STEPPER +MO;' FIRST TIME MOTOR OFF +CN 1;' CONFIGURES LIMIT SWITCHES TO ACCEPT NC CONTACTS +II 8,,,0;' CONFIGURES THE 8TH INPUT TO ACTIVATE THE #ININT ROUTINE +IA 137,157,201,70;' CONFIGURES IP ADDRESS +AC ,,,,60000,60000,60000,60000;' SET ACELERATION +DC ,,,,60000,60000,60000,60000;' SET DECELERATION +SP ,,,,30000,30000,30000,30000;' SET SPEED +HOMERUN=0;' HOMING PROCEDURE HAS NOT BEEN RUN +JS #THREAD0 +EN +NO ---------------------------------------- +#THREAD0 +NO TE: THERE MUST BE A THREAD RUNNING FOR #LIMSWI, #TCPERR AND #ININT TO WORK +NO TE: CHECKS IF SPEEDS ARE ABOVE MAXIMUM ALLOWED +NO IF (_SPA>50000) AXES NOT USED, COMMENTED OUT +NO SPA=50000 +NO ENDIF +NO IF (_SPB>50000) +NO SPB=50000 +NO ENDIF +NO IF (_SPC>50000) +NO SPC=50000 +NO ENDIF +NO IF (_SPD>50000) +NO SPD=50000 +NO ENDIF +IF (_SPE>30000) +SPE=30000 +ENDIF +IF (_SPF>30000) +SPF=30000 +ENDIF +IF (_SPG>30000) +SPG=30000 +ENDIF +IF (_SPH>30000) +SPH=30000 +ENDIF +JP#THREAD0 +EN +NO ---------------------------------------- +#TCPERR +NO TE: EMPTY ROUTINE FOR A TCP ERROR +RE +NO ---------------------------------------- +#ININT +NO TE: INTERUPT ROUTINE TO STOP ALL AXES +NO TE: WHEN SAFETY & INTERLOCK SYSTEM REQUESTS IT +STA,B,C,D,E,F,G,H +AM +MO +RI +NO ---------------------------------------- +#HOME +IF (HOMERUN = 1) +JP #ENDHOME +ENDIF +NO TE: MOVE SLIT FORWARD 10MM IF IT IS AGAINST THE REVERSE LIMIT SWITCH +IF ((_TSE & 4) = 0) +SHE +PRE=200000 +BGE +ENDIF +NO TE: MOVE SLIT FORWARD 10MM IF IT IS AGAINST THE REVERSE LIMIT SWITCH +IF ((_TSF & 4) = 0) +SHF +PRF=200000 +BGF +ENDIF +NO TE: MOVE SLIT FORWARD 10MM IF IT IS AGAINST THE REVERSE LIMIT SWITCH +IF ((_TSG & 4) = 0) +SHG +PRG=200000 +BGG +ENDIF +NO TE: MOVE SLIT FORWARD 10MM IF IT IS AGAINST THE REVERSE LIMIT SWITCH +IF ((_TSH & 4) = 0) +SHH +PRH=200000 +BGH +ENDIF +AMEFGH +NO TE: DRIVE ALL SLITS INTO REVERSE LIMIT SWITCH +SHEFGH +JG ,,,,-25000,-25000,-25000,-25000 +BGEFGH +AMEFGH +NO TE: MOVE AWAY FROM SWITCHES BY 2MM AND DRIVE BACK SLOWLY +PR ,,,,80000,80000,80000,80000 +BGEFGH +AMEFGH +JG,,,,-5000,-5000,-5000,-5000 +BGEFGH +AMEFGH +NO TE: MOVE FORWARD FROM SWITCH BY 2MM AND SET ZERO +PR ,,,,40000,40000,40000,40000 +BGEFGH +AMEFGH +DP ,,,,0,0,0,0 +SP ,,,,30000,30000,30000,30000 +HOMERUN=1;'HOMING PROCEDURE HAS BEEN RUN +#ENDHOME +EN \ No newline at end of file diff --git a/site_ansto/instrument/hrpd/DMC2280/controller1.txt b/site_ansto/instrument/hrpd/DMC2280/controller1.txt index 51db1f66..4eeacf06 100644 --- a/site_ansto/instrument/hrpd/DMC2280/controller1.txt +++ b/site_ansto/instrument/hrpd/DMC2280/controller1.txt @@ -1,18 +1,16 @@ -#AUTO -NO TE: $Revision: 1.4 $ -NO TE: $Date: 2006-11-02 21:23:39 $ -NO TE: Author: Dan Bartlett -NO TE: Limit switch HOME routine added by Ferdi Franceschini -NO TE: Last revision by: $Author: ffr $ -NO TE: +NO TE: ECHIDNA - CONTROLLER 1 +NO TE: NO TE: A-MONOCHROMATOR UPPER TILT (mphi) - TILT 1 NO TE: B-MONOCHROMATOR LOWER TILT (mchi) - TILT 2 NO TE: C-MONOCHROMATOR UPPER TRANSLATION (mz:nexus, mx:KDL) - LINEAR 1 NO TE: D-MONOCHROMATOR LOWER TRANSLATION (mx:nexus, my:KDL) - LINEAR 2 -NO TE: E-MONOCHROMATOR ROTATION (mom) - ROTATE -NO TE: F-FLIGHT TUBE ROTATE +NO TE: E-MONOCHROMATOR ROTATION (mom) +NO TE: F-FLIGHT TUBE ROTATION NO TE: G-PRIMARY COLLIMATOR 1 NO TE: H-PRIMARY COLLIMATOR 2 +NO ---------------------------------------- +#AUTO +NO TE: THIS IS THE PROGRAM THAT RUNS AUTOMATICALLY ON CONTROLLER STARTUP MT-2,-2,-2,-2,-2,-2,-2,-2;'CONFIGURES ALL AXES AS STEPPER MO;' FIRST TIME MOTOR OFF CN 1;' CONFIGURES LIMIT SWITCHES TO ACCEPT NC CONTACTS @@ -22,27 +20,54 @@ IA 137,157,201,3;' CONFIGURES IP ADDRESS AC 25000,25000,25000,25000,25000,10000,25000,25000;' SET ACELERATION DC 25000,25000,25000,25000,25000,10000,25000,25000;' SET DECELERATION SP 25000,25000,25000,25000,50000,100000,25000,25000;' SET SPEED -SIA=1,25,13,0<-1>2;'HEIDENHAIN ROQ425 -SIB=1,25,13,0<-1>2;'HEIDENHAIN ROQ425 -SIC=1,25,13,0<-1>2;'HEIDENHAIN ROQ425 -SID=1,25,13,0<-1>2;'HEIDENHAIN ROQ425 -SIE=1,25,13,0<-1>2;'HEIDENHAIN ROQ425 -SIF=1,25,25,0<-1>2;'HEIDENHAIN RCN226 -SIG=1,25,13,0<-1>2;'HEIDENHAIN ROQ425 -SIH=1,25,13,0<-1>2;'HEIDENHAIN ROQ425 -DONE=0;' FIRST TIME THROUGH AIRPAD CONTROL NOT DONE -JS #SOLCTRL +SIA=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIB=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIC=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SID=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIE=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIF=1,25,25,0<-2>2;'HEIDENHAIN RCN226 +SIG=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIH=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +APDONE=0;' FIRST TIME THROUGH AIRPAD CONTROL NOT DONE +JS #THREAD0 EN -#SOLCTRL +NO ---------------------------------------- +#THREAD0 +NO TE: THERE MUST BE A THREAD RUNNING FOR #LIMSWI, #TCPERR AND #ININT TO WORK +NO TE: CHECKS IF SPEEDS ARE ABOVE MAXIMUM ALLOWED +IF (_SPA>50000) +SPA=50000 +ENDIF +IF (_SPB>50000) +SPB=50000 +ENDIF +IF (_SPC>50000) +SPC=50000 +ENDIF +IF (_SPD>50000) +SPD=50000 +ENDIF +IF (_SPE>50000) +SPE=50000 +ENDIF +IF (_SPF>100000) +SPF=100000 +ENDIF +IF (_SPG>50000) +SPG=50000 +ENDIF +IF (_SPH>50000) +SPH=50000 +ENDIF NO TE: CONTROLS THE AIRPAD SOLENOID VALVES IF (_MOF=0);'FLIGHT TUBE MOTOR IS ON SB 10;'SAMPLE STAGE AIR PAD OFF-SOLENOID OFF SB 12;'DRIVE WHEEL UP-SOLENOID OFF CB 9;'SAMPLE STAGE AIR PAD ON-SOLENOID ON CB 11;'DRIVE WHEEL DOWN-SOLENOID ON -DONE=0 +APDONE=0 ENDIF -IF (_MOF=1)&(DONE=0);'FLIGHT TUBE MOTOR IS OFF +IF (_MOF=1)&(APDONE=0);'FLIGHT TUBE MOTOR IS OFF SB 9;'SAMPLE STAGE AIR PAD ON-SOLENOID OFF SB 11;'DRIVE WHEEL DOWN-SOLENOID OFF CB 10;'SAMPLE STAGE AIR PAD OFF-SOLENOID ON @@ -50,13 +75,15 @@ CB 12;'DRIVE WHEEL UP-SOLENOID ON WT500;'WAIT 1/2 SEC SB 10;'SAMPLE STAGE AIR PAD OFF-SOLENOID OFF SB 12;'DRIVE WHEEL UP-SOLENOID OFF -DONE=1 +APDONE=1 ENDIF -JP #SOLCTRL +JP #THREAD0 EN +NO ---------------------------------------- #TCPERR NO TE: EMPTY ROUTINE FOR A TCP ERROR RE +NO ---------------------------------------- #ININT NO TE: INTERUPT ROUTINE TO STOP ALL AXES NO TE: WHEN SAFETY & INTERLOCK SYSTEM REQUESTS IT @@ -64,6 +91,7 @@ STA,B,C,D,E,F,G,H AM MO RI +NO ---------------------------------------- #LIMSWI NO TE: LIMIT SWITCH ROUTINE WHICH SHORTENS DECEL TIME WHEN A LIMIT IS HIT OLDDCA=_DCA;' REMEMBERS CURRENT DECEL @@ -77,59 +105,42 @@ OLDDCH=_DCH IF (_LFA = 0) | (_LRA = 0) DCA=100000;' DECEL FOR LIMIT HIT OCCURENCE STA -AMA -MOA -DCA=OLDDCA;' RESET DECEL TO OLD VALUE ENDIF IF (_LFB = 0) | (_LRB = 0) DCB=100000;' DECEL FOR LIMIT HIT OCCURENCE STB -AMB -MOB -DCB=OLDDCB;' RESET DECEL TO OLD VALUE ENDIF IF (_LFC = 0) | (_LRC = 0) DCC=100000;' DECEL FOR LIMIT HIT OCCURENCE STC -AMC -MOC -DCC=OLDDCC;' RESET DECEL TO OLD VALUE ENDIF IF (_LFD = 0) | (_LRD = 0) DCD=100000;' DECEL FOR LIMIT HIT OCCURENCE STD -AMD -MOD -DCD=OLDDCD;' RESET DECEL TO OLD VALUE ENDIF IF (_LFE = 0) | (_LRE = 0) DCE=100000;' DECEL FOR LIMIT HIT OCCURENCE STE -AME -MOE -DCE=OLDDCE;' RESET DECEL TO OLD VALUE ENDIF IF (_LFF = 0) | (_LRF = 0) DCF=50000;' DECEL FOR LIMIT HIT OCCURENCE STF -AMF -MOF -DCF=OLDDCF;' RESET DECEL TO OLD VALUE ENDIF IF (_LFG = 0) | (_LRG = 0) DCG=100000;' DECEL FOR LIMIT HIT OCCURENCE STG -AMG -MOG -DCG=OLDDCG;' RESET DECEL TO OLD VALUE ENDIF IF (_LFH = 0) | (_LRH = 0) DCH=100000;' DECEL FOR LIMIT HIT OCCURENCE STH -AMH -MOH -DCH=OLDDCH;' RESET DECEL TO OLD VALUE ENDIF -RE - - +AM ABCDEFGH;' AFTER ALL AXES STOPPED +DCA=OLDDCA;' RESET DECEL TO OLD VALUE +DCB=OLDDCB +DCC=OLDDCC +DCD=OLDDCD +DCE=OLDDCE +DCF=OLDDCF +DCG=OLDDCG +DCH=OLDDCH +RE \ No newline at end of file diff --git a/site_ansto/instrument/hrpd/DMC2280/controller2.txt b/site_ansto/instrument/hrpd/DMC2280/controller2.txt index 90bfceff..6682446e 100644 --- a/site_ansto/instrument/hrpd/DMC2280/controller2.txt +++ b/site_ansto/instrument/hrpd/DMC2280/controller2.txt @@ -1,57 +1,84 @@ -#AUTO -NO TE: $Revision: 1.2 $ -NO TE: $Date: 2006-11-01 06:04:09 $ -NO TE: Author: Dan Bartlett -NO TE: Limit switch HOME routine added by Ferdi Franceschini -NO TE: Last revision by: $Author: ffr $ +NO TE: ECHIDNA - CONTROLLER 2 NO TE: NO TE: A-SAMPLE UPPER TILT (sphi) - TILT 1 NO TE: B-SAMPLE LOWER TILT (schi) - TILT 2 NO TE: C-SAMPLE UPPER TRANSLATION (sz:nexus, sx:KDL) - LINEAR 1 NO TE: D-SAMPLE LOWER TRANSLATION (sx:nexus, sy:KDL) - LINEAR 2 -NO TE: E-SAMPLE ROTATION (som) - ROTATE -NO TE: F-DETECTOR ROTATE +NO TE: E-SAMPLE ROTATION (som) +NO TE: F-DETECTOR ROTATION NO TE: G-SPARE NO TE: H-SPARE +NO ---------------------------------------- +#AUTO +NO TE: THIS IS THE PROGRAM THAT RUNS AUTOMATICALLY ON CONTROLLER STARTUP MT-2,-2,-2,-2,-2,-2,-2,-2;'CONFIGURES ALL AXES AS STEPPER MO;' FIRST TIME MOTOR OFF CN 1;' CONFIGURES LIMIT SWITCHES TO ACCEPT NC CONTACTS II 8,,,0;' CONFIGURES THE 8TH INPUT TO ACTIVATE THE #ININT ROUTINE OP 65280;' SETS OUTPUTS 9-16 ON = RELAYS OFF IA 137,157,201,4;' CONFIGURES IP ADDRESS -AC 25000,25000,25000,25000,25000,15000,25000,25000;' SET ACELERATION -DC 25000,25000,25000,25000,25000,15000,25000,25000;' SET DECELERATION -SP 25000,25000,25000,25000,50000,150000,25000,25000;' SET SPEED -SIA=1,25,13,0<-1>2;'HEIDENHAIN ROQ425 -SIB=1,25,13,0<-1>2;'HEIDENHAIN ROQ425 -SIC=1,25,13,0<-1>2;'HEIDENHAIN ROQ425 -SID=1,25,13,0<-1>2;'HEIDENHAIN ROQ425 -SIE=1,25,13,0<-1>2;'HEIDENHAIN ROQ425 -SIF=1,25,25,0<-1>2;'HEIDENHAIN RCN226 -SIG=1,25,13,0<-1>2;'HEIDENHAIN ROQ425 -SIH=1,25,13,0<-1>2;'HEIDENHAIN ROQ425 -DONE=0;' FIRST TIME THROUGH AIRPAD CONTROL NOT DONE -JS #SOLCTRL +AC 25000,25000,25000,25000,25000,15000,,;' SET ACELERATION +DC 25000,25000,25000,25000,25000,15000,,;' SET DECELERATION +SP 25000,25000,25000,25000,50000,150000,,;' SET SPEED +SIA=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIB=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIC=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SID=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIE=1,25,13,0<-2>2;'HEIDENHAIN ROQ425 +SIF=1,25,25,0<-2>2;'HEIDENHAIN RCN226 +SIG=0,25,13,0<-2>2;'NOT USED +SIH=0,25,13,0<-2>2;'NOT USED +APDONE=0;' FIRST TIME THROUGH AIRPAD CONTROL NOT DONE +JS #THREAD0 EN -#SOLCTRL +NO ---------------------------------------- +#THREAD0 +NO TE: THERE MUST BE A THREAD RUNNING FOR #LIMSWI, #TCPERR AND #ININT TO WORK +NO TE: CHECKS IF SPEEDS ARE ABOVE MAXIMUM ALLOWED +IF (_SPA>50000) +SPA=50000 +ENDIF +IF (_SPB>50000) +SPB=50000 +ENDIF +IF (_SPC>50000) +SPC=50000 +ENDIF +IF (_SPD>50000) +SPD=50000 +ENDIF +IF (_SPE>50000) +SPE=50000 +ENDIF +IF (_SPF>150000) +SPF=150000 +ENDIF +NO IF (_SPG>50000) AXES NOT IN USE, COMMENTED OUT +NO SPG=50000 +NO ENDIF +NO IF (_SPH>50000) +NO SPH=50000 +NO ENDIF NO TE: CONTROLS THE AIRPAD SOLENOID VALVES IF (_MOF=0);'DETECTOR MOTOR IS ON SB 10;'DETECTOR AIR PAD OFF-SOLENOID OFF CB 9;'DETECTOR AIR PAD ON-SOLENOID ON -DONE=0 +APDONE=0 ENDIF -IF (_MOF=1)&(DONE=0);'DETECTOR MOTOR IS OFF +IF (_MOF=1)&(APDONE=0);'DETECTOR MOTOR IS OFF SB 9;'DETECTOR AIR PAD ON-SOLENOID OFF CB 10;'DETECTOR AIR PAD OFF-SOLENOID ON WT500;'WAIT 1/2 SEC SB 10;'DETECTOR AIR PAD OFF-SOLENOID OFF -DONE=1 +APDONE=1 ENDIF -JP #SOLCTRL +JP #THREAD0 EN +NO ---------------------------------------- #TCPERR NO TE: EMPTY ROUTINE FOR A TCP ERROR RE +NO ---------------------------------------- #ININT NO TE: INTERUPT ROUTINE TO STOP ALL AXES NO TE: WHEN SAFETY & INTERLOCK SYSTEM REQUESTS IT @@ -59,6 +86,7 @@ STA,B,C,D,E,F,G,H AM MO RI +NO ---------------------------------------- #LIMSWI NO TE: LIMIT SWITCH ROUTINE WHICH SHORTENS DECEL TIME WHEN A LIMIT IS HIT OLDDCA=_DCA;' REMEMBERS CURRENT DECEL @@ -72,59 +100,42 @@ OLDDCH=_DCH IF (_LFA = 0) | (_LRA = 0) DCA=100000;' DECEL FOR LIMIT HIT OCCURENCE STA -AMA -MOA -DCA=OLDDCA;' RESET DECEL TO OLD VALUE ENDIF IF (_LFB = 0) | (_LRB = 0) DCB=100000;' DECEL FOR LIMIT HIT OCCURENCE STB -AMB -MOB -DCB=OLDDCB;' RESET DECEL TO OLD VALUE ENDIF IF (_LFC = 0) | (_LRC = 0) DCC=100000;' DECEL FOR LIMIT HIT OCCURENCE STC -AMC -MOC -DCC=OLDDCC;' RESET DECEL TO OLD VALUE ENDIF IF (_LFD = 0) | (_LRD = 0) DCD=100000;' DECEL FOR LIMIT HIT OCCURENCE STD -AMD -MOD -DCD=OLDDCD;' RESET DECEL TO OLD VALUE ENDIF IF (_LFE = 0) | (_LRE = 0) DCE=100000;' DECEL FOR LIMIT HIT OCCURENCE STE -AME -MOE -DCE=OLDDCE;' RESET DECEL TO OLD VALUE ENDIF IF (_LFF = 0) | (_LRF = 0) -DCF=75000;' DECEL FOR LIMIT HIT OCCURENCE +DCF=50000;' DECEL FOR LIMIT HIT OCCURENCE STF -AMF -MOF -DCF=OLDDCF;' RESET DECEL TO OLD VALUE ENDIF -IF (_LFG = 0) | (_LRG = 0) -DCG=100000;' DECEL FOR LIMIT HIT OCCURENCE -STG -AMG -MOG -DCG=OLDDCG;' RESET DECEL TO OLD VALUE -ENDIF -IF (_LFH = 0) | (_LRH = 0) -DCH=100000;' DECEL FOR LIMIT HIT OCCURENCE -STH -AMH -MOH -DCH=OLDDCH;' RESET DECEL TO OLD VALUE -ENDIF -RE - - +NO IF (_LFG = 0) | (_LRG = 0) AXES NOT IN USE, COMMENTED OUT +NO DCG=100000;' DECEL FOR LIMIT HIT OCCURENCE +NO STG +NO ENDIF +NO IF (_LFH = 0) | (_LRH = 0) +NO DCH=100000;' DECEL FOR LIMIT HIT OCCURENCE +NO STH +NO ENDIF +AM ABCDEFGH;' AFTER ALL AXES STOPPED +DCA=OLDDCA;' RESET DECEL TO OLD VALUE +DCB=OLDDCB +DCC=OLDDCC +DCD=OLDDCD +DCE=OLDDCE +DCF=OLDDCF +NO DCG=OLDDCG AXIS NOT IN USE, COMMENTED OUT +NO DCH=OLDDCH AXIS NOT IN USE, COMMENTED OUT +RE \ No newline at end of file diff --git a/site_ansto/instrument/hrpd/DMC2280/controller3.txt b/site_ansto/instrument/hrpd/DMC2280/controller3.txt index 51dddb6e..740cc011 100644 --- a/site_ansto/instrument/hrpd/DMC2280/controller3.txt +++ b/site_ansto/instrument/hrpd/DMC2280/controller3.txt @@ -1,9 +1,4 @@ -#AUTO -NO TE: $Revision: 1.5 $ -NO TE: $Date: 2006-11-02 02:49:04 $ -NO TE: Author: Dan Bartlett -NO TE: Limit switch HOME routine added by Ferdi Franceschini -NO TE: Last revision by: $Author: dbx $ +NO TE: ECHIDNA - CONTROLLER 3 NO TE: NO TE: A-MONOCHROMATOR FOCUS NO TE: B-SPARE @@ -13,6 +8,9 @@ NO TE: E-SLIT 1 LEFT BLADE (ss1l) NO TE: F-SLIT 1 RIGHT BLADE (ss1r) NO TE: G-SLIT 1 TOP BLADE (ss1u) NO TE: H-SLIT 1 BOTTOM BLADE (ss1d) +NO ---------------------------------------- +#AUTO +NO TE: THIS IS THE PROGRAM THAT RUNS AUTOMATICALLY ON CONTROLLER STARTUP MT-2,-2,-2,-2,-2,-2,-2,-2;'CONFIGURES ALL AXES AS STEPPER MO;' FIRST TIME MOTOR OFF CN 1;' CONFIGURES LIMIT SWITCHES TO ACCEPT NC CONTACTS @@ -22,12 +20,39 @@ AC 12500,,,,60000,60000,60000,60000;' SET ACELERATION DC 12500,,,,60000,60000,60000,60000;' SET DECELERATION SP 25000,,,,30000,30000,30000,30000;' SET SPEED HOMERUN=0;' HOMING PROCEDURE HAS NOT BEEN RUN -JS #LOOPER;' RUNS THE LOOPING PROCEDURE +JS #THREAD0 EN -#LOOPER -NO TE: ININT, LIMSWI ETC NEEDS A PROGRAM RUNNING TO WORK: JUST A LOOP -JP#LOOPER +NO ---------------------------------------- +#THREAD0 +NO TE: THERE MUST BE A THREAD RUNNING FOR #LIMSWI, #TCPERR AND #ININT TO WORK +NO TE: CHECKS IF SPEEDS ARE ABOVE MAXIMUM ALLOWED +IF (_SPA>25000) +SPA=25000 +ENDIF +NO IF (_SPB>50000) AXES NOT IN USE, COMMENTED OUT +NO SPB=50000 +NO ENDIF +NO IF (_SPC>50000) +NO SPC=50000 +NO ENDIF +NO IF (_SPD>50000) +NO SPD=50000 +NO ENDIF +IF (_SPE>30000) +SPE=30000 +ENDIF +IF (_SPF>30000) +SPF=30000 +ENDIF +IF (_SPG>30000) +SPG=30000 +ENDIF +IF (_SPH>30000) +SPH=30000 +ENDIF +JP#THREAD0 EN +NO ---------------------------------------- #RES NO TE: PROCEDURE TO UPDATE THE RESOLVER FEEDBACK. NO TE: MUST BE EXCUTED EACH TIME FOR AN UPDATE @@ -41,9 +66,11 @@ IOBYTE2=(IOBYTE2*256);' SHIFT REMAINING BITS 8 POSITIONS TO RIGHT FOCUS=(IOBYTE1+IOBYTE2);' ADD WORDS TOGETHER, READ FOCUS VARIABLE FOR DATA SB1 EN +NO ---------------------------------------- #TCPERR NO TE: EMPTY ROUTINE FOR A TCP ERROR RE +NO ---------------------------------------- #ININT NO TE: INTERUPT ROUTINE TO STOP ALL AXES NO TE: WHEN SAFETY & INTERLOCK SYSTEM REQUESTS IT @@ -51,6 +78,7 @@ STA,B,C,D,E,F,G,H AM MO RI +NO ---------------------------------------- #HOME IF (HOMERUN = 1) JP #ENDHOME @@ -100,6 +128,4 @@ DP ,,,,0,0,0,0 SP ,,,,30000,30000,30000,30000 HOMERUN=1;'HOMING PROCEDURE HAS BEEN RUN #ENDHOME -EN - - +EN \ No newline at end of file diff --git a/site_ansto/instrument/hrpd/DMC2280/controller4.txt b/site_ansto/instrument/hrpd/DMC2280/controller4.txt index 5e9b9d0c..4f42d319 100644 --- a/site_ansto/instrument/hrpd/DMC2280/controller4.txt +++ b/site_ansto/instrument/hrpd/DMC2280/controller4.txt @@ -1,9 +1,4 @@ -#AUTO -NO TE: $Revision: 1.6 $ -NO TE: $Date: 2006-11-02 02:49:04 $ -NO TE: Author: Dan Bartlett -NO TE: Limit switch HOME routine added by Ferdi Franceschini -NO TE: Last revision by: $Author: dbx $ +NO TE: ECHIDNA - CONTROLLER 4 NO TE: NO TE: A-SPARE NO TE: B-SPARE @@ -13,6 +8,9 @@ NO TE: E-SLIT 1 LEFT BLADE (ss1l) NO TE: F-SLIT 1 RIGHT BLADE (ss1r) NO TE: G-SLIT 1 TOP BLADE (ss1u) NO TE: H-SLIT 1 BOTTOM BLADE (ss1d) +NO ---------------------------------------- +#AUTO +NO TE: THIS IS THE PROGRAM THAT RUNS AUTOMATICALLY ON CONTROLLER STARTUP MT-2,-2,-2,-2,-2,-2,-2,-2;'CONFIGURES ALL AXES AS STEPPER MO;' FIRST TIME MOTOR OFF CN 1;' CONFIGURES LIMIT SWITCHES TO ACCEPT NC CONTACTS @@ -22,15 +20,43 @@ AC ,,,,60000,60000,60000,60000;' SET ACELERATION DC ,,,,60000,60000,60000,60000;' SET DECELERATION SP ,,,,30000,30000,30000,30000;' SET SPEED HOMERUN=0;' HOMING PROCEDURE HAS NOT BEEN RUN -JS #LOOPER;'RUNS THE LOOPING PROCEDURE +JS #THREAD0 EN -#LOOPER -NO TE: ININT NEEDS A PROGRAM RUNNING TO WORK: JUST A LOOP -JP#LOOPER +NO ---------------------------------------- +#THREAD0 +NO TE: THERE MUST BE A THREAD RUNNING FOR #LIMSWI, #TCPERR AND #ININT TO WORK +NO TE: CHECKS IF SPEEDS ARE ABOVE MAXIMUM ALLOWED +NO IF (_SPA>25000) AXES NOT IN USE, COMMENTED OUT +NO SPA=25000 +NO ENDIF +NO IF (_SPB>50000) +NO SPB=50000 +NO ENDIF +NO IF (_SPC>50000) +NO SPC=50000 +NO ENDIF +NO IF (_SPD>50000) +NO SPD=50000 +NO ENDIF +IF (_SPE>30000) +SPE=30000 +ENDIF +IF (_SPF>30000) +SPF=30000 +ENDIF +IF (_SPG>30000) +SPG=30000 +ENDIF +IF (_SPH>30000) +SPH=30000 +ENDIF +JP#THREAD0 EN +NO ---------------------------------------- #TCPERR NO TE: EMPTY ROUTINE FOR A TCP ERROR RE +NO ---------------------------------------- #ININT NO TE: INTERUPT ROUTINE TO STOP ALL AXES NO TE: WHEN SAFETY & INTERLOCK SYSTEM REQUESTS IT @@ -38,6 +64,7 @@ STA,B,C,D,E,F,G,H AM MO RI +NO ---------------------------------------- #HOME IF (HOMERUN = 1) JP #ENDHOME @@ -87,6 +114,4 @@ DP ,,,,0,0,0,0 SP ,,,,30000,30000,30000,30000 HOMERUN=1 #ENDHOME -EN - - +EN \ No newline at end of file