Uploaded Dan's new controller prog.

r1221 | ffr | 2006-11-01 16:56:22 +1100 (Wed, 01 Nov 2006) | 2 lines
This commit is contained in:
Ferdi Franceschini
2006-11-01 16:56:22 +11:00
committed by Douglas Clowes
parent 05c3d2a3b6
commit d382b49ecd

View File

@@ -1,4 +1,10 @@
#AUTO #AUTO
NO TE: $Revision: 1.2 $
NO TE: $Date: 2006-11-01 05:56:22 $
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: A-MONOCHROMATOR UPPER TILT (mphi) - TILT 1 NO TE: A-MONOCHROMATOR UPPER TILT (mphi) - TILT 1
NO TE: B-MONOCHROMATOR LOWER TILT (mchi) - TILT 2 NO TE: B-MONOCHROMATOR LOWER TILT (mchi) - TILT 2
NO TE: C-MONOCHROMATOR UPPER TRANSLATION (mz:nexus, mx:KDL) - LINEAR 1 NO TE: C-MONOCHROMATOR UPPER TRANSLATION (mz:nexus, mx:KDL) - LINEAR 1
@@ -7,26 +13,28 @@ NO TE: E-MONOCHROMATOR ROTATION (mom) - ROTATE
NO TE: F-FLIGHT TUBE ROTATE NO TE: F-FLIGHT TUBE ROTATE
NO TE: G-PRIMARY COLLIMATOR 1 NO TE: G-PRIMARY COLLIMATOR 1
NO TE: H-PRIMARY COLLIMATOR 2 NO TE: H-PRIMARY COLLIMATOR 2
MT-2,-2,-2,-2,-2,-2,-2,-2 MT-2,-2,-2,-2,-2,-2,-2,-2;'CONFIGURES ALL AXES AS STEPPER
MO MO;' FIRST TIME MOTOR OFF
CN 1 CN 1;' CONFIGURES LIMIT SWITCHES TO ACCEPT NC CONTACTS
OP 65280 II 8,,,0;' CONFIGURES THE 8TH INPUT TO ACTIVATE THE #ININT ROUTINE
IA 137,157,201,66 OP 65280;' SETS OUTPUTS 9-16 ON = RELAYS OFF
AC 25000,25000,25000,25000,25000,10000,25000,25000 IA 137,157,201,3;' CONFIGURES IP ADDRESS
DC 25000,25000,25000,25000,25000,10000,25000,25000 AC 25000,25000,25000,25000,25000,10000,25000,25000;' SET ACELERATION
SP 25000,25000,25000,25000,50000,100000,25000,25000 DC 25000,25000,25000,25000,25000,10000,25000,25000;' SET DECELERATION
SIA=1,25,13,0<-1>2 SP 25000,25000,25000,25000,50000,100000,25000,25000;' SET SPEED
SIB=1,25,13,0<-1>2 SIA=1,25,13,0<-1>2;'HEIDENHAIN ROQ425
SIC=1,25,13,0<-1>2 SIB=1,25,13,0<-1>2;'HEIDENHAIN ROQ425
SID=1,25,13,0<-1>2 SIC=1,25,13,0<-1>2;'HEIDENHAIN ROQ425
SIE=1,25,13,0<-1>2 SID=1,25,13,0<-1>2;'HEIDENHAIN ROQ425
SIF=1,25,25,0<-1>2 SIE=1,25,13,0<-1>2;'HEIDENHAIN ROQ425
SIG=1,25,13,0<-1>2 SIF=1,25,25,0<-1>2;'HEIDENHAIN RCN226
SIH=1,25,13,0<-1>2 SIG=1,25,13,0<-1>2;'HEIDENHAIN ROQ425
DONE=0 SIH=1,25,13,0<-1>2;'HEIDENHAIN ROQ425
DONE=0;' FIRST TIME THROUGH AIRPAD CONTROL NOT DONE
JS #SOLCTRL JS #SOLCTRL
EN EN
#SOLCTRL #SOLCTRL
NO TE: CONTROLS THE AIRPAD SOLENOID VALVES
IF (_MOF=0);'FLIGHT TUBE MOTOR IS ON IF (_MOF=0);'FLIGHT TUBE MOTOR IS ON
SB 10;'SAMPLE STAGE AIR PAD OFF-SOLENOID OFF SB 10;'SAMPLE STAGE AIR PAD OFF-SOLENOID OFF
SB 12;'DRIVE WHEEL UP-SOLENOID OFF SB 12;'DRIVE WHEEL UP-SOLENOID OFF
@@ -47,9 +55,18 @@ ENDIF
JP #SOLCTRL JP #SOLCTRL
EN EN
#TCPERR #TCPERR
NO TE: EMPTY ROUTINE FOR A TCP ERROR
RE RE
#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
#LIMSWI #LIMSWI
OLDDCA=_DCA NO TE: LIMIT SWITCH ROUTINE WHICH SHORTENS DECEL TIME WHEN A LIMIT IS HIT
OLDDCA=_DCA;' REMEMBERS CURRENT DECEL
OLDDCB=_DCB OLDDCB=_DCB
OLDDCC=_DCC OLDDCC=_DCC
OLDDCD=_DCD OLDDCD=_DCD
@@ -58,60 +75,60 @@ OLDDCF=_DCF
OLDDCG=_DCG OLDDCG=_DCG
OLDDCH=_DCH OLDDCH=_DCH
IF (_LFA = 0) | (_LRA = 0) IF (_LFA = 0) | (_LRA = 0)
DCA=100000 DCA=100000;' DECEL FOR LIMIT HIT OCCURENCE
STA STA
AMA AMA
MOA MOA
DCA=OLDDCA DCA=OLDDCA;' RESET DECEL TO OLD VALUE
ENDIF ENDIF
IF (_LFB = 0) | (_LRB = 0) IF (_LFB = 0) | (_LRB = 0)
DCB=100000 DCB=100000;' DECEL FOR LIMIT HIT OCCURENCE
STB STB
AMB AMB
MOB MOB
DCB=OLDDCB DCB=OLDDCB;' RESET DECEL TO OLD VALUE
ENDIF ENDIF
IF (_LFC = 0) | (_LRC = 0) IF (_LFC = 0) | (_LRC = 0)
DCC=100000 DCC=100000;' DECEL FOR LIMIT HIT OCCURENCE
STC STC
AMC AMC
MOC MOC
DCC=OLDDCC DCC=OLDDCC;' RESET DECEL TO OLD VALUE
ENDIF ENDIF
IF (_LFD = 0) | (_LRD = 0) IF (_LFD = 0) | (_LRD = 0)
DCD=100000 DCD=100000;' DECEL FOR LIMIT HIT OCCURENCE
STD STD
AMD AMD
MOD MOD
DCD=OLDDCD DCD=OLDDCD;' RESET DECEL TO OLD VALUE
ENDIF ENDIF
IF (_LFE = 0) | (_LRE = 0) IF (_LFE = 0) | (_LRE = 0)
DCE=100000 DCE=100000;' DECEL FOR LIMIT HIT OCCURENCE
STE STE
AME AME
MOE MOE
DCE=OLDDCE DCE=OLDDCE;' RESET DECEL TO OLD VALUE
ENDIF ENDIF
IF (_LFF = 0) | (_LRF = 0) IF (_LFF = 0) | (_LRF = 0)
DCF=100000 DCF=50000;' DECEL FOR LIMIT HIT OCCURENCE
STF STF
AMF AMF
MOF MOF
DCF=OLDDCF DCF=OLDDCF;' RESET DECEL TO OLD VALUE
ENDIF ENDIF
IF (_LFG = 0) | (_LRG = 0) IF (_LFG = 0) | (_LRG = 0)
DCG=100000 DCG=100000;' DECEL FOR LIMIT HIT OCCURENCE
STG STG
AMG AMG
MOG MOG
DCG=OLDDCG DCG=OLDDCG;' RESET DECEL TO OLD VALUE
ENDIF ENDIF
IF (_LFH = 0) | (_LRH = 0) IF (_LFH = 0) | (_LRH = 0)
DCH=100000 DCH=100000;' DECEL FOR LIMIT HIT OCCURENCE
STH STH
AMH AMH
MOH MOH
DCH=OLDDCH DCH=OLDDCH;' RESET DECEL TO OLD VALUE
ENDIF ENDIF
RE RE