更新KUKA程序
This commit is contained in:
4
KUKA/Connections.xml
Normal file
4
KUKA/Connections.xml
Normal file
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Connections>
|
||||
<Connection Type="KukaRoboter.WorkOnline.Connections.KrcConnectionTarget" ConnectionString="PCRC-3HXLTUHYM6;PCRC-3HXLTUHYM6;192.168.1.15;810169497;V8.7.9.701;KR C;Options:DiagnosisSafety,3.2.4.84|DiagnosisServiceEtherCAT,1.0.4.187|EthernetKRL,3.2.5.1098|KUKA.BoardPackage,3.6.5.4|KUKA.DeviceConnector pre-installed,2.1.13.17|KUKA.EtherNetIP MS,5.1.3.18|KUKA.SoftwarePackage smartPAD-2,1.1.6.1|KUKA.UpdatePackageFirmware,1.2.2.71|KUKA.UpdateService,1.1.24.822|KUKA.UpdateServiceConfiguration,1.0.14.269" LastActive="true" />
|
||||
</Connections>
|
||||
5
KUKA/KRC/R1/KUKA/CollDetect_UserAction.dat
Normal file
5
KUKA/KRC/R1/KUKA/CollDetect_UserAction.dat
Normal file
@@ -0,0 +1,5 @@
|
||||
&ACCESS R1
|
||||
DEFDAT CollDetect_UserAction
|
||||
|
||||
|
||||
ENDDAT
|
||||
5
KUKA/KRC/R1/KUKA/CollDetect_UserAction.src
Normal file
5
KUKA/KRC/R1/KUKA/CollDetect_UserAction.src
Normal file
@@ -0,0 +1,5 @@
|
||||
&ACCESS R1
|
||||
DEF CollDetect_UserAction( )
|
||||
|
||||
|
||||
END
|
||||
25
KUKA/KRC/R1/KUKA/masref_user.dat
Normal file
25
KUKA/KRC/R1/KUKA/masref_user.dat
Normal file
@@ -0,0 +1,25 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
&COMMENT Mastering Reference User Program
|
||||
&PARAM DISKPATH = KRC:\R1\Program
|
||||
DEFDAT MasRef_User PUBLIC
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make here your modifications
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLARATIONS)
|
||||
;FOLD reference groups
|
||||
; order of master reference group number in array is of no relevance, but group "1" is required
|
||||
; "0" means no master reference test
|
||||
; "1" means group number for robot axes and robroot kinematic axes
|
||||
; "2", "3" means group number of external kinematic axes
|
||||
DECL GLOBAL CONST INT MASREFg_GroupSequence[3] ; contains reference groups to test
|
||||
MASREFg_GroupSequence[1]=1
|
||||
MASREFg_GroupSequence[2]=0
|
||||
MASREFg_GroupSequence[3]=0
|
||||
;ENDFOLD (reference groups)
|
||||
ENDDAT
|
||||
42
KUKA/KRC/R1/KUKA/masref_user.src
Normal file
42
KUKA/KRC/R1/KUKA/masref_user.src
Normal file
@@ -0,0 +1,42 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
&COMMENT Mastering Reference User Program
|
||||
&PARAM DISKPATH = KRC:\R1\Program
|
||||
DEF MasRef_USER()
|
||||
END
|
||||
|
||||
GLOBAL DEF MASREFSTARTG1()
|
||||
;FOLD Teach path and position for reference group 1
|
||||
;ENDFOLD
|
||||
|
||||
END
|
||||
|
||||
GLOBAL DEF MASREFBACKG1()
|
||||
;FOLD Teach path back for reference group 1
|
||||
;ENDFOLD
|
||||
|
||||
END
|
||||
|
||||
GLOBAL DEF MASREFSTARTG2()
|
||||
;FOLD Teach path and position for reference group 2
|
||||
;ENDFOLD
|
||||
|
||||
END
|
||||
|
||||
GLOBAL DEF MASREFBACKG2()
|
||||
;FOLD Teach path back for reference group 2
|
||||
;ENDFOLD
|
||||
|
||||
END
|
||||
|
||||
GLOBAL DEF MASREFSTARTG3()
|
||||
;FOLD Teach path and position for reference group 3
|
||||
;ENDFOLD
|
||||
|
||||
END
|
||||
|
||||
GLOBAL DEF MASREFBACKG3()
|
||||
;FOLD Teach path back for reference group 3
|
||||
;ENDFOLD
|
||||
|
||||
END
|
||||
642
KUKA/KRC/R1/Mada/$machine.dat
Normal file
642
KUKA/KRC/R1/Mada/$machine.dat
Normal file
@@ -0,0 +1,642 @@
|
||||
&ACCESS RV$
|
||||
&PARAM VERSION = 1.0.0
|
||||
DEFDAT $MACHINE PUBLIC
|
||||
CHAR $V_R1MADA[32]
|
||||
$V_R1MADA[]="V42.601.8.1/KUKA8.7" ;VERSIONSKENNUNG
|
||||
INT $TECH_MAX=6 ;MAX. ANZAHL FUNKTIONSGENERATOREN
|
||||
INT $NUM_AX=6 ;ACHSEN DES ROBOTERSYSTEMS
|
||||
INT $AXIS_TYPE[12] ;ACHSENKENNUNG
|
||||
$AXIS_TYPE[1]=3 ;1 = LINEAR, 3 = ROTATORISCH, 5 = ENDLOS
|
||||
$AXIS_TYPE[2]=3
|
||||
$AXIS_TYPE[3]=3
|
||||
$AXIS_TYPE[4]=3
|
||||
$AXIS_TYPE[5]=3
|
||||
$AXIS_TYPE[6]=3
|
||||
$AXIS_TYPE[7]=3
|
||||
$AXIS_TYPE[8]=3
|
||||
$AXIS_TYPE[9]=3
|
||||
$AXIS_TYPE[10]=3
|
||||
$AXIS_TYPE[11]=3
|
||||
$AXIS_TYPE[12]=3
|
||||
DECL FRA $COUP_COMP[6,6] ;ACHSKOPPLUNGSFAKTOR N = ZAEHLER, D = NENNER
|
||||
$COUP_COMP[1,2]={N 0,D 1}
|
||||
$COUP_COMP[1,3]={N 0,D 1}
|
||||
$COUP_COMP[1,4]={N 0,D 1}
|
||||
$COUP_COMP[1,5]={N 0,D 1}
|
||||
$COUP_COMP[1,6]={N 0,D 1}
|
||||
$COUP_COMP[2,1]={N 0,D 1}
|
||||
$COUP_COMP[2,3]={N 0,D 1}
|
||||
$COUP_COMP[2,4]={N 0,D 1}
|
||||
$COUP_COMP[2,5]={N 0,D 1}
|
||||
$COUP_COMP[2,6]={N 0,D 1}
|
||||
$COUP_COMP[3,1]={N 0,D 1}
|
||||
$COUP_COMP[3,2]={N 0,D 1}
|
||||
$COUP_COMP[3,4]={N 0,D 1}
|
||||
$COUP_COMP[3,5]={N 0,D 1}
|
||||
$COUP_COMP[3,6]={N 0,D 1}
|
||||
$COUP_COMP[4,1]={N 0,D 1}
|
||||
$COUP_COMP[4,2]={N 0,D 1}
|
||||
$COUP_COMP[4,3]={N 0,D 1}
|
||||
$COUP_COMP[4,5]={N -161,D 12580}
|
||||
$COUP_COMP[4,6]={N -172,D 22917}
|
||||
$COUP_COMP[5,1]={N 0,D 1}
|
||||
$COUP_COMP[5,2]={N 0,D 1}
|
||||
$COUP_COMP[5,3]={N 0,D 1}
|
||||
$COUP_COMP[5,4]={N 0,D 1}
|
||||
$COUP_COMP[5,6]={N -188,D 21461}
|
||||
$COUP_COMP[6,1]={N 0,D 1}
|
||||
$COUP_COMP[6,2]={N 0,D 1}
|
||||
$COUP_COMP[6,3]={N 0,D 1}
|
||||
$COUP_COMP[6,4]={N 0,D 1}
|
||||
$COUP_COMP[6,5]={N 0,D 1}
|
||||
DECL FRA $EXCOUP_COMP[6,6] ;KOPPLUNGSFAKTOREN ACHSE 7 (INDEX 1) BIS ACHSE 12 (INDEX 6), N = ZAEHLER, D =NENNER
|
||||
$EXCOUP_COMP[1,2]={N 0,D 1}
|
||||
$EXCOUP_COMP[1,3]={N 0,D 1}
|
||||
$EXCOUP_COMP[1,4]={N 0,D 1}
|
||||
$EXCOUP_COMP[1,5]={N 0,D 1}
|
||||
$EXCOUP_COMP[1,6]={N 0,D 1}
|
||||
$EXCOUP_COMP[2,1]={N 0,D 1}
|
||||
$EXCOUP_COMP[2,3]={N 0,D 1}
|
||||
$EXCOUP_COMP[2,4]={N 0,D 1}
|
||||
$EXCOUP_COMP[2,5]={N 0,D 1}
|
||||
$EXCOUP_COMP[2,6]={N 0,D 1}
|
||||
$EXCOUP_COMP[3,1]={N 0,D 1}
|
||||
$EXCOUP_COMP[3,2]={N 0,D 1}
|
||||
$EXCOUP_COMP[3,4]={N 0,D 1}
|
||||
$EXCOUP_COMP[3,5]={N 0,D 1}
|
||||
$EXCOUP_COMP[3,6]={N 0,D 1}
|
||||
$EXCOUP_COMP[4,1]={N 0,D 1}
|
||||
$EXCOUP_COMP[4,2]={N 0,D 1}
|
||||
$EXCOUP_COMP[4,3]={N 0,D 1}
|
||||
$EXCOUP_COMP[4,5]={N 0,D 1}
|
||||
$EXCOUP_COMP[4,6]={N 0,D 1}
|
||||
$EXCOUP_COMP[5,1]={N 0,D 1}
|
||||
$EXCOUP_COMP[5,2]={N 0,D 1}
|
||||
$EXCOUP_COMP[5,3]={N 0,D 1}
|
||||
$EXCOUP_COMP[5,4]={N 0,D 1}
|
||||
$EXCOUP_COMP[5,6]={N 0,D 1}
|
||||
$EXCOUP_COMP[6,1]={N 0,D 1}
|
||||
$EXCOUP_COMP[6,2]={N 0,D 1}
|
||||
$EXCOUP_COMP[6,3]={N 0,D 1}
|
||||
$EXCOUP_COMP[6,4]={N 0,D 1}
|
||||
$EXCOUP_COMP[6,5]={N 0,D 1}
|
||||
REAL $MAMES[12] ;VERSCHIEBUNG ZW. MECH. UND MATH. NULLPUNKT ACHSE[I] (I=1:A1,I=7:E1) [MM,GRAD]
|
||||
$MAMES[1]=-25.0000
|
||||
$MAMES[2]=-100.000
|
||||
$MAMES[3]=100.000
|
||||
$MAMES[4]=0.0
|
||||
$MAMES[5]=0.0
|
||||
$MAMES[6]=0.0
|
||||
$MAMES[7]=0.0
|
||||
$MAMES[8]=0.0
|
||||
$MAMES[9]=0.0
|
||||
$MAMES[10]=0.0
|
||||
$MAMES[11]=0.0
|
||||
$MAMES[12]=0.0
|
||||
DECL INDIVIDUAL_MAMES $INDIVIDUAL_MAMES=#RDC ; Existenz individueller MAMES-Werte
|
||||
FRAME $ROBROOT={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ROBOTER IM WELTKOORDINATENSYSTEM [MM,GRAD]
|
||||
FRAME $ERSYSROOT={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ROBOTERFUSSPUNKTKINEMATIK IM WELTKOORDINATENSYSTEM [MM,GRAD]
|
||||
DECL FRA $RAT_MOT_AX[12] ;UEBERSETZUNG MOTOR-ACHSE N = ZAEHLER, D = NENNER
|
||||
$RAT_MOT_AX[1]={N -1798,D 7}
|
||||
$RAT_MOT_AX[2]={N -4576,D 17}
|
||||
$RAT_MOT_AX[3]={N 754,D 3}
|
||||
$RAT_MOT_AX[4]={N -10387,D 55}
|
||||
$RAT_MOT_AX[5]={N -91834,D 483}
|
||||
$RAT_MOT_AX[6]={N 6485103,D 49400}
|
||||
$RAT_MOT_AX[7]={N 0,D 1}
|
||||
$RAT_MOT_AX[8]={N 0,D 1}
|
||||
$RAT_MOT_AX[9]={N 0,D 1}
|
||||
$RAT_MOT_AX[10]={N 0,D 1}
|
||||
$RAT_MOT_AX[11]={N 0,D 1}
|
||||
$RAT_MOT_AX[12]={N 0,D 1}
|
||||
REAL $VEL_AXIS_MA[12] ;NENNDREHZAHL DES MOTORS ACHSE[I] (I=1:A1,I=7:E1) [U/MIN]
|
||||
$VEL_AXIS_MA[1]=4999.99
|
||||
$VEL_AXIS_MA[2]=4999.99
|
||||
$VEL_AXIS_MA[3]=4999.99
|
||||
$VEL_AXIS_MA[4]=5980.39
|
||||
$VEL_AXIS_MA[5]=5703.97
|
||||
$VEL_AXIS_MA[6]=5688.68
|
||||
$VEL_AXIS_MA[7]=0.0
|
||||
$VEL_AXIS_MA[8]=0.0
|
||||
$VEL_AXIS_MA[9]=0.0
|
||||
$VEL_AXIS_MA[10]=0.0
|
||||
$VEL_AXIS_MA[11]=0.0
|
||||
$VEL_AXIS_MA[12]=0.0
|
||||
INT $VEL_CPT1_MA[12]
|
||||
$VEL_CPT1_MA[1]=29
|
||||
$VEL_CPT1_MA[2]=29
|
||||
$VEL_CPT1_MA[3]=29
|
||||
$VEL_CPT1_MA[4]=29
|
||||
$VEL_CPT1_MA[5]=29
|
||||
$VEL_CPT1_MA[6]=29
|
||||
$VEL_CPT1_MA[7]=29
|
||||
$VEL_CPT1_MA[8]=29
|
||||
$VEL_CPT1_MA[9]=29
|
||||
$VEL_CPT1_MA[10]=29
|
||||
$VEL_CPT1_MA[11]=29
|
||||
$VEL_CPT1_MA[12]=29
|
||||
INT $VEL_MOT_MON[12] ;achsweise Ueberwachungsgrenzen der Geschwindigkeit
|
||||
$VEL_MOT_MON[1]=136
|
||||
$VEL_MOT_MON[2]=136
|
||||
$VEL_MOT_MON[3]=136
|
||||
$VEL_MOT_MON[4]=136
|
||||
$VEL_MOT_MON[5]=136
|
||||
$VEL_MOT_MON[6]=136
|
||||
$VEL_MOT_MON[7]=136
|
||||
$VEL_MOT_MON[8]=136
|
||||
$VEL_MOT_MON[9]=136
|
||||
$VEL_MOT_MON[10]=136
|
||||
$VEL_MOT_MON[11]=136
|
||||
$VEL_MOT_MON[12]=136
|
||||
INT $RED_VEL_AXC[12] ;REDUZIERFAKTOR FUER AXIALE GESCHWINDIGKEIT BEI ACHSSPEZ. HANDVERFAHREN UND KOMMANDOBETRIEB (PTP) ACHSE[I] (I=1:A1,I=7:E1) [%]
|
||||
$RED_VEL_AXC[1]=13
|
||||
$RED_VEL_AXC[2]=12
|
||||
$RED_VEL_AXC[3]=11
|
||||
$RED_VEL_AXC[4]=9
|
||||
$RED_VEL_AXC[5]=10
|
||||
$RED_VEL_AXC[6]=5
|
||||
$RED_VEL_AXC[7]=0
|
||||
$RED_VEL_AXC[8]=0
|
||||
$RED_VEL_AXC[9]=0
|
||||
$RED_VEL_AXC[10]=0
|
||||
$RED_VEL_AXC[11]=0
|
||||
$RED_VEL_AXC[12]=0
|
||||
INT $RED_ACC_AXC[12] ;REDUZIERFAKTOR FUER AXIALE BESCHLEUNIGUNG BEI ACHSSPEZ. HANDVERFAHREN UND KOMMANDOBETRIEB (PTP) ACHSE[I] (I=1:A1,I=7:E1) [%]
|
||||
$RED_ACC_AXC[1]=15
|
||||
$RED_ACC_AXC[2]=15
|
||||
$RED_ACC_AXC[3]=15
|
||||
$RED_ACC_AXC[4]=15
|
||||
$RED_ACC_AXC[5]=15
|
||||
$RED_ACC_AXC[6]=15
|
||||
$RED_ACC_AXC[7]=0
|
||||
$RED_ACC_AXC[8]=0
|
||||
$RED_ACC_AXC[9]=0
|
||||
$RED_ACC_AXC[10]=0
|
||||
$RED_ACC_AXC[11]=0
|
||||
$RED_ACC_AXC[12]=0
|
||||
INT $RED_ACC_DYN=100
|
||||
REAL $RED_VEL_CPC=6.67000 ;REDUZIERFAKTOR FUER BAHN-UND ORIENTIERUNGSGESCHWINDIGKEIT BEI KARTESISCHEM HANDVERFAHREN UND KOMMANDOBETRIEB [CP] [%]
|
||||
REAL $RED_ACC_CPC=8.00000 ;REDUZIERFAKTOR FUER BAHN-UND ORIENTIERUNGSBESCHLEUNIGUNGEN BEI KARTESISCHEM HANDVERFAHREN UND KOMMANDOBETRIEB [CP] [%]
|
||||
REAL $VEL_CP_T1=0.229000 ;BAHNGESCHWINDIGKEIT IN T1 [M/S] MAX: 0.25
|
||||
REAL $SPEED_LIMIT_TEACH_MODE=0.229000 ;REDUZIERUNG DER TCP- UND FLANSCHGESCHWINDIGKEIT IN [M/S] MAX: 0.25
|
||||
REAL $RED_JUS_UEB=100.000 ;REDUZIERFAKTOR FUER UEBERNAHMEFAHRT [%]
|
||||
INT $RED_ACC_OV[12] ;AXIALE REDUZIERUNG DER BESCHLEUNIGUNG FUER OVERRIDE ACHSE[I] (I=1:A1,I=7:E1) [%]
|
||||
$RED_ACC_OV[1]=100
|
||||
$RED_ACC_OV[2]=100
|
||||
$RED_ACC_OV[3]=100
|
||||
$RED_ACC_OV[4]=100
|
||||
$RED_ACC_OV[5]=100
|
||||
$RED_ACC_OV[6]=100
|
||||
$RED_ACC_OV[7]=0
|
||||
$RED_ACC_OV[8]=0
|
||||
$RED_ACC_OV[9]=0
|
||||
$RED_ACC_OV[10]=0
|
||||
$RED_ACC_OV[11]=0
|
||||
$RED_ACC_OV[12]=0
|
||||
FRAME $ACC_CAR_TOOL={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;FRAME (ACCORDING TO FLANGE) FOR CARTESIAN ACCELERATION MONITORING
|
||||
DECL ACC_CAR $ACC_CAR_LIMIT={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,ABS 0.0} ;LIMITS FOR THE CARTESIAN ACCELERATION $ACC_CAR_ACT
|
||||
BOOL $ACC_CAR_STOP=FALSE ;ENABLE (TRUE) OR DISABLE (FALSE) CARTESIAN ACCELERATION MONITORING
|
||||
INT $RED_ACC_EMX[12] ;REDUZIERFAKTOR FUER BAHNTREUE NOT-AUS-RAMPE [ % ]
|
||||
$RED_ACC_EMX[1]=165
|
||||
$RED_ACC_EMX[2]=280
|
||||
$RED_ACC_EMX[3]=200
|
||||
$RED_ACC_EMX[4]=250
|
||||
$RED_ACC_EMX[5]=250
|
||||
$RED_ACC_EMX[6]=250
|
||||
$RED_ACC_EMX[7]=0
|
||||
$RED_ACC_EMX[8]=0
|
||||
$RED_ACC_EMX[9]=0
|
||||
$RED_ACC_EMX[10]=0
|
||||
$RED_ACC_EMX[11]=0
|
||||
$RED_ACC_EMX[12]=0
|
||||
INT $RED_VEL_ECO_LEVEL[12] ; Reduzierfaktor der Achse [I] fuer Geschwindigkeit im EcoLevel (I=1: A1,I=7: E1) [%]
|
||||
$RED_VEL_ECO_LEVEL[1]=100
|
||||
$RED_VEL_ECO_LEVEL[2]=100
|
||||
$RED_VEL_ECO_LEVEL[3]=100
|
||||
$RED_VEL_ECO_LEVEL[4]=100
|
||||
$RED_VEL_ECO_LEVEL[5]=100
|
||||
$RED_VEL_ECO_LEVEL[6]=100
|
||||
$RED_VEL_ECO_LEVEL[7]=100
|
||||
$RED_VEL_ECO_LEVEL[8]=100
|
||||
$RED_VEL_ECO_LEVEL[9]=100
|
||||
$RED_VEL_ECO_LEVEL[10]=100
|
||||
$RED_VEL_ECO_LEVEL[11]=100
|
||||
$RED_VEL_ECO_LEVEL[12]=100
|
||||
INT $RED_ACC_ECO_LEVEL[12] ; Reduzierfaktor der Achse [I] fuer Beschleunigung im EcoLevel (I=1: A1,I=7: E1) [%]
|
||||
$RED_ACC_ECO_LEVEL[1]=100
|
||||
$RED_ACC_ECO_LEVEL[2]=100
|
||||
$RED_ACC_ECO_LEVEL[3]=100
|
||||
$RED_ACC_ECO_LEVEL[4]=100
|
||||
$RED_ACC_ECO_LEVEL[5]=100
|
||||
$RED_ACC_ECO_LEVEL[6]=100
|
||||
$RED_ACC_ECO_LEVEL[7]=100
|
||||
$RED_ACC_ECO_LEVEL[8]=100
|
||||
$RED_ACC_ECO_LEVEL[9]=100
|
||||
$RED_ACC_ECO_LEVEL[10]=100
|
||||
$RED_ACC_ECO_LEVEL[11]=100
|
||||
$RED_ACC_ECO_LEVEL[12]=100
|
||||
BOOL $WARMUP_RED_VEL=FALSE ;WARMFAHR-FUNKTIONALITAET EINGESCHALTET
|
||||
REAL $WARMUP_TIME=30.0000 ;[MIN]
|
||||
REAL $COOLDOWN_TIME=360.000 ;NACH DIESER ZEIT IM STILLSTAND [MIN] WIRD DER ROBOTER ALS KALT BETRACHTET
|
||||
INT $WARMUP_CURR_LIMIT=99 ;[%] DES MAXIMAL STROM
|
||||
INT $WARMUP_MIN_FAC=60 ;[%]
|
||||
REAL $WARMUP_SLEW_RATE=5.00000 ;[%/sec]
|
||||
REAL $ST_TOL_VEL[12] ;GESCHWINDIGKEITSTOLERANZ FUER STILLSTANDSERKENNUNG ACHSE[I] (I=1:A1,I=7:E1) [U_MOT/MIN]
|
||||
$ST_TOL_VEL[1]=15.0000
|
||||
$ST_TOL_VEL[2]=15.0000
|
||||
$ST_TOL_VEL[3]=15.0000
|
||||
$ST_TOL_VEL[4]=15.0000
|
||||
$ST_TOL_VEL[5]=15.0000
|
||||
$ST_TOL_VEL[6]=15.0000
|
||||
$ST_TOL_VEL[7]=15.0000
|
||||
$ST_TOL_VEL[8]=15.0000
|
||||
$ST_TOL_VEL[9]=15.0000
|
||||
$ST_TOL_VEL[10]=15.0000
|
||||
$ST_TOL_VEL[11]=15.0000
|
||||
$ST_TOL_VEL[12]=15.0000
|
||||
INT $ST_TOL_TIME=200 ;ERKENNUNGSZEIT [MS]
|
||||
REAL $VEL_AX_JUS[12] ;GESCHWINDIGKEIT BEI EMT-JUSTAGE ACHSE[I] (I=1:A1,I=7:E1) [GRAD/SEC]
|
||||
$VEL_AX_JUS[1]=0.0520870
|
||||
$VEL_AX_JUS[2]=0.0563930
|
||||
$VEL_AX_JUS[3]=0.0757880
|
||||
$VEL_AX_JUS[4]=0.169510
|
||||
$VEL_AX_JUS[5]=0.572960
|
||||
$VEL_AX_JUS[6]=0.203180
|
||||
$VEL_AX_JUS[7]=0.0
|
||||
$VEL_AX_JUS[8]=0.0
|
||||
$VEL_AX_JUS[9]=0.0
|
||||
$VEL_AX_JUS[10]=0.0
|
||||
$VEL_AX_JUS[11]=0.0
|
||||
$VEL_AX_JUS[12]=0.0
|
||||
REAL $L_EMT_MAX[12] ;LAENGE JUSTAGE-WEG EMT ACHSE[I] (I=1:A1,I=7:E1) [GRAD]
|
||||
$L_EMT_MAX[1]=1.60000
|
||||
$L_EMT_MAX[2]=1.76000
|
||||
$L_EMT_MAX[3]=2.40000
|
||||
$L_EMT_MAX[4]=4.32000
|
||||
$L_EMT_MAX[5]=11.0000
|
||||
$L_EMT_MAX[6]=4.80000
|
||||
$L_EMT_MAX[7]=0.0
|
||||
$L_EMT_MAX[8]=0.0
|
||||
$L_EMT_MAX[9]=0.0
|
||||
$L_EMT_MAX[10]=0.0
|
||||
$L_EMT_MAX[11]=0.0
|
||||
$L_EMT_MAX[12]=0.0
|
||||
REAL $TC_SYM=0.100000 ;ZEITKONST. SYMMETRIERFILTER
|
||||
INT $TM_CON_VEL=0 ;MINIMALE KONSTANTFAHRPHASE [MS]
|
||||
REAL $APO_DIS_PTP[12] ;MAXIMALER UEBERSCHLEIFWEG PTP ACHSE[I] (I=1:A1,I=7:E1) [MM,GRAD]
|
||||
$APO_DIS_PTP[1]=90.0000
|
||||
$APO_DIS_PTP[2]=90.0000
|
||||
$APO_DIS_PTP[3]=90.0000
|
||||
$APO_DIS_PTP[4]=90.0000
|
||||
$APO_DIS_PTP[5]=90.0000
|
||||
$APO_DIS_PTP[6]=90.0000
|
||||
$APO_DIS_PTP[7]=0.0
|
||||
$APO_DIS_PTP[8]=0.0
|
||||
$APO_DIS_PTP[9]=0.0
|
||||
$APO_DIS_PTP[10]=0.0
|
||||
$APO_DIS_PTP[11]=0.0
|
||||
$APO_DIS_PTP[12]=0.0
|
||||
DECL CP $ACC_MA={CP 10.0000,ORI1 1000.00,ORI2 1000.00} ;CP = MAX. BAHNBESCHLEUNIGUNG [M/SEC2], ORI1 = MAX. SCHWENKBESCHLEUNIGUNG [GRAD/SEC2], ORI2 = MAX. DREHBESCHLEUNIGUNG [GRAD/SEC2]
|
||||
DECL JERK_STRUC $JERK_MA={CP 500.000,ORI 50000.0,AX {A1 1000.00,A2 1000.00,A3 1000.00,A4 1000.00,A5 1000.00,A6 1000.00,E1 1000.00,E2 1000.00,E3 1000.00,E4 1000.00,E5 1000.00,E6 1000.00}} ;Maximaler Ruck CP: [m/s^3], ORI: [deg/^3], AX: [deg/s^3] (rotatorisch) bzw. [m/s^3] (linear)
|
||||
DECL CP $VEL_MA={CP 3.00000,ORI1 400.000,ORI2 400.000} ;CP = MAX. BAHNGESCHWINDIGKEIT [M/SEC], ORI1 = MAX. SCHWENKGESCHWINDIGKEIT [GRAD/SEC], ORI2 = MAX. DREHGESCHWINDIGKEIT [GRAD/SEC]
|
||||
DECL CP $ACC_OV={CP 4.60000,ORI1 200.000,ORI2 200.000} ;CP = BAHNBESCHL. BEI OV.-AEND. [M/SEC2], ORI1 = SCHWENKBESCHL. BEI OV.-AEND. [GRAD/SEC2], ORI2 = DREHBESCHL. BEI OV.-AEND. [GRAD/SEC2]
|
||||
INT $RED_T1=7 ;REDUKTIONSFAKTOR T1 [%] MAX: 15%
|
||||
INT $DEF_FLT_PTP=204 ;DEFAULTFILTER PTP
|
||||
INT $DEF_FLT_CP=144 ;DEFAULTFILTER CP
|
||||
INT $DEF_OV_JOG=10 ;VORBESETZUNG FUER OVERRIDE
|
||||
INT $SEQ_CAL[12] ;REFERIER-REIHENFOLGE DER ACHSEN SCHRITT[I]
|
||||
$SEQ_CAL[1]='B0001'
|
||||
$SEQ_CAL[2]='B0010'
|
||||
$SEQ_CAL[3]='B0100'
|
||||
$SEQ_CAL[4]='B1000'
|
||||
$SEQ_CAL[5]='B00010000'
|
||||
$SEQ_CAL[6]='B00100000'
|
||||
$SEQ_CAL[7]='B01000000'
|
||||
$SEQ_CAL[8]='B10000000'
|
||||
$SEQ_CAL[9]='B000100000000'
|
||||
$SEQ_CAL[10]='B001000000000'
|
||||
$SEQ_CAL[11]='B010000000000'
|
||||
$SEQ_CAL[12]='B100000000000'
|
||||
INT $DIR_CAL='B000111111111' ;REFERIER-RICHTUNG
|
||||
INT $RECOVERY_MASTERING_AXES='B0000' ;Achsen die Recovery Justage unterstuetzen
|
||||
INT $RED_CAL_SD=0 ;REDUKTIONSFAKTOR NACH ERREICHEN DES NOCKENS [%]
|
||||
INT $RED_CAL_SF=0 ;REDUKTIONSFAKTOR VOR ERREICHEN DES NOCKENS [%]
|
||||
INT $BRK_DEL=20000 ;BREMSVERZOEGERUNGSZEIT [MS]
|
||||
BOOL $GEARTORQ_MON=TRUE ;GETRIEBEMOMENTENUEBERWACHUNG EIN/AUS
|
||||
INT $ACC_ACT_MA=250 ;GRENZWERT SOLLBESCHLEUNIGUNG [%]
|
||||
INT $VEL_ACT_MA=110 ;GRENZWERT SOLLGESCHWINDIGKEIT [%]
|
||||
INT $ILLEGAL_SPEED=200 ; GRENZWERT GESCHWINDIGKEIT VOR FILTER [%]
|
||||
BOOL $MONITOR_ILLEGAL_SPEED=TRUE ; GESCHWINDIGKEITSUEBERWACHUNG VOR FILTER
|
||||
REAL $IN_POS_CAR=0.100000 ;KARTESISCHES POSITIONIERFENSTER (TRANSLATIONSSTEIL) [MM]
|
||||
REAL $IN_POS_ORI=0.100000 ;KARTESISCHES POSITIONIERFENSTER (ORIENTIERUNGSTEIL) [DEG]
|
||||
REAL $IN_POS_MA[12] ;POSITIONIERFENSTER ACHSE[I] (I=1:A1,I=7:E1) [MM,GRAD]
|
||||
$IN_POS_MA[1]=0.100000
|
||||
$IN_POS_MA[2]=0.100000
|
||||
$IN_POS_MA[3]=0.100000
|
||||
$IN_POS_MA[4]=0.100000
|
||||
$IN_POS_MA[5]=0.100000
|
||||
$IN_POS_MA[6]=0.100000
|
||||
$IN_POS_MA[7]=0.0
|
||||
$IN_POS_MA[8]=0.0
|
||||
$IN_POS_MA[9]=0.0
|
||||
$IN_POS_MA[10]=0.0
|
||||
$IN_POS_MA[11]=0.0
|
||||
$IN_POS_MA[12]=0.0
|
||||
INT $TIME_POS[12] ;POSITIONIERZEIT ACHSE[I] (I=1:A1,I=7:E1)
|
||||
$TIME_POS[1]=512
|
||||
$TIME_POS[2]=512
|
||||
$TIME_POS[3]=512
|
||||
$TIME_POS[4]=512
|
||||
$TIME_POS[5]=512
|
||||
$TIME_POS[6]=512
|
||||
$TIME_POS[7]=512
|
||||
$TIME_POS[8]=512
|
||||
$TIME_POS[9]=512
|
||||
$TIME_POS[10]=512
|
||||
$TIME_POS[11]=512
|
||||
$TIME_POS[12]=512
|
||||
INT $IN_STILL_MA=4 ;FAKTOR FUER STILLSTANDSFENSTER
|
||||
INT $VEL_ENC_CO=50 ;DREHZAHLSOLLWERTSCHWELLE FUER GEBERUEBERWACHUNG [WANDLERINKR.]
|
||||
REAL $COM_VAL_MI[12] ;SOLLDREHZAHLBEGRENZUNG ACHSE[I] (I=1:A1,I=7:E1) [%]
|
||||
$COM_VAL_MI[1]=150.000
|
||||
$COM_VAL_MI[2]=150.000
|
||||
$COM_VAL_MI[3]=150.000
|
||||
$COM_VAL_MI[4]=150.000
|
||||
$COM_VAL_MI[5]=150.000
|
||||
$COM_VAL_MI[6]=150.000
|
||||
$COM_VAL_MI[7]=150.000
|
||||
$COM_VAL_MI[8]=150.000
|
||||
$COM_VAL_MI[9]=150.000
|
||||
$COM_VAL_MI[10]=150.000
|
||||
$COM_VAL_MI[11]=150.000
|
||||
$COM_VAL_MI[12]=150.000
|
||||
INT $TL_COM_VAL=50 ;TOLERANZZEIT SOLLDREHZAHLBEGRENZUNG [MS]
|
||||
REAL $SOFTN_END[12] ;SOFTWARE-ENDSCHALTER NEGATIV ACHSE[I] (I=1:A1,I=7:E1) [MM,GRAD]
|
||||
$SOFTN_END[1]=-185.000
|
||||
$SOFTN_END[2]=-140.000
|
||||
$SOFTN_END[3]=-120.000
|
||||
$SOFTN_END[4]=-350.000
|
||||
$SOFTN_END[5]=-125.000
|
||||
$SOFTN_END[6]=-350.000
|
||||
$SOFTN_END[7]=0.0
|
||||
$SOFTN_END[8]=0.0
|
||||
$SOFTN_END[9]=0.0
|
||||
$SOFTN_END[10]=0.0
|
||||
$SOFTN_END[11]=0.0
|
||||
$SOFTN_END[12]=0.0
|
||||
REAL $SOFTP_END[12] ;SOFTWARE-ENDSCHALTER POSITIV ACHSE[I] (I=1:A1,I=7:E1) [MM,GRAD]
|
||||
$SOFTP_END[1]=185.000
|
||||
$SOFTP_END[2]=-5.00000
|
||||
$SOFTP_END[3]=168.000
|
||||
$SOFTP_END[4]=350.000
|
||||
$SOFTP_END[5]=125.000
|
||||
$SOFTP_END[6]=350.000
|
||||
$SOFTP_END[7]=0.0
|
||||
$SOFTP_END[8]=0.0
|
||||
$SOFTP_END[9]=0.0
|
||||
$SOFTP_END[10]=0.0
|
||||
$SOFTP_END[11]=0.0
|
||||
$SOFTP_END[12]=0.0
|
||||
DECL AXBOX $AXWORKSPACE[8] ;ACHSSPEZ. ARBEITSRAEUME
|
||||
$AXWORKSPACE[1]={A1_N 0.0,A1_P 0.0,A2_N 0.0,A2_P 0.0,A3_N 0.0,A3_P 0.0,A4_N 0.0,A4_P 0.0,A5_N 0.0,A5_P 0.0,A6_N 0.0,A6_P 0.0,E1_N 0.0,E1_P 0.0,E2_N 0.0,E2_P 0.0,E3_N 0.0,E3_P 0.0,E4_N 0.0,E4_P 0.0,E5_N 0.0,E5_P 0.0,E6_N 0.0,E6_P 0.0,MODE #OFF,STATE FALSE}
|
||||
$AXWORKSPACE[2]={A1_N 0.0,A1_P 0.0,A2_N 0.0,A2_P 0.0,A3_N 0.0,A3_P 0.0,A4_N 0.0,A4_P 0.0,A5_N 0.0,A5_P 0.0,A6_N 0.0,A6_P 0.0,E1_N 0.0,E1_P 0.0,E2_N 0.0,E2_P 0.0,E3_N 0.0,E3_P 0.0,E4_N 0.0,E4_P 0.0,E5_N 0.0,E5_P 0.0,E6_N 0.0,E6_P 0.0,MODE #OFF,STATE FALSE}
|
||||
$AXWORKSPACE[3]={A1_N 0.0,A1_P 0.0,A2_N 0.0,A2_P 0.0,A3_N 0.0,A3_P 0.0,A4_N 0.0,A4_P 0.0,A5_N 0.0,A5_P 0.0,A6_N 0.0,A6_P 0.0,E1_N 0.0,E1_P 0.0,E2_N 0.0,E2_P 0.0,E3_N 0.0,E3_P 0.0,E4_N 0.0,E4_P 0.0,E5_N 0.0,E5_P 0.0,E6_N 0.0,E6_P 0.0,MODE #OFF,STATE FALSE}
|
||||
$AXWORKSPACE[4]={A1_N 0.0,A1_P 0.0,A2_N 0.0,A2_P 0.0,A3_N 0.0,A3_P 0.0,A4_N 0.0,A4_P 0.0,A5_N 0.0,A5_P 0.0,A6_N 0.0,A6_P 0.0,E1_N 0.0,E1_P 0.0,E2_N 0.0,E2_P 0.0,E3_N 0.0,E3_P 0.0,E4_N 0.0,E4_P 0.0,E5_N 0.0,E5_P 0.0,E6_N 0.0,E6_P 0.0,MODE #OFF,STATE FALSE}
|
||||
$AXWORKSPACE[5]={A1_N 0.0,A1_P 0.0,A2_N 0.0,A2_P 0.0,A3_N 0.0,A3_P 0.0,A4_N 0.0,A4_P 0.0,A5_N 0.0,A5_P 0.0,A6_N 0.0,A6_P 0.0,E1_N 0.0,E1_P 0.0,E2_N 0.0,E2_P 0.0,E3_N 0.0,E3_P 0.0,E4_N 0.0,E4_P 0.0,E5_N 0.0,E5_P 0.0,E6_N 0.0,E6_P 0.0,MODE #OFF,STATE FALSE}
|
||||
$AXWORKSPACE[6]={A1_N 0.0,A1_P 0.0,A2_N 0.0,A2_P 0.0,A3_N 0.0,A3_P 0.0,A4_N 0.0,A4_P 0.0,A5_N 0.0,A5_P 0.0,A6_N 0.0,A6_P 0.0,E1_N 0.0,E1_P 0.0,E2_N 0.0,E2_P 0.0,E3_N 0.0,E3_P 0.0,E4_N 0.0,E4_P 0.0,E5_N 0.0,E5_P 0.0,E6_N 0.0,E6_P 0.0,MODE #OFF,STATE FALSE}
|
||||
$AXWORKSPACE[7]={A1_N 0.0,A1_P 0.0,A2_N 0.0,A2_P 0.0,A3_N 0.0,A3_P 0.0,A4_N 0.0,A4_P 0.0,A5_N 0.0,A5_P 0.0,A6_N 0.0,A6_P 0.0,E1_N 0.0,E1_P 0.0,E2_N 0.0,E2_P 0.0,E3_N 0.0,E3_P 0.0,E4_N 0.0,E4_P 0.0,E5_N 0.0,E5_P 0.0,E6_N 0.0,E6_P 0.0,MODE #OFF,STATE FALSE}
|
||||
$AXWORKSPACE[8]={A1_N 0.0,A1_P 0.0,A2_N 0.0,A2_P 0.0,A3_N 0.0,A3_P 0.0,A4_N 0.0,A4_P 0.0,A5_N 0.0,A5_P 0.0,A6_N 0.0,A6_P 0.0,E1_N 0.0,E1_P 0.0,E2_N 0.0,E2_P 0.0,E3_N 0.0,E3_P 0.0,E4_N 0.0,E4_P 0.0,E5_N 0.0,E5_P 0.0,E6_N 0.0,E6_P 0.0,MODE #OFF,STATE FALSE}
|
||||
CHAR $AXWORKSPACE_NAME1[24]
|
||||
$AXWORKSPACE_NAME1[]="AXWORKSPACE_NAME 1"
|
||||
CHAR $AXWORKSPACE_NAME2[24]
|
||||
$AXWORKSPACE_NAME2[]="AXWORKSPACE_NAME 2"
|
||||
CHAR $AXWORKSPACE_NAME3[24]
|
||||
$AXWORKSPACE_NAME3[]="AXWORKSPACE_NAME 3"
|
||||
CHAR $AXWORKSPACE_NAME4[24]
|
||||
$AXWORKSPACE_NAME4[]="AXWORKSPACE_NAME 4"
|
||||
CHAR $AXWORKSPACE_NAME5[24]
|
||||
$AXWORKSPACE_NAME5[]="AXWORKSPACE_NAME 5"
|
||||
CHAR $AXWORKSPACE_NAME6[24]
|
||||
$AXWORKSPACE_NAME6[]="AXWORKSPACE_NAME 6"
|
||||
CHAR $AXWORKSPACE_NAME7[24]
|
||||
$AXWORKSPACE_NAME7[]="AXWORKSPACE_NAME 7"
|
||||
CHAR $AXWORKSPACE_NAME8[24]
|
||||
$AXWORKSPACE_NAME8[]="AXWORKSPACE_NAME 8"
|
||||
DECL CYLINDER $CYLWORKSPACE[8] ;ZYLINDRISCHE KARTESISCHE ARBEITSRAEUME
|
||||
$CYLWORKSPACE[1]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,Z1 0.0,Z2 0.0,R 0.0,MODE #OFF,REFERENCE #WORLD,STATE FALSE}
|
||||
$CYLWORKSPACE[2]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,Z1 0.0,Z2 0.0,R 0.0,MODE #OFF,REFERENCE #WORLD,STATE FALSE}
|
||||
$CYLWORKSPACE[3]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,Z1 0.0,Z2 0.0,R 0.0,MODE #OFF,REFERENCE #WORLD,STATE FALSE}
|
||||
$CYLWORKSPACE[4]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,Z1 0.0,Z2 0.0,R 0.0,MODE #OFF,REFERENCE #WORLD,STATE FALSE}
|
||||
$CYLWORKSPACE[5]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,Z1 0.0,Z2 0.0,R 0.0,MODE #OFF,REFERENCE #WORLD,STATE FALSE}
|
||||
$CYLWORKSPACE[6]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,Z1 0.0,Z2 0.0,R 0.0,MODE #OFF,REFERENCE #WORLD,STATE FALSE}
|
||||
$CYLWORKSPACE[7]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,Z1 0.0,Z2 0.0,R 0.0,MODE #OFF,REFERENCE #WORLD,STATE FALSE}
|
||||
$CYLWORKSPACE[8]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,Z1 0.0,Z2 0.0,R 0.0,MODE #OFF,REFERENCE #WORLD,STATE FALSE}
|
||||
CHAR $CYLWORKSPACE_NAME1[24]
|
||||
$CYLWORKSPACE_NAME1[]="CYLWORKSPACE_NAME 1"
|
||||
CHAR $CYLWORKSPACE_NAME2[24]
|
||||
$CYLWORKSPACE_NAME2[]="CYLWORKSPACE_NAME 2"
|
||||
CHAR $CYLWORKSPACE_NAME3[24]
|
||||
$CYLWORKSPACE_NAME3[]="CYLWORKSPACE_NAME 3"
|
||||
CHAR $CYLWORKSPACE_NAME4[24]
|
||||
$CYLWORKSPACE_NAME4[]="CYLWORKSPACE_NAME 4"
|
||||
CHAR $CYLWORKSPACE_NAME5[24]
|
||||
$CYLWORKSPACE_NAME5[]="CYLWORKSPACE_NAME 5"
|
||||
CHAR $CYLWORKSPACE_NAME6[24]
|
||||
$CYLWORKSPACE_NAME6[]="CYLWORKSPACE_NAME 6"
|
||||
CHAR $CYLWORKSPACE_NAME7[24]
|
||||
$CYLWORKSPACE_NAME7[]="CYLWORKSPACE_NAME 7"
|
||||
CHAR $CYLWORKSPACE_NAME8[24]
|
||||
$CYLWORKSPACE_NAME8[]="CYLWORKSPACE_NAME 8"
|
||||
DECL DELTA_WORKSPACE $DELTA_WORKSPACE={Z1 0.0,Z2 0.0,Z3 0.0,R1 0.0,R2 0.0,MODE #OFF} ;KARTESISCHER ARBEITSRAUM FUER DELTA-ROBOTER
|
||||
INT $BRK_MAX_TM=0 ;MAX. BREMSZEIT [MS]
|
||||
INT $EMSTOP_TIME=100 ;ZEITUEBERWACHUNG FUER NOT_STOP [MS]
|
||||
INT $ACT_VAL_DIF=0 ;GEBERISTWERTDIFFERENZ [INKR]
|
||||
CHAR $TRAFONAME[32] ;NAME DER KOORDINATENTRANSFORMATION
|
||||
$TRAFONAME[]="#KR120R3100_2 C4 FLR" ;MAXIMAL 32 ZEICHEN
|
||||
DECL SUPPLY_VOLTAGE $SUPPLY_VOLTAGE=#SV380 ; NETZSPANNUNG [#SV120, #SV200, #SV230, #SV380 ;#SV400; #SV440; #SV480]; Netzspannung in [V]
|
||||
DECL KINCLASS $KINCLASS=#STANDARD ;KINEMATIKKLASSEN (STANDARD,SPECIAL,TEST,NONE,DELTA_KIN)
|
||||
INT $SIMULATED_AXIS='B0000' ;Simulation von Roboterachsen
|
||||
INT $SIMULATED_COOP_ROBOTS='B0000' ;Simulierte Roboter im Roboteam-Verbund
|
||||
INT $ACTIVE_AXIS_MASK='B00111111' ;Aktive Verfahrtasten, achsspez.
|
||||
INT $ACTIVE_KAR_MASK='B00111111' ;Aktive Verfahrtasten, kartesisch
|
||||
INT $TRAFO_AXIS=6 ;ANZAHL DER TRANSFORMIERTEN ACHSEN
|
||||
DECL MAIN_AXIS $MAIN_AXIS=#NR ;GRUNDACHSENKENNUNG (SS = PORTAL, CC = SCARA, NR = GELENKROBOTER)
|
||||
DECL WRIST_AXIS $WRIST_AXIS=#ZEH ;HANDACHSENKENNUNG (NOH = KEINE HAND, ZEH = ZENTRALHAND, SRH = SCHRAEGHAND DSH = DOPPELSCHRAEGHAND, WIH = WINKELHAND, WSH = WINKELSCHRAEGHAND
|
||||
INT $A4PAR=0 ;0=ACHSE 4 NICHT PARALLEL, 1=ACHSE 4 PARALLEL ZUR LETZEN ROTATORISCHEN GRUNDACHSE, 2=SONDERKINEMATIK: ACHSE 4 IMMER PARALLEL ZUR Z-IRO ACHSE
|
||||
BOOL $DEF_A4FIX=FALSE ;ACHSE 4 FIXIERT
|
||||
BOOL $DEF_A5LINK=FALSE ;4-ACHS-PALETTIERER ( A4=0 GRAD; A5 WIRD UEBER PARALLELOGRAMM GEFUEHRT )
|
||||
INT $SPINDLE=0 ;SPINDELN (0 = NEIN, 1 = JA)
|
||||
INT $AXIS_SEQ[6] ;UMORDNUNG VON ACHSE[I] (I=1:A1,I=7:E1)
|
||||
$AXIS_SEQ[1]=1
|
||||
$AXIS_SEQ[2]=2
|
||||
$AXIS_SEQ[3]=3
|
||||
$AXIS_SEQ[4]=4
|
||||
$AXIS_SEQ[5]=5
|
||||
$AXIS_SEQ[6]=6
|
||||
INT $AXIS_DIR[12] ;DREHRICHTUNG DER ACHSE[I] (I=1:A1,I=7:E1)
|
||||
$AXIS_DIR[1]=-1
|
||||
$AXIS_DIR[2]=1
|
||||
$AXIS_DIR[3]=1
|
||||
$AXIS_DIR[4]=-1
|
||||
$AXIS_DIR[5]=-1
|
||||
$AXIS_DIR[6]=-1
|
||||
$AXIS_DIR[7]=0
|
||||
$AXIS_DIR[8]=0
|
||||
$AXIS_DIR[9]=0
|
||||
$AXIS_DIR[10]=0
|
||||
$AXIS_DIR[11]=0
|
||||
$AXIS_DIR[12]=0
|
||||
REAL $INC_AXIS[6] ;SCHRITTMASS ACHSSPEZIFISCH
|
||||
$INC_AXIS[1]=0.00500000
|
||||
$INC_AXIS[2]=0.000500000
|
||||
$INC_AXIS[3]=0.000500000
|
||||
$INC_AXIS[4]=0.00200000
|
||||
$INC_AXIS[5]=0.00200000
|
||||
$INC_AXIS[6]=0.00200000
|
||||
REAL $INC_EXTAX[6] ;SCHRITTMASS ACHSSPEZIFISCH EXTERNE ACHSEN
|
||||
$INC_EXTAX[1]=10.0000
|
||||
$INC_EXTAX[2]=10.0000
|
||||
$INC_EXTAX[3]=10.0000
|
||||
$INC_EXTAX[4]=10.0000
|
||||
$INC_EXTAX[5]=10.0000
|
||||
$INC_EXTAX[6]=10.0000
|
||||
REAL $INC_CAR[6] ;SCHRITTMASS KARTESISCH WERKZEUGBEZOGEN
|
||||
$INC_CAR[1]=50.0000
|
||||
$INC_CAR[2]=50.0000
|
||||
$INC_CAR[3]=50.0000
|
||||
$INC_CAR[4]=50.0000
|
||||
$INC_CAR[5]=50.0000
|
||||
$INC_CAR[6]=50.0000
|
||||
INT $POS_SWB[3] ;S-SCHALTBAR
|
||||
$POS_SWB[1]=0 ;S-SCHALTBAR; UEBERKOPF (O = NEIN, 1 = JA)
|
||||
$POS_SWB[2]=0 ;S-SCHALTBAR; ACHSE 2-3 (0 = NEIN, 1 = JA)
|
||||
$POS_SWB[3]=0 ;S-SCHALTBAR; ACHSE 5 (0 = NEIN, 1 = JA)
|
||||
INT $SINGUL_POS[3] ;BEHANDLUNG UNDEFINIERTER GELENKSTELLUNGEN BEI VORGABE EINES SINGULAEREN PTP-PUNKTES
|
||||
$SINGUL_POS[1]=0 ;BEHANDLUNG EINER UNDEFINIERTER GELENKSTELLUNG (0 = THETA=0, 1 = THETA=THETA ALT)
|
||||
$SINGUL_POS[2]=0 ;BEHANDLUNG EINER UNDEFINIERTER GELENKSTELLUNG (0 = THETA=0, 1 = THETA=THETA ALT)
|
||||
$SINGUL_POS[3]=0 ;BEHANDLUNG EINER UNDEFINIERTER GELENKSTELLUNG (0 = THETA=0, 1 = THETA=THETA ALT)
|
||||
REAL $DIS_WRP1=1635.00 ;MITTLERER ABSTAND HANDPUNKT ZUR SINGULARITAET 1
|
||||
REAL $DIS_WRP2=0.0 ;MITTLERER ABSTAND HANDPUNKT ZUR SINGULARITAET 2
|
||||
INT $ORI_CHECK=0 ;ORIENTIERUNGSPRUEFUNG AN CP-ENDPUNKTEN (NUR BEIM 5 ACHSER)
|
||||
FRAME $TIRORO={X 0.0,Y 0.0,Z 645.000,A 0.0,B 0.0,C 0.0} ;FRAME ZWISCHEN INTERNEN ROBOTERKOORDINATENSYSTEM UND ROBOTERKOORDINATENSYSTEM
|
||||
FRAME $TFLWP={X 0.0,Y 0.0,Z 215.000,A 0.0,B 0.0,C 0.0} ;FRAME ZWISCHEN FLANSCH- UND HANDPUNKTKOORDINATENSYSTEM
|
||||
FRAME $TX3P3={X 1420.00,Y 0.0,Z 115.000,A 0.0,B 90.0000,C 0.0} ;ANBRINGUNG DER ROBOTERHAND
|
||||
REAL $LENGTH_A=330.000 ;GRUNDACHSLAENGE A
|
||||
REAL $LENGTH_B=1350.00 ;GRUNDACHSLAENGE B
|
||||
DECL DHART $DH_4={DHART_A 0.0,DHART_D 0.0,DHART_ALPHA 90.0000} ;A = LAENGE A, D = LAENGE D, ALPHA = WINKEL ALPHA
|
||||
DECL DHART $DH_5={DHART_A 0.0,DHART_D 0.0,DHART_ALPHA -90.0000} ;A = LAENGE A, D = LAENGE D, ALPHA = WINKEL ALPHA
|
||||
DECL SPIN $SPIN_A={SPIN_AXIS 0,SPIN_RAD_G 0.0,SPIN_RAD_H 0.0,SPIN_SG 0,SPIN_BETA 0.0} ;AXIS = ACHSE,AUF DIE DIE SPINDEL WIRKT, RAD_G = RADIUS G, RAD_H = RADIUS H SG = VORZEICHEN, BETA = WINKELVERSATZ
|
||||
DECL SPIN $SPIN_B={SPIN_AXIS 0,SPIN_RAD_G 0.0,SPIN_RAD_H 0.0,SPIN_SG 0,SPIN_BETA 0.0}
|
||||
DECL SPIN $SPIN_C={SPIN_AXIS 0,SPIN_RAD_G 0.0,SPIN_RAD_H 0.0,SPIN_SG 0,SPIN_BETA 0.0}
|
||||
DECL TRPSPIN $TRP_A={TRPSP_AXIS 0,TRPSP_COP_AX 0,TRPSP_A 0.0,TRPSP_B 0.0,TRPSP_C 0.0,TRPSP_D 0.0} ;AXIS = UEBER TRAPEZ ANGETRIEBENE ACHSE, COP_AXIS = KOPPELNDE ACHSE, A = TRAPEZLAENGE A, B= TRAPEZLAENGE B, C = TRAPEZLAENGE C, D = TRAPEZLAENGE D
|
||||
REAL $SPC_KIN[30] ;SONDERKINEMATIKEN
|
||||
$SPC_KIN[1]=0.0 ;A-PARAMETER FUER GRENZEBACHKINEMATIK
|
||||
$SPC_KIN[2]=0.0 ;D-PARAMETER FUER GRENZEBACHKINEMATIK
|
||||
$SPC_KIN[3]=0.0 ;W12-PARAMETER FUER ALLGEMEINE (NICHT-ORTHOGONALE) PORTALKINEMATIKEN
|
||||
$SPC_KIN[4]=0.0 ;LG-PARAMETER FUER ALLGEMEINE (NICHT-ORTHOGONALE) PORTALKINEMATIKEN
|
||||
$SPC_KIN[5]=0.0 ;BG-PARAMETER FUER ALLGEMEINE (NICHT-ORTHOGONALE) PORTALKINEMATIKEN
|
||||
$SPC_KIN[6]=0.0
|
||||
$SPC_KIN[7]=0.0
|
||||
$SPC_KIN[8]=0.0
|
||||
$SPC_KIN[9]=0.0
|
||||
$SPC_KIN[10]=0.0
|
||||
$SPC_KIN[11]=0.0
|
||||
$SPC_KIN[12]=0.0
|
||||
$SPC_KIN[13]=0.0
|
||||
$SPC_KIN[14]=0.0
|
||||
$SPC_KIN[15]=0.0
|
||||
$SPC_KIN[16]=0.0
|
||||
$SPC_KIN[17]=0.0
|
||||
$SPC_KIN[18]=0.0
|
||||
$SPC_KIN[19]=0.0
|
||||
$SPC_KIN[20]=0.0
|
||||
$SPC_KIN[21]=0.0
|
||||
$SPC_KIN[22]=0.0
|
||||
$SPC_KIN[23]=0.0
|
||||
$SPC_KIN[24]=0.0
|
||||
$SPC_KIN[25]=0.0
|
||||
$SPC_KIN[26]=0.0
|
||||
$SPC_KIN[27]=0.0
|
||||
$SPC_KIN[28]=0.0
|
||||
$SPC_KIN[29]=0.0
|
||||
$SPC_KIN[30]=0.0
|
||||
INT $EX_AX_NUM=0 ;ANZAHL EXTERNER ACHSEN (0-6)
|
||||
INT $EX_AX_ASYNC='B0000' ;EXTERNE ACHSEN ASYNCHRON
|
||||
INT $ASYNC_T1_FAST='B0000' ;GESCHW.-RED. DEAKTIVIERT ( T1 )
|
||||
DECL EX_KIN $EX_KIN={ET1 #NONE,ET2 #NONE,ET3 #NONE,ET4 #NONE,ET5 #NONE,ET6 #NONE} ;EXTERNE KINEMATIKEN #NONE,#EASYS,#EBSYS,#ECSYS,#EDSYS,#EESYS,#EFSYS,#ERSYS
|
||||
DECL ET_AX $ET1_AX={TR_A1 #NONE,TR_A2 #NONE,TR_A3 #NONE} ;EXTERNE ACHSEN #NONE, #E1, #E2, #E3, #E4, #E5, #E6
|
||||
CHAR $ET1_NAME[40] ;NAME DER TRANSFORMATION ET1
|
||||
$ET1_NAME[]=" "
|
||||
FRAME $ET1_TA1KR={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;FRAME ZWISCHEN A1 UND FUSSPUNKT DER KIN IN TRAFO ET1
|
||||
FRAME $ET1_TA2A1={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A2 UND A1
|
||||
FRAME $ET1_TA3A2={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A3 UND A2
|
||||
FRAME $ET1_TFLA3={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN FL UND A3
|
||||
FRAME $ET1_TPINFL={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN MESSPUNKT UND FL
|
||||
DECL ET_AX $ET2_AX={TR_A1 #NONE,TR_A2 #NONE,TR_A3 #NONE} ;EXTERNE ACHSEN #NONE, #E1, #E2, #E3, #E4, #E5, #E6
|
||||
CHAR $ET2_NAME[40] ;NAME DER TRANSFORMATION ET2
|
||||
$ET2_NAME[]=" "
|
||||
FRAME $ET2_TA1KR={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;FRAME ZWISCHEN A1 UND FUSSPUNKT DER KIN IN TRAFO ET2
|
||||
FRAME $ET2_TA2A1={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A2 UND A1
|
||||
FRAME $ET2_TA3A2={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A3 UND A2
|
||||
FRAME $ET2_TFLA3={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN FL UND A3
|
||||
FRAME $ET2_TPINFL={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN MESSPUNKT UND FL
|
||||
DECL ET_AX $ET3_AX={TR_A1 #NONE,TR_A2 #NONE,TR_A3 #NONE} ;EXTERNE ACHSEN #NONE, #E1, #E2, #E3, #E4, #E5, #E6
|
||||
CHAR $ET3_NAME[40] ;NAME DER TRANSFORMATION ET3
|
||||
$ET3_NAME[]=" "
|
||||
FRAME $ET3_TA1KR={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;FRAME ZWISCHEN A1 UND FUSSPUNKT DER KIN IN TRAFO ET3
|
||||
FRAME $ET3_TA2A1={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A2 UND A1
|
||||
FRAME $ET3_TA3A2={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A3 UND A2
|
||||
FRAME $ET3_TFLA3={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN FL UND A3
|
||||
FRAME $ET3_TPINFL={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN MESSPUNKT UND FL
|
||||
DECL ET_AX $ET4_AX={TR_A1 #NONE,TR_A2 #NONE,TR_A3 #NONE} ;EXTERNE ACHSEN #NONE, #E1, #E2, #E3, #E4, #E5, #E6
|
||||
CHAR $ET4_NAME[40] ;NAME DER TRANSFORMATION ET4
|
||||
$ET4_NAME[]=" "
|
||||
FRAME $ET4_TA1KR={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;FRAME ZWISCHEN A1 UND FUSSPUNKT DER KIN IN TRAFO ET4
|
||||
FRAME $ET4_TA2A1={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A2 UND A1
|
||||
FRAME $ET4_TA3A2={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A3 UND A2
|
||||
FRAME $ET4_TFLA3={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN FL UND A3
|
||||
FRAME $ET4_TPINFL={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN MESSPUNKT UND FL
|
||||
DECL ET_AX $ET5_AX={TR_A1 #NONE,TR_A2 #NONE,TR_A3 #NONE} ;EXTERNE ACHSEN #NONE, #E1, #E2, #E3, #E4, #E5, #E6
|
||||
CHAR $ET5_NAME[40] ;NAME DER TRANSFORMATION ET5
|
||||
$ET5_NAME[]=" "
|
||||
FRAME $ET5_TA1KR={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;FRAME ZWISCHEN A1 UND FUSSPUNKT DER KIN IN TRAFO ET5
|
||||
FRAME $ET5_TA2A1={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A2 UND A1
|
||||
FRAME $ET5_TA3A2={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A3 UND A2
|
||||
FRAME $ET5_TFLA3={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN FL UND A3
|
||||
FRAME $ET5_TPINFL={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN MESSPUNKT UND FL
|
||||
DECL ET_AX $ET6_AX={TR_A1 #NONE,TR_A2 #NONE,TR_A3 #NONE} ;EXTERNE ACHSEN #NONE, #E1, #E2, #E3, #E4, #E5, #E6
|
||||
CHAR $ET6_NAME[40] ;NAME DER TRANSFORMATION ET6
|
||||
$ET6_NAME[]=" "
|
||||
FRAME $ET6_TA1KR={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;FRAME ZWISCHEN A1 UND FUSSPUNKT DER KIN IN TRAFO ET6
|
||||
FRAME $ET6_TA2A1={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A2 UND A1
|
||||
FRAME $ET6_TA3A2={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A3 UND A2
|
||||
FRAME $ET6_TFLA3={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN FL UND A3
|
||||
FRAME $ET6_TPINFL={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN MESSPUNKT UND FL
|
||||
E6AXIS $H_POS={A1 -21.6021271,A2 -99.3227234,A3 104.274384,A4 -0.793297172,A5 86.8444748,A6 -6.95475197,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
E6AXIS $AXIS_HOME[5]
|
||||
$AXIS_HOME[1]={A1 0.0,A2 -90.0000,A3 90.0000,A4 0.0,A5 0.0,A6 0.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
$AXIS_HOME[2]={A1 0.0,A2 -90.0000,A3 90.0000,A4 0.0,A5 0.0,A6 0.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
$AXIS_HOME[3]={A1 0.0,A2 -90.0000,A3 90.0000,A4 0.0,A5 0.0,A6 0.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
$AXIS_HOME[4]={A1 0.0,A2 -90.0000,A3 90.0000,A4 0.0,A5 0.0,A6 0.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
$AXIS_HOME[5]={A1 0.0,A2 -90.0000,A3 90.0000,A4 0.0,A5 0.0,A6 0.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
E6AXIS $H_POS_TOL={A1 2.00000,A2 2.00000,A3 2.00000,A4 2.00000,A5 2.00000,A6 2.00000,E1 2.00000,E2 2.00000,E3 2.00000,E4 2.00000,E5 2.00000,E6 2.00000}
|
||||
E6AXIS $H_AXIS_TOL[5] ;TOLERANZFENSTER FUER ERREICHEN DER HOME-STELLUNG $AXIS_HOME[.]
|
||||
$H_AXIS_TOL[1]={A1 2.00000,A2 2.00000,A3 2.00000,A4 2.00000,A5 2.00000,A6 2.00000,E1 2.00000,E2 2.00000,E3 2.00000,E4 2.00000,E5 2.00000,E6 2.00000}
|
||||
$H_AXIS_TOL[2]={A1 2.00000,A2 2.00000,A3 2.00000,A4 2.00000,A5 2.00000,A6 2.00000,E1 2.00000,E2 2.00000,E3 2.00000,E4 2.00000,E5 2.00000,E6 2.00000}
|
||||
$H_AXIS_TOL[3]={A1 2.00000,A2 2.00000,A3 2.00000,A4 2.00000,A5 2.00000,A6 2.00000,E1 2.00000,E2 2.00000,E3 2.00000,E4 2.00000,E5 2.00000,E6 2.00000}
|
||||
$H_AXIS_TOL[4]={A1 2.00000,A2 2.00000,A3 2.00000,A4 2.00000,A5 2.00000,A6 2.00000,E1 2.00000,E2 2.00000,E3 2.00000,E4 2.00000,E5 2.00000,E6 2.00000}
|
||||
$H_AXIS_TOL[5]={A1 2.00000,A2 2.00000,A3 2.00000,A4 2.00000,A5 2.00000,A6 2.00000,E1 2.00000,E2 2.00000,E3 2.00000,E4 2.00000,E5 2.00000,E6 2.00000}
|
||||
REAL $AXIS_JERK[12] ; ERLAUBTER ACHSRUCK [DEG/S^3] / [M/S^3]
|
||||
$AXIS_JERK[1]=11625.6270
|
||||
$AXIS_JERK[2]=9117.67188
|
||||
$AXIS_JERK[3]=31472.6113
|
||||
$AXIS_JERK[4]=89802.2109
|
||||
$AXIS_JERK[5]=50787.6
|
||||
$AXIS_JERK[6]=48245.1914
|
||||
$AXIS_JERK[7]=1.00000E+19
|
||||
$AXIS_JERK[8]=1.00000E+19
|
||||
$AXIS_JERK[9]=1.00000E+19
|
||||
$AXIS_JERK[10]=1.00000E+19
|
||||
$AXIS_JERK[11]=1.00000E+19
|
||||
$AXIS_JERK[12]=1.00000E+19
|
||||
ENDDAT
|
||||
955
KUKA/KRC/R1/Mada/$robcor.dat
Normal file
955
KUKA/KRC/R1/Mada/$robcor.dat
Normal file
@@ -0,0 +1,955 @@
|
||||
&ACCESS RV$
|
||||
&REL 2
|
||||
&PARAM VERSION = 1.0.0
|
||||
DEFDAT $ROBCOR PUBLIC
|
||||
CHAR $V_ROBCOR[32]
|
||||
$V_ROBCOR[]="V42.601.8.1/KUKA8.7" ;VERSIONSKENNUNG
|
||||
CHAR $MODEL_NAME[32]
|
||||
$MODEL_NAME[]="#KR120R3100_2 C4 FLR"
|
||||
DECL ADAP_ACC $ADAP_ACC=#STEP2 ;BESCHLEUNIGUNGSANPASSUNG ( #NONE, #STEP1, #STEP2 )
|
||||
DECL ADAP_ACC $OPT_MOVE=#STEP2 ;HOEHERES FAHRPROFIL (#NONE, #STEP1, #STEP2)
|
||||
DECL MODEL_TYPE $MODEL_TYPE=#STANDARD ;Dynamikmodelltyp (#STANDARD, #TORQUE_COUPLED)
|
||||
DECL ADAP_ACC $EXT_DYN_DAT=#NONE ; Erweiterungsmodus Dynamikmodell (#NONE, #STEP1, #STEP2)
|
||||
DECL BOOL $OPT_TIME_PTP=FALSE
|
||||
DECL BOOL $OPT_FLT_PTP=FALSE
|
||||
DECL CONTROL_PARAMETER $CONTROL_PARAMETER=#MODEL ; Zyklische Parameter fuer die Regelung
|
||||
BOOL $SPECIAL_CONTROL_T1=FALSE ;Verwendung des konfigurierten Reglerparamters in T1
|
||||
BOOL $PROG_TORQ_MON=TRUE ;UEBERWACHUNG DER SOLL-MOMENTE MOTOR UND GETRIEBE
|
||||
BOOL $ENERGY_MON=TRUE ;UEBERWACHUNG KINETISCHE ENERGIE BEI CRASH
|
||||
BOOL $ENERGY_MODULE_ACTIVE=TRUE
|
||||
INT $ITER=2 ;ANZAHL DER ITERATIONEN
|
||||
INT $SYNC=1 ;PHASENANPASSUNG ( 1 = SYNCHRON, 0 = NICHT SYNCHRON )
|
||||
INT $OPT_APPROX=100 ;REDUZIERUNGSFAKTOR ZUR UEBERSCHLEIFPLANUNG
|
||||
DECL EKO_MODE $EKO_MODE=#ON ;EKO-MODUS (#OFF,#ON,#OPT)
|
||||
REAL $DEF_L_M=120.000 ;DEFAULTMASSE AM FLANSCH
|
||||
FRAME $DEF_L_CM={X 270.000,Y 0.0,Z 240.000,A 0.0,B 0.0,C 0.0} ;MASSENSCHWERPUNKT-FRAME
|
||||
DECL INERTIA $DEF_L_J={X 60.0000,Y 60.0000,Z 60.0000} ;EIGENTRAEGHEITSMOMENTE DER LAST
|
||||
REAL $DEF_LA3_M=50.0000 ;DEFAULTMASSE AUF DER ACHSE 3
|
||||
FRAME $DEF_LA3_CM={X -200.000,Y 0.0,Z -1560.00,A 0.0,B 0.0,C 0.0} ;MASSENSCHWERPUNKT-FRAME A3
|
||||
DECL INERTIA $DEF_LA3_J={X 10.0000,Y 10.0000,Z 10.0000} ;EIGENTRAEGHEITSMOMENTE DER LAST AUF A3
|
||||
REAL $COMPENSATED_LOAD=0.0 ;MASSENAEQUIVALENT FUER KONSTANTEN GEWICHTSAUSGLEICH EINER LINEARACHSE
|
||||
REAL $DYN_DAT[500]
|
||||
$DYN_DAT[1]=31.5035782
|
||||
$DYN_DAT[2]=6.74725866
|
||||
$DYN_DAT[3]=82.8798370
|
||||
$DYN_DAT[4]=82.4939957
|
||||
$DYN_DAT[5]=3.72506523
|
||||
$DYN_DAT[6]=32.2409897
|
||||
$DYN_DAT[7]=31.8371220
|
||||
$DYN_DAT[8]=2.93833089
|
||||
$DYN_DAT[9]=2.83191609
|
||||
$DYN_DAT[10]=0.354919046
|
||||
$DYN_DAT[11]=305.600
|
||||
$DYN_DAT[12]=645.000
|
||||
$DYN_DAT[13]=330.000
|
||||
$DYN_DAT[14]=1350.00
|
||||
$DYN_DAT[15]=115.000
|
||||
$DYN_DAT[16]=1028.00
|
||||
$DYN_DAT[17]=1420.00
|
||||
$DYN_DAT[18]=215.000
|
||||
$DYN_DAT[19]=577.871155
|
||||
$DYN_DAT[20]=262.230225
|
||||
$DYN_DAT[21]=91.4090042
|
||||
$DYN_DAT[22]=250.560
|
||||
$DYN_DAT[23]=199.330
|
||||
$DYN_DAT[24]=66.0035248
|
||||
$DYN_DAT[25]=200.000
|
||||
$DYN_DAT[26]=800.041931
|
||||
$DYN_DAT[27]=1669.00
|
||||
$DYN_DAT[28]=1.67000
|
||||
$DYN_DAT[29]=130.000
|
||||
$DYN_DAT[30]=150.000
|
||||
$DYN_DAT[31]=607.433105
|
||||
$DYN_DAT[32]=505.850342
|
||||
$DYN_DAT[33]=434.668365
|
||||
$DYN_DAT[34]=63.7413063
|
||||
$DYN_DAT[35]=73.4352
|
||||
$DYN_DAT[36]=36.9605522
|
||||
$DYN_DAT[37]=7290.00
|
||||
$DYN_DAT[38]=8910.00
|
||||
$DYN_DAT[39]=7653.15039
|
||||
$DYN_DAT[40]=2462.39209
|
||||
$DYN_DAT[41]=1491.69885
|
||||
$DYN_DAT[42]=908.431213
|
||||
$DYN_DAT[43]=35.1000
|
||||
$DYN_DAT[44]=50.3100
|
||||
$DYN_DAT[45]=50.3100
|
||||
$DYN_DAT[46]=16.8100
|
||||
$DYN_DAT[47]=16.8100
|
||||
$DYN_DAT[48]=19.7500
|
||||
$DYN_DAT[49]=264.680420
|
||||
$DYN_DAT[50]=542.622803
|
||||
$DYN_DAT[51]=562.341858
|
||||
$DYN_DAT[52]=154.141571
|
||||
$DYN_DAT[53]=68.1906891
|
||||
$DYN_DAT[54]=22.8365917
|
||||
$DYN_DAT[55]=539.213867
|
||||
$DYN_DAT[56]=436.685333
|
||||
$DYN_DAT[57]=231.943405
|
||||
$DYN_DAT[58]=51.0789948
|
||||
$DYN_DAT[59]=96.4913254
|
||||
$DYN_DAT[60]=123.570305
|
||||
$DYN_DAT[61]=1.00000
|
||||
$DYN_DAT[62]=1.00000
|
||||
$DYN_DAT[63]=1.00000
|
||||
$DYN_DAT[64]=1.00000
|
||||
$DYN_DAT[65]=1.00000
|
||||
$DYN_DAT[66]=1.00000
|
||||
$DYN_DAT[67]=1.00000
|
||||
$DYN_DAT[68]=1.00000
|
||||
$DYN_DAT[69]=1.00000
|
||||
$DYN_DAT[70]=1.00000
|
||||
$DYN_DAT[71]=1.00000
|
||||
$DYN_DAT[72]=1.00000
|
||||
$DYN_DAT[73]=0.900000
|
||||
$DYN_DAT[74]=0.900000
|
||||
$DYN_DAT[75]=0.900000
|
||||
$DYN_DAT[76]=0.900000
|
||||
$DYN_DAT[77]=0.900000
|
||||
$DYN_DAT[78]=0.900000
|
||||
$DYN_DAT[79]=0.0
|
||||
$DYN_DAT[80]=0.0
|
||||
$DYN_DAT[81]=0.0
|
||||
$DYN_DAT[82]=-1.00000
|
||||
$DYN_DAT[83]=-4.99800
|
||||
$DYN_DAT[84]=0.0
|
||||
$DYN_DAT[85]=0.0
|
||||
$DYN_DAT[86]=0.0
|
||||
$DYN_DAT[87]=0.0
|
||||
$DYN_DAT[88]=0.0
|
||||
$DYN_DAT[89]=0.0
|
||||
$DYN_DAT[90]=0.0
|
||||
$DYN_DAT[91]=0.0
|
||||
$DYN_DAT[92]=0.0
|
||||
$DYN_DAT[93]=0.0
|
||||
$DYN_DAT[94]=0.0
|
||||
$DYN_DAT[95]=0.0
|
||||
$DYN_DAT[96]=0.0
|
||||
$DYN_DAT[97]=0.0
|
||||
$DYN_DAT[98]=1.00000
|
||||
$DYN_DAT[99]=0.0
|
||||
$DYN_DAT[100]=363.070
|
||||
$DYN_DAT[101]=28.7872
|
||||
$DYN_DAT[102]=-11.8752
|
||||
$DYN_DAT[103]=539.628296
|
||||
$DYN_DAT[104]=0.0
|
||||
$DYN_DAT[105]=0.0
|
||||
$DYN_DAT[106]=225.960
|
||||
$DYN_DAT[107]=1.33000
|
||||
$DYN_DAT[108]=0.0
|
||||
$DYN_DAT[109]=0.0
|
||||
$DYN_DAT[110]=0.0
|
||||
$DYN_DAT[111]=0.0
|
||||
$DYN_DAT[112]=0.0
|
||||
$DYN_DAT[113]=0.0
|
||||
$DYN_DAT[114]=0.0
|
||||
$DYN_DAT[115]=0.0
|
||||
$DYN_DAT[116]=165.000
|
||||
$DYN_DAT[117]=69.7000
|
||||
$DYN_DAT[118]=-125.571701
|
||||
$DYN_DAT[119]=137.627701
|
||||
$DYN_DAT[120]=0.0
|
||||
$DYN_DAT[121]=0.0
|
||||
$DYN_DAT[122]=0.0
|
||||
$DYN_DAT[123]=0.0
|
||||
$DYN_DAT[124]=0.0
|
||||
$DYN_DAT[125]=0.0
|
||||
$DYN_DAT[126]=0.0
|
||||
$DYN_DAT[127]=0.0
|
||||
$DYN_DAT[128]=0.0
|
||||
$DYN_DAT[129]=0.0
|
||||
$DYN_DAT[130]=0.0
|
||||
$DYN_DAT[131]=0.0
|
||||
$DYN_DAT[132]=0.0
|
||||
$DYN_DAT[133]=0.0
|
||||
$DYN_DAT[134]=0.0
|
||||
$DYN_DAT[135]=0.0
|
||||
$DYN_DAT[136]=0.0
|
||||
$DYN_DAT[137]=0.0
|
||||
$DYN_DAT[138]=0.0
|
||||
$DYN_DAT[139]=0.0
|
||||
$DYN_DAT[140]=0.0
|
||||
$DYN_DAT[141]=0.0
|
||||
$DYN_DAT[142]=0.0
|
||||
$DYN_DAT[143]=0.0
|
||||
$DYN_DAT[144]=0.0
|
||||
$DYN_DAT[145]=0.0
|
||||
$DYN_DAT[146]=0.0
|
||||
$DYN_DAT[147]=0.0
|
||||
$DYN_DAT[148]=0.0
|
||||
$DYN_DAT[149]=0.0
|
||||
$DYN_DAT[150]=0.0
|
||||
$DYN_DAT[151]=0.0
|
||||
$DYN_DAT[152]=0.0
|
||||
$DYN_DAT[153]=0.0
|
||||
$DYN_DAT[154]=0.0
|
||||
$DYN_DAT[155]=0.0
|
||||
$DYN_DAT[156]=0.0
|
||||
$DYN_DAT[157]=0.0
|
||||
$DYN_DAT[158]=0.0
|
||||
$DYN_DAT[159]=0.0
|
||||
$DYN_DAT[160]=0.0
|
||||
$DYN_DAT[161]=0.0
|
||||
$DYN_DAT[162]=0.0
|
||||
$DYN_DAT[163]=0.0
|
||||
$DYN_DAT[164]=0.0
|
||||
$DYN_DAT[165]=0.0
|
||||
$DYN_DAT[166]=0.0
|
||||
$DYN_DAT[167]=0.0
|
||||
$DYN_DAT[168]=0.0
|
||||
$DYN_DAT[169]=0.0
|
||||
$DYN_DAT[170]=0.0
|
||||
$DYN_DAT[171]=0.0
|
||||
$DYN_DAT[172]=0.0
|
||||
$DYN_DAT[173]=0.0
|
||||
$DYN_DAT[174]=0.0
|
||||
$DYN_DAT[175]=0.0
|
||||
$DYN_DAT[176]=0.0
|
||||
$DYN_DAT[177]=0.0
|
||||
$DYN_DAT[178]=0.0
|
||||
$DYN_DAT[179]=0.0
|
||||
$DYN_DAT[180]=0.0
|
||||
$DYN_DAT[181]=0.0
|
||||
$DYN_DAT[182]=0.0
|
||||
$DYN_DAT[183]=0.0
|
||||
$DYN_DAT[184]=0.0
|
||||
$DYN_DAT[185]=0.0
|
||||
$DYN_DAT[186]=0.0
|
||||
$DYN_DAT[187]=0.0
|
||||
$DYN_DAT[188]=0.0
|
||||
$DYN_DAT[189]=0.0
|
||||
$DYN_DAT[190]=0.0
|
||||
$DYN_DAT[191]=0.0
|
||||
$DYN_DAT[192]=0.0
|
||||
$DYN_DAT[193]=0.0
|
||||
$DYN_DAT[194]=0.0
|
||||
$DYN_DAT[195]=0.0
|
||||
$DYN_DAT[196]=0.0
|
||||
$DYN_DAT[197]=0.0
|
||||
$DYN_DAT[198]=0.0
|
||||
$DYN_DAT[199]=0.0
|
||||
$DYN_DAT[200]=0.0
|
||||
$DYN_DAT[201]=0.0
|
||||
$DYN_DAT[202]=0.0
|
||||
$DYN_DAT[203]=0.0
|
||||
$DYN_DAT[204]=0.0
|
||||
$DYN_DAT[205]=0.0
|
||||
$DYN_DAT[206]=0.0
|
||||
$DYN_DAT[207]=0.0
|
||||
$DYN_DAT[208]=0.0
|
||||
$DYN_DAT[209]=0.0
|
||||
$DYN_DAT[210]=0.0
|
||||
$DYN_DAT[211]=0.0
|
||||
$DYN_DAT[212]=0.0
|
||||
$DYN_DAT[213]=0.0
|
||||
$DYN_DAT[214]=0.0
|
||||
$DYN_DAT[215]=0.0
|
||||
$DYN_DAT[216]=0.0
|
||||
$DYN_DAT[217]=0.0
|
||||
$DYN_DAT[218]=0.0
|
||||
$DYN_DAT[219]=0.0
|
||||
$DYN_DAT[220]=0.0
|
||||
$DYN_DAT[221]=0.0
|
||||
$DYN_DAT[222]=0.0
|
||||
$DYN_DAT[223]=0.0
|
||||
$DYN_DAT[224]=1.00000
|
||||
$DYN_DAT[225]=3.00000
|
||||
$DYN_DAT[226]=5.00000
|
||||
$DYN_DAT[227]=0.0
|
||||
$DYN_DAT[228]=0.0
|
||||
$DYN_DAT[229]=0.0
|
||||
$DYN_DAT[230]=0.0
|
||||
$DYN_DAT[231]=250.000
|
||||
$DYN_DAT[232]=250.000
|
||||
$DYN_DAT[233]=250.000
|
||||
$DYN_DAT[234]=250.000
|
||||
$DYN_DAT[235]=250.000
|
||||
$DYN_DAT[236]=250.000
|
||||
$DYN_DAT[237]=0.0
|
||||
$DYN_DAT[238]=0.0
|
||||
$DYN_DAT[239]=0.0
|
||||
$DYN_DAT[240]=0.0
|
||||
$DYN_DAT[241]=0.0
|
||||
$DYN_DAT[242]=0.0
|
||||
$DYN_DAT[243]=6300.00
|
||||
$DYN_DAT[244]=3300.00
|
||||
$DYN_DAT[245]=1800.00
|
||||
$DYN_DAT[246]=750.000
|
||||
$DYN_DAT[247]=675.000
|
||||
$DYN_DAT[248]=600.000
|
||||
$DYN_DAT[249]=0.0
|
||||
$DYN_DAT[250]=0.0
|
||||
$DYN_DAT[251]=0.0
|
||||
$DYN_DAT[252]=0.0
|
||||
$DYN_DAT[253]=0.0
|
||||
$DYN_DAT[254]=0.0
|
||||
$DYN_DAT[255]=0.0
|
||||
$DYN_DAT[256]=0.0
|
||||
$DYN_DAT[257]=0.0
|
||||
$DYN_DAT[258]=0.0
|
||||
$DYN_DAT[259]=0.0
|
||||
$DYN_DAT[260]=0.0
|
||||
$DYN_DAT[261]=0.0
|
||||
$DYN_DAT[262]=0.0
|
||||
$DYN_DAT[263]=0.0
|
||||
$DYN_DAT[264]=0.0
|
||||
$DYN_DAT[265]=0.0
|
||||
$DYN_DAT[266]=0.0
|
||||
$DYN_DAT[267]=0.0
|
||||
$DYN_DAT[268]=71470.5859
|
||||
$DYN_DAT[269]=87352.9375
|
||||
$DYN_DAT[270]=75030.8828
|
||||
$DYN_DAT[271]=24141.1
|
||||
$DYN_DAT[272]=14624.4980
|
||||
$DYN_DAT[273]=8906.18848
|
||||
$DYN_DAT[274]=0.0
|
||||
$DYN_DAT[275]=0.0
|
||||
$DYN_DAT[276]=0.0
|
||||
$DYN_DAT[277]=0.0
|
||||
$DYN_DAT[278]=0.0
|
||||
$DYN_DAT[279]=0.0
|
||||
$DYN_DAT[280]=0.0
|
||||
$DYN_DAT[281]=0.0
|
||||
$DYN_DAT[282]=0.0
|
||||
$DYN_DAT[283]=0.0
|
||||
$DYN_DAT[284]=0.0
|
||||
$DYN_DAT[285]=0.0
|
||||
$DYN_DAT[286]=0.0
|
||||
$DYN_DAT[287]=0.0
|
||||
$DYN_DAT[288]=0.0
|
||||
$DYN_DAT[289]=0.0
|
||||
$DYN_DAT[290]=0.0
|
||||
$DYN_DAT[291]=0.0
|
||||
$DYN_DAT[292]=0.0
|
||||
$DYN_DAT[293]=0.0
|
||||
$DYN_DAT[294]=0.0
|
||||
$DYN_DAT[295]=0.0
|
||||
$DYN_DAT[296]=0.0
|
||||
$DYN_DAT[297]=0.0
|
||||
$DYN_DAT[298]=0.0
|
||||
$DYN_DAT[299]=0.0
|
||||
$DYN_DAT[300]=0.0
|
||||
$DYN_DAT[301]=0.0
|
||||
$DYN_DAT[302]=0.0
|
||||
$DYN_DAT[303]=0.0
|
||||
$DYN_DAT[304]=0.0
|
||||
$DYN_DAT[305]=0.0
|
||||
$DYN_DAT[306]=0.0
|
||||
$DYN_DAT[307]=0.0
|
||||
$DYN_DAT[308]=0.0
|
||||
$DYN_DAT[309]=0.0
|
||||
$DYN_DAT[310]=0.0
|
||||
$DYN_DAT[311]=0.0
|
||||
$DYN_DAT[312]=0.0
|
||||
$DYN_DAT[313]=0.0
|
||||
$DYN_DAT[314]=0.0
|
||||
$DYN_DAT[315]=0.0
|
||||
$DYN_DAT[316]=0.0
|
||||
$DYN_DAT[317]=0.0
|
||||
$DYN_DAT[318]=0.0
|
||||
$DYN_DAT[319]=0.0
|
||||
$DYN_DAT[320]=0.0
|
||||
$DYN_DAT[321]=0.0
|
||||
$DYN_DAT[322]=0.0
|
||||
$DYN_DAT[323]=0.0
|
||||
$DYN_DAT[324]=0.0
|
||||
$DYN_DAT[325]=0.0
|
||||
$DYN_DAT[326]=0.0
|
||||
$DYN_DAT[327]=0.0
|
||||
$DYN_DAT[328]=0.0
|
||||
$DYN_DAT[329]=0.0
|
||||
$DYN_DAT[330]=0.0
|
||||
$DYN_DAT[331]=0.0
|
||||
$DYN_DAT[332]=0.0
|
||||
$DYN_DAT[333]=0.0
|
||||
$DYN_DAT[334]=0.0
|
||||
$DYN_DAT[335]=0.0
|
||||
$DYN_DAT[336]=0.0
|
||||
$DYN_DAT[337]=0.0
|
||||
$DYN_DAT[338]=0.0
|
||||
$DYN_DAT[339]=0.0
|
||||
$DYN_DAT[340]=0.0
|
||||
$DYN_DAT[341]=0.0
|
||||
$DYN_DAT[342]=0.0
|
||||
$DYN_DAT[343]=0.0
|
||||
$DYN_DAT[344]=0.0
|
||||
$DYN_DAT[345]=0.0
|
||||
$DYN_DAT[346]=0.0
|
||||
$DYN_DAT[347]=0.0
|
||||
$DYN_DAT[348]=0.0
|
||||
$DYN_DAT[349]=0.0
|
||||
$DYN_DAT[350]=0.0
|
||||
$DYN_DAT[351]=221.356613
|
||||
$DYN_DAT[352]=375.734467
|
||||
$DYN_DAT[353]=575.960754
|
||||
$DYN_DAT[354]=576.061279
|
||||
$DYN_DAT[355]=0.0
|
||||
$DYN_DAT[356]=0.0
|
||||
$DYN_DAT[357]=35.1000
|
||||
$DYN_DAT[358]=20.8000
|
||||
$DYN_DAT[359]=12.9000
|
||||
$DYN_DAT[360]=0.0
|
||||
$DYN_DAT[361]=0.0
|
||||
$DYN_DAT[362]=0.0
|
||||
$DYN_DAT[363]=169.225037
|
||||
$DYN_DAT[364]=331.331207
|
||||
$DYN_DAT[365]=523.596680
|
||||
$DYN_DAT[366]=523.640686
|
||||
$DYN_DAT[367]=0.0
|
||||
$DYN_DAT[368]=0.0
|
||||
$DYN_DAT[369]=50.3100
|
||||
$DYN_DAT[370]=28.3900
|
||||
$DYN_DAT[371]=15.7300
|
||||
$DYN_DAT[372]=0.0
|
||||
$DYN_DAT[373]=0.0
|
||||
$DYN_DAT[374]=0.0
|
||||
$DYN_DAT[375]=169.225037
|
||||
$DYN_DAT[376]=331.331207
|
||||
$DYN_DAT[377]=523.596680
|
||||
$DYN_DAT[378]=523.640686
|
||||
$DYN_DAT[379]=0.0
|
||||
$DYN_DAT[380]=0.0
|
||||
$DYN_DAT[381]=50.3100
|
||||
$DYN_DAT[382]=28.3900
|
||||
$DYN_DAT[383]=15.7300
|
||||
$DYN_DAT[384]=0.0
|
||||
$DYN_DAT[385]=0.0
|
||||
$DYN_DAT[386]=0.0
|
||||
$DYN_DAT[387]=219.597321
|
||||
$DYN_DAT[388]=406.207916
|
||||
$DYN_DAT[389]=628.318542
|
||||
$DYN_DAT[390]=628.381348
|
||||
$DYN_DAT[391]=0.0
|
||||
$DYN_DAT[392]=0.0
|
||||
$DYN_DAT[393]=16.8100
|
||||
$DYN_DAT[394]=9.40000
|
||||
$DYN_DAT[395]=4.65000
|
||||
$DYN_DAT[396]=0.0
|
||||
$DYN_DAT[397]=0.0
|
||||
$DYN_DAT[398]=0.0
|
||||
$DYN_DAT[399]=219.597321
|
||||
$DYN_DAT[400]=406.207916
|
||||
$DYN_DAT[401]=628.318542
|
||||
$DYN_DAT[402]=628.381348
|
||||
$DYN_DAT[403]=0.0
|
||||
$DYN_DAT[404]=0.0
|
||||
$DYN_DAT[405]=16.8100
|
||||
$DYN_DAT[406]=6.40000
|
||||
$DYN_DAT[407]=1.00000
|
||||
$DYN_DAT[408]=0.0
|
||||
$DYN_DAT[409]=0.0
|
||||
$DYN_DAT[410]=0.0
|
||||
$DYN_DAT[411]=254.783157
|
||||
$DYN_DAT[412]=418.899963
|
||||
$DYN_DAT[413]=628.318542
|
||||
$DYN_DAT[414]=628.381348
|
||||
$DYN_DAT[415]=0.0
|
||||
$DYN_DAT[416]=0.0
|
||||
$DYN_DAT[417]=19.7500
|
||||
$DYN_DAT[418]=8.00000
|
||||
$DYN_DAT[419]=1.00000
|
||||
$DYN_DAT[420]=0.0
|
||||
$DYN_DAT[421]=0.0
|
||||
$DYN_DAT[422]=0.0
|
||||
$DYN_DAT[423]=1.26103401
|
||||
$DYN_DAT[424]=1.71415257
|
||||
$DYN_DAT[425]=1.95936179
|
||||
$DYN_DAT[426]=2.03848243
|
||||
$DYN_DAT[427]=0.0
|
||||
$DYN_DAT[428]=0.0
|
||||
$DYN_DAT[429]=5988.09668
|
||||
$DYN_DAT[430]=4502.76611
|
||||
$DYN_DAT[431]=2891.08862
|
||||
$DYN_DAT[432]=1215.00
|
||||
$DYN_DAT[433]=0.0
|
||||
$DYN_DAT[434]=0.0
|
||||
$DYN_DAT[435]=1.20332015
|
||||
$DYN_DAT[436]=1.63570070
|
||||
$DYN_DAT[437]=1.86968756
|
||||
$DYN_DAT[438]=1.94518697
|
||||
$DYN_DAT[439]=0.0
|
||||
$DYN_DAT[440]=0.0
|
||||
$DYN_DAT[441]=7318.78516
|
||||
$DYN_DAT[442]=5503.38086
|
||||
$DYN_DAT[443]=3533.55298
|
||||
$DYN_DAT[444]=1485.00
|
||||
$DYN_DAT[445]=0.0
|
||||
$DYN_DAT[446]=0.0
|
||||
$DYN_DAT[447]=1.28874850
|
||||
$DYN_DAT[448]=1.75182557
|
||||
$DYN_DAT[449]=2.00242400
|
||||
$DYN_DAT[450]=2.08328342
|
||||
$DYN_DAT[451]=0.0
|
||||
$DYN_DAT[452]=0.0
|
||||
$DYN_DAT[453]=6813.30957
|
||||
$DYN_DAT[454]=5855.14258
|
||||
$DYN_DAT[455]=4815.47070
|
||||
$DYN_DAT[456]=3734.24780
|
||||
$DYN_DAT[457]=0.0
|
||||
$DYN_DAT[458]=0.0
|
||||
$DYN_DAT[459]=2.05140209
|
||||
$DYN_DAT[460]=2.78851819
|
||||
$DYN_DAT[461]=3.18741512
|
||||
$DYN_DAT[462]=3.31612563
|
||||
$DYN_DAT[463]=0.0
|
||||
$DYN_DAT[464]=0.0
|
||||
$DYN_DAT[465]=2073.56714
|
||||
$DYN_DAT[466]=1629.96
|
||||
$DYN_DAT[467]=1148.61816
|
||||
$DYN_DAT[468]=648.039307
|
||||
$DYN_DAT[469]=0.0
|
||||
$DYN_DAT[470]=0.0
|
||||
$DYN_DAT[471]=1.94343352
|
||||
$DYN_DAT[472]=2.64175391
|
||||
$DYN_DAT[473]=3.01965642
|
||||
$DYN_DAT[474]=3.14159274
|
||||
$DYN_DAT[475]=0.0
|
||||
$DYN_DAT[476]=0.0
|
||||
$DYN_DAT[477]=1309.49817
|
||||
$DYN_DAT[478]=1101.62708
|
||||
$DYN_DAT[479]=876.073669
|
||||
$DYN_DAT[480]=641.506
|
||||
$DYN_DAT[481]=0.0
|
||||
$DYN_DAT[482]=0.0
|
||||
$DYN_DAT[483]=2.80718184
|
||||
$DYN_DAT[484]=3.81586695
|
||||
$DYN_DAT[485]=4.36172628
|
||||
$DYN_DAT[486]=4.53785610
|
||||
$DYN_DAT[487]=0.0
|
||||
$DYN_DAT[488]=0.0
|
||||
$DYN_DAT[489]=781.865356
|
||||
$DYN_DAT[490]=637.467468
|
||||
$DYN_DAT[491]=480.786652
|
||||
$DYN_DAT[492]=317.844
|
||||
$DYN_DAT[493]=0.0
|
||||
$DYN_DAT[494]=0.0
|
||||
$DYN_DAT[495]=0.0
|
||||
$DYN_DAT[496]=0.0
|
||||
$DYN_DAT[497]=0.0
|
||||
$DYN_DAT[498]=0.0
|
||||
$DYN_DAT[499]=0.0
|
||||
$DYN_DAT[500]=0.0
|
||||
REAL $EKO_DAT[400] ;MODELLPARAMETER FUER DIE ELASTIZITAETSKOMPENSATION
|
||||
$EKO_DAT[1]=1.00000
|
||||
$EKO_DAT[2]=32.0000
|
||||
$EKO_DAT[3]=2.00000
|
||||
$EKO_DAT[4]=0.0
|
||||
$EKO_DAT[5]=1.00000
|
||||
$EKO_DAT[6]=0.0
|
||||
$EKO_DAT[7]=1.00000
|
||||
$EKO_DAT[8]=0.0
|
||||
$EKO_DAT[9]=0.0
|
||||
$EKO_DAT[10]=0.0
|
||||
$EKO_DAT[11]=0.0
|
||||
$EKO_DAT[12]=0.0
|
||||
$EKO_DAT[13]=1.00000
|
||||
$EKO_DAT[14]=1.00000
|
||||
$EKO_DAT[15]=1.00000
|
||||
$EKO_DAT[16]=0.0
|
||||
$EKO_DAT[17]=0.0
|
||||
$EKO_DAT[18]=0.0
|
||||
$EKO_DAT[19]=0.0
|
||||
$EKO_DAT[20]=0.0
|
||||
$EKO_DAT[21]=0.0
|
||||
$EKO_DAT[22]=0.0
|
||||
$EKO_DAT[23]=0.0
|
||||
$EKO_DAT[24]=0.0
|
||||
$EKO_DAT[25]=26.4680
|
||||
$EKO_DAT[26]=54.2623
|
||||
$EKO_DAT[27]=56.2342
|
||||
$EKO_DAT[28]=0.0
|
||||
$EKO_DAT[29]=0.0
|
||||
$EKO_DAT[30]=0.0
|
||||
$EKO_DAT[31]=0.0
|
||||
$EKO_DAT[32]=0.0
|
||||
$EKO_DAT[33]=0.0
|
||||
$EKO_DAT[34]=0.0
|
||||
$EKO_DAT[35]=0.0
|
||||
$EKO_DAT[36]=0.0
|
||||
$EKO_DAT[37]=53.9213905
|
||||
$EKO_DAT[38]=43.6685333
|
||||
$EKO_DAT[39]=23.1943398
|
||||
$EKO_DAT[40]=0.0
|
||||
$EKO_DAT[41]=0.0
|
||||
$EKO_DAT[42]=0.0
|
||||
$EKO_DAT[43]=0.0
|
||||
$EKO_DAT[44]=0.0
|
||||
$EKO_DAT[45]=0.0
|
||||
$EKO_DAT[46]=0.0
|
||||
$EKO_DAT[47]=0.0
|
||||
$EKO_DAT[48]=0.0
|
||||
$EKO_DAT[49]=100.000
|
||||
$EKO_DAT[50]=100.000
|
||||
$EKO_DAT[51]=100.000
|
||||
$EKO_DAT[52]=0.0
|
||||
$EKO_DAT[53]=0.0
|
||||
$EKO_DAT[54]=0.0
|
||||
$EKO_DAT[55]=0.0
|
||||
$EKO_DAT[56]=0.0
|
||||
$EKO_DAT[57]=0.0
|
||||
$EKO_DAT[58]=0.0
|
||||
$EKO_DAT[59]=0.0
|
||||
$EKO_DAT[60]=0.0
|
||||
$EKO_DAT[61]=2158993.00
|
||||
$EKO_DAT[62]=2893251.00
|
||||
$EKO_DAT[63]=3236854.75
|
||||
$EKO_DAT[64]=0.0
|
||||
$EKO_DAT[65]=0.0
|
||||
$EKO_DAT[66]=0.0
|
||||
$EKO_DAT[67]=0.0
|
||||
$EKO_DAT[68]=0.0
|
||||
$EKO_DAT[69]=0.0
|
||||
$EKO_DAT[70]=0.0
|
||||
$EKO_DAT[71]=0.0
|
||||
$EKO_DAT[72]=0.0
|
||||
$EKO_DAT[73]=2158994.00
|
||||
$EKO_DAT[74]=2893252.00
|
||||
$EKO_DAT[75]=3236855.75
|
||||
$EKO_DAT[76]=0.0
|
||||
$EKO_DAT[77]=0.0
|
||||
$EKO_DAT[78]=0.0
|
||||
$EKO_DAT[79]=0.0
|
||||
$EKO_DAT[80]=0.0
|
||||
$EKO_DAT[81]=0.0
|
||||
$EKO_DAT[82]=0.0
|
||||
$EKO_DAT[83]=0.0
|
||||
$EKO_DAT[84]=0.0
|
||||
$EKO_DAT[85]=0.000273910
|
||||
$EKO_DAT[86]=0.000376320
|
||||
$EKO_DAT[87]=0.000664540
|
||||
$EKO_DAT[88]=0.0
|
||||
$EKO_DAT[89]=0.0
|
||||
$EKO_DAT[90]=0.0
|
||||
$EKO_DAT[91]=0.0
|
||||
$EKO_DAT[92]=0.0
|
||||
$EKO_DAT[93]=0.0
|
||||
$EKO_DAT[94]=0.0
|
||||
$EKO_DAT[95]=0.0
|
||||
$EKO_DAT[96]=0.0
|
||||
$EKO_DAT[97]=0.000334920
|
||||
$EKO_DAT[98]=0.000141890
|
||||
$EKO_DAT[99]=0.000337550
|
||||
$EKO_DAT[100]=0.0
|
||||
$EKO_DAT[101]=0.0
|
||||
$EKO_DAT[102]=0.0
|
||||
$EKO_DAT[103]=0.0
|
||||
$EKO_DAT[104]=0.0
|
||||
$EKO_DAT[105]=0.0
|
||||
$EKO_DAT[106]=0.0
|
||||
$EKO_DAT[107]=0.0
|
||||
$EKO_DAT[108]=0.0
|
||||
$EKO_DAT[109]=5592.42285
|
||||
$EKO_DAT[110]=4180.37500
|
||||
$EKO_DAT[111]=6869.48438
|
||||
$EKO_DAT[112]=0.0
|
||||
$EKO_DAT[113]=0.0
|
||||
$EKO_DAT[114]=0.0
|
||||
$EKO_DAT[115]=0.0
|
||||
$EKO_DAT[116]=0.0
|
||||
$EKO_DAT[117]=0.0
|
||||
$EKO_DAT[118]=0.0
|
||||
$EKO_DAT[119]=0.0
|
||||
$EKO_DAT[120]=0.0
|
||||
$EKO_DAT[121]=1.00000
|
||||
$EKO_DAT[122]=1.00000
|
||||
$EKO_DAT[123]=1.00000
|
||||
$EKO_DAT[124]=0.0
|
||||
$EKO_DAT[125]=0.0
|
||||
$EKO_DAT[126]=0.0
|
||||
$EKO_DAT[127]=0.0
|
||||
$EKO_DAT[128]=0.0
|
||||
$EKO_DAT[129]=0.0
|
||||
$EKO_DAT[130]=0.0
|
||||
$EKO_DAT[131]=0.0
|
||||
$EKO_DAT[132]=0.0
|
||||
$EKO_DAT[133]=607.433105
|
||||
$EKO_DAT[134]=505.850342
|
||||
$EKO_DAT[135]=434.668365
|
||||
$EKO_DAT[136]=63.7413063
|
||||
$EKO_DAT[137]=73.4352
|
||||
$EKO_DAT[138]=36.9605522
|
||||
$EKO_DAT[139]=0.0
|
||||
$EKO_DAT[140]=0.0
|
||||
$EKO_DAT[141]=0.0
|
||||
$EKO_DAT[142]=0.0
|
||||
$EKO_DAT[143]=0.0
|
||||
$EKO_DAT[144]=0.0
|
||||
$EKO_DAT[145]=238.212402
|
||||
$EKO_DAT[146]=488.360504
|
||||
$EKO_DAT[147]=506.107697
|
||||
$EKO_DAT[148]=0.0
|
||||
$EKO_DAT[149]=0.0
|
||||
$EKO_DAT[150]=0.0
|
||||
$EKO_DAT[151]=0.0
|
||||
$EKO_DAT[152]=0.0
|
||||
$EKO_DAT[153]=0.0
|
||||
$EKO_DAT[154]=0.0
|
||||
$EKO_DAT[155]=0.0
|
||||
$EKO_DAT[156]=0.0
|
||||
$EKO_DAT[157]=485.292511
|
||||
$EKO_DAT[158]=393.016815
|
||||
$EKO_DAT[159]=208.749054
|
||||
$EKO_DAT[160]=0.0
|
||||
$EKO_DAT[161]=0.0
|
||||
$EKO_DAT[162]=0.0
|
||||
$EKO_DAT[163]=0.0
|
||||
$EKO_DAT[164]=0.0
|
||||
$EKO_DAT[165]=0.0
|
||||
$EKO_DAT[166]=0.0
|
||||
$EKO_DAT[167]=0.0
|
||||
$EKO_DAT[168]=0.0
|
||||
$EKO_DAT[169]=100.000
|
||||
$EKO_DAT[170]=100.000
|
||||
$EKO_DAT[171]=100.000
|
||||
$EKO_DAT[172]=0.0
|
||||
$EKO_DAT[173]=0.0
|
||||
$EKO_DAT[174]=0.0
|
||||
$EKO_DAT[175]=0.0
|
||||
$EKO_DAT[176]=0.0
|
||||
$EKO_DAT[177]=0.0
|
||||
$EKO_DAT[178]=0.0
|
||||
$EKO_DAT[179]=0.0
|
||||
$EKO_DAT[180]=0.0
|
||||
$EKO_DAT[181]=0.0
|
||||
$EKO_DAT[182]=0.0
|
||||
$EKO_DAT[183]=0.0
|
||||
$EKO_DAT[184]=0.0
|
||||
$EKO_DAT[185]=0.0
|
||||
$EKO_DAT[186]=0.0
|
||||
$EKO_DAT[187]=0.0
|
||||
$EKO_DAT[188]=0.0
|
||||
$EKO_DAT[189]=0.0
|
||||
$EKO_DAT[190]=0.0
|
||||
$EKO_DAT[191]=0.0
|
||||
$EKO_DAT[192]=0.0
|
||||
$EKO_DAT[193]=0.0
|
||||
$EKO_DAT[194]=0.0
|
||||
$EKO_DAT[195]=0.0
|
||||
$EKO_DAT[196]=0.0
|
||||
$EKO_DAT[197]=0.0
|
||||
$EKO_DAT[198]=0.0
|
||||
$EKO_DAT[199]=0.0
|
||||
$EKO_DAT[200]=0.0
|
||||
$EKO_DAT[201]=0.0
|
||||
$EKO_DAT[202]=0.0
|
||||
$EKO_DAT[203]=0.0
|
||||
$EKO_DAT[204]=0.0
|
||||
$EKO_DAT[205]=0.0
|
||||
$EKO_DAT[206]=0.0
|
||||
$EKO_DAT[207]=0.0
|
||||
$EKO_DAT[208]=0.0
|
||||
$EKO_DAT[209]=0.0
|
||||
$EKO_DAT[210]=0.0
|
||||
$EKO_DAT[211]=0.0
|
||||
$EKO_DAT[212]=0.0
|
||||
$EKO_DAT[213]=0.0
|
||||
$EKO_DAT[214]=0.0
|
||||
$EKO_DAT[215]=0.0
|
||||
$EKO_DAT[216]=0.0
|
||||
$EKO_DAT[217]=0.0
|
||||
$EKO_DAT[218]=0.0
|
||||
$EKO_DAT[219]=0.0
|
||||
$EKO_DAT[220]=0.0
|
||||
$EKO_DAT[221]=0.0
|
||||
$EKO_DAT[222]=0.0
|
||||
$EKO_DAT[223]=0.0
|
||||
$EKO_DAT[224]=0.0
|
||||
$EKO_DAT[225]=0.0
|
||||
$EKO_DAT[226]=0.0
|
||||
$EKO_DAT[227]=0.0
|
||||
$EKO_DAT[228]=0.0
|
||||
$EKO_DAT[229]=0.0
|
||||
$EKO_DAT[230]=0.0
|
||||
$EKO_DAT[231]=0.0
|
||||
$EKO_DAT[232]=0.0
|
||||
$EKO_DAT[233]=0.0
|
||||
$EKO_DAT[234]=0.0
|
||||
$EKO_DAT[235]=0.0
|
||||
$EKO_DAT[236]=0.0
|
||||
$EKO_DAT[237]=0.0
|
||||
$EKO_DAT[238]=0.0
|
||||
$EKO_DAT[239]=1406028.88
|
||||
$EKO_DAT[240]=2700795.25
|
||||
$EKO_DAT[241]=1.00100
|
||||
$EKO_DAT[242]=-49678.1406
|
||||
$EKO_DAT[243]=-17286.8516
|
||||
$EKO_DAT[244]=170667.734
|
||||
$EKO_DAT[245]=42144.5977
|
||||
$EKO_DAT[246]=154361.125
|
||||
$EKO_DAT[247]=318340.125
|
||||
$EKO_DAT[248]=-93479.8
|
||||
$EKO_DAT[249]=-129813.617
|
||||
$EKO_DAT[250]=110971.758
|
||||
$EKO_DAT[251]=-449806.719
|
||||
$EKO_DAT[252]=-1328978.88
|
||||
$EKO_DAT[253]=-246033.625
|
||||
$EKO_DAT[254]=-820159.063
|
||||
$EKO_DAT[255]=-2096703.00
|
||||
$EKO_DAT[256]=243348.875
|
||||
$EKO_DAT[257]=2740767.50
|
||||
$EKO_DAT[258]=0.0
|
||||
$EKO_DAT[259]=0.0
|
||||
$EKO_DAT[260]=0.0
|
||||
$EKO_DAT[261]=0.0
|
||||
$EKO_DAT[262]=0.0
|
||||
$EKO_DAT[263]=0.0
|
||||
$EKO_DAT[264]=0.0
|
||||
$EKO_DAT[265]=0.0
|
||||
$EKO_DAT[266]=0.0
|
||||
$EKO_DAT[267]=0.0
|
||||
$EKO_DAT[268]=0.0
|
||||
$EKO_DAT[269]=0.0
|
||||
$EKO_DAT[270]=0.0
|
||||
$EKO_DAT[271]=0.0
|
||||
$EKO_DAT[272]=0.0
|
||||
$EKO_DAT[273]=0.0
|
||||
$EKO_DAT[274]=0.0
|
||||
$EKO_DAT[275]=0.0
|
||||
$EKO_DAT[276]=0.0
|
||||
$EKO_DAT[277]=0.0
|
||||
$EKO_DAT[278]=0.0
|
||||
$EKO_DAT[279]=0.0
|
||||
$EKO_DAT[280]=0.0
|
||||
$EKO_DAT[281]=0.0
|
||||
$EKO_DAT[282]=0.0
|
||||
$EKO_DAT[283]=0.0
|
||||
$EKO_DAT[284]=0.0
|
||||
$EKO_DAT[285]=0.0
|
||||
$EKO_DAT[286]=0.0
|
||||
$EKO_DAT[287]=0.0
|
||||
$EKO_DAT[288]=0.0
|
||||
$EKO_DAT[289]=0.0
|
||||
$EKO_DAT[290]=0.0
|
||||
$EKO_DAT[291]=0.0
|
||||
$EKO_DAT[292]=0.0
|
||||
$EKO_DAT[293]=0.0
|
||||
$EKO_DAT[294]=0.0
|
||||
$EKO_DAT[295]=0.0
|
||||
$EKO_DAT[296]=0.0
|
||||
$EKO_DAT[297]=0.0
|
||||
$EKO_DAT[298]=0.0
|
||||
$EKO_DAT[299]=0.0
|
||||
$EKO_DAT[300]=0.0
|
||||
$EKO_DAT[301]=0.0
|
||||
$EKO_DAT[302]=0.0
|
||||
$EKO_DAT[303]=0.0
|
||||
$EKO_DAT[304]=0.0
|
||||
$EKO_DAT[305]=0.0
|
||||
$EKO_DAT[306]=0.0
|
||||
$EKO_DAT[307]=0.0
|
||||
$EKO_DAT[308]=0.0
|
||||
$EKO_DAT[309]=0.0
|
||||
$EKO_DAT[310]=0.0
|
||||
$EKO_DAT[311]=0.0
|
||||
$EKO_DAT[312]=0.0
|
||||
$EKO_DAT[313]=0.0
|
||||
$EKO_DAT[314]=0.0
|
||||
$EKO_DAT[315]=0.0
|
||||
$EKO_DAT[316]=0.0
|
||||
$EKO_DAT[317]=0.0
|
||||
$EKO_DAT[318]=0.0
|
||||
$EKO_DAT[319]=0.0
|
||||
$EKO_DAT[320]=0.0
|
||||
$EKO_DAT[321]=0.0
|
||||
$EKO_DAT[322]=0.0
|
||||
$EKO_DAT[323]=0.0
|
||||
$EKO_DAT[324]=0.0
|
||||
$EKO_DAT[325]=0.0
|
||||
$EKO_DAT[326]=0.0
|
||||
$EKO_DAT[327]=0.0
|
||||
$EKO_DAT[328]=0.0
|
||||
$EKO_DAT[329]=0.0
|
||||
$EKO_DAT[330]=0.0
|
||||
$EKO_DAT[331]=0.0
|
||||
$EKO_DAT[332]=0.0
|
||||
$EKO_DAT[333]=0.0
|
||||
$EKO_DAT[334]=0.0
|
||||
$EKO_DAT[335]=0.0
|
||||
$EKO_DAT[336]=0.0
|
||||
$EKO_DAT[337]=0.0
|
||||
$EKO_DAT[338]=0.0
|
||||
$EKO_DAT[339]=0.0
|
||||
$EKO_DAT[340]=0.0
|
||||
$EKO_DAT[341]=0.0
|
||||
$EKO_DAT[342]=0.0
|
||||
$EKO_DAT[343]=0.0
|
||||
$EKO_DAT[344]=0.0
|
||||
$EKO_DAT[345]=0.0
|
||||
$EKO_DAT[346]=0.0
|
||||
$EKO_DAT[347]=0.0
|
||||
$EKO_DAT[348]=0.0
|
||||
$EKO_DAT[349]=0.0
|
||||
$EKO_DAT[350]=0.0
|
||||
$EKO_DAT[351]=0.0
|
||||
$EKO_DAT[352]=0.0
|
||||
$EKO_DAT[353]=0.0
|
||||
$EKO_DAT[354]=0.0
|
||||
$EKO_DAT[355]=0.0
|
||||
$EKO_DAT[356]=0.0
|
||||
$EKO_DAT[357]=0.0
|
||||
$EKO_DAT[358]=0.0
|
||||
$EKO_DAT[359]=0.0
|
||||
$EKO_DAT[360]=0.0
|
||||
$EKO_DAT[361]=0.0
|
||||
$EKO_DAT[362]=0.0
|
||||
$EKO_DAT[363]=0.0
|
||||
$EKO_DAT[364]=0.0
|
||||
$EKO_DAT[365]=0.0
|
||||
$EKO_DAT[366]=0.0
|
||||
$EKO_DAT[367]=0.0
|
||||
$EKO_DAT[368]=0.0
|
||||
$EKO_DAT[369]=0.0
|
||||
$EKO_DAT[370]=0.0
|
||||
$EKO_DAT[371]=0.0
|
||||
$EKO_DAT[372]=0.0
|
||||
$EKO_DAT[373]=0.0
|
||||
$EKO_DAT[374]=0.0
|
||||
$EKO_DAT[375]=0.0
|
||||
$EKO_DAT[376]=0.0
|
||||
$EKO_DAT[377]=0.0
|
||||
$EKO_DAT[378]=0.0
|
||||
$EKO_DAT[379]=0.0
|
||||
$EKO_DAT[380]=0.0
|
||||
$EKO_DAT[381]=0.0
|
||||
$EKO_DAT[382]=0.0
|
||||
$EKO_DAT[383]=0.0
|
||||
$EKO_DAT[384]=0.0
|
||||
$EKO_DAT[385]=0.0
|
||||
$EKO_DAT[386]=0.0
|
||||
$EKO_DAT[387]=0.0
|
||||
$EKO_DAT[388]=0.0
|
||||
$EKO_DAT[389]=0.0
|
||||
$EKO_DAT[390]=0.0
|
||||
$EKO_DAT[391]=0.0
|
||||
$EKO_DAT[392]=0.0
|
||||
$EKO_DAT[393]=0.0
|
||||
$EKO_DAT[394]=0.0
|
||||
$EKO_DAT[395]=0.0
|
||||
$EKO_DAT[396]=0.0
|
||||
$EKO_DAT[397]=0.0
|
||||
$EKO_DAT[398]=0.0
|
||||
$EKO_DAT[399]=0.0
|
||||
$EKO_DAT[400]=0.0
|
||||
BOOL $EMSTOP_ADAP=TRUE ;NOT-AUS MIT DYNAMIKMODELL
|
||||
REAL $EMSTOP_GEARTORQ[6] ;MAX. GETRIEBEMOMENT BEI NOT-AUS [Nm]
|
||||
$EMSTOP_GEARTORQ[1]=17496.0
|
||||
$EMSTOP_GEARTORQ[2]=21384.0
|
||||
$EMSTOP_GEARTORQ[3]=18367.5605
|
||||
$EMSTOP_GEARTORQ[4]=5909.74121
|
||||
$EMSTOP_GEARTORQ[5]=3580.07715
|
||||
$EMSTOP_GEARTORQ[6]=2180.23486
|
||||
REAL $EMSTOP_TORQRATE=187.578903 ;MAX. AENDERUNG DER MOMENTE BEI NOT-AUS MIT DYNAMIKMODELL [Nm/msec]
|
||||
DECL SPO_REACTION $SPO_REACTION=#MODEL_RAMP_STOP ; REAKTION AUF SAFE POWER OFF
|
||||
REAL $SPO_GEARTORQ[6] ;MAX. GETRIEBEMOMENT BEI SAFE POWER OFF [Nm]
|
||||
$SPO_GEARTORQ[1]=0.0
|
||||
$SPO_GEARTORQ[2]=0.0
|
||||
$SPO_GEARTORQ[3]=0.0
|
||||
$SPO_GEARTORQ[4]=0.0
|
||||
$SPO_GEARTORQ[5]=0.0
|
||||
$SPO_GEARTORQ[6]=0.0
|
||||
BOOL $USE_CUSTOM_MODEL=FALSE ;NACHLADBARES MODELL ZUR KINEMATISCHEN TRANSFORMATION
|
||||
CHAR $CUSTOM_MODEL_NAME[32] ;NAME DES NACHLADBAREN ROBOTER-MODELS
|
||||
$CUSTOM_MODEL_NAME[]=" "
|
||||
CHAR $CUSTOM_MODEL_VERSION[32] ;VERSION DES NACHLADBAREN ROBOTERMODEL
|
||||
$CUSTOM_MODEL_VERSION[]=" "
|
||||
ENDDAT
|
||||
9
KUKA/KRC/R1/Program/ActionReturn.src
Normal file
9
KUKA/KRC/R1/Program/ActionReturn.src
Normal file
@@ -0,0 +1,9 @@
|
||||
&ACCESS RV
|
||||
DEF ActionReturn (nRet:IN )
|
||||
DECL INT nRet
|
||||
END_POS=$POS_ACT
|
||||
Q_CmdCountRet=CmdCountLast
|
||||
Q_CmdResult=nRet
|
||||
Q_CmdRet=CmdSave
|
||||
Q_Cmd_Running=0
|
||||
END
|
||||
16
KUKA/KRC/R1/Program/Config.dat
Normal file
16
KUKA/KRC/R1/Program/Config.dat
Normal file
@@ -0,0 +1,16 @@
|
||||
&ACCESS RV
|
||||
DEFDAT CONFIG PUBLIC
|
||||
|
||||
GLOBAL INT PdtTypeLast=0
|
||||
GLOBAL INT CmdCountLast=5
|
||||
GLOBAL INT CmdSave=10
|
||||
GLOBAL INT OffsetX_Save=0
|
||||
GLOBAL INT OffsetY_Save=0
|
||||
GLOBAL INT CountX_Save=1
|
||||
GLOBAL INT CountY_Save=4
|
||||
|
||||
GLOBAL BOOL ConfMessSave=FALSE
|
||||
|
||||
DECL GLOBAL E6POS END_POS={X 3447.50732,Y 2180.00269,Z 1194.16223,A 179.028702,B -19.9683552,C 89.8567,S 6,T 19,E1 3545.58130,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
|
||||
ENDDAT
|
||||
10
KUKA/KRC/R1/Program/Grip/GripClose.src
Normal file
10
KUKA/KRC/R1/Program/Grip/GripClose.src
Normal file
@@ -0,0 +1,10 @@
|
||||
&ACCESS RV
|
||||
DEF GripClose ( )
|
||||
Q_GripPosIndex=102
|
||||
Q_GripPosCount=I_GripPosCountRet+1
|
||||
IF Q_GripPosCount>1000 THEN
|
||||
Q_GripPosCount=1
|
||||
ENDIF
|
||||
WAIT FOR (I_GripPosIndexRet==Q_GripPosIndex) AND (I_GripPosCountRet==Q_GripPosCount) AND I_GripClose
|
||||
|
||||
END
|
||||
11
KUKA/KRC/R1/Program/Grip/GripOpen.src
Normal file
11
KUKA/KRC/R1/Program/Grip/GripOpen.src
Normal file
@@ -0,0 +1,11 @@
|
||||
&ACCESS RV
|
||||
DEF GripOpen ( )
|
||||
|
||||
Q_GripPosIndex=101
|
||||
Q_GripPosCount=I_GripPosCountRet+1
|
||||
IF Q_GripPosCount>1000 THEN
|
||||
Q_GripPosCount=1
|
||||
ENDIF
|
||||
WAIT FOR (I_GripPosIndexRet==Q_GripPosIndex) AND (I_GripPosCountRet==Q_GripPosCount) AND I_GripOpen
|
||||
|
||||
END
|
||||
13
KUKA/KRC/R1/Program/Home/HomeModule.dat
Normal file
13
KUKA/KRC/R1/Program/Home/HomeModule.dat
Normal file
@@ -0,0 +1,13 @@
|
||||
&ACCESS RV
|
||||
DEFDAT HomeModule
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLARATIONS)
|
||||
ENDDAT
|
||||
27
KUKA/KRC/R1/Program/Home/HomeModule.src
Normal file
27
KUKA/KRC/R1/Program/Home/HomeModule.src
Normal file
@@ -0,0 +1,27 @@
|
||||
&ACCESS RV
|
||||
DEF HomeModule ( )
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
BAS (#INITMOV,0 )
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
|
||||
PTP $POS_ACT
|
||||
IF $POS_ACT.Z<1600 THEN
|
||||
LIN {Z 1600}
|
||||
ENDIF
|
||||
|
||||
;FOLD SPTP HOME Vel=100 % DEFAULT ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=HOME; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=DEFAULT; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XHOME WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FHOME), $BASE = SBASE(FHOME.BASE_NO), $IPO_MODE = SIPO_MODE(FHOME.IPO_FRAME), $LOAD = SLOAD(FHOME.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PDEFAULT), $APO = SAPO_PTP(PDEFAULT), $GEAR_JERK[1] = SGEAR_JERK(PDEFAULT), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
|
||||
END
|
||||
14
KUKA/KRC/R1/Program/MainModule.dat
Normal file
14
KUKA/KRC/R1/Program/MainModule.dat
Normal file
@@ -0,0 +1,14 @@
|
||||
&ACCESS RVO
|
||||
&REL 1
|
||||
DEFDAT MainModule
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLARATIONS)
|
||||
ENDDAT
|
||||
75
KUKA/KRC/R1/Program/MainModule.src
Normal file
75
KUKA/KRC/R1/Program/MainModule.src
Normal file
@@ -0,0 +1,75 @@
|
||||
&ACCESS RVO
|
||||
&REL 1
|
||||
DEF MainModule()
|
||||
;FOLD INI
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS == TRUE DO IR_STOPM()
|
||||
INTERRUPT ON 3
|
||||
;ENDFOLD
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
;ENDFOLD
|
||||
;ENDFOLD
|
||||
|
||||
$CYCFLAG[1]=(I_GripSafty1 == FALSE) OR (I_GripSafty2==FALSE)
|
||||
INTERRUPT DECL 24 WHEN $CYCFLAG[1] DO StopSafty()
|
||||
INTERRUPT ON 24
|
||||
|
||||
|
||||
;FOLD PTP $POS_ACT Tool[0] Base[0]
|
||||
BAS(#INITMOV, 0)
|
||||
BAS(#BASE, 0)
|
||||
BAS(#TOOL, 0)
|
||||
PTP $POS_ACT
|
||||
;ENDFOLD
|
||||
$ov_pro=40
|
||||
|
||||
LOOP
|
||||
AutoRun()
|
||||
ENDLOOP
|
||||
END
|
||||
|
||||
DEF AutoRun()
|
||||
IF I_ProductType <> PdtTypeLast THEN
|
||||
MsgNotify("PdtType is Change", "SafeErr")
|
||||
Q_Error1=TRUE
|
||||
$FLAG[10]=TRUE
|
||||
HALT
|
||||
ENDIF
|
||||
PdtTypeLast=I_ProductType
|
||||
WAIT FOR (I_Cmd > 0) AND (I_CmdCount <> CmdCountLast) AND (Q_Cmd_Running==0)
|
||||
CmdSave = I_Cmd
|
||||
CmdCountLast = I_CmdCount
|
||||
Q_Cmd_Running=CmdSave
|
||||
OffsetX_Save=I_OffsetX
|
||||
OffsetY_Save=I_OffsetY
|
||||
CountX_Save=I_CountX
|
||||
CountY_Save=I_CountY
|
||||
|
||||
SWITCH CmdSave
|
||||
CASE 1
|
||||
FeedBelt1Pick()
|
||||
CASE 2
|
||||
FeedBelt2Pick()
|
||||
CASE 3
|
||||
ReFeedBeltPick()
|
||||
CASE 4
|
||||
WaterBeltPick()
|
||||
CASE 5
|
||||
NgBeltPlace()
|
||||
CASE 10
|
||||
Pallet1Place()
|
||||
CASE 11
|
||||
Pallet2Place()
|
||||
ENDSWITCH
|
||||
|
||||
END
|
||||
|
||||
|
||||
DEF StopSafty()
|
||||
INTERRUPT OFF 24
|
||||
BRAKE F
|
||||
PTP $POS_INT:{z 20}
|
||||
$FLAG[10]=TRUE
|
||||
INTERRUPT ON 24
|
||||
END
|
||||
19
KUKA/KRC/R1/Program/Mylib/CheckInPos.src
Normal file
19
KUKA/KRC/R1/Program/Mylib/CheckInPos.src
Normal file
@@ -0,0 +1,19 @@
|
||||
&ACCESS RVO
|
||||
DEFFCT BOOL CheckInPos (R_offset:IN,EndPos:IN )
|
||||
DECL REAL R_offset
|
||||
DECL BOOL b_Pok
|
||||
DECL E6POS ACT_Point
|
||||
DECL E6POS EndPos
|
||||
ACT_Point = $POS_ACT
|
||||
IF (ABS(ACT_Point.X - EndPos.X) > R_offset) OR (ABS(ACT_Point.Y - EndPos.Y) > R_offset) OR (ABS(ACT_Point.Z - EndPos.Z) > R_offset) OR (ABS(ACT_Point.A - EndPos.A) > 0.5) OR (ABS(ACT_Point.B - EndPos.B) > 0.5) OR (ABS(ACT_Point.C - EndPos.C) > 0.5) OR (ABS(ACT_Point.E1 - EndPos.E1) > R_offset) THEN
|
||||
b_Pok=FALSE
|
||||
ELSE
|
||||
b_Pok=TRUE
|
||||
ENDIF
|
||||
IF NOT b_Pok THEN
|
||||
MsgNotify("CheckInPosError", "OutArea", , , 1)
|
||||
;HALT
|
||||
ENDIF
|
||||
|
||||
RETURN b_Pok
|
||||
ENDFCT
|
||||
12
KUKA/KRC/R1/Program/Mylib/INT_TO_STR.src
Normal file
12
KUKA/KRC/R1/Program/Mylib/INT_TO_STR.src
Normal file
@@ -0,0 +1,12 @@
|
||||
&ACCESS RVO
|
||||
DEFFCT CHAR[32] INT_TO_STR(iVal:IN)
|
||||
DECL INT iVal,I,offset
|
||||
DECL CHAR Ret[32]
|
||||
DECL STATE_T state
|
||||
offset=0
|
||||
FOR I=1 TO 32
|
||||
Ret[I]=0
|
||||
ENDFOR
|
||||
SWRITE(Ret[],state,offset,"%d",iVal)
|
||||
Return (Ret[])
|
||||
ENDFCT
|
||||
12
KUKA/KRC/R1/Program/Mylib/Initmove.src
Normal file
12
KUKA/KRC/R1/Program/Mylib/Initmove.src
Normal file
@@ -0,0 +1,12 @@
|
||||
&ACCESS RV
|
||||
DEF Initmove ( )
|
||||
CONTINUE
|
||||
IF ($T1 OR $T2) AND NOT $NEAR_POSRET THEN
|
||||
CONTINUE
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
BAS (#INITMOV,0 )
|
||||
CONTINUE
|
||||
PTP $POS_ACT C_DIS
|
||||
ENDIF
|
||||
END
|
||||
64
KUKA/KRC/R1/Program/Mylib/OffsetByBase.src
Normal file
64
KUKA/KRC/R1/Program/Mylib/OffsetByBase.src
Normal file
@@ -0,0 +1,64 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
DEFFCT E6POS OffsetByBase(Position:IN, rRelX:IN, rRelY:IN, rRelZ:IN, rRelA:IN, rRelB:IN, rRelC:IN)
|
||||
DECL E6POS Position, rPosition
|
||||
DECL REAL rRelX, rRelY, rRelZ, rRelA, rRelB, rRelC
|
||||
DECL FRAME FrameTrans, FrameRot, PosTrans, PosRot
|
||||
|
||||
IF VARSTATE("rRelX") <> #INITIALIZED THEN
|
||||
rRelX = 0
|
||||
ENDIF
|
||||
IF VARSTATE("rRelY") <> #INITIALIZED THEN
|
||||
rRelY = 0
|
||||
ENDIF
|
||||
IF VARSTATE("rRelZ") <> #INITIALIZED THEN
|
||||
rRelZ = 0
|
||||
ENDIF
|
||||
IF VARSTATE("rRelA") <> #INITIALIZED THEN
|
||||
rRelA = 0
|
||||
ENDIF
|
||||
IF VARSTATE("rRelB") <> #INITIALIZED THEN
|
||||
rRelB = 0
|
||||
ENDIF
|
||||
IF VARSTATE("rRelC") <> #INITIALIZED THEN
|
||||
rRelC = 0
|
||||
ENDIF
|
||||
|
||||
rPosition = Position
|
||||
|
||||
FrameTrans = $NULLFRAME
|
||||
FrameTrans.X = rRelX
|
||||
FrameTrans.Y = rRelY
|
||||
FrameTrans.Z = rRelZ
|
||||
|
||||
FrameRot = $NULLFRAME
|
||||
FrameRot.A = rRelA
|
||||
FrameRot.B = rRelB
|
||||
FrameRot.C = rRelC
|
||||
|
||||
PosTrans = $NULLFRAME
|
||||
PosTrans.X = rPosition.X
|
||||
PosTrans.y = rPosition.Y
|
||||
PosTrans.Z = rPosition.Z
|
||||
|
||||
PosRot = $NULLFRAME
|
||||
PosRot.A = rPosition.A
|
||||
PosRot.B = rPosition.B
|
||||
PosRot.C = rPosition.C
|
||||
|
||||
;Positionstransformation durchfuehren
|
||||
rPosition = FrameTrans:PosTrans:FrameRot:PosRot
|
||||
|
||||
;Status & Turn der Originalposition uebernehmen
|
||||
|
||||
;Werte der externen Achse der Orignalposition
|
||||
;uebernehmen
|
||||
rPosition.E1 = Position.E1
|
||||
rPosition.E2 = Position.E2
|
||||
rPosition.E3 = Position.E3
|
||||
rPosition.E4 = Position.E4
|
||||
rPosition.E5 = Position.E5
|
||||
rPosition.E6 = Position.E6
|
||||
|
||||
RETURN(rPosition)
|
||||
ENDFCT
|
||||
45
KUKA/KRC/R1/Program/Mylib/OffsetByTool.src
Normal file
45
KUKA/KRC/R1/Program/Mylib/OffsetByTool.src
Normal file
@@ -0,0 +1,45 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
DEFFCT E6POS OffsetByTool(Position:IN, rRelX:IN, rRelY:IN, rRelZ:IN, rRelA:IN, rRelB:IN, rRelC:IN)
|
||||
DECL E6POS Position,rPosition
|
||||
DECL REAL rRelX, rRelY, rRelZ, rRelA, rRelB, rRelC
|
||||
DECL FRAME FrameTmp
|
||||
|
||||
IF VARSTATE("rRelX") <> #INITIALIZED THEN
|
||||
rRelX = 0
|
||||
ENDIF
|
||||
IF VARSTATE("rRelY") <> #INITIALIZED THEN
|
||||
rRelY = 0
|
||||
ENDIF
|
||||
IF VARSTATE("rRelZ") <> #INITIALIZED THEN
|
||||
rRelZ = 0
|
||||
ENDIF
|
||||
IF VARSTATE("rRelA") <> #INITIALIZED THEN
|
||||
rRelA = 0
|
||||
ENDIF
|
||||
IF VARSTATE("rRelB") <> #INITIALIZED THEN
|
||||
rRelB = 0
|
||||
ENDIF
|
||||
IF VARSTATE("rRelC") <> #INITIALIZED THEN
|
||||
rRelC = 0
|
||||
ENDIF
|
||||
|
||||
FrameTmp = $NULLFRAME
|
||||
FrameTmp.X = rRelX
|
||||
FrameTmp.Y = rRelY
|
||||
FrameTmp.Z = rRelZ
|
||||
FrameTmp.A = rRelA
|
||||
FrameTmp.B = rRelB
|
||||
FrameTmp.C = rRelC
|
||||
|
||||
rPosition = Position:FrameTmp
|
||||
|
||||
rPosition.E1 = Position.E1
|
||||
rPosition.E2 = Position.E2
|
||||
rPosition.E3 = Position.E3
|
||||
rPosition.E4 = Position.E4
|
||||
rPosition.E5 = Position.E5
|
||||
rPosition.E6 = Position.E6
|
||||
|
||||
RETURN(rPosition)
|
||||
ENDFCT
|
||||
19
KUKA/KRC/R1/Program/Mylib/REAL_TO_Output.src
Normal file
19
KUKA/KRC/R1/Program/Mylib/REAL_TO_Output.src
Normal file
@@ -0,0 +1,19 @@
|
||||
&ACCESS RV
|
||||
DEFFCT INT REAL_TO_Output (rVal:IN )
|
||||
DECL REAL rVal
|
||||
DECL INT Offset,Ret
|
||||
DECL INT INTS[4]
|
||||
DECL CHAR Bytes[4]
|
||||
Offset=0
|
||||
Ret=0
|
||||
CAST_TO(Bytes[],Offset,rVal)
|
||||
INTS[1] = Bytes[1]
|
||||
INTS[2] = Bytes[2]
|
||||
INTS[2] = INTS[2]*256
|
||||
INTS[3] = Bytes[3]
|
||||
INTS[3] = INTS[3]*65536
|
||||
INTS[4] = Bytes[4]
|
||||
INTS[4] = INTS[4]*16777216
|
||||
Ret=INTS[1]+INTS[2]+INTS[3]+INTS[4]
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
22
KUKA/KRC/R1/Program/Mylib/REAL_TO_STR.src
Normal file
22
KUKA/KRC/R1/Program/Mylib/REAL_TO_STR.src
Normal file
@@ -0,0 +1,22 @@
|
||||
&ACCESS RVO
|
||||
DEFFCT CHAR[32] REAL_TO_STR(iVal:IN)
|
||||
DECL REAL iVal
|
||||
DECL INT I,offset
|
||||
DECL CHAR Ret[32]
|
||||
DECL STATE_T state
|
||||
offset=0
|
||||
FOR I=1 TO 32
|
||||
Ret[I]=0
|
||||
ENDFOR
|
||||
SWRITE(Ret[],state,offset,"%.3f",iVal)
|
||||
Return (Ret[])
|
||||
ENDFCT
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
24
KUKA/KRC/R1/Program/PL/FeedBelt1Pick.dat
Normal file
24
KUKA/KRC/R1/Program/PL/FeedBelt1Pick.dat
Normal file
@@ -0,0 +1,24 @@
|
||||
&ACCESS RV
|
||||
DEFDAT FEEDBELT1PICK
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLARATIONS)
|
||||
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS={PARAMS[] "Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.MovementParameterFieldEnabled=True; Kuka.IsAngleEnabled=False; Kuka.PointName=PickH; Kuka.FrameData.base_no=0; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT1; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=2; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=False; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0; Kuka.MoveDataName=CPDAT2; Kuka.MovementData.cb={AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}; Kuka.MovementData.apo_fac=50; Kuka.MovementData.apo_dist=500; Kuka.MovementData.axis_acc=100; Kuka.MovementData.axis_vel=100; Kuka.MovementData.circ_typ=#BASE; Kuka.MovementData.jerk_fac=50; Kuka.MovementData.ori_typ=#VAR; Kuka.VelocityPath=2; Kuka.FrameData.point2= "}
|
||||
DECL FDAT FPickH={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPickH={X 1797.49475,Y 1360.66516,Z 1167.60986,A -165.399490,B -1.87913013,C 179.432770,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT1={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL FDAT FPick={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPick={X 1797.49475,Y 1360.66516,Z 667.609802,A -165.399490,B -1.87913013,C 179.432770,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT2={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
|
||||
DECL PDAT PPDAT1={VEL 100.000,ACC 100.000,APO_DIST 500.000,APO_MODE #CDIS,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
|
||||
ENDDAT
|
||||
44
KUKA/KRC/R1/Program/PL/FeedBelt1Pick.src
Normal file
44
KUKA/KRC/R1/Program/PL/FeedBelt1Pick.src
Normal file
@@ -0,0 +1,44 @@
|
||||
&ACCESS RV
|
||||
DEF FeedBelt1Pick ( )
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
BAS (#INITMOV,0 )
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
XPickH=XPick
|
||||
XPickH.Z=XPick.Z+500
|
||||
;FOLD SPTP PickH CONT Vel=100 % PDAT1 Tool[1] Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PickH; Kuka.BlendingEnabled=True; Kuka.MoveDataPtpName=PDAT1; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XPickH WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FPickH), $BASE = SBASE(FPickH.BASE_NO), $IPO_MODE = SIPO_MODE(FPickH.IPO_FRAME), $LOAD = SLOAD(FPickH.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT1), $APO = SAPO_PTP(PPDAT1), $GEAR_JERK[1] = SGEAR_JERK(PPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
;ENDFOLD
|
||||
CONTINUE
|
||||
WAIT FOR I_GripOpen AND I_Signal1 AND I_AreaReady1 AND I_AreaReady4 AND NOT I_GripExist AND I_GripSafty1 AND I_GripSafty2
|
||||
CONTINUE
|
||||
Q_AreaEnter1=TRUE
|
||||
;FOLD SLIN Pick Vel=2 m/s CPDAT1 Tool[1] Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=Pick; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT1; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPick WITH $VEL = SVEL_CP(2.0, , LCPDAT1), $TOOL = STOOL2(FPick), $BASE = SBASE(FPick.BASE_NO), $IPO_MODE = SIPO_MODE(FPick.IPO_FRAME), $LOAD = SLOAD(FPick.TOOL_NO), $ACC = SACC_CP(LCPDAT1), $ORI_TYPE = SORI_TYP(LCPDAT1), $APO = SAPO(LCPDAT1), $JERK = SJERK(LCPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
GripClose()
|
||||
;FOLD SLIN PickH Vel=2 m/s CPDAT2 Tool[1] Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PickH; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT2; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPickH WITH $VEL = SVEL_CP(2.0, , LCPDAT2), $TOOL = STOOL2(FPickH), $BASE = SBASE(FPickH.BASE_NO), $IPO_MODE = SIPO_MODE(FPickH.IPO_FRAME), $LOAD = SLOAD(FPickH.TOOL_NO), $ACC = SACC_CP(LCPDAT2), $ORI_TYPE = SORI_TYP(LCPDAT2), $APO = SAPO(LCPDAT2), $JERK = SJERK(LCPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
Q_AreaEnter1=FALSE
|
||||
ActionReturn(1)
|
||||
|
||||
END
|
||||
22
KUKA/KRC/R1/Program/PL/FeedBelt2Pick.dat
Normal file
22
KUKA/KRC/R1/Program/PL/FeedBelt2Pick.dat
Normal file
@@ -0,0 +1,22 @@
|
||||
&ACCESS RV
|
||||
DEFDAT FeedBelt2Pick
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLARATIONS)
|
||||
DECL LDAT LCPDAT2={CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}},APO_FAC 50.0,APO_DIST 500,AXIS_ACC 100.0,AXIS_VEL 100.0,CIRC_TYP #BASE,JERK_FAC 50.0,ORI_TYP #VAR,VEL 2,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
DECL FDAT FPick_1={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL LDAT LCPDAT1={CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}},APO_FAC 50.0,APO_DIST 500,AXIS_ACC 100.0,AXIS_VEL 100.0,CIRC_TYP #BASE,JERK_FAC 50.0,ORI_TYP #VAR,VEL 2,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
DECL PDAT PPDAT1={APO_MODE #CDIS,APO_DIST 500,VEL 100,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
DECL FDAT FPickH={BASE_NO 0,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS = {PARAMS[] "Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.MovementParameterFieldEnabled=True; Kuka.IsAngleEnabled=False; Kuka.PointName=PickH; Kuka.FrameData.base_no=0; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT1; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=2; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=False; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0; Kuka.MoveDataName=CPDAT2; Kuka.MovementData.cb={AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}; Kuka.MovementData.apo_fac=50; Kuka.MovementData.apo_dist=500; Kuka.MovementData.axis_acc=100; Kuka.MovementData.axis_vel=100; Kuka.MovementData.circ_typ=#BASE; Kuka.MovementData.jerk_fac=50; Kuka.MovementData.ori_typ=#VAR; Kuka.VelocityPath=2; Kuka.FrameData.point2= "}
|
||||
DECL E6POS XPickH = {A -165.39949,B -1.87913013,C 179.43277,S 2,T 43,X 1797.49475,Y 1360.66516,Z 1167.60986,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL E6POS XPick = {A -165.39949,B -1.87913013,C 179.43277,S 2,T 43,X 1797.49475,Y 1360.66516,Z 667.609802,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL FDAT FPick = {BASE_NO 0,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
ENDDAT
|
||||
45
KUKA/KRC/R1/Program/PL/FeedBelt2Pick.src
Normal file
45
KUKA/KRC/R1/Program/PL/FeedBelt2Pick.src
Normal file
@@ -0,0 +1,45 @@
|
||||
&ACCESS RV
|
||||
DEF FeedBelt2Pick ( )
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
BAS (#INITMOV,0 )
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
XPickH=XPick
|
||||
XPickH.Z=XPick.Z+500
|
||||
;FOLD SPTP PickH CONT Vel=100 % PDAT1 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PickH; Kuka.BlendingEnabled=True; Kuka.MoveDataPtpName=PDAT1; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XPickH WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FPickH), $BASE = SBASE(FPickH.BASE_NO), $IPO_MODE = SIPO_MODE(FPickH.IPO_FRAME), $LOAD = SLOAD(FPickH.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT1), $APO = SAPO_PTP(PPDAT1), $GEAR_JERK[1] = SGEAR_JERK(PPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
;ENDFOLD
|
||||
CONTINUE
|
||||
WAIT FOR I_GripOpen AND I_Signal2 AND I_AreaReady1 AND I_AreaReady4 AND NOT I_GripExist AND I_GripSafty1 AND I_GripSafty2
|
||||
CONTINUE
|
||||
Q_AreaEnter1=TRUE
|
||||
;FOLD SLIN Pick Vel=2 m/s CPDAT1 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=Pick; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT1; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPick WITH $VEL = SVEL_CP(2.0, , LCPDAT1), $TOOL = STOOL2(FPick), $BASE = SBASE(FPick.BASE_NO), $IPO_MODE = SIPO_MODE(FPick.IPO_FRAME), $LOAD = SLOAD(FPick.TOOL_NO), $ACC = SACC_CP(LCPDAT1), $ORI_TYPE = SORI_TYP(LCPDAT1), $APO = SAPO(LCPDAT1), $JERK = SJERK(LCPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
GripClose()
|
||||
;FOLD SLIN PickH Vel=2 m/s CPDAT2 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PickH; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT2; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPickH WITH $VEL = SVEL_CP(2.0, , LCPDAT2), $TOOL = STOOL2(FPickH), $BASE = SBASE(FPickH.BASE_NO), $IPO_MODE = SIPO_MODE(FPickH.IPO_FRAME), $LOAD = SLOAD(FPickH.TOOL_NO), $ACC = SACC_CP(LCPDAT2), $ORI_TYPE = SORI_TYP(LCPDAT2), $APO = SAPO(LCPDAT2), $JERK = SJERK(LCPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
Q_AreaEnter1=FALSE
|
||||
ActionReturn(1)
|
||||
|
||||
|
||||
END
|
||||
23
KUKA/KRC/R1/Program/PL/NgBeltPlace.dat
Normal file
23
KUKA/KRC/R1/Program/PL/NgBeltPlace.dat
Normal file
@@ -0,0 +1,23 @@
|
||||
&ACCESS RV
|
||||
DEFDAT NgBeltPlace
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLARATIONS)
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS = {PARAMS[] "Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.MovementParameterFieldEnabled=True; Kuka.IsAngleEnabled=False; Kuka.PointName=PlaceH; Kuka.FrameData.base_no=0; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT2; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=2; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=True; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0; Kuka.MoveDataName=CPDAT2; Kuka.MovementData.cb={AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}; Kuka.MovementData.apo_fac=50; Kuka.MovementData.apo_dist=500; Kuka.MovementData.axis_acc=100; Kuka.MovementData.axis_vel=100; Kuka.MovementData.circ_typ=#BASE; Kuka.MovementData.jerk_fac=50; Kuka.MovementData.ori_typ=#VAR; Kuka.VelocityPath=2; Kuka.FrameData.point2= "}
|
||||
DECL FDAT FPlaceH={BASE_NO 0,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPlaceH={X 1800.64709,Y -146.362045,Z 1228.85449,A -165.397675,B -1.88142359,C 179.427,S 2,T 2,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT1={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL FDAT FPlace={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPlace={X 1800.64709,Y -146.362045,Z 728.854492,A -165.397675,B -1.88142359,C 179.427,S 2,T 2,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT2={CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}},APO_FAC 50.0,APO_DIST 500,AXIS_ACC 100.0,AXIS_VEL 100.0,CIRC_TYP #BASE,JERK_FAC 50.0,ORI_TYP #VAR,VEL 2,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
DECL PDAT PPDAT1={VEL 100.000,ACC 100.000,APO_DIST 500.000,APO_MODE #CDIS,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
DECL FDAT FHOME1 = {BASE_NO 0,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL PDAT PPDAT2 = {APO_MODE #CDIS,APO_DIST 500,VEL 100,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
ENDDAT
|
||||
52
KUKA/KRC/R1/Program/PL/NgBeltPlace.src
Normal file
52
KUKA/KRC/R1/Program/PL/NgBeltPlace.src
Normal file
@@ -0,0 +1,52 @@
|
||||
&ACCESS RV
|
||||
DEF NgBeltPlace ( )
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
BAS (#INITMOV,0 )
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
XPlaceH=XPlace
|
||||
XPlaceH.Z=XPlace.Z+500
|
||||
;FOLD SPTP PlaceH CONT Vel=100 % PDAT1 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PlaceH; Kuka.BlendingEnabled=True; Kuka.MoveDataPtpName=PDAT1; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XPlaceH WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FPlaceH), $BASE = SBASE(FPlaceH.BASE_NO), $IPO_MODE = SIPO_MODE(FPlaceH.IPO_FRAME), $LOAD = SLOAD(FPlaceH.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT1), $APO = SAPO_PTP(PPDAT1), $GEAR_JERK[1] = SGEAR_JERK(PPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
;ENDFOLD
|
||||
CONTINUE
|
||||
WAIT FOR I_AreaReady4 AND NOT I_Signal5 AND NOT I_GripBelowExist AND I_GripSafty1 AND I_GripSafty2
|
||||
CONTINUE
|
||||
Q_AreaEnter2=TRUE
|
||||
;FOLD SLIN Place Vel=2 m/s CPDAT1 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=Place; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT1; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPlace WITH $VEL = SVEL_CP(2.0, , LCPDAT1), $TOOL = STOOL2(FPlace), $BASE = SBASE(FPlace.BASE_NO), $IPO_MODE = SIPO_MODE(FPlace.IPO_FRAME), $LOAD = SLOAD(FPlace.TOOL_NO), $ACC = SACC_CP(LCPDAT1), $ORI_TYPE = SORI_TYP(LCPDAT1), $APO = SAPO(LCPDAT1), $JERK = SJERK(LCPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
GripOpen()
|
||||
;FOLD SLIN PlaceH CONT Vel=2 m/s CPDAT2 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PlaceH; Kuka.BlendingEnabled=True; Kuka.MoveDataName=CPDAT2; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPlaceH WITH $VEL = SVEL_CP(2.0, , LCPDAT2), $TOOL = STOOL2(FPlaceH), $BASE = SBASE(FPlaceH.BASE_NO), $IPO_MODE = SIPO_MODE(FPlaceH.IPO_FRAME), $LOAD = SLOAD(FPlaceH.TOOL_NO), $ACC = SACC_CP(LCPDAT2), $ORI_TYPE = SORI_TYP(LCPDAT2), $APO = SAPO(LCPDAT2), $JERK = SJERK(LCPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
;ENDFOLD
|
||||
CONTINUE
|
||||
Q_AreaEnter2=FALSE
|
||||
|
||||
;FOLD SPTP HOME1 Vel=100 % PDAT2 ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=HOME1; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT2; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XHOME1 WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FHOME1), $BASE = SBASE(FHOME1.BASE_NO), $IPO_MODE = SIPO_MODE(FHOME1.IPO_FRAME), $LOAD = SLOAD(FHOME1.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT2), $APO = SAPO_PTP(PPDAT2), $GEAR_JERK[1] = SGEAR_JERK(PPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
ActionReturn(1)
|
||||
|
||||
END
|
||||
26
KUKA/KRC/R1/Program/PL/Pallet1Place.dat
Normal file
26
KUKA/KRC/R1/Program/PL/Pallet1Place.dat
Normal file
@@ -0,0 +1,26 @@
|
||||
&ACCESS RV
|
||||
DEFDAT PALLET1PLACE
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLARATIONS)
|
||||
|
||||
|
||||
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS = {PARAMS[] "Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.MovementParameterFieldEnabled=True; Kuka.IsAngleEnabled=False; Kuka.PointName=PlaceH; Kuka.FrameData.base_no=0; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT2; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=100; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=False; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0; Kuka.MoveDataName=CPDAT2; Kuka.MovementData.cb={AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}; Kuka.MovementData.apo_fac=50; Kuka.MovementData.apo_dist=500; Kuka.MovementData.axis_acc=100; Kuka.MovementData.axis_vel=100; Kuka.MovementData.circ_typ=#BASE; Kuka.MovementData.jerk_fac=50; Kuka.MovementData.ori_typ=#VAR; Kuka.VelocityPath=2; Kuka.FrameData.point2="}
|
||||
DECL FDAT FPlaceH={BASE_NO 0,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPlaceH={X 1800.64709,Y -146.362045,Z 1228.85449,A -165.397675,B -1.88142359,C 179.427,S 2,T 2,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT1={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL FDAT FPlace={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPlace={X 1800.64709,Y -146.362045,Z 728.854492,A -165.397675,B -1.88142359,C 179.427,S 2,T 2,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT2={CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}},APO_FAC 50.0,APO_DIST 500,AXIS_ACC 100.0,AXIS_VEL 100.0,CIRC_TYP #BASE,JERK_FAC 50.0,ORI_TYP #VAR,VEL 2,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
DECL PDAT PPDAT1={VEL 100.000,ACC 100.000,APO_DIST 500.000,APO_MODE #CDIS,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
DECL FDAT FHOME1 = {BASE_NO 0,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL PDAT PPDAT2 = {APO_MODE #CDIS,APO_DIST 500,VEL 100,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
ENDDAT
|
||||
53
KUKA/KRC/R1/Program/PL/Pallet1Place.src
Normal file
53
KUKA/KRC/R1/Program/PL/Pallet1Place.src
Normal file
@@ -0,0 +1,53 @@
|
||||
&ACCESS RV
|
||||
DEF Pallet1Place ( )
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
BAS (#INITMOV,0 )
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
XPlace=XPallet1PlaceB
|
||||
XPlace.X=XPallet1PlaceB.X - CountY_Save*OffsetY_Save
|
||||
XPlace.Y=XPallet1PlaceB.Y - CountX_Save*OffsetX_Save
|
||||
XPlaceH=XPlace
|
||||
XPlaceH.Z=XPlace.Z+500
|
||||
;FOLD SPTP PlaceH CONT Vel=100 % PDAT1 Tool[1] Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PlaceH; Kuka.BlendingEnabled=True; Kuka.MoveDataPtpName=PDAT1; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XPlaceH WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FPlaceH), $BASE = SBASE(FPlaceH.BASE_NO), $IPO_MODE = SIPO_MODE(FPlaceH.IPO_FRAME), $LOAD = SLOAD(FPlaceH.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT1), $APO = SAPO_PTP(PPDAT1), $GEAR_JERK[1] = SGEAR_JERK(PPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
;ENDFOLD
|
||||
CONTINUE
|
||||
WAIT FOR I_AreaReady2 AND NOT I_GripBelowExist AND I_GripSafty1 AND I_GripSafty2
|
||||
CONTINUE
|
||||
Q_AreaEnter2=TRUE
|
||||
;FOLD SLIN Place Vel=2 m/s CPDAT1 Tool[1] Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=Place; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT1; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPlace WITH $VEL = SVEL_CP(2.0, , LCPDAT1), $TOOL = STOOL2(FPlace), $BASE = SBASE(FPlace.BASE_NO), $IPO_MODE = SIPO_MODE(FPlace.IPO_FRAME), $LOAD = SLOAD(FPlace.TOOL_NO), $ACC = SACC_CP(LCPDAT1), $ORI_TYPE = SORI_TYP(LCPDAT1), $APO = SAPO(LCPDAT1), $JERK = SJERK(LCPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
GripOpen()
|
||||
;FOLD SLIN PlaceH CONT Vel=2 m/s CPDAT2 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PlaceH; Kuka.BlendingEnabled=True; Kuka.MoveDataName=CPDAT2; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPlaceH WITH $VEL = SVEL_CP(2.0, , LCPDAT2), $TOOL = STOOL2(FPlaceH), $BASE = SBASE(FPlaceH.BASE_NO), $IPO_MODE = SIPO_MODE(FPlaceH.IPO_FRAME), $LOAD = SLOAD(FPlaceH.TOOL_NO), $ACC = SACC_CP(LCPDAT2), $ORI_TYPE = SORI_TYP(LCPDAT2), $APO = SAPO(LCPDAT2), $JERK = SJERK(LCPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
;ENDFOLD
|
||||
CONTINUE
|
||||
Q_AreaEnter2=FALSE
|
||||
;FOLD SPTP HOME1 Vel=100 % PDAT2 ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=HOME1; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT2; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XHOME1 WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FHOME1), $BASE = SBASE(FHOME1.BASE_NO), $IPO_MODE = SIPO_MODE(FHOME1.IPO_FRAME), $LOAD = SLOAD(FHOME1.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT2), $APO = SAPO_PTP(PPDAT2), $GEAR_JERK[1] = SGEAR_JERK(PPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
ActionReturn(1)
|
||||
END
|
||||
23
KUKA/KRC/R1/Program/PL/Pallet2Place.dat
Normal file
23
KUKA/KRC/R1/Program/PL/Pallet2Place.dat
Normal file
@@ -0,0 +1,23 @@
|
||||
&ACCESS RV
|
||||
DEFDAT Pallet2Place
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLARATIONS)
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS = {PARAMS[] "Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.MovementParameterFieldEnabled=True; Kuka.IsAngleEnabled=False; Kuka.PointName=PlaceH; Kuka.FrameData.base_no=0; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT2; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=100; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=False; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0; Kuka.MoveDataName=CPDAT2; Kuka.MovementData.cb={AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}; Kuka.MovementData.apo_fac=50; Kuka.MovementData.apo_dist=500; Kuka.MovementData.axis_acc=100; Kuka.MovementData.axis_vel=100; Kuka.MovementData.circ_typ=#BASE; Kuka.MovementData.jerk_fac=50; Kuka.MovementData.ori_typ=#VAR; Kuka.VelocityPath=2; Kuka.FrameData.point2="}
|
||||
DECL FDAT FPlaceH={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPlaceH={X 1800.64709,Y -146.362045,Z 1228.85449,A -165.397675,B -1.88142359,C 179.427,S 2,T 2,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT1={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL FDAT FPlace={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPlace={X 1800.64709,Y -146.362045,Z 728.854492,A -165.397675,B -1.88142359,C 179.427,S 2,T 2,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT2={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL PDAT PPDAT1={VEL 100.000,ACC 100.000,APO_DIST 500.000,APO_MODE #CDIS,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
DECL FDAT FHOME1 = {BASE_NO 0,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL PDAT PPDAT2 = {APO_MODE #CDIS,APO_DIST 500,VEL 100,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
ENDDAT
|
||||
53
KUKA/KRC/R1/Program/PL/Pallet2Place.src
Normal file
53
KUKA/KRC/R1/Program/PL/Pallet2Place.src
Normal file
@@ -0,0 +1,53 @@
|
||||
&ACCESS RV
|
||||
DEF Pallet2Place ( )
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
BAS (#INITMOV,0 )
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
XPlace=XPallet1PlaceB
|
||||
XPlace.X=XPallet1PlaceB.X - CountY_Save*OffsetY_Save
|
||||
XPlace.Y=XPallet1PlaceB.Y - CountX_Save*OffsetX_Save
|
||||
XPlaceH=XPlace
|
||||
XPlaceH.Z=XPlace.Z+500
|
||||
;FOLD SPTP PlaceH CONT Vel=100 % PDAT1 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PlaceH; Kuka.BlendingEnabled=True; Kuka.MoveDataPtpName=PDAT1; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XPlaceH WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FPlaceH), $BASE = SBASE(FPlaceH.BASE_NO), $IPO_MODE = SIPO_MODE(FPlaceH.IPO_FRAME), $LOAD = SLOAD(FPlaceH.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT1), $APO = SAPO_PTP(PPDAT1), $GEAR_JERK[1] = SGEAR_JERK(PPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
;ENDFOLD
|
||||
CONTINUE
|
||||
WAIT FOR I_AreaReady2 AND NOT I_GripBelowExist AND I_GripSafty1 AND I_GripSafty2
|
||||
CONTINUE
|
||||
Q_AreaEnter2=TRUE
|
||||
;FOLD SLIN Place Vel=2 m/s CPDAT1 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=Place; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT1; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPlace WITH $VEL = SVEL_CP(2.0, , LCPDAT1), $TOOL = STOOL2(FPlace), $BASE = SBASE(FPlace.BASE_NO), $IPO_MODE = SIPO_MODE(FPlace.IPO_FRAME), $LOAD = SLOAD(FPlace.TOOL_NO), $ACC = SACC_CP(LCPDAT1), $ORI_TYPE = SORI_TYP(LCPDAT1), $APO = SAPO(LCPDAT1), $JERK = SJERK(LCPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
GripOpen()
|
||||
;FOLD SLIN PlaceH Vel=2 m/s CPDAT2 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PlaceH; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT2; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPlaceH WITH $VEL = SVEL_CP(2.0, , LCPDAT2), $TOOL = STOOL2(FPlaceH), $BASE = SBASE(FPlaceH.BASE_NO), $IPO_MODE = SIPO_MODE(FPlaceH.IPO_FRAME), $LOAD = SLOAD(FPlaceH.TOOL_NO), $ACC = SACC_CP(LCPDAT2), $ORI_TYPE = SORI_TYP(LCPDAT2), $APO = SAPO(LCPDAT2), $JERK = SJERK(LCPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
CONTINUE
|
||||
Q_AreaEnter2=FALSE
|
||||
;FOLD SPTP HOME1 Vel=100 % PDAT2 ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=HOME1; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT2; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XHOME1 WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FHOME1), $BASE = SBASE(FHOME1.BASE_NO), $IPO_MODE = SIPO_MODE(FHOME1.IPO_FRAME), $LOAD = SLOAD(FHOME1.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT2), $APO = SAPO_PTP(PPDAT2), $GEAR_JERK[1] = SGEAR_JERK(PPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
ActionReturn(1)
|
||||
|
||||
END
|
||||
21
KUKA/KRC/R1/Program/PL/PosBase.dat
Normal file
21
KUKA/KRC/R1/Program/PL/PosBase.dat
Normal file
@@ -0,0 +1,21 @@
|
||||
&ACCESS RV
|
||||
&REL 7
|
||||
&PARAM DISKPATH = KRC:\R1\Program\TP
|
||||
DEFDAT POSBASE PUBLIC
|
||||
|
||||
;***************************************************
|
||||
; *
|
||||
;***************************************************
|
||||
DECL GLOBAL E6POS XPallet1PlaceB={X 1800.64709,Y -146.362045,Z 728.854492,A -165.397675,B -1.88142359,C 179.427,S 2,T 2,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL GLOBAL E6POS XPallet2PlaceB={X 1800.64709,Y -146.362045,Z 728.854492,A -165.397675,B -1.88142359,C 179.427,S 2,T 2,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL GLOBAL E6POS XFeedBelt1Pick={X 1797.49475,Y 1360.66516,Z 667.609802,A -165.399490,B -1.87913013,C 179.432770,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL GLOBAL E6POS XFeedBelt2Pick={X 1797.49353,Y 1360.66553,Z 667.598755,A -165.400482,B -1.87961507,C 179.432861,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL GLOBAL E6POS XNgBeltPlace={X 1797.49353,Y 1360.66553,Z 667.598755,A -165.400482,B -1.87961507,C 179.432861,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL GLOBAL E6POS XWaterBeltPick={X 1797.49353,Y 1360.66553,Z 667.598755,A -165.400482,B -1.87961507,C 179.432861,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL GLOBAL E6POS XReFeedBeltPick={X 1797.49353,Y 1360.66553,Z 667.598755,A -165.400482,B -1.87961507,C 179.432861,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
ENDDAT
|
||||
23
KUKA/KRC/R1/Program/PL/ReFeedBeltPick.dat
Normal file
23
KUKA/KRC/R1/Program/PL/ReFeedBeltPick.dat
Normal file
@@ -0,0 +1,23 @@
|
||||
&ACCESS RV
|
||||
DEFDAT ReFeedBeltPick
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLARATIONS)
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS={PARAMS[] "Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.MovementParameterFieldEnabled=True; Kuka.IsAngleEnabled=False; Kuka.PointName=PickH; Kuka.FrameData.base_no=0; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT1; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=2; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=False; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0; Kuka.MoveDataName=CPDAT2; Kuka.MovementData.cb={AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}; Kuka.MovementData.apo_fac=50; Kuka.MovementData.apo_dist=500; Kuka.MovementData.axis_acc=100; Kuka.MovementData.axis_vel=100; Kuka.MovementData.circ_typ=#BASE; Kuka.MovementData.jerk_fac=50; Kuka.MovementData.ori_typ=#VAR; Kuka.VelocityPath=2; Kuka.FrameData.point2= "}
|
||||
DECL FDAT FPickH={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPickH={X 1797.49475,Y 1360.66516,Z 1167.60986,A -165.399490,B -1.87913013,C 179.432770,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT1={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL FDAT FPick={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPick={X 1797.49475,Y 1360.66516,Z 667.609802,A -165.399490,B -1.87913013,C 179.432770,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT2={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
|
||||
DECL PDAT PPDAT1={VEL 100.000,ACC 100.000,APO_DIST 500.000,APO_MODE #CDIS,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
|
||||
ENDDAT
|
||||
44
KUKA/KRC/R1/Program/PL/ReFeedBeltPick.src
Normal file
44
KUKA/KRC/R1/Program/PL/ReFeedBeltPick.src
Normal file
@@ -0,0 +1,44 @@
|
||||
&ACCESS RV
|
||||
DEF ReFeedBeltPick ( )
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
BAS (#INITMOV,0 )
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
XPickH=XPick
|
||||
XPickH.Z=XPick.Z+500
|
||||
;FOLD SPTP PickH CONT Vel=100 % PDAT1 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PickH; Kuka.BlendingEnabled=True; Kuka.MoveDataPtpName=PDAT1; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XPickH WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FPickH), $BASE = SBASE(FPickH.BASE_NO), $IPO_MODE = SIPO_MODE(FPickH.IPO_FRAME), $LOAD = SLOAD(FPickH.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT1), $APO = SAPO_PTP(PPDAT1), $GEAR_JERK[1] = SGEAR_JERK(PPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
;ENDFOLD
|
||||
CONTINUE
|
||||
WAIT FOR I_GripOpen AND I_Signal1 AND I_AreaReady1 AND I_AreaReady4 AND NOT I_GripExist AND I_GripSafty1 AND I_GripSafty2
|
||||
CONTINUE
|
||||
Q_AreaEnter1=TRUE
|
||||
;FOLD SLIN Pick Vel=2 m/s CPDAT1 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=Pick; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT1; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPick WITH $VEL = SVEL_CP(2.0, , LCPDAT1), $TOOL = STOOL2(FPick), $BASE = SBASE(FPick.BASE_NO), $IPO_MODE = SIPO_MODE(FPick.IPO_FRAME), $LOAD = SLOAD(FPick.TOOL_NO), $ACC = SACC_CP(LCPDAT1), $ORI_TYPE = SORI_TYP(LCPDAT1), $APO = SAPO(LCPDAT1), $JERK = SJERK(LCPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
GripClose()
|
||||
;FOLD SLIN PickH Vel=2 m/s CPDAT2 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PickH; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT2; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPickH WITH $VEL = SVEL_CP(2.0, , LCPDAT2), $TOOL = STOOL2(FPickH), $BASE = SBASE(FPickH.BASE_NO), $IPO_MODE = SIPO_MODE(FPickH.IPO_FRAME), $LOAD = SLOAD(FPickH.TOOL_NO), $ACC = SACC_CP(LCPDAT2), $ORI_TYPE = SORI_TYP(LCPDAT2), $APO = SAPO(LCPDAT2), $JERK = SJERK(LCPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
Q_AreaEnter1=FALSE
|
||||
ActionReturn(1)
|
||||
|
||||
END
|
||||
23
KUKA/KRC/R1/Program/PL/WaterBeltPick.dat
Normal file
23
KUKA/KRC/R1/Program/PL/WaterBeltPick.dat
Normal file
@@ -0,0 +1,23 @@
|
||||
&ACCESS RV
|
||||
DEFDAT WaterBeltPick
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLARATIONS)
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS={PARAMS[] "Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.MovementParameterFieldEnabled=True; Kuka.IsAngleEnabled=False; Kuka.PointName=PickH; Kuka.FrameData.base_no=0; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT1; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=2; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=False; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0; Kuka.MoveDataName=CPDAT2; Kuka.MovementData.cb={AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}; Kuka.MovementData.apo_fac=50; Kuka.MovementData.apo_dist=500; Kuka.MovementData.axis_acc=100; Kuka.MovementData.axis_vel=100; Kuka.MovementData.circ_typ=#BASE; Kuka.MovementData.jerk_fac=50; Kuka.MovementData.ori_typ=#VAR; Kuka.VelocityPath=2; Kuka.FrameData.point2= "}
|
||||
DECL FDAT FPickH={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPickH={X 1797.49475,Y 1360.66516,Z 1167.60986,A -165.399490,B -1.87913013,C 179.432770,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT1={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL FDAT FPick={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPick={X 1797.49475,Y 1360.66516,Z 667.609802,A -165.399490,B -1.87913013,C 179.432770,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT2={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
|
||||
DECL PDAT PPDAT1={VEL 100.000,ACC 100.000,APO_DIST 500.000,APO_MODE #CDIS,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
|
||||
ENDDAT
|
||||
44
KUKA/KRC/R1/Program/PL/WaterBeltPick.src
Normal file
44
KUKA/KRC/R1/Program/PL/WaterBeltPick.src
Normal file
@@ -0,0 +1,44 @@
|
||||
&ACCESS RV
|
||||
DEF WaterBeltPick ( )
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
BAS (#INITMOV,0 )
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
XPickH=XPick
|
||||
XPickH.Z=XPick.Z+500
|
||||
;FOLD SPTP PickH CONT Vel=100 % PDAT1 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PickH; Kuka.BlendingEnabled=True; Kuka.MoveDataPtpName=PDAT1; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XPickH WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FPickH), $BASE = SBASE(FPickH.BASE_NO), $IPO_MODE = SIPO_MODE(FPickH.IPO_FRAME), $LOAD = SLOAD(FPickH.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT1), $APO = SAPO_PTP(PPDAT1), $GEAR_JERK[1] = SGEAR_JERK(PPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
;ENDFOLD
|
||||
CONTINUE
|
||||
WAIT FOR I_GripOpen AND I_Signal1 AND I_AreaReady1 AND I_AreaReady4 AND NOT I_GripExist AND I_GripSafty1 AND I_GripSafty2
|
||||
CONTINUE
|
||||
Q_AreaEnter1=TRUE
|
||||
;FOLD SLIN Pick Vel=2 m/s CPDAT1 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=Pick; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT1; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPick WITH $VEL = SVEL_CP(2.0, , LCPDAT1), $TOOL = STOOL2(FPick), $BASE = SBASE(FPick.BASE_NO), $IPO_MODE = SIPO_MODE(FPick.IPO_FRAME), $LOAD = SLOAD(FPick.TOOL_NO), $ACC = SACC_CP(LCPDAT1), $ORI_TYPE = SORI_TYP(LCPDAT1), $APO = SAPO(LCPDAT1), $JERK = SJERK(LCPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
GripClose()
|
||||
;FOLD SLIN PickH Vel=2 m/s CPDAT2 Tool[1]:Tool1 Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PickH; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT2; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPickH WITH $VEL = SVEL_CP(2.0, , LCPDAT2), $TOOL = STOOL2(FPickH), $BASE = SBASE(FPickH.BASE_NO), $IPO_MODE = SIPO_MODE(FPickH.IPO_FRAME), $LOAD = SLOAD(FPickH.TOOL_NO), $ACC = SACC_CP(LCPDAT2), $ORI_TYPE = SORI_TYP(LCPDAT2), $APO = SAPO(LCPDAT2), $JERK = SJERK(LCPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
Q_AreaEnter1=FALSE
|
||||
ActionReturn(1)
|
||||
|
||||
END
|
||||
44
KUKA/KRC/R1/Program/PLC.sub
Normal file
44
KUKA/KRC/R1/Program/PLC.sub
Normal file
@@ -0,0 +1,44 @@
|
||||
&ACCESS RVO
|
||||
&COMMENT USER specified PLC program
|
||||
&ACCESS RVP
|
||||
&COMMENT USER specified PLC program
|
||||
DEF PLC ( )
|
||||
DECL STATE_T STAT
|
||||
DECL MODUS_T MODE
|
||||
LOOP
|
||||
|
||||
IF $FLAG[10] THEN
|
||||
CWRITE($CMD,STAT,MODE,"RESET/R1/cell()")
|
||||
;CWRITE($CMD,STAT,MODE,"RESET/R1/MainModule()")
|
||||
$FLAG[10]=FALSE
|
||||
ENDIF
|
||||
IF $FLAG[11] THEN
|
||||
CWRITE($CMD,STAT,MODE,"STOP 1")
|
||||
$FLAG[11]=FALSE
|
||||
ENDIF
|
||||
IF $FLAG[12] THEN
|
||||
CWRITE($CMD,STAT,MODE,"CANCEL 1")
|
||||
$FLAG[12]=FALSE
|
||||
ENDIF
|
||||
IF $CONF_MESS AND NOT ConfMessSave THEN
|
||||
Q_Error1=FALSE
|
||||
Q_Error2=FALSE
|
||||
Q_Error3=FALSE
|
||||
Q_Error4=FALSE
|
||||
Q_Error5=FALSE
|
||||
Q_Error6=FALSE
|
||||
Q_Error7=FALSE
|
||||
Q_Error8=FALSE
|
||||
Q_Error9=FALSE
|
||||
Q_Error10=FALSE
|
||||
Q_Error11=FALSE
|
||||
Q_Error12=FALSE
|
||||
Q_Error13=FALSE
|
||||
Q_Error14=FALSE
|
||||
Q_Error15=FALSE
|
||||
Q_Error16=FALSE
|
||||
ENDIF
|
||||
ConfMessSave=$CONF_MESS
|
||||
ON_ERROR_PROCEED
|
||||
ENDLOOP
|
||||
END
|
||||
129
KUKA/KRC/R1/Program/SignalIO.dat
Normal file
129
KUKA/KRC/R1/Program/SignalIO.dat
Normal file
@@ -0,0 +1,129 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
DEFDAT SignalIO PUBLIC
|
||||
|
||||
;FOLD PLC_TO_KUKA
|
||||
|
||||
GLOBAL SIGNAL I_AreaReady1 $IN[17]
|
||||
GLOBAL SIGNAL I_AreaReady2 $IN[18]
|
||||
GLOBAL SIGNAL I_AreaReady3 $IN[19]
|
||||
GLOBAL SIGNAL I_AreaReady4 $IN[20]
|
||||
GLOBAL SIGNAL I_AreaReady5 $IN[21]
|
||||
GLOBAL SIGNAL I_AreaReady6 $IN[22]
|
||||
GLOBAL SIGNAL I_AreaReady7 $IN[23]
|
||||
GLOBAL SIGNAL I_AreaReady8 $IN[24]
|
||||
GLOBAL SIGNAL I_AreaReady9 $IN[25]
|
||||
GLOBAL SIGNAL I_AreaReady10 $IN[26]
|
||||
GLOBAL SIGNAL I_AreaReady11 $IN[27]
|
||||
GLOBAL SIGNAL I_AreaReady12 $IN[28]
|
||||
GLOBAL SIGNAL I_AreaReady13 $IN[29]
|
||||
GLOBAL SIGNAL I_AreaReady14 $IN[30]
|
||||
GLOBAL SIGNAL I_AreaReady15 $IN[31]
|
||||
GLOBAL SIGNAL I_AreaReady16 $IN[32]
|
||||
|
||||
GLOBAL SIGNAL I_Signal1 $IN[33]
|
||||
GLOBAL SIGNAL I_Signal2 $IN[34]
|
||||
GLOBAL SIGNAL I_Signal3 $IN[35]
|
||||
GLOBAL SIGNAL I_Signal4 $IN[36]
|
||||
GLOBAL SIGNAL I_Signal5 $IN[37]
|
||||
GLOBAL SIGNAL I_Signal6 $IN[38]
|
||||
GLOBAL SIGNAL I_Signal7 $IN[39]
|
||||
GLOBAL SIGNAL I_Signal8 $IN[40]
|
||||
GLOBAL SIGNAL I_Signal9 $IN[41]
|
||||
GLOBAL SIGNAL I_Signal10 $IN[42]
|
||||
GLOBAL SIGNAL I_Signal11 $IN[43]
|
||||
GLOBAL SIGNAL I_Signal12 $IN[44]
|
||||
GLOBAL SIGNAL I_Signal13 $IN[45]
|
||||
GLOBAL SIGNAL I_Signal14 $IN[46]
|
||||
GLOBAL SIGNAL I_Signal15 $IN[47]
|
||||
GLOBAL SIGNAL I_Signal16 $IN[48]
|
||||
|
||||
GLOBAL SIGNAL I_GripSafty1 $IN[49]
|
||||
GLOBAL SIGNAL I_GripSafty2 $IN[50]
|
||||
GLOBAL SIGNAL I_GripBelowExist $IN[51]
|
||||
GLOBAL SIGNAL I_GripExist $IN[52]
|
||||
GLOBAL SIGNAL I_GripOpen $IN[53]
|
||||
GLOBAL SIGNAL I_GripClose $IN[54]
|
||||
|
||||
GLOBAL SIGNAL I_ProductType $IN[65] TO $IN[80]
|
||||
GLOBAL SIGNAL I_Cmd $IN[81] TO $IN[96]
|
||||
GLOBAL SIGNAL I_CmdCount $IN[97] TO $IN[112]
|
||||
GLOBAL SIGNAL I_GripPosIndexRet $IN[113] TO $IN[128]
|
||||
GLOBAL SIGNAL I_GripPosCountRet $IN[129] TO $IN[144]
|
||||
GLOBAL SIGNAL I_GripPosResult $IN[145] TO $IN[160]
|
||||
GLOBAL SIGNAL I_OffsetX $IN[161] TO $IN[176]
|
||||
GLOBAL SIGNAL I_OffsetY $IN[177] TO $IN[192]
|
||||
GLOBAL SIGNAL I_CountX $IN[193] TO $IN[208]
|
||||
GLOBAL SIGNAL I_CountY $IN[209] TO $IN[224]
|
||||
;ENDFOLD
|
||||
|
||||
;FOLD KUKA_TO_PLC
|
||||
|
||||
GLOBAL SIGNAL Q_PickDone $OUT[33]
|
||||
GLOBAL SIGNAL Q_PlaceDone $OUT[34]
|
||||
|
||||
|
||||
GLOBAL SIGNAL Q_InHome1 $OUT[49]
|
||||
GLOBAL SIGNAL Q_InHome2 $OUT[50]
|
||||
GLOBAL SIGNAL Q_InHome3 $OUT[51]
|
||||
GLOBAL SIGNAL Q_InHome4 $OUT[52]
|
||||
GLOBAL SIGNAL Q_InHome5 $OUT[53]
|
||||
GLOBAL SIGNAL Q_InHome6 $OUT[54]
|
||||
GLOBAL SIGNAL Q_InHome7 $OUT[55]
|
||||
GLOBAL SIGNAL Q_InHome8 $OUT[56]
|
||||
GLOBAL SIGNAL Q_InHome9 $OUT[57]
|
||||
GLOBAL SIGNAL Q_InHome10 $OUT[58]
|
||||
GLOBAL SIGNAL Q_InHome11 $OUT[59]
|
||||
GLOBAL SIGNAL Q_InHome12 $OUT[60]
|
||||
GLOBAL SIGNAL Q_InHome13 $OUT[61]
|
||||
GLOBAL SIGNAL Q_InHome14 $OUT[62]
|
||||
GLOBAL SIGNAL Q_InHome15 $OUT[63]
|
||||
GLOBAL SIGNAL Q_InHome16 $OUT[64]
|
||||
|
||||
GLOBAL SIGNAL Q_AreaEnter1 $OUT[65]
|
||||
GLOBAL SIGNAL Q_AreaEnter2 $OUT[66]
|
||||
GLOBAL SIGNAL Q_AreaEnter3 $OUT[67]
|
||||
GLOBAL SIGNAL Q_AreaEnter4 $OUT[68]
|
||||
GLOBAL SIGNAL Q_AreaEnter5 $OUT[69]
|
||||
GLOBAL SIGNAL Q_AreaEnter6 $OUT[70]
|
||||
GLOBAL SIGNAL Q_AreaEnter7 $OUT[71]
|
||||
GLOBAL SIGNAL Q_AreaEnter8 $OUT[72]
|
||||
GLOBAL SIGNAL Q_AreaEnter9 $OUT[73]
|
||||
GLOBAL SIGNAL Q_AreaEnter10 $OUT[74]
|
||||
GLOBAL SIGNAL Q_AreaEnter11 $OUT[75]
|
||||
GLOBAL SIGNAL Q_AreaEnter12 $OUT[76]
|
||||
GLOBAL SIGNAL Q_AreaEnter13 $OUT[77]
|
||||
GLOBAL SIGNAL Q_AreaEnter14 $OUT[78]
|
||||
GLOBAL SIGNAL Q_AreaEnter15 $OUT[79]
|
||||
GLOBAL SIGNAL Q_AreaEnter16 $OUT[80]
|
||||
|
||||
GLOBAL SIGNAL Q_Error1 $OUT[81]
|
||||
GLOBAL SIGNAL Q_Error2 $OUT[82]
|
||||
GLOBAL SIGNAL Q_Error3 $OUT[83]
|
||||
GLOBAL SIGNAL Q_Error4 $OUT[84]
|
||||
GLOBAL SIGNAL Q_Error5 $OUT[85]
|
||||
GLOBAL SIGNAL Q_Error6 $OUT[86]
|
||||
GLOBAL SIGNAL Q_Error7 $OUT[87]
|
||||
GLOBAL SIGNAL Q_Error8 $OUT[88]
|
||||
GLOBAL SIGNAL Q_Error9 $OUT[89]
|
||||
GLOBAL SIGNAL Q_Error10 $OUT[90]
|
||||
GLOBAL SIGNAL Q_Error11 $OUT[91]
|
||||
GLOBAL SIGNAL Q_Error12 $OUT[92]
|
||||
GLOBAL SIGNAL Q_Error13 $OUT[93]
|
||||
GLOBAL SIGNAL Q_Error14 $OUT[94]
|
||||
GLOBAL SIGNAL Q_Error15 $OUT[95]
|
||||
GLOBAL SIGNAL Q_Error16 $OUT[96]
|
||||
|
||||
GLOBAL SIGNAL Q_CmdRet $OUT[97] TO $OUT[112]
|
||||
GLOBAL SIGNAL Q_CmdCountRet $OUT[113] TO $OUT[128]
|
||||
GLOBAL SIGNAL Q_CmdResult $OUT[129] TO $OUT[144]
|
||||
GLOBAL SIGNAL Q_Cmd_Running $OUT[145] TO $OUT[160]
|
||||
GLOBAL SIGNAL Q_GripPosIndex $OUT[161] TO $OUT[176]
|
||||
GLOBAL SIGNAL Q_GripPosCount $OUT[177] TO $OUT[192]
|
||||
|
||||
|
||||
;ENDFOLD
|
||||
|
||||
|
||||
|
||||
ENDDAT
|
||||
29
KUKA/KRC/R1/Program/TP/TestModule.dat
Normal file
29
KUKA/KRC/R1/Program/TP/TestModule.dat
Normal file
@@ -0,0 +1,29 @@
|
||||
&ACCESS RVO
|
||||
&REL 14
|
||||
DEFDAT TestModule
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLARATIONS)
|
||||
DECL FDAT FPallet1PlaceB = {BASE_NO 0,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL PDAT PPDAT1 = {APO_MODE #CDIS,APO_DIST 500,VEL 100,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS = {PARAMS[] "Kuka.VelocityFieldEnabled=False; Kuka.ColDetectFieldEnabled=False; Kuka.MovementParameterFieldEnabled=False; Kuka.IsAngleEnabled=False; Kuka.PointName=ReFeedBeltPick; Kuka.FrameData.base_no=0; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT7; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=100; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=False; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0"}
|
||||
DECL FDAT FPallet2PlaceB = {BASE_NO 0,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL PDAT PPDAT2 = {APO_MODE #CDIS,APO_DIST 500,VEL 100,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
DECL FDAT FFeedBelt1Pick = {BASE_NO 0,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL PDAT PPDAT3 = {APO_MODE #CDIS,APO_DIST 500,VEL 100,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
DECL FDAT FFeedBelt2Pick = {BASE_NO 0,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL PDAT PPDAT4 = {APO_MODE #CDIS,APO_DIST 500,VEL 100,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
DECL PDAT PPDAT5 = {APO_MODE #CDIS,APO_DIST 500,VEL 100,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
DECL FDAT FNgBeltPlace = {BASE_NO 0,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL PDAT PPDAT6 = {APO_MODE #CDIS,APO_DIST 500,VEL 100,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
DECL FDAT FWaterBeltPick = {BASE_NO 0,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL PDAT PPDAT7 = {APO_MODE #CDIS,APO_DIST 500,VEL 100,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
DECL FDAT FReFeedBeltPick = {BASE_NO 0,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
ENDDAT
|
||||
58
KUKA/KRC/R1/Program/TP/TestModule.src
Normal file
58
KUKA/KRC/R1/Program/TP/TestModule.src
Normal file
@@ -0,0 +1,58 @@
|
||||
&ACCESS RVO
|
||||
&REL 14
|
||||
DEF TestModule ( )
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
BAS (#INITMOV,0 )
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
;FOLD SPTP Pallet1PlaceB Vel=100 % PDAT1 Tool[1] Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=Pallet1PlaceB; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT1; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XPallet1PlaceB WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FPallet1PlaceB), $BASE = SBASE(FPallet1PlaceB.BASE_NO), $IPO_MODE = SIPO_MODE(FPallet1PlaceB.IPO_FRAME), $LOAD = SLOAD(FPallet1PlaceB.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT1), $APO = SAPO_PTP(PPDAT1), $GEAR_JERK[1] = SGEAR_JERK(PPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
;FOLD SPTP Pallet2PlaceB Vel=100 % PDAT2 Tool[1] Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=Pallet2PlaceB; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT2; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XPallet2PlaceB WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FPallet2PlaceB), $BASE = SBASE(FPallet2PlaceB.BASE_NO), $IPO_MODE = SIPO_MODE(FPallet2PlaceB.IPO_FRAME), $LOAD = SLOAD(FPallet2PlaceB.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT2), $APO = SAPO_PTP(PPDAT2), $GEAR_JERK[1] = SGEAR_JERK(PPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
;FOLD SPTP FeedBelt1Pick Vel=100 % PDAT3 Tool[1] Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=FeedBelt1Pick; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT3; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XFeedBelt1Pick WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FFeedBelt1Pick), $BASE = SBASE(FFeedBelt1Pick.BASE_NO), $IPO_MODE = SIPO_MODE(FFeedBelt1Pick.IPO_FRAME), $LOAD = SLOAD(FFeedBelt1Pick.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT3), $APO = SAPO_PTP(PPDAT3), $GEAR_JERK[1] = SGEAR_JERK(PPDAT3), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
;FOLD SPTP FeedBelt2Pick Vel=100 % PDAT4 Tool[1] Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=FeedBelt2Pick; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT4; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XFeedBelt2Pick WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FFeedBelt2Pick), $BASE = SBASE(FFeedBelt2Pick.BASE_NO), $IPO_MODE = SIPO_MODE(FFeedBelt2Pick.IPO_FRAME), $LOAD = SLOAD(FFeedBelt2Pick.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT4), $APO = SAPO_PTP(PPDAT4), $GEAR_JERK[1] = SGEAR_JERK(PPDAT4), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
;FOLD SPTP NgBeltPlace Vel=100 % PDAT5 Tool[1] Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=NgBeltPlace; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT5; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XNgBeltPlace WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FNgBeltPlace), $BASE = SBASE(FNgBeltPlace.BASE_NO), $IPO_MODE = SIPO_MODE(FNgBeltPlace.IPO_FRAME), $LOAD = SLOAD(FNgBeltPlace.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT5), $APO = SAPO_PTP(PPDAT5), $GEAR_JERK[1] = SGEAR_JERK(PPDAT5), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
;FOLD SPTP WaterBeltPick Vel=100 % PDAT6 Tool[1] Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=WaterBeltPick; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT6; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XWaterBeltPick WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FWaterBeltPick), $BASE = SBASE(FWaterBeltPick.BASE_NO), $IPO_MODE = SIPO_MODE(FWaterBeltPick.IPO_FRAME), $LOAD = SLOAD(FWaterBeltPick.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT6), $APO = SAPO_PTP(PPDAT6), $GEAR_JERK[1] = SGEAR_JERK(PPDAT6), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
;FOLD SPTP ReFeedBeltPick Vel=100 % PDAT7 Tool[1] Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=ReFeedBeltPick; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT7; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XReFeedBeltPick WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FReFeedBeltPick), $BASE = SBASE(FReFeedBeltPick.BASE_NO), $IPO_MODE = SIPO_MODE(FReFeedBeltPick.IPO_FRAME), $LOAD = SLOAD(FReFeedBeltPick.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT7), $APO = SAPO_PTP(PPDAT7), $GEAR_JERK[1] = SGEAR_JERK(PPDAT7), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
|
||||
END
|
||||
835
KUKA/KRC/R1/System/$config.dat
Normal file
835
KUKA/KRC/R1/System/$config.dat
Normal file
@@ -0,0 +1,835 @@
|
||||
&ACCESS RV$1
|
||||
DEFDAT $CONFIG
|
||||
;FOLD BASISTECH GLOBALS
|
||||
;==================================
|
||||
; Default parameters for movement
|
||||
; These values shouldn't be changed
|
||||
;==================================
|
||||
|
||||
;----------------------------------
|
||||
; general MOVEMENT - parameters:
|
||||
;----------------------------------
|
||||
|
||||
INT DEF_OV_PRO=100
|
||||
INT DEF_ADVANCE=3
|
||||
|
||||
; PTP - MOVEMENTS
|
||||
;----------------------------------
|
||||
INT DEF_VEL_PTP=100 ; ptp velocity [%]
|
||||
INT DEF_ACC_PTP=50 ; ptp acceleration [%]
|
||||
|
||||
; CP - MOVEMENTS
|
||||
;----------------------------------
|
||||
DECL CIRC_TYPE DEF_CIRC_TYP=#BASE
|
||||
DECL JERK_STRUC DEF_JERK_STRUC={CP 500.000,ORI 50000.0,AX {A1 1000.00,A2 1000.00,A3 1000.00,A4 1000.00,A5 1000.00,A6 1000.00,E1 1000.00,E2 1000.00,E3 1000.00,E4 1000.00,E5 1000.00,E6 1000.00}} ; jerk value for the spline. CP: [m/Sec3], ORI: [[GRAD/Sec3], AX: [[GRAD/Sec3] (rotatory) resp. [m/Sec3] (linear)
|
||||
REAL DEF_GEAR_JERK=100.000 ; gear jerk of axes [%]
|
||||
REAL DEF_VEL_CP=2.00000 ; path velocity [M/SEC]
|
||||
REAL DEF_VEL_ORI1=200.000 ; swivel velocity [GRAD/Sec]
|
||||
REAL DEF_VEL_ORI2=200.000 ; rotation velocity [GRAD/Sec]
|
||||
REAL DEF_VEL_ORIS=200.000 ; spline swivel velocity [GRAD/Sec]
|
||||
REAL DEF_ACC_CP=2.30000 ; path acceleration [m/Sec2]
|
||||
REAL DEF_ACC_ORI1=100.000 ; swivel acceleration [GRAD/Sec2]
|
||||
REAL DEF_ACC_ORI2=100.000 ; rotation acceleration [GRAD/Sec2]
|
||||
REAL DEF_ACC_ORIS=200.000 ; spline swivel acceleration [GRAD/Sec2]
|
||||
REAL DEF_VEL_FACT=1.00000
|
||||
REAL DEF_ACC_SPTP=100.000 ; ptp spline acceleration [%]
|
||||
|
||||
; APO - parameters
|
||||
;--------------------------------
|
||||
INT DEF_APO_CPTP=50 ; PTP-Approximation [%]
|
||||
INT DEF_APO_CVEL=100 ; Speed-Approximation [%]
|
||||
REAL DEF_APO_CDIS=3.00000 ; Distance-Approximation [mm]
|
||||
REAL DEF_APO_CORI=5.00000 ; Orientation-Approximation [Grad]
|
||||
REAL DEF_APO_CORIS=80.0000 ; spline Orientation-Approximation [Grad]
|
||||
|
||||
;==================================
|
||||
; Structures:
|
||||
;==================================
|
||||
ENUM BAS_COMMAND INITMOV,ACC_CP,ACC_PTP,VEL_CP,VEL_PTP,ACC_GLUE,TOOL,BASE,EX_BASE,PTP_DAT,CP_DAT,OUT_SYNC,OUT_ASYNC,GROUP,FRAMES,PTP_PARAMS,CP_PARAMS
|
||||
ENUM OUT_MODETYPE TRIGGER_,CONT_,STOP_
|
||||
ENUM IPO_M_T NONE,TCP,BASE
|
||||
ENUM APO_MODE_T CPTP,CDIS
|
||||
ENUM LDD_MODE_T NONE,CAD,T1,T2,AUT,EX,MANUAL
|
||||
ENUM LDD_RESULT_T NONE,APP,STATOVL,DYNOVL,CTCHCK,OVL,APPSLOOR,SLOOR
|
||||
STRUC DIG_OUT_TYPE INT FIRST_BIT,LENGTH,PARITY,CODING
|
||||
STRUC CTRL_IN_T INT IN_NR,CHAR NAME_NAT[20]
|
||||
STRUC CTRL_OUT_T INT OUT_NR,BOOL INI,CHAR NAME_NAT[20]
|
||||
STRUC FCT_OUT_T INT NO,REAL PULS_TIME,BOOL STATE
|
||||
STRUC FCT_IN_T INT NO,BOOL STATE
|
||||
STRUC PDAT REAL VEL,ACC,APO_DIST,APO_MODE_T APO_MODE,REAL GEAR_JERK,INT EXAX_IGN
|
||||
STRUC LDAT REAL VEL,ACC,APO_DIST,APO_FAC,AXIS_VEL,AXIS_ACC,ORI_TYPE ORI_TYP,CIRC_TYPE CIRC_TYP,REAL JERK_FAC,GEAR_JERK,INT EXAX_IGN,CIRC_MODE CB
|
||||
STRUC FDAT INT TOOL_NO,BASE_NO,IPO_MODE IPO_FRAME,CHAR POINT2[24],BOOL TQ_STATE
|
||||
STRUC ODAT INT OUT_NO,BOOL STATE,REAL PULSE_TIME,OUT_MODETYPE OUT_MODE,REAL TIME_DELAY,OFFSET
|
||||
STRUC BASIS_SUGG_T CHAR POINT1[24],POINT2[24],CP_PARAMS[24],PTP_PARAMS[24],CONT[24],CP_VEL[24],PTP_VEL[24],SYNC_PARAMS[24],SPL_NAME[24],A_PARAMS[24],PC_SYNCSTRING[24],GL_SYNCSTRING[24]
|
||||
STRUC HDAT REAL HT_START,HT_DEST,APO_START,APO_DEST,ACC_START,ACC_DEST,VEL_START,VEL_DEST
|
||||
|
||||
STRUC OUT_SUGG_T CHAR PARAMS[24]
|
||||
STRUC MACHINE_DEF_T CHAR NAME[40],INT COOP_KRC_INDEX,CHAR PARENT[40],FRAME ROOT,ESYS MECH_TYPE,CHAR GEOMETRY[255]
|
||||
STRUC MACHINE_TOOL_T INT MACH_DEF_INDEX,CHAR PARENT[40],CHAR GEOMETRY[255]
|
||||
STRUC MACHINE_FRAME_T INT MACH_DEF_INDEX,CHAR PARENT[40],CHAR GEOMETRY[255]
|
||||
|
||||
STRUC TRIGGER_PARA INT TriggerPath,BOOL TriggerOnStart,INT TriggerDelay,CHAR TriggerTask[40]
|
||||
STRUC CONSTVEL_PARA INT ConstVelTyp,INT ConstVelPath,BOOL ConstVelOnStart
|
||||
STRUC CONDSTOP_PARA INT CondStopPath,BOOL CondStopOnStart,CHAR StopCondition[40]
|
||||
STRUC ADAT TRIGGER_PARA TriggerPara,CONSTVEL_PARA ConstVelPara,CONDSTOP_PARA CondStopPara
|
||||
|
||||
STRUC MODULEPARAM_T CHAR PARAMS[2000]
|
||||
STRUC TRACECACHE_T CHAR NAME[64],INT ACT_ITER,INT MAX_ITER
|
||||
|
||||
;FOLD OLD TORQUE MONITORING - Do not remove! Needed to prevent syntax errors in old user modules!
|
||||
STRUC TM_SUGG_T CHAR TM_ID[24]
|
||||
STRUC TQM_TQDAT_T INT T11,T12,T13,T14,T15,T16,T21,T22,T23,T24,T25,T26,K1,K2,K3,K4,K5,K6,O1,O2,ID,OVM,REAL TMF
|
||||
;ENDFOLD
|
||||
;==================================
|
||||
; External declarations:
|
||||
;==================================
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
EXT IR_STOPM ( )
|
||||
|
||||
;====================
|
||||
; Signal declarations
|
||||
; Do not change !!!!!
|
||||
;====================
|
||||
SIGNAL CHANNEL_1 $ANOUT[1]
|
||||
SIGNAL CHANNEL_2 $ANOUT[2]
|
||||
SIGNAL CHANNEL_3 $ANOUT[3]
|
||||
SIGNAL CHANNEL_4 $ANOUT[4]
|
||||
SIGNAL CHANNEL_5 $ANOUT[5]
|
||||
SIGNAL CHANNEL_6 $ANOUT[6]
|
||||
SIGNAL CHANNEL_7 $ANOUT[7]
|
||||
SIGNAL CHANNEL_8 $ANOUT[8]
|
||||
SIGNAL CHANNEL_9 $ANOUT[9]
|
||||
SIGNAL CHANNEL_10 $ANOUT[10]
|
||||
SIGNAL CHANNEL_11 $ANOUT[11]
|
||||
SIGNAL CHANNEL_12 $ANOUT[12]
|
||||
SIGNAL CHANNEL_13 $ANOUT[13]
|
||||
SIGNAL CHANNEL_14 $ANOUT[14]
|
||||
SIGNAL CHANNEL_15 $ANOUT[15]
|
||||
SIGNAL CHANNEL_16 $ANOUT[16]
|
||||
SIGNAL CHANNEL_17 $ANOUT[17]
|
||||
SIGNAL CHANNEL_18 $ANOUT[18]
|
||||
SIGNAL CHANNEL_19 $ANOUT[19]
|
||||
SIGNAL CHANNEL_20 $ANOUT[20]
|
||||
SIGNAL CHANNEL_21 $ANOUT[21]
|
||||
SIGNAL CHANNEL_22 $ANOUT[22]
|
||||
SIGNAL CHANNEL_23 $ANOUT[23]
|
||||
SIGNAL CHANNEL_24 $ANOUT[24]
|
||||
SIGNAL CHANNEL_25 $ANOUT[25]
|
||||
SIGNAL CHANNEL_26 $ANOUT[26]
|
||||
SIGNAL CHANNEL_27 $ANOUT[27]
|
||||
SIGNAL CHANNEL_28 $ANOUT[28]
|
||||
SIGNAL CHANNEL_29 $ANOUT[29]
|
||||
SIGNAL CHANNEL_30 $ANOUT[30]
|
||||
SIGNAL CHANNEL_31 $ANOUT[31]
|
||||
SIGNAL CHANNEL_32 $ANOUT[32]
|
||||
|
||||
;==================================
|
||||
; ID external user log-on:
|
||||
;==================================
|
||||
SIGNAL ExtUserID $IN[1026] TO $IN[1026]
|
||||
SIGNAL ExtUserIDWatchDog $IN[1026]
|
||||
|
||||
;==================================
|
||||
; Variables:
|
||||
;==================================
|
||||
DECL PDAT PDEFAULT={VEL 100.000,ACC 100.000,APO_DIST 100.000,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
DECL LDAT LDEFAULT={VEL 2.00000,ACC 100.000,APO_DIST 100.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
DECL LDAT CDEFAULT={CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL FDAT FDEFAULT={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " ",TQ_STATE FALSE}
|
||||
DECL FDAT FHOME={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " ",TQ_STATE FALSE}
|
||||
DECL ODAT ODEFAULT={OUT_NO 1,STATE TRUE,PULSE_TIME 0.0,OUT_MODE #STOP_,TIME_DELAY 0.0,OFFSET 0.0}
|
||||
DECL HDAT HDEFAULT={HT_START 250.000,HT_DEST 250.000,APO_START 200.000,APO_DEST 200.000,ACC_START 100.000,ACC_DEST 100.000,VEL_START 2.00000,VEL_DEST 2.00000}
|
||||
|
||||
DECL ADAT TDEFAULT={TriggerPara {TriggerPath 0,TriggerOnStart FALSE,TriggerDelay 0,TriggerTask[] " "}}
|
||||
DECL ADAT CVDEFAULT={ConstVelPara {ConstVelTyp 0,ConstVelPath 0,ConstVelOnStart FALSE}}
|
||||
DECL ADAT CSDEFAULT={CondStopPara {CondStopPath 0,CondStopOnStart FALSE,StopCondition[] " "}}
|
||||
|
||||
DECL PDAT PDAT_ACT
|
||||
DECL LDAT LDAT_ACT
|
||||
DECL FDAT FDAT_ACT
|
||||
DECL ODAT ODAT_ACT
|
||||
DECL INT ACT_FILTER
|
||||
DECL INT ACT_DELAY
|
||||
DECL INT ACT_DISTANCE
|
||||
|
||||
DECL CHAR SPL_NAME[24]
|
||||
DECL MSGBUF_T TouchUpCheckMsgBuffer[100]
|
||||
|
||||
;GROUP-Definitions
|
||||
;----------------------------------
|
||||
INT COMPL_GROUP='B0001'
|
||||
|
||||
INT DEF_GROUP[10]
|
||||
DEF_GROUP[1]='B1111' ; complete
|
||||
DEF_GROUP[2]='B0001' ; robot only
|
||||
DEF_GROUP[3]='B0011' ; robot and track
|
||||
DEF_GROUP[4]='B0111' ; robot, track and ext. axis2
|
||||
DEF_GROUP[5]='B1011' ; robot, track and ext. axis3
|
||||
DEF_GROUP[6]='B1111' ; robot, track and ext. axis2+3
|
||||
DEF_GROUP[7]='B1111' ; complete
|
||||
DEF_GROUP[8]='B1111' ; complete
|
||||
DEF_GROUP[9]='B1111' ; complete
|
||||
DEF_GROUP[10]='B1111' ; complete
|
||||
|
||||
INT $ACT_GROUP='B0001'
|
||||
|
||||
; HOME POSITION
|
||||
;----------------------------------
|
||||
E6AXIS XHOME={A1 -21.6021271,A2 -99.3227234,A3 104.274384,A4 -0.793297172,A5 86.8444748,A6 -6.95475197,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
E6AXIS XHOME1={A1 0.0,A2 -90.0000,A3 90.0000,A4 0.0,A5 0.0,A6 0.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
E6AXIS XHOME2={A1 0.0,A2 -90.0000,A3 90.0000,A4 0.0,A5 0.0,A6 0.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
E6AXIS XHOME3={A1 0.0,A2 -90.0000,A3 90.0000,A4 0.0,A5 0.0,A6 0.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
E6AXIS XHOME4={A1 0.0,A2 -90.0000,A3 90.0000,A4 0.0,A5 0.0,A6 0.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
E6AXIS XHOME5={A1 0.0,A2 -90.0000,A3 90.0000,A4 0.0,A5 0.0,A6 0.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
|
||||
; REFERENCE POINTS
|
||||
;----------------------------------
|
||||
DECL FRAME REF_PT[16]
|
||||
REF_PT[1]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[2]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[3]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[4]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[5]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[6]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[7]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[8]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[9]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[10]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[11]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[12]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[13]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[14]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[15]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
REF_PT[16]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
|
||||
FRAME REF_TOOL={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
|
||||
; TOOL and BASE data
|
||||
;----------------------------------
|
||||
BOOL AUTO_IPO_M=FALSE
|
||||
BOOL STOPM_FLAG=FALSE
|
||||
BOOL TOOL_CORR_ON=FALSE
|
||||
BOOL TOOL_CORR_W_ON=FALSE
|
||||
BOOL BASE_CORR_ON=FALSE
|
||||
BOOL M_BAS_COR_ON=FALSE
|
||||
FRAME TOOL_CORR={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
FRAME TOOL_CORR_W={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
FRAME BASE_CORR={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
FRAME M_BASE_CORR={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
INT COR_TOOL_NO=0
|
||||
|
||||
INT MAX_TOOL=16
|
||||
DECL FRAME TOOL_DATA[16]
|
||||
TOOL_DATA[1]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[2]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[3]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[4]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[5]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[6]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[7]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[8]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[9]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[10]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[11]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[12]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[13]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[14]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[15]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
TOOL_DATA[16]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
|
||||
DECL CHAR TOOL_NAME[16,24]
|
||||
TOOL_NAME[1,]="Tool1"
|
||||
TOOL_NAME[2,]=" "
|
||||
TOOL_NAME[3,]=" "
|
||||
TOOL_NAME[4,]=" "
|
||||
TOOL_NAME[5,]=" "
|
||||
TOOL_NAME[6,]=" "
|
||||
TOOL_NAME[7,]=" "
|
||||
TOOL_NAME[8,]=" "
|
||||
TOOL_NAME[9,]=" "
|
||||
TOOL_NAME[10,]=" "
|
||||
TOOL_NAME[11,]=" "
|
||||
TOOL_NAME[12,]=" "
|
||||
TOOL_NAME[13,]=" "
|
||||
TOOL_NAME[14,]=" "
|
||||
TOOL_NAME[15,]=" "
|
||||
TOOL_NAME[16,]=" "
|
||||
|
||||
INT MAX_LOAD=16
|
||||
DECL LOAD LOAD_DATA[16]
|
||||
LOAD_DATA[1]={M 20.0000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[2]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[3]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[4]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[5]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[6]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[7]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[8]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[9]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[10]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[11]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[12]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[13]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[14]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[15]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
LOAD_DATA[16]={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
|
||||
DECL CHAR LOAD_NAME[16,24]
|
||||
LOAD_NAME[1,]=" "
|
||||
LOAD_NAME[2,]=" "
|
||||
LOAD_NAME[3,]=" "
|
||||
LOAD_NAME[4,]=" "
|
||||
LOAD_NAME[5,]=" "
|
||||
LOAD_NAME[6,]=" "
|
||||
LOAD_NAME[7,]=" "
|
||||
LOAD_NAME[8,]=" "
|
||||
LOAD_NAME[9,]=" "
|
||||
LOAD_NAME[10,]=" "
|
||||
LOAD_NAME[11,]=" "
|
||||
LOAD_NAME[12,]=" "
|
||||
LOAD_NAME[13,]=" "
|
||||
LOAD_NAME[14,]=" "
|
||||
LOAD_NAME[15,]=" "
|
||||
LOAD_NAME[16,]=" "
|
||||
|
||||
DECL LDD_MODE_T LOAD_MODE[16]
|
||||
LOAD_MODE[1]=#MANUAL
|
||||
LOAD_MODE[2]=#NONE
|
||||
LOAD_MODE[3]=#NONE
|
||||
LOAD_MODE[4]=#NONE
|
||||
LOAD_MODE[5]=#NONE
|
||||
LOAD_MODE[6]=#NONE
|
||||
LOAD_MODE[7]=#NONE
|
||||
LOAD_MODE[8]=#NONE
|
||||
LOAD_MODE[9]=#NONE
|
||||
LOAD_MODE[10]=#NONE
|
||||
LOAD_MODE[11]=#NONE
|
||||
LOAD_MODE[12]=#NONE
|
||||
LOAD_MODE[13]=#NONE
|
||||
LOAD_MODE[14]=#NONE
|
||||
LOAD_MODE[15]=#NONE
|
||||
LOAD_MODE[16]=#NONE
|
||||
|
||||
DECL LDD_RESULT_T LOAD_RESULT[16]
|
||||
LOAD_RESULT[1]=#NONE
|
||||
LOAD_RESULT[2]=#NONE
|
||||
LOAD_RESULT[3]=#NONE
|
||||
LOAD_RESULT[4]=#NONE
|
||||
LOAD_RESULT[5]=#NONE
|
||||
LOAD_RESULT[6]=#NONE
|
||||
LOAD_RESULT[7]=#NONE
|
||||
LOAD_RESULT[8]=#NONE
|
||||
LOAD_RESULT[9]=#NONE
|
||||
LOAD_RESULT[10]=#NONE
|
||||
LOAD_RESULT[11]=#NONE
|
||||
LOAD_RESULT[12]=#NONE
|
||||
LOAD_RESULT[13]=#NONE
|
||||
LOAD_RESULT[14]=#NONE
|
||||
LOAD_RESULT[15]=#NONE
|
||||
LOAD_RESULT[16]=#NONE
|
||||
|
||||
DECL IPO_M_T TOOL_TYPE[16]
|
||||
TOOL_TYPE[1]=#BASE
|
||||
TOOL_TYPE[2]=#NONE
|
||||
TOOL_TYPE[3]=#NONE
|
||||
TOOL_TYPE[4]=#NONE
|
||||
TOOL_TYPE[5]=#NONE
|
||||
TOOL_TYPE[6]=#NONE
|
||||
TOOL_TYPE[7]=#NONE
|
||||
TOOL_TYPE[8]=#NONE
|
||||
TOOL_TYPE[9]=#NONE
|
||||
TOOL_TYPE[10]=#NONE
|
||||
TOOL_TYPE[11]=#NONE
|
||||
TOOL_TYPE[12]=#NONE
|
||||
TOOL_TYPE[13]=#NONE
|
||||
TOOL_TYPE[14]=#NONE
|
||||
TOOL_TYPE[15]=#NONE
|
||||
TOOL_TYPE[16]=#NONE
|
||||
|
||||
DECL LOAD LOAD_A1_DATA={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
DECL LOAD LOAD_A2_DATA={M -1.00000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
DECL LOAD LOAD_A3_DATA={M 50.0000,CM {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},J {X 0.0,Y 0.0,Z 0.0}}
|
||||
|
||||
INT MAX_BASE=32
|
||||
DECL FRAME BASE_DATA[32]
|
||||
BASE_DATA[1]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[2]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[3]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[4]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[5]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[6]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[7]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[8]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[9]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[10]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[11]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[12]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[13]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[14]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[15]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[16]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[17]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[18]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[19]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[20]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[21]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[22]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[23]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[24]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[25]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[26]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[27]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[28]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[29]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[30]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[31]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
BASE_DATA[32]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}
|
||||
|
||||
DECL CHAR BASE_NAME[32,24]
|
||||
BASE_NAME[1,]=" "
|
||||
BASE_NAME[2,]=" "
|
||||
BASE_NAME[3,]=" "
|
||||
BASE_NAME[4,]=" "
|
||||
BASE_NAME[5,]=" "
|
||||
BASE_NAME[6,]=" "
|
||||
BASE_NAME[7,]=" "
|
||||
BASE_NAME[8,]=" "
|
||||
BASE_NAME[9,]=" "
|
||||
BASE_NAME[10,]=" "
|
||||
BASE_NAME[11,]=" "
|
||||
BASE_NAME[12,]=" "
|
||||
BASE_NAME[13,]=" "
|
||||
BASE_NAME[14,]=" "
|
||||
BASE_NAME[15,]=" "
|
||||
BASE_NAME[16,]=" "
|
||||
BASE_NAME[17,]=" "
|
||||
BASE_NAME[18,]=" "
|
||||
BASE_NAME[19,]=" "
|
||||
BASE_NAME[20,]=" "
|
||||
BASE_NAME[21,]=" "
|
||||
BASE_NAME[22,]=" "
|
||||
BASE_NAME[23,]=" "
|
||||
BASE_NAME[24,]=" "
|
||||
BASE_NAME[25,]=" "
|
||||
BASE_NAME[26,]=" "
|
||||
BASE_NAME[27,]=" "
|
||||
BASE_NAME[28,]=" "
|
||||
BASE_NAME[29,]=" "
|
||||
BASE_NAME[30,]=" "
|
||||
BASE_NAME[31,]=" "
|
||||
BASE_NAME[32,]=" "
|
||||
|
||||
DECL IPO_M_T BASE_TYPE[32]
|
||||
BASE_TYPE[1]=#NONE
|
||||
BASE_TYPE[2]=#NONE
|
||||
BASE_TYPE[3]=#NONE
|
||||
BASE_TYPE[4]=#NONE
|
||||
BASE_TYPE[5]=#NONE
|
||||
BASE_TYPE[6]=#NONE
|
||||
BASE_TYPE[7]=#NONE
|
||||
BASE_TYPE[8]=#NONE
|
||||
BASE_TYPE[9]=#NONE
|
||||
BASE_TYPE[10]=#NONE
|
||||
BASE_TYPE[11]=#NONE
|
||||
BASE_TYPE[12]=#NONE
|
||||
BASE_TYPE[13]=#NONE
|
||||
BASE_TYPE[14]=#NONE
|
||||
BASE_TYPE[15]=#NONE
|
||||
BASE_TYPE[16]=#NONE
|
||||
BASE_TYPE[17]=#NONE
|
||||
BASE_TYPE[18]=#NONE
|
||||
BASE_TYPE[19]=#NONE
|
||||
BASE_TYPE[20]=#NONE
|
||||
BASE_TYPE[21]=#NONE
|
||||
BASE_TYPE[22]=#NONE
|
||||
BASE_TYPE[23]=#NONE
|
||||
BASE_TYPE[24]=#NONE
|
||||
BASE_TYPE[25]=#NONE
|
||||
BASE_TYPE[26]=#NONE
|
||||
BASE_TYPE[27]=#NONE
|
||||
BASE_TYPE[28]=#NONE
|
||||
BASE_TYPE[29]=#NONE
|
||||
BASE_TYPE[30]=#NONE
|
||||
BASE_TYPE[31]=#NONE
|
||||
BASE_TYPE[32]=#NONE
|
||||
|
||||
;******************************************
|
||||
; Variables for CELL DEFINITION
|
||||
;******************************************
|
||||
|
||||
INT MAX_MACHINES=16
|
||||
DECL MACHINE_DEF_T MACHINE_DEF[16]
|
||||
MACHINE_DEF[1]={NAME[] "KR 120 R3100-2",COOP_KRC_INDEX 1,PARENT[] "WORLD",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #ROBOT,GEOMETRY[] "ObjectId = 1232261811"}
|
||||
MACHINE_DEF[2]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
MACHINE_DEF[3]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
MACHINE_DEF[4]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
MACHINE_DEF[5]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
MACHINE_DEF[6]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
MACHINE_DEF[7]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
MACHINE_DEF[8]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
MACHINE_DEF[9]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
MACHINE_DEF[10]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
MACHINE_DEF[11]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
MACHINE_DEF[12]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
MACHINE_DEF[13]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
MACHINE_DEF[14]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
MACHINE_DEF[15]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
MACHINE_DEF[16]={NAME[] " ",COOP_KRC_INDEX 0,PARENT[] " ",ROOT {X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0},MECH_TYPE #NONE,GEOMETRY[] " "}
|
||||
|
||||
DECL MACHINE_TOOL_T MACHINE_TOOL_DAT[16]
|
||||
MACHINE_TOOL_DAT[1]={MACH_DEF_INDEX 1,PARENT[] "KR 120 R3100-2",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[2]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[3]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[4]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[5]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[6]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[7]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[8]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[9]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[10]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[11]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[12]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[13]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[14]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[15]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_TOOL_DAT[16]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
|
||||
DECL MACHINE_FRAME_T MACHINE_FRAME_DAT[32]
|
||||
MACHINE_FRAME_DAT[1]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[2]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[3]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[4]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[5]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[6]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[7]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[8]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[9]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[10]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[11]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[12]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[13]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[14]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[15]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[16]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[17]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[18]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[19]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[20]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[21]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[22]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[23]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[24]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[25]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[26]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[27]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[28]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[29]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[30]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[31]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
MACHINE_FRAME_DAT[32]={MACH_DEF_INDEX 0,PARENT[] " ",GEOMETRY[] " "}
|
||||
|
||||
;******************************************
|
||||
; Variables for axis CALIBRATING
|
||||
;******************************************
|
||||
DECL INT CAL_AXIS
|
||||
BOOL CONST_SPEED
|
||||
|
||||
;******************************************
|
||||
; Variables for added TechPackages
|
||||
;******************************************
|
||||
INT POWER
|
||||
|
||||
;******************************************
|
||||
; General purpose return value of functions
|
||||
; like INVERSE, FORWARD
|
||||
;******************************************
|
||||
INT ERR_STATUS=-1
|
||||
|
||||
;******************************************
|
||||
; Variables for TOUCHUP user limit
|
||||
;******************************************
|
||||
BOOL UM_TOUCHUP=FALSE
|
||||
REAL CARTESIAN_TOL=5.00000
|
||||
REAL ROTATION_ANGLE=10.0000
|
||||
REAL EXTAX_TOL[6]
|
||||
EXTAX_TOL[1]=10.0000
|
||||
EXTAX_TOL[2]=10.0000
|
||||
EXTAX_TOL[3]=10.0000
|
||||
EXTAX_TOL[4]=10.0000
|
||||
EXTAX_TOL[5]=10.0000
|
||||
EXTAX_TOL[6]=10.0000
|
||||
|
||||
;******************************************
|
||||
; Variables for Displaying and Konfiguring
|
||||
;******************************************
|
||||
DECL INT I[20]
|
||||
|
||||
I[1]=0
|
||||
I[2]=0
|
||||
I[3]=0
|
||||
I[4]=0
|
||||
I[5]=0
|
||||
I[6]=0
|
||||
I[7]=0
|
||||
I[8]=0
|
||||
I[9]=0
|
||||
I[10]=0
|
||||
I[11]=0
|
||||
I[12]=0
|
||||
I[13]=0
|
||||
I[14]=0
|
||||
I[15]=0
|
||||
I[16]=0
|
||||
I[17]=0
|
||||
I[18]=0
|
||||
I[19]=0
|
||||
I[20]=0
|
||||
|
||||
;******************************************
|
||||
; Variables for Tracing
|
||||
;******************************************
|
||||
DECL TRACECACHE_T TRACE_CACHE[10]
|
||||
TRACE_CACHE[1]={NAME[] " ",ACT_ITER 0,MAX_ITER 1}
|
||||
TRACE_CACHE[2]={NAME[] " ",ACT_ITER 0,MAX_ITER 1}
|
||||
TRACE_CACHE[3]={NAME[] " ",ACT_ITER 0,MAX_ITER 1}
|
||||
TRACE_CACHE[4]={NAME[] " ",ACT_ITER 0,MAX_ITER 1}
|
||||
TRACE_CACHE[5]={NAME[] " ",ACT_ITER 0,MAX_ITER 1}
|
||||
TRACE_CACHE[6]={NAME[] " ",ACT_ITER 0,MAX_ITER 1}
|
||||
TRACE_CACHE[7]={NAME[] " ",ACT_ITER 0,MAX_ITER 1}
|
||||
TRACE_CACHE[8]={NAME[] " ",ACT_ITER 0,MAX_ITER 1}
|
||||
TRACE_CACHE[9]={NAME[] " ",ACT_ITER 0,MAX_ITER 1}
|
||||
TRACE_CACHE[10]={NAME[] " ",ACT_ITER 0,MAX_ITER 1}
|
||||
|
||||
DECL INT TraceOverflowIndex=1
|
||||
|
||||
;******************************************
|
||||
; all for InterBus Mapping on optional segments
|
||||
;******************************************
|
||||
|
||||
DECL INT IBUS_SEGMENT[16]
|
||||
IBUS_SEGMENT[1]=0
|
||||
IBUS_SEGMENT[2]=0
|
||||
IBUS_SEGMENT[3]=0
|
||||
IBUS_SEGMENT[4]=0
|
||||
IBUS_SEGMENT[5]=0
|
||||
IBUS_SEGMENT[6]=0
|
||||
IBUS_SEGMENT[7]=0
|
||||
IBUS_SEGMENT[8]=0
|
||||
IBUS_SEGMENT[9]=0
|
||||
IBUS_SEGMENT[10]=0
|
||||
IBUS_SEGMENT[11]=0
|
||||
IBUS_SEGMENT[12]=0
|
||||
IBUS_SEGMENT[13]=0
|
||||
IBUS_SEGMENT[14]=0
|
||||
IBUS_SEGMENT[15]=0
|
||||
IBUS_SEGMENT[16]=0
|
||||
|
||||
;******************************************
|
||||
; Reduction factors
|
||||
;******************************************
|
||||
DECL REAL RedVelExAx[6]
|
||||
RedVelExAx[1]=100.000
|
||||
RedVelExAx[2]=100.000
|
||||
RedVelExAx[3]=100.000
|
||||
RedVelExAx[4]=100.000
|
||||
RedVelExAx[5]=100.000
|
||||
RedVelExAx[6]=100.000
|
||||
DECL REAL RedAccExAx[6]
|
||||
RedAccExAx[1]=100.000
|
||||
RedAccExAx[2]=100.000
|
||||
RedAccExAx[3]=100.000
|
||||
RedAccExAx[4]=100.000
|
||||
RedAccExAx[5]=100.000
|
||||
RedAccExAx[6]=100.000
|
||||
|
||||
;******************************************
|
||||
; Joint offset
|
||||
;******************************************
|
||||
STRUC JOINT_DEVICE_T CHAR NAME[39],REAL OFFSET,INT AXIS_INDEX
|
||||
DECL JOINT_DEVICE_T JOINT_DEVICE[32]
|
||||
JOINT_DEVICE[1]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[2]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[3]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[4]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[5]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[6]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[7]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[8]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[9]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[10]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[11]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[12]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[13]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[14]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[15]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[16]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[17]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[18]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[19]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[20]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[21]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[22]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[23]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[24]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[25]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[26]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[27]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[28]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[29]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[30]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[31]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
JOINT_DEVICE[32]={NAME[] " ",OFFSET 0.0,AXIS_INDEX -1}
|
||||
|
||||
DECL INT JOINT_DEVICE_INDEX[32]
|
||||
JOINT_DEVICE_INDEX[1]=-1
|
||||
JOINT_DEVICE_INDEX[2]=-1
|
||||
JOINT_DEVICE_INDEX[3]=-1
|
||||
JOINT_DEVICE_INDEX[4]=-1
|
||||
JOINT_DEVICE_INDEX[5]=-1
|
||||
JOINT_DEVICE_INDEX[6]=-1
|
||||
JOINT_DEVICE_INDEX[7]=-1
|
||||
JOINT_DEVICE_INDEX[8]=-1
|
||||
JOINT_DEVICE_INDEX[9]=-1
|
||||
JOINT_DEVICE_INDEX[10]=-1
|
||||
JOINT_DEVICE_INDEX[11]=-1
|
||||
JOINT_DEVICE_INDEX[12]=-1
|
||||
JOINT_DEVICE_INDEX[13]=-1
|
||||
JOINT_DEVICE_INDEX[14]=-1
|
||||
JOINT_DEVICE_INDEX[15]=-1
|
||||
JOINT_DEVICE_INDEX[16]=-1
|
||||
JOINT_DEVICE_INDEX[17]=-1
|
||||
JOINT_DEVICE_INDEX[18]=-1
|
||||
JOINT_DEVICE_INDEX[19]=-1
|
||||
JOINT_DEVICE_INDEX[20]=-1
|
||||
JOINT_DEVICE_INDEX[21]=-1
|
||||
JOINT_DEVICE_INDEX[22]=-1
|
||||
JOINT_DEVICE_INDEX[23]=-1
|
||||
JOINT_DEVICE_INDEX[24]=-1
|
||||
JOINT_DEVICE_INDEX[25]=-1
|
||||
JOINT_DEVICE_INDEX[26]=-1
|
||||
JOINT_DEVICE_INDEX[27]=-1
|
||||
JOINT_DEVICE_INDEX[28]=-1
|
||||
JOINT_DEVICE_INDEX[29]=-1
|
||||
JOINT_DEVICE_INDEX[30]=-1
|
||||
JOINT_DEVICE_INDEX[31]=-1
|
||||
JOINT_DEVICE_INDEX[32]=-1
|
||||
BOOL bJointOffsetHasBeenSet=FALSE
|
||||
INT iLastAxisNo=0
|
||||
|
||||
ENUM TIMER_ACTIONTYPE TimerStart,TimerStop,TimeOut
|
||||
BOOL EasyTeachKeepOriWarning=FALSE
|
||||
INT EasyTeachKeepOriHandle=0
|
||||
;ENDFOLD (BASISTECH GLOBALS)
|
||||
;FOLD AUTOEXT GLOBALS
|
||||
;==================================
|
||||
; Structures:
|
||||
;==================================
|
||||
ENUM FUNCT_TYPE PGNO_GET,PGNO_ACKN,PGNO_FAULT
|
||||
ENUM P00_COMMAND INIT_EXT,EXT_PGNO,CHK_HOME,EXT_ERR
|
||||
|
||||
STRUC SPS_PROG_TYPE INT PROG_NR,CHAR PROG_NAME[12]
|
||||
;==================================
|
||||
; External declarations:
|
||||
;==================================
|
||||
EXT P00 (P00_COMMAND :IN,FUNCT_TYPE :IN,CHAR [] :OUT,INT :IN )
|
||||
;External declaration for Submit controlled AutoExt
|
||||
EXT P00_SUBM (P00_COMMAND :IN,FUNCT_TYPE :IN )
|
||||
|
||||
;==================================
|
||||
; Variables:
|
||||
;==================================
|
||||
; Variables for internal
|
||||
; Communication:
|
||||
;----------------------------------
|
||||
BOOL ERROR_FLAG
|
||||
BOOL CHECK_HOME=TRUE
|
||||
BOOL PROG_CONTROL=FALSE
|
||||
DECL CHAR PRO_NAME1_L[8]
|
||||
PRO_NAME1_L[]=" "
|
||||
DECL CHAR PRO_NAME1_A[8]
|
||||
PRO_NAME1_A[]=" "
|
||||
|
||||
INT PGNO=0 ;copy of ext. pgno
|
||||
INT PGNO_ERROR=0 ;transmission error
|
||||
INT PGNO_TYPE=1 ;coding type of ext. pgno
|
||||
INT REFLECT_PROG_NR=0 ; enable mirroring of program number inputs (1=enabled, 0=disabled)
|
||||
|
||||
; Variables for External
|
||||
; Communication: I/O-Interface
|
||||
;----------------------------------
|
||||
INT PGNO_FBIT=9 ;first bit of ext. pgno input $IN[]
|
||||
INT PGNO_FBIT_REFL=999 ;first bit of ext. pgno reflection output $OUT[]
|
||||
INT PGNO_LENGTH=8 ;length of ext. pgno (max. 16)
|
||||
INT PGNO_PARITY=1 ;parity bit of ext. pgno
|
||||
INT PGNO_REQ=6 ;request ext. pgno input
|
||||
INT PGNO_VALID=2 ;validate ext. pgno input
|
||||
INT APPL_RUN=7 ;application program is running output
|
||||
INT ERR_TO_PLC=35 ;error output to PLC
|
||||
INT P01_STEP
|
||||
INT CHK_STEP
|
||||
INT PGNO_FLAG
|
||||
|
||||
; Table for assign SPS program number to program name
|
||||
INT MAX_SPS_PROG=12
|
||||
DECL SPS_PROG_TYPE SPS_PROG[12]
|
||||
SPS_PROG[1]={PROG_NR 1,PROG_NAME[] "HP01() "}
|
||||
SPS_PROG[2]={PROG_NR 2,PROG_NAME[] "HP02() "}
|
||||
SPS_PROG[3]={PROG_NR 3,PROG_NAME[] "HP03() "}
|
||||
SPS_PROG[4]={PROG_NR 4,PROG_NAME[] "HP04() "}
|
||||
SPS_PROG[5]={PROG_NR 5,PROG_NAME[] "HP05() "}
|
||||
SPS_PROG[6]={PROG_NR 6,PROG_NAME[] "HP06() "}
|
||||
SPS_PROG[7]={PROG_NR 7,PROG_NAME[] "HP07() "}
|
||||
SPS_PROG[8]={PROG_NR 8,PROG_NAME[] "HP08() "}
|
||||
SPS_PROG[9]={PROG_NR 9,PROG_NAME[] "HP09() "}
|
||||
SPS_PROG[10]={PROG_NR 10,PROG_NAME[] "HP10() "}
|
||||
SPS_PROG[11]={PROG_NR 62,PROG_NAME[] "HP62() "}
|
||||
SPS_PROG[12]={PROG_NR 63,PROG_NAME[] "HP63() "}
|
||||
DECL CHAR TMPNAME[128]
|
||||
TMPNAME[]=" "
|
||||
;ENDFOLD (AUTOEXT GLOBALS)
|
||||
;FOLD BackupManagerConfig
|
||||
BOOL BM_ENABLED
|
||||
INT BM_OUTPUTVALUE
|
||||
SIGNAL BM_OutputSignal $OUT[4095] TO $OUT[4096]
|
||||
SIGNAL BM_InputSignal $IN[1026] TO $IN[1026]
|
||||
;ENDFOLD BackupManagerConfig
|
||||
;FOLD Conveyor
|
||||
DECL INT CONV_PART_NBR[16]
|
||||
CONV_PART_NBR[1]=0
|
||||
CONV_PART_NBR[2]=0
|
||||
CONV_PART_NBR[3]=0
|
||||
CONV_PART_NBR[4]=0
|
||||
CONV_PART_NBR[5]=0
|
||||
CONV_PART_NBR[6]=0
|
||||
CONV_PART_NBR[7]=0
|
||||
CONV_PART_NBR[8]=0
|
||||
CONV_PART_NBR[9]=0
|
||||
CONV_PART_NBR[10]=0
|
||||
CONV_PART_NBR[11]=0
|
||||
CONV_PART_NBR[12]=0
|
||||
CONV_PART_NBR[13]=0
|
||||
CONV_PART_NBR[14]=0
|
||||
CONV_PART_NBR[15]=0
|
||||
CONV_PART_NBR[16]=0
|
||||
|
||||
ENUM CONV_MODE_TYPE Absolute,Relative
|
||||
DECL CONV_MODE_TYPE ActualConveyorMode=#Relative
|
||||
;ENDFOLD Conveyor
|
||||
;FOLD USER GLOBALS
|
||||
;*******************************************
|
||||
;Make your modifications -ONLY- here
|
||||
;*******************************************
|
||||
;==================================
|
||||
; Userdefined Types
|
||||
;==================================
|
||||
|
||||
;==================================
|
||||
; Userdefined Externals
|
||||
;==================================
|
||||
|
||||
;==================================
|
||||
; Userdefined Variables
|
||||
;==================================
|
||||
|
||||
;ENDFOLD (USER GLOBALS)
|
||||
ENDDAT
|
||||
5
KUKA/KRC/R1/System/Global_Points.dat
Normal file
5
KUKA/KRC/R1/System/Global_Points.dat
Normal file
@@ -0,0 +1,5 @@
|
||||
&ACCESS R
|
||||
&COMMENT global points
|
||||
DEFDAT GLOBAL_POINTS PUBLIC
|
||||
|
||||
ENDDAT
|
||||
12
KUKA/KRC/R1/System/MqttConfig.dat
Normal file
12
KUKA/KRC/R1/System/MqttConfig.dat
Normal file
@@ -0,0 +1,12 @@
|
||||
&ACCESS RV
|
||||
DEFDAT MqttConfig PUBLIC
|
||||
|
||||
; Publisher IP address for KukaConnect data-set configuration.
|
||||
; Should either start with "mqtt://" or "mqtts://".
|
||||
GLOBAL CHAR KUKACONNECT_BROKERIP[100]
|
||||
KUKACONNECT_BROKERIP[]="mqtts://broker-ip:8883"
|
||||
|
||||
; Publisher for KukaConnect data-set only starts if enabled.
|
||||
GLOBAL BOOL KUKACONNECT_ENABLED=FALSE;
|
||||
|
||||
ENDDAT
|
||||
7
KUKA/KRC/R1/System/MsgLib.dat
Normal file
7
KUKA/KRC/R1/System/MsgLib.dat
Normal file
@@ -0,0 +1,7 @@
|
||||
&ACCESS R1
|
||||
&COMMENT Message library
|
||||
DEFDAT MsgLib PUBLIC
|
||||
|
||||
DECL INT lnHandle=0
|
||||
|
||||
ENDDAT
|
||||
753
KUKA/KRC/R1/System/MsgLib.src
Normal file
753
KUKA/KRC/R1/System/MsgLib.src
Normal file
@@ -0,0 +1,753 @@
|
||||
&ACCESS R1
|
||||
&COMMENT Message library
|
||||
DEF MsgLib ( )
|
||||
;**************************************************
|
||||
;Creation Date: 7.12.2007
|
||||
;Change: 23.06.2012 additional properties possible
|
||||
; for logging and advance stop control
|
||||
;**************************************************
|
||||
;FOLD Interfaces and message examples within this fold
|
||||
;----------Global subroutines and functions: -------
|
||||
|
||||
;MsgNotify(sText[]:IN, sModul[]:IN, nNumPar:IN, sTextPar[]:IN, nMsgNr:IN,MsgOpt:IN)
|
||||
;MsgNotifyTextPar(sText[]:IN, sModul[]:IN, nNumPar:IN, sTextPar[]:IN, sTextPar2[]:IN, nMsgNr:IN,MsgOpt:IN)
|
||||
;MsgQuit(sText[]:IN, sModul[]:IN, nNumPar:IN, sTextPar[]:IN, nMsgNr:IN,MsgOpt:IN)
|
||||
;MsgState(nHandle:OUT, sText[]:IN, sModul[]:IN, nNumPar:IN, sTextPar[]:IN, nMsgNr:IN,MsgOpt:IN)
|
||||
;MsgLoop(sText[]:IN,sModul[]:IN)
|
||||
;MsgDialog(nAnswer:OUT,sText[]:IN,sModul[]:IN,sTextPar[]:IN,sDialogSK1[]:IN,sDialogSK2[]:IN,sDialogSK3[]:IN,sDialogSK4[]:IN,sDialogSK5[]:IN,sDialogSK6[]:IN,sDialogSK7[]:IN,NoBrakes:IN, nMsgNr:IN,MsgOpt:IN)
|
||||
|
||||
;----------Explainations for parameters: -----------
|
||||
|
||||
;CHAR sText[] message text or message DB-key (80 chars)
|
||||
;CHAR sModul[] (option) modulname or key (24 char)
|
||||
;INT nNumPar (option)numeric value inserted in sText[] at the position %1
|
||||
;CHAR sTextPar[] (option)text or message DB-key inserted in sText[] at the position %1 (26 char)
|
||||
;MsgOpt (option) Structure KrlMsgOpt_T BOOL VL_Stop,Clear_P_Reset,Log_To_DB
|
||||
; (option) VL_Stop=TRUE => Creates an advance stop | FALSE avoids this behavior
|
||||
; (option) Clear_P_Reset=TRUE (Default) deletes Messages at program reset / cancelled
|
||||
; (option) Log_To_DB=TRUE => entry into logbook => enfluence to system performance
|
||||
|
||||
;----------Examples: -------------------------------
|
||||
|
||||
;MsgNotifyTextPar("Error", "CrossMeld", 0, "Error message 1", "Error message 2", 511)
|
||||
;MsgNotify("this is a notify message")
|
||||
;MsgQuit("this is a quit message", "myMod")
|
||||
;MsgQuit("this is a quit message", "myMod",,,12345)
|
||||
;INT myInt=123
|
||||
;MsgQuit("this is the %1 quit message", "Module", myInt)
|
||||
;MsgNotify("this is a %1 notify message", "Tech", , "asd")
|
||||
;MsgLoop("this is the loop message")
|
||||
;MsgLoop(" "); cancels loop message
|
||||
;MsgDialog(DialogAnswer, "DBKEY" OR "dialog message", "Module", "TextPar for %1 in DBKey", "DialogKey1", "DialogKey2", "DialogKey3",,,,,,12345)
|
||||
;MsgDialog(DialogAnswer, "StartPTP", "CrossMeld", "Achse 3", "YES", "NO", "Cancel")
|
||||
;MsgNotifyTextPar("DBKEY" OR "notify message", "Module", 0 OR >0, "TextPar for %1", "TextPar for %2")
|
||||
;nNumPar = 0: TextPar will be send as %1 %2 nNumPar > 0: nNumPar will be send as %1
|
||||
;ENDFOLD
|
||||
END
|
||||
;***************************
|
||||
;Execution of notify message
|
||||
;***************************
|
||||
GLOBAL DEF MsgNotify(sText[]:IN, sModul[]:IN, nNumPar:IN, sTextPar[]:IN, nMsgNr:IN,MsgOpt:IN)
|
||||
DECL CHAR sText[], sModul[], sTextPar[]
|
||||
DECL KrlMsg_T Msg
|
||||
DECL KrlMsgParType_T MsgParType
|
||||
DECL KrlMsgPar_T MsgPar[3]
|
||||
DECL KrlMsgOpt_T MsgOpt ;Bool-elements: VL_Stop,Clear_P_Reset,Log_To_DB
|
||||
DECL KrlMsgOpt_T DummyMsgOpt
|
||||
DECL State_T State
|
||||
DECL INT count, len, offset, nNumPar, nHandle, nMsgNr
|
||||
|
||||
;Default Values: MsgOpt={ VL_Stop TRUE, Clear_P_Reset TRUE, Log_To_DB False }
|
||||
ON_ERROR_PROCEED
|
||||
DummyMsgOpt=MsgOpt
|
||||
|
||||
IF ($ERR.Number<>0) THEN
|
||||
MsgOpt.VL_Stop=TRUE ;DEFAULT setting TRUE
|
||||
MsgOpt.Clear_P_Reset=TRUE
|
||||
MsgOpt.Log_To_DB=FALSE
|
||||
ERR_CLEAR($ERR)
|
||||
ENDIF
|
||||
|
||||
;Creates default values in case of none availability
|
||||
MsgOpt=CheckOfMsgOpt(MsgOpt)
|
||||
|
||||
Msg.Nr=1
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
Msg.Nr=nMsgNr
|
||||
len=STRLEN(sText[])
|
||||
IF len>0 THEN
|
||||
IF len>80 THEN
|
||||
len=80
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
Msg.Msg_txt[count]=sText[count]
|
||||
ENDFOR
|
||||
ELSE
|
||||
Msg.Msg_txt[]="parameter sText[] is missing"
|
||||
ENDIF
|
||||
len=STRLEN(sModul[])
|
||||
IF len>0 THEN
|
||||
IF len>24 THEN
|
||||
len=24
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
Msg.Modul[count]=sModul[count]
|
||||
ENDFOR
|
||||
ELSE
|
||||
Msg.Modul[]="Appl"
|
||||
ENDIF
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
offset=nNumPar
|
||||
IF $ERR.Number==0 THEN
|
||||
offset=0
|
||||
MsgPar[1].Par_Txt[]=" "
|
||||
SWRITE(MsgPar[1].Par_Txt[], State, Offset, "%d", nNumPar)
|
||||
MsgPar[1].Par_type=#Value
|
||||
ELSE
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
len=STRLEN(sTextPar[])
|
||||
IF len>0 THEN
|
||||
IF len>26 THEN
|
||||
len=26
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
MsgPar[1].Par_Txt[count]=sTextPar[count]
|
||||
ENDFOR
|
||||
MsgPar[1].Par_type=#Value
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
nHandle=Set_KrlMsg (#NOTIFY, Msg, MsgPar[], MsgOpt)
|
||||
|
||||
END ;(MsgNotify)
|
||||
;*****************************
|
||||
;Execution of the quit message
|
||||
;*****************************
|
||||
GLOBAL DEF MsgQuit(sText[]:IN, sModul[]:IN, nNumPar:IN, sTextPar[]:IN, nMsgNr:IN,MsgOpt:IN)
|
||||
DECL CHAR sText[], sModul[], sTextPar[]
|
||||
DECL KrlMsg_T Msg
|
||||
DECL KrlMsgParType_T MsgParType
|
||||
DECL KrlMsgPar_T MsgPar[3]
|
||||
DECL KrlMsgOpt_T MsgOpt
|
||||
DECL KrlMsgOpt_T DummyMsgOpt
|
||||
DECL State_T State
|
||||
DECL INT count, len, offset, nNumPar, nHandle, nMsgNr
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
DummyMsgOpt=MsgOpt
|
||||
|
||||
IF ($ERR.Number<>0) THEN
|
||||
MsgOpt.VL_Stop=TRUE ;DEFAULT setting TRUE
|
||||
MsgOpt.Clear_P_Reset=TRUE
|
||||
MsgOpt.Log_To_DB=FALSE
|
||||
ERR_CLEAR($ERR)
|
||||
ENDIF
|
||||
|
||||
;Creates default values in case of none availability
|
||||
MsgOpt=CheckOfMsgOpt(MsgOpt)
|
||||
|
||||
Msg.Nr=1
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
Msg.Nr=nMsgNr
|
||||
len=STRLEN(sText[])
|
||||
IF len>0 THEN
|
||||
IF len>80 THEN
|
||||
len=80
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
Msg.Msg_txt[count]=sText[count]
|
||||
ENDFOR
|
||||
ELSE
|
||||
Msg.Msg_txt[]="parameter sText[] is missing"
|
||||
ENDIF
|
||||
len=STRLEN(sModul[])
|
||||
IF len>0 THEN
|
||||
IF len>24 THEN
|
||||
len=24
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
Msg.Modul[count]=sModul[count]
|
||||
ENDFOR
|
||||
ELSE
|
||||
Msg.Modul[]="Appl"
|
||||
ENDIF
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
offset=nNumPar
|
||||
IF $ERR.Number==0 THEN
|
||||
offset=0
|
||||
MsgPar[1].Par_Txt[]=" "
|
||||
SWRITE(MsgPar[1].Par_Txt[], State, offset, "%d", nNumPar)
|
||||
MsgPar[1].Par_type=#Value
|
||||
ELSE
|
||||
ERR_CLEAR($ERR)
|
||||
len=STRLEN(sTextPar[])
|
||||
IF len>0 THEN
|
||||
IF len>26 THEN
|
||||
len=26
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
MsgPar[1].Par_Txt[count]=sTextPar[count]
|
||||
ENDFOR
|
||||
MsgPar[1].Par_type=#Value
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
nHandle=Set_KrlMsg (#QUIT, Msg, MsgPar[], MsgOpt)
|
||||
|
||||
WHILE ( Exists_KrlMsg(nHandle) )
|
||||
WAIT sec 0.1
|
||||
ENDWHILE
|
||||
|
||||
END ;(MsgQuit)
|
||||
;******************************
|
||||
;Execution of the state message
|
||||
;******************************
|
||||
GLOBAL DEF MsgState(nHandle:OUT, sText[]:IN, sModul[]:IN, nNumPar:IN, sTextPar[]:IN, nMsgNr:IN,MsgOpt:IN)
|
||||
DECL CHAR sText[], sModul[], sTextPar[]
|
||||
DECL KrlMsg_T Msg
|
||||
DECL KrlMsgParType_T MsgParType
|
||||
DECL KrlMsgPar_T MsgPar[3]
|
||||
DECL KrlMsgOpt_T MsgOpt
|
||||
DECL KrlMsgOpt_T DummyMsgOpt
|
||||
DECL State_T State
|
||||
DECL INT count, len, offset, nNumPar, nHandle, nMsgNr
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
DummyMsgOpt=MsgOpt
|
||||
|
||||
IF ($ERR.Number<>0) THEN
|
||||
MsgOpt.VL_Stop=TRUE ;DEFAULT setting TRUE
|
||||
MsgOpt.Clear_P_Reset=TRUE
|
||||
MsgOpt.Log_To_DB=FALSE
|
||||
ERR_CLEAR($ERR)
|
||||
ENDIF
|
||||
|
||||
;Creates default values in case of none availability
|
||||
MsgOpt=CheckOfMsgOpt(MsgOpt)
|
||||
|
||||
Msg.Nr=1
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
Msg.Nr=nMsgNr
|
||||
len=STRLEN(sText[])
|
||||
IF len>0 THEN
|
||||
IF len>80 THEN
|
||||
len=80
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
Msg.Msg_txt[count]=sText[count]
|
||||
ENDFOR
|
||||
ELSE
|
||||
Msg.Msg_txt[]="parameter sText[] is missing"
|
||||
ENDIF
|
||||
len=STRLEN(sModul[])
|
||||
IF len>0 THEN
|
||||
IF len>24 THEN
|
||||
len=24
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
Msg.Modul[count]=sModul[count]
|
||||
ENDFOR
|
||||
ELSE
|
||||
Msg.Modul[]="Appl"
|
||||
ENDIF
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
offset=nNumPar
|
||||
IF $ERR.Number==0 THEN
|
||||
offset=0
|
||||
MsgPar[1].Par_Txt[]=" "
|
||||
SWRITE(MsgPar[1].Par_Txt[], State, offset, "%d", nNumPar)
|
||||
MsgPar[1].Par_type=#Value
|
||||
ELSE
|
||||
ERR_CLEAR($ERR)
|
||||
len=STRLEN(sTextPar[])
|
||||
IF len>0 THEN
|
||||
IF len>26 THEN
|
||||
len=26
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
MsgPar[1].Par_Txt[count]=sTextPar[count]
|
||||
ENDFOR
|
||||
MsgPar[1].Par_type=#Value
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
nHandle=Set_KrlMsg (#STATE, Msg, MsgPar[], MsgOpt)
|
||||
|
||||
END ;(MsgState)
|
||||
;***************************
|
||||
;Execution of loop message
|
||||
;***************************
|
||||
GLOBAL DEF MsgLoop(sText[]:IN,sModul[]:IN)
|
||||
DECL CHAR sText[], sModul[]
|
||||
DECL CHAR sMsg[80]
|
||||
DECL CHAR sMod[24]
|
||||
DECL INT count,len
|
||||
|
||||
len=STRLEN(sText[])
|
||||
IF len>0 THEN
|
||||
IF len>80 THEN
|
||||
len=80
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
sMsg[count]=sText[count]
|
||||
ENDFOR
|
||||
ENDIF
|
||||
len=STRLEN(sModul[])
|
||||
IF len>0 THEN
|
||||
IF len>24 THEN
|
||||
len=24
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
sMod[count]=sModul[count]
|
||||
ENDFOR
|
||||
ELSE
|
||||
sMod[]="Appl"
|
||||
ENDIF
|
||||
IF (STRLEN(sMsg[])>0) THEN
|
||||
IF lnHandle>0 THEN
|
||||
WAIT FoR Clear_KrlMsg (lnHandle) OR TRUE
|
||||
lnHandle=0
|
||||
ENDIF
|
||||
FOR count=1 TO STRLEN(sMsg[])
|
||||
IF sMsg[count]<>" " THEN
|
||||
MsgState(lnHandle, sMsg[], sMod[])
|
||||
EXIT
|
||||
ENDIF
|
||||
ENDFOR
|
||||
ENDIF
|
||||
END ;(MsgLoop)
|
||||
;*************************************************
|
||||
;Execution of dialog message
|
||||
;parameter NoBrakes: Robot leaves brakes open
|
||||
;*************************************************
|
||||
GLOBAL DEF MsgDialog(nAnswer:OUT,sText[]:IN,sModul[]:IN,sTextPar[]:IN,sDialogSK1[]:IN,sDialogSK2[]:IN,sDialogSK3[]:IN,sDialogSK4[]:IN,sDialogSK5[]:IN,sDialogSK6[]:IN,sDialogSK7[]:IN,NoBrakes:IN, nMsgNr:IN,MsgOpt:IN)
|
||||
DECL KrlMsg_T Msg
|
||||
DECL KrlMsgPar_T MsgPar[3]
|
||||
DECL KrlMsgOpt_T MsgOpt
|
||||
DECL KrlMsgOpt_T DummyMsgOpt
|
||||
DECL KrlMsgDlgSK_T Msg_SOFTKEY[7]
|
||||
DECL INT count, len, nHandle, nAnswer, nMsgNr
|
||||
DECL BOOL NoBrakes
|
||||
DECL CHAR sText[], sModul[], sTextPar[], sDialogSK1[], sDialogSK2[], sDialogSK3[], sDialogSK4[], sDialogSK5[], sDialogSK6[], sDialogSK7[]
|
||||
DECL CHAR sMsg[80]
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
DummyMsgOpt=MsgOpt
|
||||
|
||||
IF ($ERR.Number<>0) THEN
|
||||
MsgOpt.VL_Stop=TRUE ;DEFAULT setting TRUE
|
||||
MsgOpt.Clear_P_Reset=TRUE
|
||||
MsgOpt.Log_To_DB=FALSE
|
||||
ERR_CLEAR($ERR)
|
||||
ENDIF
|
||||
|
||||
;Creates default values in case of none availability
|
||||
MsgOpt=CheckOfMsgOpt(MsgOpt)
|
||||
|
||||
Msg.Nr=1
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
Msg.Nr=nMsgNr
|
||||
len=STRLEN(sText[])
|
||||
IF len>0 THEN
|
||||
IF len>80 THEN
|
||||
len=80
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
Msg.Msg_txt[count]=sText[count]
|
||||
ENDFOR
|
||||
ELSE
|
||||
Msg.Msg_txt[]="parameter sText[] is missing"
|
||||
ENDIF
|
||||
len=STRLEN(sModul[])
|
||||
IF len>0 THEN
|
||||
IF len>24 THEN
|
||||
len=24
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
Msg.Modul[count]=sModul[count]
|
||||
ENDFOR
|
||||
ELSE
|
||||
Msg.Modul[]="Appl"
|
||||
ENDIF
|
||||
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
len=STRLEN(sDialogSK1[])
|
||||
IF $ERR.Number==0 THEN
|
||||
IF len > 0 THEN
|
||||
IF len>24 THEN
|
||||
len=24
|
||||
ENDIF
|
||||
Msg_SOFTKEY[7].Sk_Type = #KEY
|
||||
FOR count=1 TO len
|
||||
Msg_SOFTKEY[7].Sk_txt[count] = sDialogSK1[count]
|
||||
ENDFOR
|
||||
ENDIF
|
||||
ELSE
|
||||
FOR count=1 TO 24
|
||||
Msg_SOFTKEY[7].Sk_txt[count] = " "
|
||||
ENDFOR
|
||||
ENDIF
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
len=STRLEN(sDialogSK2[])
|
||||
IF $ERR.Number==0 THEN
|
||||
len=STRLEN(sDialogSK2[])
|
||||
IF len > 0 THEN
|
||||
IF len>24 THEN
|
||||
len=24
|
||||
ENDIF
|
||||
Msg_SOFTKEY[6].Sk_Type = #KEY
|
||||
FOR count=1 TO len
|
||||
Msg_SOFTKEY[6].Sk_txt[count] = sDialogSK2[count]
|
||||
ENDFOR
|
||||
ENDIF
|
||||
ELSE
|
||||
FOR count=1 TO 24
|
||||
Msg_SOFTKEY[6].Sk_txt[count] = " "
|
||||
ENDFOR
|
||||
ENDIF
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
len=STRLEN(sDialogSK3[])
|
||||
IF $ERR.Number==0 THEN
|
||||
len=STRLEN(sDialogSK3[])
|
||||
IF len > 0 THEN
|
||||
IF len>24 THEN
|
||||
len=24
|
||||
ENDIF
|
||||
Msg_SOFTKEY[5].Sk_Type = #KEY
|
||||
FOR count=1 TO len
|
||||
Msg_SOFTKEY[5].Sk_txt[count] = sDialogSK3[count]
|
||||
ENDFOR
|
||||
ENDIF
|
||||
ELSE
|
||||
FOR count=1 TO 24
|
||||
Msg_SOFTKEY[5].Sk_txt[count] = " "
|
||||
ENDFOR
|
||||
ENDIF
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
len=STRLEN(sDialogSK4[])
|
||||
IF $ERR.Number==0 THEN
|
||||
len=STRLEN(sDialogSK4[])
|
||||
IF len > 0 THEN
|
||||
IF len>24 THEN
|
||||
len=24
|
||||
ENDIF
|
||||
Msg_SOFTKEY[4].Sk_Type = #KEY
|
||||
FOR count=1 TO len
|
||||
Msg_SOFTKEY[4].Sk_txt[count] = sDialogSK4[count]
|
||||
ENDFOR
|
||||
ENDIF
|
||||
ELSE
|
||||
FOR count=1 TO 24
|
||||
Msg_SOFTKEY[4].Sk_txt[count] = " "
|
||||
ENDFOR
|
||||
ENDIF
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
len=STRLEN(sDialogSK5[])
|
||||
IF $ERR.Number==0 THEN
|
||||
len=STRLEN(sDialogSK5[])
|
||||
IF len > 0 THEN
|
||||
IF len>24 THEN
|
||||
len=24
|
||||
ENDIF
|
||||
Msg_SOFTKEY[3].Sk_Type = #KEY
|
||||
FOR count=1 TO len
|
||||
Msg_SOFTKEY[3].Sk_txt[count] = sDialogSK5[count]
|
||||
ENDFOR
|
||||
ENDIF
|
||||
ELSE
|
||||
FOR count=1 TO 24
|
||||
Msg_SOFTKEY[3].Sk_txt[count] = " "
|
||||
ENDFOR
|
||||
ENDIF
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
len=STRLEN(sDialogSK6[])
|
||||
IF $ERR.Number==0 THEN
|
||||
len=STRLEN(sDialogSK6[])
|
||||
IF len > 0 THEN
|
||||
IF len>24 THEN
|
||||
len=24
|
||||
ENDIF
|
||||
Msg_SOFTKEY[2].Sk_Type = #KEY
|
||||
FOR count=1 TO len
|
||||
Msg_SOFTKEY[2].Sk_txt[count] = sDialogSK6[count]
|
||||
ENDFOR
|
||||
ENDIF
|
||||
ELSE
|
||||
FOR count=1 TO 24
|
||||
Msg_SOFTKEY[2].Sk_txt[count] = " "
|
||||
ENDFOR
|
||||
ENDIF
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
len=STRLEN(sDialogSK7[])
|
||||
IF $ERR.Number==0 THEN
|
||||
len=STRLEN(sDialogSK7[])
|
||||
IF len > 0 THEN
|
||||
IF len>24 THEN
|
||||
len=24
|
||||
ENDIF
|
||||
Msg_SOFTKEY[1].Sk_Type = #KEY
|
||||
FOR count=1 TO len
|
||||
Msg_SOFTKEY[1].Sk_txt[count] = sDialogSK7[count]
|
||||
ENDFOR
|
||||
ENDIF
|
||||
ELSE
|
||||
FOR count=1 TO 24
|
||||
Msg_SOFTKEY[1].Sk_txt[count] = " "
|
||||
ENDFOR
|
||||
ENDIF
|
||||
len=STRLEN(sTextPar[])
|
||||
IF len>0 THEN
|
||||
IF len>26 THEN
|
||||
len=26
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
MsgPar[1].Par_Txt[count]=sTextPar[count]
|
||||
ENDFOR
|
||||
MsgPar[1].Par_type=#Value
|
||||
ENDIF
|
||||
|
||||
nHandle=SET_KRLDLG(Msg, MsgPar[], Msg_SOFTKEY[], MsgOpt)
|
||||
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
NoBrakes=NoBrakes
|
||||
IF NOT($ERR.Number==0) THEN
|
||||
NoBrakes=FALSE
|
||||
ENDIF
|
||||
IF (nHandle > 0) THEN
|
||||
WHILE (Exists_KrlDlg(nHandle, nAnswer))
|
||||
WAIT SEC 0.5
|
||||
IF NoBrakes THEN
|
||||
PTP $AXIS_ACT
|
||||
ENDIF
|
||||
ENDWHILE
|
||||
ENDIF
|
||||
END ;(MsgDialog)
|
||||
;*************************************************
|
||||
;Execution of notify message with text parameter
|
||||
;*************************************************
|
||||
GLOBAL DEF MsgNotifyTextPar(sText[]:IN, sModul[]:IN, nNumPar:IN, sTextPar[]:IN, sTextPar2[]:IN, nMsgNr:IN,MsgOpt:IN)
|
||||
DECL CHAR sText[], sModul[], sTextPar[], sTextPar2[]
|
||||
DECL KrlMsg_T Msg
|
||||
DECL EKrlMsgType MsgType
|
||||
DECL KrlMsgParType_T MsgParType
|
||||
DECL KrlMsgPar_T MsgPar[3]
|
||||
DECL KrlMsgOpt_T MsgOpt
|
||||
DECL KrlMsgOpt_T DummyMsgOpt
|
||||
DECL State_T State
|
||||
DECL INT count, len, offset, nNumPar, nHandle, nMsgNr
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
DummyMsgOpt=MsgOpt
|
||||
|
||||
IF ($ERR.Number<>0) THEN
|
||||
MsgOpt.VL_Stop=TRUE ;DEFAULT setting TRUE
|
||||
MsgOpt.Clear_P_Reset=TRUE
|
||||
MsgOpt.Log_To_DB=FALSE
|
||||
ERR_CLEAR($ERR)
|
||||
ENDIF
|
||||
|
||||
;Creates default values in case of none availability
|
||||
MsgOpt=CheckOfMsgOpt(MsgOpt)
|
||||
|
||||
MsgType=#Notify
|
||||
Msg.Nr=1
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
Msg.Nr=nMsgNr
|
||||
len=STRLEN(sText[])
|
||||
IF len>0 THEN
|
||||
IF len>80 THEN
|
||||
len=80
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
Msg.Msg_txt[count]=sText[count]
|
||||
ENDFOR
|
||||
ELSE
|
||||
Msg.Msg_txt[]="parameter sText[] is missing"
|
||||
ENDIF
|
||||
len=STRLEN(sModul[])
|
||||
IF len>0 THEN
|
||||
IF len>24 THEN
|
||||
len=24
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
Msg.Modul[count]=sModul[count]
|
||||
ENDFOR
|
||||
ELSE
|
||||
Msg.Modul[]="Appl"
|
||||
ENDIF
|
||||
offset=nNumPar
|
||||
IF nNumPar==0 THEN
|
||||
; 1st Parameter
|
||||
len=STRLEN(sTextPar[])
|
||||
IF len>0 THEN
|
||||
IF len>26 THEN
|
||||
len=26
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
MsgPar[1].Par_Txt[count]=sTextPar[count]
|
||||
ENDFOR
|
||||
MsgPar[1].Par_type=#Value
|
||||
ENDIF
|
||||
; 2nd Parameter
|
||||
len=STRLEN(sTextPar2[])
|
||||
IF len>0 THEN
|
||||
IF len>26 THEN
|
||||
len=26
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
MsgPar[2].Par_Txt[count]=sTextPar2[count]
|
||||
ENDFOR
|
||||
MsgPar[2].Par_type=#Value
|
||||
ENDIF
|
||||
ELSE
|
||||
offset=0
|
||||
MsgPar[1].Par_Txt[]=" "
|
||||
SWRITE(MsgPar[1].Par_Txt[], State, Offset, "%d", nNumPar)
|
||||
MsgPar[1].Par_type=#Value
|
||||
ENDIF
|
||||
|
||||
nHandle=Set_KrlMsg (MsgType, Msg, MsgPar[], MsgOpt)
|
||||
|
||||
END ;(MsgNotifyTextPar)
|
||||
|
||||
;*************************************************
|
||||
;Execution of quit message with text parameter
|
||||
;*************************************************
|
||||
GLOBAL DEF MsgQuitTextPar(sText[]:IN, sModul[]:IN, nNumPar:IN, sTextPar[]:IN, sTextPar2[]:IN, nMsgNr:IN,MsgOpt:IN)
|
||||
DECL CHAR sText[], sModul[], sTextPar[], sTextPar2[]
|
||||
DECL KrlMsg_T Msg
|
||||
DECL EKrlMsgType MsgType
|
||||
DECL KrlMsgParType_T MsgParType
|
||||
DECL KrlMsgPar_T MsgPar[3]
|
||||
DECL KrlMsgOpt_T MsgOpt
|
||||
DECL KrlMsgOpt_T DummyMsgOpt
|
||||
DECL State_T State
|
||||
DECL INT count, len, offset, nNumPar, nHandle, nMsgNr
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
DummyMsgOpt=MsgOpt
|
||||
|
||||
IF ($ERR.Number<>0) THEN
|
||||
MsgOpt.VL_Stop=TRUE ;DEFAULT setting TRUE
|
||||
MsgOpt.Clear_P_Reset=TRUE
|
||||
MsgOpt.Log_To_DB=FALSE
|
||||
ERR_CLEAR($ERR)
|
||||
ELSE
|
||||
ERR_RAISE($ERR)
|
||||
ENDIF
|
||||
|
||||
;Creates default values in case of none availability
|
||||
MsgOpt=CheckOfMsgOpt(MsgOpt)
|
||||
|
||||
MsgType=#QUIT
|
||||
Msg.Nr=1
|
||||
ERR_CLEAR($ERR)
|
||||
ON_ERROR_PROCEED
|
||||
Msg.Nr=nMsgNr
|
||||
len=STRLEN(sText[])
|
||||
IF len>0 THEN
|
||||
IF len>80 THEN
|
||||
len=80
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
Msg.Msg_txt[count]=sText[count]
|
||||
ENDFOR
|
||||
ELSE
|
||||
Msg.Msg_txt[]="parameter sText[] is missing"
|
||||
ENDIF
|
||||
len=STRLEN(sModul[])
|
||||
IF len>0 THEN
|
||||
IF len>24 THEN
|
||||
len=24
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
Msg.Modul[count]=sModul[count]
|
||||
ENDFOR
|
||||
ELSE
|
||||
Msg.Modul[]="Appl"
|
||||
ENDIF
|
||||
offset=nNumPar
|
||||
IF nNumPar==0 THEN
|
||||
; 1st Parameter
|
||||
len=STRLEN(sTextPar[])
|
||||
IF len>0 THEN
|
||||
IF len>26 THEN
|
||||
len=26
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
MsgPar[1].Par_Txt[count]=sTextPar[count]
|
||||
ENDFOR
|
||||
MsgPar[1].Par_type=#Value
|
||||
ENDIF
|
||||
; 2nd Parameter
|
||||
len=STRLEN(sTextPar2[])
|
||||
IF len>0 THEN
|
||||
IF len>26 THEN
|
||||
len=26
|
||||
ENDIF
|
||||
FOR count=1 TO len
|
||||
MsgPar[2].Par_Txt[count]=sTextPar2[count]
|
||||
ENDFOR
|
||||
MsgPar[2].Par_type=#Value
|
||||
ENDIF
|
||||
ELSE
|
||||
offset=0
|
||||
MsgPar[1].Par_Txt[]=" "
|
||||
SWRITE(MsgPar[1].Par_Txt[], State, Offset, "%d", nNumPar)
|
||||
MsgPar[1].Par_type=#Value
|
||||
ENDIF
|
||||
|
||||
nHandle=Set_KrlMsg (MsgType, Msg, MsgPar[], MsgOpt)
|
||||
|
||||
END ;(MsgQuitTextPar)
|
||||
|
||||
;*****************************
|
||||
;* Check of missing elements *
|
||||
;*****************************
|
||||
DEFFCT KrlMsgOpt_T CheckOfMsgOpt(LocalMsgOpt:IN)
|
||||
DECL KrlMsgOpt_T LocalMsgOpt ;Bool-elements: VL_Stop,Clear_P_Reset,Log_To_DB
|
||||
DECL KrlMsgOpt_T DummyMsgOpt
|
||||
|
||||
;Default Values: MsgOpt={ VL_Stop TRUE, Clear_P_Reset TRUE, Log_To_DB False }
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
DummyMsgOpt.VL_Stop=LocalMsgOpt.VL_Stop
|
||||
IF ($ERR.Number<>0) THEN
|
||||
LocalMsgOpt.VL_Stop=TRUE ;DEFAULT setting TRUE
|
||||
ERR_CLEAR($ERR)
|
||||
ENDIF
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
DummyMsgOpt.Clear_P_Reset=LocalMsgOpt.Clear_P_Reset
|
||||
IF ($ERR.Number<>0) THEN
|
||||
LocalMsgOpt.Clear_P_Reset=TRUE ;DEFAULT setting TRUE
|
||||
ERR_CLEAR($ERR)
|
||||
ENDIF
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
DummyMsgOpt.Log_To_DB=LocalMsgOpt.Log_To_DB
|
||||
IF ($ERR.Number<>0) THEN
|
||||
LocalMsgOpt.Log_To_DB=FALSE ;DEFAULT setting FALSE
|
||||
ERR_CLEAR($ERR)
|
||||
ENDIF
|
||||
|
||||
RETURN(LocalMsgOpt)
|
||||
|
||||
ENDFCT ;(CheckOfMsgOpt)
|
||||
2084
KUKA/KRC/R1/System/bas.src
Normal file
2084
KUKA/KRC/R1/System/bas.src
Normal file
File diff suppressed because it is too large
Load Diff
817
KUKA/KRC/R1/System/collmonlib.dat
Normal file
817
KUKA/KRC/R1/System/collmonlib.dat
Normal file
@@ -0,0 +1,817 @@
|
||||
&ACCESS R1
|
||||
&COMMENT Collision monitoring library
|
||||
DEFDAT COLLMONLIB PUBLIC
|
||||
;DO NOT MODIFY THIS FILE
|
||||
INT NUM_COLLMON_SETTINGS=30
|
||||
INT COLLMON_SETTING[30,12]
|
||||
COLLMON_SETTING[1,1]=150
|
||||
COLLMON_SETTING[1,2]=150
|
||||
COLLMON_SETTING[1,3]=150
|
||||
COLLMON_SETTING[1,4]=150
|
||||
COLLMON_SETTING[1,5]=150
|
||||
COLLMON_SETTING[1,6]=150
|
||||
COLLMON_SETTING[1,7]=150
|
||||
COLLMON_SETTING[1,8]=150
|
||||
COLLMON_SETTING[1,9]=150
|
||||
COLLMON_SETTING[1,10]=150
|
||||
COLLMON_SETTING[1,11]=150
|
||||
COLLMON_SETTING[1,12]=150
|
||||
COLLMON_SETTING[2,1]=150
|
||||
COLLMON_SETTING[2,2]=150
|
||||
COLLMON_SETTING[2,3]=150
|
||||
COLLMON_SETTING[2,4]=150
|
||||
COLLMON_SETTING[2,5]=150
|
||||
COLLMON_SETTING[2,6]=150
|
||||
COLLMON_SETTING[2,7]=150
|
||||
COLLMON_SETTING[2,8]=150
|
||||
COLLMON_SETTING[2,9]=150
|
||||
COLLMON_SETTING[2,10]=150
|
||||
COLLMON_SETTING[2,11]=150
|
||||
COLLMON_SETTING[2,12]=150
|
||||
COLLMON_SETTING[3,1]=150
|
||||
COLLMON_SETTING[3,2]=150
|
||||
COLLMON_SETTING[3,3]=150
|
||||
COLLMON_SETTING[3,4]=150
|
||||
COLLMON_SETTING[3,5]=150
|
||||
COLLMON_SETTING[3,6]=150
|
||||
COLLMON_SETTING[3,7]=150
|
||||
COLLMON_SETTING[3,8]=150
|
||||
COLLMON_SETTING[3,9]=150
|
||||
COLLMON_SETTING[3,10]=150
|
||||
COLLMON_SETTING[3,11]=150
|
||||
COLLMON_SETTING[3,12]=150
|
||||
COLLMON_SETTING[4,1]=150
|
||||
COLLMON_SETTING[4,2]=150
|
||||
COLLMON_SETTING[4,3]=150
|
||||
COLLMON_SETTING[4,4]=150
|
||||
COLLMON_SETTING[4,5]=150
|
||||
COLLMON_SETTING[4,6]=150
|
||||
COLLMON_SETTING[4,7]=150
|
||||
COLLMON_SETTING[4,8]=150
|
||||
COLLMON_SETTING[4,9]=150
|
||||
COLLMON_SETTING[4,10]=150
|
||||
COLLMON_SETTING[4,11]=150
|
||||
COLLMON_SETTING[4,12]=150
|
||||
COLLMON_SETTING[5,1]=150
|
||||
COLLMON_SETTING[5,2]=150
|
||||
COLLMON_SETTING[5,3]=150
|
||||
COLLMON_SETTING[5,4]=150
|
||||
COLLMON_SETTING[5,5]=150
|
||||
COLLMON_SETTING[5,6]=150
|
||||
COLLMON_SETTING[5,7]=150
|
||||
COLLMON_SETTING[5,8]=150
|
||||
COLLMON_SETTING[5,9]=150
|
||||
COLLMON_SETTING[5,10]=150
|
||||
COLLMON_SETTING[5,11]=150
|
||||
COLLMON_SETTING[5,12]=150
|
||||
COLLMON_SETTING[6,1]=150
|
||||
COLLMON_SETTING[6,2]=150
|
||||
COLLMON_SETTING[6,3]=150
|
||||
COLLMON_SETTING[6,4]=150
|
||||
COLLMON_SETTING[6,5]=150
|
||||
COLLMON_SETTING[6,6]=150
|
||||
COLLMON_SETTING[6,7]=150
|
||||
COLLMON_SETTING[6,8]=150
|
||||
COLLMON_SETTING[6,9]=150
|
||||
COLLMON_SETTING[6,10]=150
|
||||
COLLMON_SETTING[6,11]=150
|
||||
COLLMON_SETTING[6,12]=150
|
||||
COLLMON_SETTING[7,1]=150
|
||||
COLLMON_SETTING[7,2]=150
|
||||
COLLMON_SETTING[7,3]=150
|
||||
COLLMON_SETTING[7,4]=150
|
||||
COLLMON_SETTING[7,5]=150
|
||||
COLLMON_SETTING[7,6]=150
|
||||
COLLMON_SETTING[7,7]=150
|
||||
COLLMON_SETTING[7,8]=150
|
||||
COLLMON_SETTING[7,9]=150
|
||||
COLLMON_SETTING[7,10]=150
|
||||
COLLMON_SETTING[7,11]=150
|
||||
COLLMON_SETTING[7,12]=150
|
||||
COLLMON_SETTING[8,1]=150
|
||||
COLLMON_SETTING[8,2]=150
|
||||
COLLMON_SETTING[8,3]=150
|
||||
COLLMON_SETTING[8,4]=150
|
||||
COLLMON_SETTING[8,5]=150
|
||||
COLLMON_SETTING[8,6]=150
|
||||
COLLMON_SETTING[8,7]=150
|
||||
COLLMON_SETTING[8,8]=150
|
||||
COLLMON_SETTING[8,9]=150
|
||||
COLLMON_SETTING[8,10]=150
|
||||
COLLMON_SETTING[8,11]=150
|
||||
COLLMON_SETTING[8,12]=150
|
||||
COLLMON_SETTING[9,1]=150
|
||||
COLLMON_SETTING[9,2]=150
|
||||
COLLMON_SETTING[9,3]=150
|
||||
COLLMON_SETTING[9,4]=150
|
||||
COLLMON_SETTING[9,5]=150
|
||||
COLLMON_SETTING[9,6]=150
|
||||
COLLMON_SETTING[9,7]=150
|
||||
COLLMON_SETTING[9,8]=150
|
||||
COLLMON_SETTING[9,9]=150
|
||||
COLLMON_SETTING[9,10]=150
|
||||
COLLMON_SETTING[9,11]=150
|
||||
COLLMON_SETTING[9,12]=150
|
||||
COLLMON_SETTING[10,1]=150
|
||||
COLLMON_SETTING[10,2]=150
|
||||
COLLMON_SETTING[10,3]=150
|
||||
COLLMON_SETTING[10,4]=150
|
||||
COLLMON_SETTING[10,5]=150
|
||||
COLLMON_SETTING[10,6]=150
|
||||
COLLMON_SETTING[10,7]=150
|
||||
COLLMON_SETTING[10,8]=150
|
||||
COLLMON_SETTING[10,9]=150
|
||||
COLLMON_SETTING[10,10]=150
|
||||
COLLMON_SETTING[10,11]=150
|
||||
COLLMON_SETTING[10,12]=150
|
||||
COLLMON_SETTING[11,1]=150
|
||||
COLLMON_SETTING[11,2]=150
|
||||
COLLMON_SETTING[11,3]=150
|
||||
COLLMON_SETTING[11,4]=150
|
||||
COLLMON_SETTING[11,5]=150
|
||||
COLLMON_SETTING[11,6]=150
|
||||
COLLMON_SETTING[11,7]=150
|
||||
COLLMON_SETTING[11,8]=150
|
||||
COLLMON_SETTING[11,9]=150
|
||||
COLLMON_SETTING[11,10]=150
|
||||
COLLMON_SETTING[11,11]=150
|
||||
COLLMON_SETTING[11,12]=150
|
||||
COLLMON_SETTING[12,1]=150
|
||||
COLLMON_SETTING[12,2]=150
|
||||
COLLMON_SETTING[12,3]=150
|
||||
COLLMON_SETTING[12,4]=150
|
||||
COLLMON_SETTING[12,5]=150
|
||||
COLLMON_SETTING[12,6]=150
|
||||
COLLMON_SETTING[12,7]=150
|
||||
COLLMON_SETTING[12,8]=150
|
||||
COLLMON_SETTING[12,9]=150
|
||||
COLLMON_SETTING[12,10]=150
|
||||
COLLMON_SETTING[12,11]=150
|
||||
COLLMON_SETTING[12,12]=150
|
||||
COLLMON_SETTING[13,1]=150
|
||||
COLLMON_SETTING[13,2]=150
|
||||
COLLMON_SETTING[13,3]=150
|
||||
COLLMON_SETTING[13,4]=150
|
||||
COLLMON_SETTING[13,5]=150
|
||||
COLLMON_SETTING[13,6]=150
|
||||
COLLMON_SETTING[13,7]=150
|
||||
COLLMON_SETTING[13,8]=150
|
||||
COLLMON_SETTING[13,9]=150
|
||||
COLLMON_SETTING[13,10]=150
|
||||
COLLMON_SETTING[13,11]=150
|
||||
COLLMON_SETTING[13,12]=150
|
||||
COLLMON_SETTING[14,1]=150
|
||||
COLLMON_SETTING[14,2]=150
|
||||
COLLMON_SETTING[14,3]=150
|
||||
COLLMON_SETTING[14,4]=150
|
||||
COLLMON_SETTING[14,5]=150
|
||||
COLLMON_SETTING[14,6]=150
|
||||
COLLMON_SETTING[14,7]=150
|
||||
COLLMON_SETTING[14,8]=150
|
||||
COLLMON_SETTING[14,9]=150
|
||||
COLLMON_SETTING[14,10]=150
|
||||
COLLMON_SETTING[14,11]=150
|
||||
COLLMON_SETTING[14,12]=150
|
||||
COLLMON_SETTING[15,1]=150
|
||||
COLLMON_SETTING[15,2]=150
|
||||
COLLMON_SETTING[15,3]=150
|
||||
COLLMON_SETTING[15,4]=150
|
||||
COLLMON_SETTING[15,5]=150
|
||||
COLLMON_SETTING[15,6]=150
|
||||
COLLMON_SETTING[15,7]=150
|
||||
COLLMON_SETTING[15,8]=150
|
||||
COLLMON_SETTING[15,9]=150
|
||||
COLLMON_SETTING[15,10]=150
|
||||
COLLMON_SETTING[15,11]=150
|
||||
COLLMON_SETTING[15,12]=150
|
||||
COLLMON_SETTING[16,1]=150
|
||||
COLLMON_SETTING[16,2]=150
|
||||
COLLMON_SETTING[16,3]=150
|
||||
COLLMON_SETTING[16,4]=150
|
||||
COLLMON_SETTING[16,5]=150
|
||||
COLLMON_SETTING[16,6]=150
|
||||
COLLMON_SETTING[16,7]=150
|
||||
COLLMON_SETTING[16,8]=150
|
||||
COLLMON_SETTING[16,9]=150
|
||||
COLLMON_SETTING[16,10]=150
|
||||
COLLMON_SETTING[16,11]=150
|
||||
COLLMON_SETTING[16,12]=150
|
||||
COLLMON_SETTING[17,1]=150
|
||||
COLLMON_SETTING[17,2]=150
|
||||
COLLMON_SETTING[17,3]=150
|
||||
COLLMON_SETTING[17,4]=150
|
||||
COLLMON_SETTING[17,5]=150
|
||||
COLLMON_SETTING[17,6]=150
|
||||
COLLMON_SETTING[17,7]=150
|
||||
COLLMON_SETTING[17,8]=150
|
||||
COLLMON_SETTING[17,9]=150
|
||||
COLLMON_SETTING[17,10]=150
|
||||
COLLMON_SETTING[17,11]=150
|
||||
COLLMON_SETTING[17,12]=150
|
||||
COLLMON_SETTING[18,1]=150
|
||||
COLLMON_SETTING[18,2]=150
|
||||
COLLMON_SETTING[18,3]=150
|
||||
COLLMON_SETTING[18,4]=150
|
||||
COLLMON_SETTING[18,5]=150
|
||||
COLLMON_SETTING[18,6]=150
|
||||
COLLMON_SETTING[18,7]=150
|
||||
COLLMON_SETTING[18,8]=150
|
||||
COLLMON_SETTING[18,9]=150
|
||||
COLLMON_SETTING[18,10]=150
|
||||
COLLMON_SETTING[18,11]=150
|
||||
COLLMON_SETTING[18,12]=150
|
||||
COLLMON_SETTING[19,1]=150
|
||||
COLLMON_SETTING[19,2]=150
|
||||
COLLMON_SETTING[19,3]=150
|
||||
COLLMON_SETTING[19,4]=150
|
||||
COLLMON_SETTING[19,5]=150
|
||||
COLLMON_SETTING[19,6]=150
|
||||
COLLMON_SETTING[19,7]=150
|
||||
COLLMON_SETTING[19,8]=150
|
||||
COLLMON_SETTING[19,9]=150
|
||||
COLLMON_SETTING[19,10]=150
|
||||
COLLMON_SETTING[19,11]=150
|
||||
COLLMON_SETTING[19,12]=150
|
||||
COLLMON_SETTING[20,1]=150
|
||||
COLLMON_SETTING[20,2]=150
|
||||
COLLMON_SETTING[20,3]=150
|
||||
COLLMON_SETTING[20,4]=150
|
||||
COLLMON_SETTING[20,5]=150
|
||||
COLLMON_SETTING[20,6]=150
|
||||
COLLMON_SETTING[20,7]=150
|
||||
COLLMON_SETTING[20,8]=150
|
||||
COLLMON_SETTING[20,9]=150
|
||||
COLLMON_SETTING[20,10]=150
|
||||
COLLMON_SETTING[20,11]=150
|
||||
COLLMON_SETTING[20,12]=150
|
||||
COLLMON_SETTING[21,1]=150
|
||||
COLLMON_SETTING[21,2]=150
|
||||
COLLMON_SETTING[21,3]=150
|
||||
COLLMON_SETTING[21,4]=150
|
||||
COLLMON_SETTING[21,5]=150
|
||||
COLLMON_SETTING[21,6]=150
|
||||
COLLMON_SETTING[21,7]=150
|
||||
COLLMON_SETTING[21,8]=150
|
||||
COLLMON_SETTING[21,9]=150
|
||||
COLLMON_SETTING[21,10]=150
|
||||
COLLMON_SETTING[21,11]=150
|
||||
COLLMON_SETTING[21,12]=150
|
||||
COLLMON_SETTING[22,1]=150
|
||||
COLLMON_SETTING[22,2]=150
|
||||
COLLMON_SETTING[22,3]=150
|
||||
COLLMON_SETTING[22,4]=150
|
||||
COLLMON_SETTING[22,5]=150
|
||||
COLLMON_SETTING[22,6]=150
|
||||
COLLMON_SETTING[22,7]=150
|
||||
COLLMON_SETTING[22,8]=150
|
||||
COLLMON_SETTING[22,9]=150
|
||||
COLLMON_SETTING[22,10]=150
|
||||
COLLMON_SETTING[22,11]=150
|
||||
COLLMON_SETTING[22,12]=150
|
||||
COLLMON_SETTING[23,1]=150
|
||||
COLLMON_SETTING[23,2]=150
|
||||
COLLMON_SETTING[23,3]=150
|
||||
COLLMON_SETTING[23,4]=150
|
||||
COLLMON_SETTING[23,5]=150
|
||||
COLLMON_SETTING[23,6]=150
|
||||
COLLMON_SETTING[23,7]=150
|
||||
COLLMON_SETTING[23,8]=150
|
||||
COLLMON_SETTING[23,9]=150
|
||||
COLLMON_SETTING[23,10]=150
|
||||
COLLMON_SETTING[23,11]=150
|
||||
COLLMON_SETTING[23,12]=150
|
||||
COLLMON_SETTING[24,1]=150
|
||||
COLLMON_SETTING[24,2]=150
|
||||
COLLMON_SETTING[24,3]=150
|
||||
COLLMON_SETTING[24,4]=150
|
||||
COLLMON_SETTING[24,5]=150
|
||||
COLLMON_SETTING[24,6]=150
|
||||
COLLMON_SETTING[24,7]=150
|
||||
COLLMON_SETTING[24,8]=150
|
||||
COLLMON_SETTING[24,9]=150
|
||||
COLLMON_SETTING[24,10]=150
|
||||
COLLMON_SETTING[24,11]=150
|
||||
COLLMON_SETTING[24,12]=150
|
||||
COLLMON_SETTING[25,1]=150
|
||||
COLLMON_SETTING[25,2]=150
|
||||
COLLMON_SETTING[25,3]=150
|
||||
COLLMON_SETTING[25,4]=150
|
||||
COLLMON_SETTING[25,5]=150
|
||||
COLLMON_SETTING[25,6]=150
|
||||
COLLMON_SETTING[25,7]=150
|
||||
COLLMON_SETTING[25,8]=150
|
||||
COLLMON_SETTING[25,9]=150
|
||||
COLLMON_SETTING[25,10]=150
|
||||
COLLMON_SETTING[25,11]=150
|
||||
COLLMON_SETTING[25,12]=150
|
||||
COLLMON_SETTING[26,1]=150
|
||||
COLLMON_SETTING[26,2]=150
|
||||
COLLMON_SETTING[26,3]=150
|
||||
COLLMON_SETTING[26,4]=150
|
||||
COLLMON_SETTING[26,5]=150
|
||||
COLLMON_SETTING[26,6]=150
|
||||
COLLMON_SETTING[26,7]=150
|
||||
COLLMON_SETTING[26,8]=150
|
||||
COLLMON_SETTING[26,9]=150
|
||||
COLLMON_SETTING[26,10]=150
|
||||
COLLMON_SETTING[26,11]=150
|
||||
COLLMON_SETTING[26,12]=150
|
||||
COLLMON_SETTING[27,1]=150
|
||||
COLLMON_SETTING[27,2]=150
|
||||
COLLMON_SETTING[27,3]=150
|
||||
COLLMON_SETTING[27,4]=150
|
||||
COLLMON_SETTING[27,5]=150
|
||||
COLLMON_SETTING[27,6]=150
|
||||
COLLMON_SETTING[27,7]=150
|
||||
COLLMON_SETTING[27,8]=150
|
||||
COLLMON_SETTING[27,9]=150
|
||||
COLLMON_SETTING[27,10]=150
|
||||
COLLMON_SETTING[27,11]=150
|
||||
COLLMON_SETTING[27,12]=150
|
||||
COLLMON_SETTING[28,1]=150
|
||||
COLLMON_SETTING[28,2]=150
|
||||
COLLMON_SETTING[28,3]=150
|
||||
COLLMON_SETTING[28,4]=150
|
||||
COLLMON_SETTING[28,5]=150
|
||||
COLLMON_SETTING[28,6]=150
|
||||
COLLMON_SETTING[28,7]=150
|
||||
COLLMON_SETTING[28,8]=150
|
||||
COLLMON_SETTING[28,9]=150
|
||||
COLLMON_SETTING[28,10]=150
|
||||
COLLMON_SETTING[28,11]=150
|
||||
COLLMON_SETTING[28,12]=150
|
||||
COLLMON_SETTING[29,1]=150
|
||||
COLLMON_SETTING[29,2]=150
|
||||
COLLMON_SETTING[29,3]=150
|
||||
COLLMON_SETTING[29,4]=150
|
||||
COLLMON_SETTING[29,5]=150
|
||||
COLLMON_SETTING[29,6]=150
|
||||
COLLMON_SETTING[29,7]=150
|
||||
COLLMON_SETTING[29,8]=150
|
||||
COLLMON_SETTING[29,9]=150
|
||||
COLLMON_SETTING[29,10]=150
|
||||
COLLMON_SETTING[29,11]=150
|
||||
COLLMON_SETTING[29,12]=150
|
||||
COLLMON_SETTING[30,1]=150
|
||||
COLLMON_SETTING[30,2]=150
|
||||
COLLMON_SETTING[30,3]=150
|
||||
COLLMON_SETTING[30,4]=150
|
||||
COLLMON_SETTING[30,5]=150
|
||||
COLLMON_SETTING[30,6]=150
|
||||
COLLMON_SETTING[30,7]=150
|
||||
COLLMON_SETTING[30,8]=150
|
||||
COLLMON_SETTING[30,9]=150
|
||||
COLLMON_SETTING[30,10]=150
|
||||
COLLMON_SETTING[30,11]=150
|
||||
COLLMON_SETTING[30,12]=150
|
||||
|
||||
INT COLLMON_DISPLAYED[30,12]
|
||||
COLLMON_DISPLAYED[1,1]=150
|
||||
COLLMON_DISPLAYED[1,2]=150
|
||||
COLLMON_DISPLAYED[1,3]=150
|
||||
COLLMON_DISPLAYED[1,4]=150
|
||||
COLLMON_DISPLAYED[1,5]=150
|
||||
COLLMON_DISPLAYED[1,6]=150
|
||||
COLLMON_DISPLAYED[1,7]=150
|
||||
COLLMON_DISPLAYED[1,8]=150
|
||||
COLLMON_DISPLAYED[1,9]=150
|
||||
COLLMON_DISPLAYED[1,10]=150
|
||||
COLLMON_DISPLAYED[1,11]=150
|
||||
COLLMON_DISPLAYED[1,12]=150
|
||||
COLLMON_DISPLAYED[2,1]=150
|
||||
COLLMON_DISPLAYED[2,2]=150
|
||||
COLLMON_DISPLAYED[2,3]=150
|
||||
COLLMON_DISPLAYED[2,4]=150
|
||||
COLLMON_DISPLAYED[2,5]=150
|
||||
COLLMON_DISPLAYED[2,6]=150
|
||||
COLLMON_DISPLAYED[2,7]=150
|
||||
COLLMON_DISPLAYED[2,8]=150
|
||||
COLLMON_DISPLAYED[2,9]=150
|
||||
COLLMON_DISPLAYED[2,10]=150
|
||||
COLLMON_DISPLAYED[2,11]=150
|
||||
COLLMON_DISPLAYED[2,12]=150
|
||||
COLLMON_DISPLAYED[3,1]=150
|
||||
COLLMON_DISPLAYED[3,2]=150
|
||||
COLLMON_DISPLAYED[3,3]=150
|
||||
COLLMON_DISPLAYED[3,4]=150
|
||||
COLLMON_DISPLAYED[3,5]=150
|
||||
COLLMON_DISPLAYED[3,6]=150
|
||||
COLLMON_DISPLAYED[3,7]=150
|
||||
COLLMON_DISPLAYED[3,8]=150
|
||||
COLLMON_DISPLAYED[3,9]=150
|
||||
COLLMON_DISPLAYED[3,10]=150
|
||||
COLLMON_DISPLAYED[3,11]=150
|
||||
COLLMON_DISPLAYED[3,12]=150
|
||||
COLLMON_DISPLAYED[4,1]=150
|
||||
COLLMON_DISPLAYED[4,2]=150
|
||||
COLLMON_DISPLAYED[4,3]=150
|
||||
COLLMON_DISPLAYED[4,4]=150
|
||||
COLLMON_DISPLAYED[4,5]=150
|
||||
COLLMON_DISPLAYED[4,6]=150
|
||||
COLLMON_DISPLAYED[4,7]=150
|
||||
COLLMON_DISPLAYED[4,8]=150
|
||||
COLLMON_DISPLAYED[4,9]=150
|
||||
COLLMON_DISPLAYED[4,10]=150
|
||||
COLLMON_DISPLAYED[4,11]=150
|
||||
COLLMON_DISPLAYED[4,12]=150
|
||||
COLLMON_DISPLAYED[5,1]=150
|
||||
COLLMON_DISPLAYED[5,2]=150
|
||||
COLLMON_DISPLAYED[5,3]=150
|
||||
COLLMON_DISPLAYED[5,4]=150
|
||||
COLLMON_DISPLAYED[5,5]=150
|
||||
COLLMON_DISPLAYED[5,6]=150
|
||||
COLLMON_DISPLAYED[5,7]=150
|
||||
COLLMON_DISPLAYED[5,8]=150
|
||||
COLLMON_DISPLAYED[5,9]=150
|
||||
COLLMON_DISPLAYED[5,10]=150
|
||||
COLLMON_DISPLAYED[5,11]=150
|
||||
COLLMON_DISPLAYED[5,12]=150
|
||||
COLLMON_DISPLAYED[6,1]=150
|
||||
COLLMON_DISPLAYED[6,2]=150
|
||||
COLLMON_DISPLAYED[6,3]=150
|
||||
COLLMON_DISPLAYED[6,4]=150
|
||||
COLLMON_DISPLAYED[6,5]=150
|
||||
COLLMON_DISPLAYED[6,6]=150
|
||||
COLLMON_DISPLAYED[6,7]=150
|
||||
COLLMON_DISPLAYED[6,8]=150
|
||||
COLLMON_DISPLAYED[6,9]=150
|
||||
COLLMON_DISPLAYED[6,10]=150
|
||||
COLLMON_DISPLAYED[6,11]=150
|
||||
COLLMON_DISPLAYED[6,12]=150
|
||||
COLLMON_DISPLAYED[7,1]=150
|
||||
COLLMON_DISPLAYED[7,2]=150
|
||||
COLLMON_DISPLAYED[7,3]=150
|
||||
COLLMON_DISPLAYED[7,4]=150
|
||||
COLLMON_DISPLAYED[7,5]=150
|
||||
COLLMON_DISPLAYED[7,6]=150
|
||||
COLLMON_DISPLAYED[7,7]=150
|
||||
COLLMON_DISPLAYED[7,8]=150
|
||||
COLLMON_DISPLAYED[7,9]=150
|
||||
COLLMON_DISPLAYED[7,10]=150
|
||||
COLLMON_DISPLAYED[7,11]=150
|
||||
COLLMON_DISPLAYED[7,12]=150
|
||||
COLLMON_DISPLAYED[8,1]=150
|
||||
COLLMON_DISPLAYED[8,2]=150
|
||||
COLLMON_DISPLAYED[8,3]=150
|
||||
COLLMON_DISPLAYED[8,4]=150
|
||||
COLLMON_DISPLAYED[8,5]=150
|
||||
COLLMON_DISPLAYED[8,6]=150
|
||||
COLLMON_DISPLAYED[8,7]=150
|
||||
COLLMON_DISPLAYED[8,8]=150
|
||||
COLLMON_DISPLAYED[8,9]=150
|
||||
COLLMON_DISPLAYED[8,10]=150
|
||||
COLLMON_DISPLAYED[8,11]=150
|
||||
COLLMON_DISPLAYED[8,12]=150
|
||||
COLLMON_DISPLAYED[9,1]=150
|
||||
COLLMON_DISPLAYED[9,2]=150
|
||||
COLLMON_DISPLAYED[9,3]=150
|
||||
COLLMON_DISPLAYED[9,4]=150
|
||||
COLLMON_DISPLAYED[9,5]=150
|
||||
COLLMON_DISPLAYED[9,6]=150
|
||||
COLLMON_DISPLAYED[9,7]=150
|
||||
COLLMON_DISPLAYED[9,8]=150
|
||||
COLLMON_DISPLAYED[9,9]=150
|
||||
COLLMON_DISPLAYED[9,10]=150
|
||||
COLLMON_DISPLAYED[9,11]=150
|
||||
COLLMON_DISPLAYED[9,12]=150
|
||||
COLLMON_DISPLAYED[10,1]=150
|
||||
COLLMON_DISPLAYED[10,2]=150
|
||||
COLLMON_DISPLAYED[10,3]=150
|
||||
COLLMON_DISPLAYED[10,4]=150
|
||||
COLLMON_DISPLAYED[10,5]=150
|
||||
COLLMON_DISPLAYED[10,6]=150
|
||||
COLLMON_DISPLAYED[10,7]=150
|
||||
COLLMON_DISPLAYED[10,8]=150
|
||||
COLLMON_DISPLAYED[10,9]=150
|
||||
COLLMON_DISPLAYED[10,10]=150
|
||||
COLLMON_DISPLAYED[10,11]=150
|
||||
COLLMON_DISPLAYED[10,12]=150
|
||||
COLLMON_DISPLAYED[11,1]=150
|
||||
COLLMON_DISPLAYED[11,2]=150
|
||||
COLLMON_DISPLAYED[11,3]=150
|
||||
COLLMON_DISPLAYED[11,4]=150
|
||||
COLLMON_DISPLAYED[11,5]=150
|
||||
COLLMON_DISPLAYED[11,6]=150
|
||||
COLLMON_DISPLAYED[11,7]=150
|
||||
COLLMON_DISPLAYED[11,8]=150
|
||||
COLLMON_DISPLAYED[11,9]=150
|
||||
COLLMON_DISPLAYED[11,10]=150
|
||||
COLLMON_DISPLAYED[11,11]=150
|
||||
COLLMON_DISPLAYED[11,12]=150
|
||||
COLLMON_DISPLAYED[12,1]=150
|
||||
COLLMON_DISPLAYED[12,2]=150
|
||||
COLLMON_DISPLAYED[12,3]=150
|
||||
COLLMON_DISPLAYED[12,4]=150
|
||||
COLLMON_DISPLAYED[12,5]=150
|
||||
COLLMON_DISPLAYED[12,6]=150
|
||||
COLLMON_DISPLAYED[12,7]=150
|
||||
COLLMON_DISPLAYED[12,8]=150
|
||||
COLLMON_DISPLAYED[12,9]=150
|
||||
COLLMON_DISPLAYED[12,10]=150
|
||||
COLLMON_DISPLAYED[12,11]=150
|
||||
COLLMON_DISPLAYED[12,12]=150
|
||||
COLLMON_DISPLAYED[13,1]=150
|
||||
COLLMON_DISPLAYED[13,2]=150
|
||||
COLLMON_DISPLAYED[13,3]=150
|
||||
COLLMON_DISPLAYED[13,4]=150
|
||||
COLLMON_DISPLAYED[13,5]=150
|
||||
COLLMON_DISPLAYED[13,6]=150
|
||||
COLLMON_DISPLAYED[13,7]=150
|
||||
COLLMON_DISPLAYED[13,8]=150
|
||||
COLLMON_DISPLAYED[13,9]=150
|
||||
COLLMON_DISPLAYED[13,10]=150
|
||||
COLLMON_DISPLAYED[13,11]=150
|
||||
COLLMON_DISPLAYED[13,12]=150
|
||||
COLLMON_DISPLAYED[14,1]=150
|
||||
COLLMON_DISPLAYED[14,2]=150
|
||||
COLLMON_DISPLAYED[14,3]=150
|
||||
COLLMON_DISPLAYED[14,4]=150
|
||||
COLLMON_DISPLAYED[14,5]=150
|
||||
COLLMON_DISPLAYED[14,6]=150
|
||||
COLLMON_DISPLAYED[14,7]=150
|
||||
COLLMON_DISPLAYED[14,8]=150
|
||||
COLLMON_DISPLAYED[14,9]=150
|
||||
COLLMON_DISPLAYED[14,10]=150
|
||||
COLLMON_DISPLAYED[14,11]=150
|
||||
COLLMON_DISPLAYED[14,12]=150
|
||||
COLLMON_DISPLAYED[15,1]=150
|
||||
COLLMON_DISPLAYED[15,2]=150
|
||||
COLLMON_DISPLAYED[15,3]=150
|
||||
COLLMON_DISPLAYED[15,4]=150
|
||||
COLLMON_DISPLAYED[15,5]=150
|
||||
COLLMON_DISPLAYED[15,6]=150
|
||||
COLLMON_DISPLAYED[15,7]=150
|
||||
COLLMON_DISPLAYED[15,8]=150
|
||||
COLLMON_DISPLAYED[15,9]=150
|
||||
COLLMON_DISPLAYED[15,10]=150
|
||||
COLLMON_DISPLAYED[15,11]=150
|
||||
COLLMON_DISPLAYED[15,12]=150
|
||||
COLLMON_DISPLAYED[16,1]=150
|
||||
COLLMON_DISPLAYED[16,2]=150
|
||||
COLLMON_DISPLAYED[16,3]=150
|
||||
COLLMON_DISPLAYED[16,4]=150
|
||||
COLLMON_DISPLAYED[16,5]=150
|
||||
COLLMON_DISPLAYED[16,6]=150
|
||||
COLLMON_DISPLAYED[16,7]=150
|
||||
COLLMON_DISPLAYED[16,8]=150
|
||||
COLLMON_DISPLAYED[16,9]=150
|
||||
COLLMON_DISPLAYED[16,10]=150
|
||||
COLLMON_DISPLAYED[16,11]=150
|
||||
COLLMON_DISPLAYED[16,12]=150
|
||||
COLLMON_DISPLAYED[17,1]=150
|
||||
COLLMON_DISPLAYED[17,2]=150
|
||||
COLLMON_DISPLAYED[17,3]=150
|
||||
COLLMON_DISPLAYED[17,4]=150
|
||||
COLLMON_DISPLAYED[17,5]=150
|
||||
COLLMON_DISPLAYED[17,6]=150
|
||||
COLLMON_DISPLAYED[17,7]=150
|
||||
COLLMON_DISPLAYED[17,8]=150
|
||||
COLLMON_DISPLAYED[17,9]=150
|
||||
COLLMON_DISPLAYED[17,10]=150
|
||||
COLLMON_DISPLAYED[17,11]=150
|
||||
COLLMON_DISPLAYED[17,12]=150
|
||||
COLLMON_DISPLAYED[18,1]=150
|
||||
COLLMON_DISPLAYED[18,2]=150
|
||||
COLLMON_DISPLAYED[18,3]=150
|
||||
COLLMON_DISPLAYED[18,4]=150
|
||||
COLLMON_DISPLAYED[18,5]=150
|
||||
COLLMON_DISPLAYED[18,6]=150
|
||||
COLLMON_DISPLAYED[18,7]=150
|
||||
COLLMON_DISPLAYED[18,8]=150
|
||||
COLLMON_DISPLAYED[18,9]=150
|
||||
COLLMON_DISPLAYED[18,10]=150
|
||||
COLLMON_DISPLAYED[18,11]=150
|
||||
COLLMON_DISPLAYED[18,12]=150
|
||||
COLLMON_DISPLAYED[19,1]=150
|
||||
COLLMON_DISPLAYED[19,2]=150
|
||||
COLLMON_DISPLAYED[19,3]=150
|
||||
COLLMON_DISPLAYED[19,4]=150
|
||||
COLLMON_DISPLAYED[19,5]=150
|
||||
COLLMON_DISPLAYED[19,6]=150
|
||||
COLLMON_DISPLAYED[19,7]=150
|
||||
COLLMON_DISPLAYED[19,8]=150
|
||||
COLLMON_DISPLAYED[19,9]=150
|
||||
COLLMON_DISPLAYED[19,10]=150
|
||||
COLLMON_DISPLAYED[19,11]=150
|
||||
COLLMON_DISPLAYED[19,12]=150
|
||||
COLLMON_DISPLAYED[20,1]=150
|
||||
COLLMON_DISPLAYED[20,2]=150
|
||||
COLLMON_DISPLAYED[20,3]=150
|
||||
COLLMON_DISPLAYED[20,4]=150
|
||||
COLLMON_DISPLAYED[20,5]=150
|
||||
COLLMON_DISPLAYED[20,6]=150
|
||||
COLLMON_DISPLAYED[20,7]=150
|
||||
COLLMON_DISPLAYED[20,8]=150
|
||||
COLLMON_DISPLAYED[20,9]=150
|
||||
COLLMON_DISPLAYED[20,10]=150
|
||||
COLLMON_DISPLAYED[20,11]=150
|
||||
COLLMON_DISPLAYED[20,12]=150
|
||||
COLLMON_DISPLAYED[21,1]=150
|
||||
COLLMON_DISPLAYED[21,2]=150
|
||||
COLLMON_DISPLAYED[21,3]=150
|
||||
COLLMON_DISPLAYED[21,4]=150
|
||||
COLLMON_DISPLAYED[21,5]=150
|
||||
COLLMON_DISPLAYED[21,6]=150
|
||||
COLLMON_DISPLAYED[21,7]=150
|
||||
COLLMON_DISPLAYED[21,8]=150
|
||||
COLLMON_DISPLAYED[21,9]=150
|
||||
COLLMON_DISPLAYED[21,10]=150
|
||||
COLLMON_DISPLAYED[21,11]=150
|
||||
COLLMON_DISPLAYED[21,12]=150
|
||||
COLLMON_DISPLAYED[22,1]=150
|
||||
COLLMON_DISPLAYED[22,2]=150
|
||||
COLLMON_DISPLAYED[22,3]=150
|
||||
COLLMON_DISPLAYED[22,4]=150
|
||||
COLLMON_DISPLAYED[22,5]=150
|
||||
COLLMON_DISPLAYED[22,6]=150
|
||||
COLLMON_DISPLAYED[22,7]=150
|
||||
COLLMON_DISPLAYED[22,8]=150
|
||||
COLLMON_DISPLAYED[22,9]=150
|
||||
COLLMON_DISPLAYED[22,10]=150
|
||||
COLLMON_DISPLAYED[22,11]=150
|
||||
COLLMON_DISPLAYED[22,12]=150
|
||||
COLLMON_DISPLAYED[23,1]=150
|
||||
COLLMON_DISPLAYED[23,2]=150
|
||||
COLLMON_DISPLAYED[23,3]=150
|
||||
COLLMON_DISPLAYED[23,4]=150
|
||||
COLLMON_DISPLAYED[23,5]=150
|
||||
COLLMON_DISPLAYED[23,6]=150
|
||||
COLLMON_DISPLAYED[23,7]=150
|
||||
COLLMON_DISPLAYED[23,8]=150
|
||||
COLLMON_DISPLAYED[23,9]=150
|
||||
COLLMON_DISPLAYED[23,10]=150
|
||||
COLLMON_DISPLAYED[23,11]=150
|
||||
COLLMON_DISPLAYED[23,12]=150
|
||||
COLLMON_DISPLAYED[24,1]=150
|
||||
COLLMON_DISPLAYED[24,2]=150
|
||||
COLLMON_DISPLAYED[24,3]=150
|
||||
COLLMON_DISPLAYED[24,4]=150
|
||||
COLLMON_DISPLAYED[24,5]=150
|
||||
COLLMON_DISPLAYED[24,6]=150
|
||||
COLLMON_DISPLAYED[24,7]=150
|
||||
COLLMON_DISPLAYED[24,8]=150
|
||||
COLLMON_DISPLAYED[24,9]=150
|
||||
COLLMON_DISPLAYED[24,10]=150
|
||||
COLLMON_DISPLAYED[24,11]=150
|
||||
COLLMON_DISPLAYED[24,12]=150
|
||||
COLLMON_DISPLAYED[25,1]=150
|
||||
COLLMON_DISPLAYED[25,2]=150
|
||||
COLLMON_DISPLAYED[25,3]=150
|
||||
COLLMON_DISPLAYED[25,4]=150
|
||||
COLLMON_DISPLAYED[25,5]=150
|
||||
COLLMON_DISPLAYED[25,6]=150
|
||||
COLLMON_DISPLAYED[25,7]=150
|
||||
COLLMON_DISPLAYED[25,8]=150
|
||||
COLLMON_DISPLAYED[25,9]=150
|
||||
COLLMON_DISPLAYED[25,10]=150
|
||||
COLLMON_DISPLAYED[25,11]=150
|
||||
COLLMON_DISPLAYED[25,12]=150
|
||||
COLLMON_DISPLAYED[26,1]=150
|
||||
COLLMON_DISPLAYED[26,2]=150
|
||||
COLLMON_DISPLAYED[26,3]=150
|
||||
COLLMON_DISPLAYED[26,4]=150
|
||||
COLLMON_DISPLAYED[26,5]=150
|
||||
COLLMON_DISPLAYED[26,6]=150
|
||||
COLLMON_DISPLAYED[26,7]=150
|
||||
COLLMON_DISPLAYED[26,8]=150
|
||||
COLLMON_DISPLAYED[26,9]=150
|
||||
COLLMON_DISPLAYED[26,10]=150
|
||||
COLLMON_DISPLAYED[26,11]=150
|
||||
COLLMON_DISPLAYED[26,12]=150
|
||||
COLLMON_DISPLAYED[27,1]=150
|
||||
COLLMON_DISPLAYED[27,2]=150
|
||||
COLLMON_DISPLAYED[27,3]=150
|
||||
COLLMON_DISPLAYED[27,4]=150
|
||||
COLLMON_DISPLAYED[27,5]=150
|
||||
COLLMON_DISPLAYED[27,6]=150
|
||||
COLLMON_DISPLAYED[27,7]=150
|
||||
COLLMON_DISPLAYED[27,8]=150
|
||||
COLLMON_DISPLAYED[27,9]=150
|
||||
COLLMON_DISPLAYED[27,10]=150
|
||||
COLLMON_DISPLAYED[27,11]=150
|
||||
COLLMON_DISPLAYED[27,12]=150
|
||||
COLLMON_DISPLAYED[28,1]=150
|
||||
COLLMON_DISPLAYED[28,2]=150
|
||||
COLLMON_DISPLAYED[28,3]=150
|
||||
COLLMON_DISPLAYED[28,4]=150
|
||||
COLLMON_DISPLAYED[28,5]=150
|
||||
COLLMON_DISPLAYED[28,6]=150
|
||||
COLLMON_DISPLAYED[28,7]=150
|
||||
COLLMON_DISPLAYED[28,8]=150
|
||||
COLLMON_DISPLAYED[28,9]=150
|
||||
COLLMON_DISPLAYED[28,10]=150
|
||||
COLLMON_DISPLAYED[28,11]=150
|
||||
COLLMON_DISPLAYED[28,12]=150
|
||||
COLLMON_DISPLAYED[29,1]=150
|
||||
COLLMON_DISPLAYED[29,2]=150
|
||||
COLLMON_DISPLAYED[29,3]=150
|
||||
COLLMON_DISPLAYED[29,4]=150
|
||||
COLLMON_DISPLAYED[29,5]=150
|
||||
COLLMON_DISPLAYED[29,6]=150
|
||||
COLLMON_DISPLAYED[29,7]=150
|
||||
COLLMON_DISPLAYED[29,8]=150
|
||||
COLLMON_DISPLAYED[29,9]=150
|
||||
COLLMON_DISPLAYED[29,10]=150
|
||||
COLLMON_DISPLAYED[29,11]=150
|
||||
COLLMON_DISPLAYED[29,12]=150
|
||||
COLLMON_DISPLAYED[30,1]=150
|
||||
COLLMON_DISPLAYED[30,2]=150
|
||||
COLLMON_DISPLAYED[30,3]=150
|
||||
COLLMON_DISPLAYED[30,4]=150
|
||||
COLLMON_DISPLAYED[30,5]=150
|
||||
COLLMON_DISPLAYED[30,6]=150
|
||||
COLLMON_DISPLAYED[30,7]=150
|
||||
COLLMON_DISPLAYED[30,8]=150
|
||||
COLLMON_DISPLAYED[30,9]=150
|
||||
COLLMON_DISPLAYED[30,10]=150
|
||||
COLLMON_DISPLAYED[30,11]=150
|
||||
COLLMON_DISPLAYED[30,12]=150
|
||||
|
||||
GLOBAL CHAR CDSet_NAME[30,24]
|
||||
CDSet_NAME[1,]=" "
|
||||
CDSet_NAME[2,]=" "
|
||||
CDSet_NAME[3,]=" "
|
||||
CDSet_NAME[4,]=" "
|
||||
CDSet_NAME[5,]=" "
|
||||
CDSet_NAME[6,]=" "
|
||||
CDSet_NAME[7,]=" "
|
||||
CDSet_NAME[8,]=" "
|
||||
CDSet_NAME[9,]=" "
|
||||
CDSet_NAME[10,]=" "
|
||||
CDSet_NAME[11,]=" "
|
||||
CDSet_NAME[12,]=" "
|
||||
CDSet_NAME[13,]=" "
|
||||
CDSet_NAME[14,]=" "
|
||||
CDSet_NAME[15,]=" "
|
||||
CDSet_NAME[16,]=" "
|
||||
CDSet_NAME[17,]=" "
|
||||
CDSet_NAME[18,]=" "
|
||||
CDSet_NAME[19,]=" "
|
||||
CDSet_NAME[20,]=" "
|
||||
CDSet_NAME[21,]=" "
|
||||
CDSet_NAME[22,]=" "
|
||||
CDSet_NAME[23,]=" "
|
||||
CDSet_NAME[24,]=" "
|
||||
CDSet_NAME[25,]=" "
|
||||
CDSet_NAME[26,]=" "
|
||||
CDSet_NAME[27,]=" "
|
||||
CDSet_NAME[28,]=" "
|
||||
CDSet_NAME[29,]=" "
|
||||
CDSet_NAME[30,]=" "
|
||||
|
||||
INT COLLMON_TOL_PRO[12]
|
||||
COLLMON_TOL_PRO[1]=-1
|
||||
COLLMON_TOL_PRO[2]=-1
|
||||
COLLMON_TOL_PRO[3]=-1
|
||||
COLLMON_TOL_PRO[4]=-1
|
||||
COLLMON_TOL_PRO[5]=-1
|
||||
COLLMON_TOL_PRO[6]=-1
|
||||
COLLMON_TOL_PRO[7]=-1
|
||||
COLLMON_TOL_PRO[8]=-1
|
||||
COLLMON_TOL_PRO[9]=-1
|
||||
COLLMON_TOL_PRO[10]=-1
|
||||
COLLMON_TOL_PRO[11]=-1
|
||||
COLLMON_TOL_PRO[12]=-1
|
||||
|
||||
INT COLLMON_IDX=-1
|
||||
BOOL LEARN_MODE=FALSE
|
||||
INT OFFSET_LEARN_MODE=20
|
||||
INT OFFSET_ROOT_AXES=10
|
||||
INT OFFSET_HAND_AXES=10
|
||||
INT OFFSET_EXT_AXES=10
|
||||
BOOL UPDATE_DISPLAY_DATA=FALSE
|
||||
|
||||
CHAR COLLMON_RESET_TIMESTAMP[31,18]
|
||||
COLLMON_RESET_TIMESTAMP[1,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[2,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[3,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[4,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[5,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[6,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[7,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[8,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[9,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[10,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[11,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[12,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[13,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[14,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[15,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[16,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[17,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[18,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[19,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[20,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[21,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[22,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[23,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[24,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[25,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[26,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[27,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[28,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[29,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[30,]=" "
|
||||
COLLMON_RESET_TIMESTAMP[31,]=" "
|
||||
|
||||
ENDDAT
|
||||
385
KUKA/KRC/R1/System/collmonlib.src
Normal file
385
KUKA/KRC/R1/System/collmonlib.src
Normal file
@@ -0,0 +1,385 @@
|
||||
&ACCESS R1
|
||||
&COMMENT Collision monitoring library
|
||||
DEF CollMonLib( )
|
||||
|
||||
END
|
||||
|
||||
; Schreibt die 6 Parameter (fuer jede Roboter-Achse einen) in den
|
||||
; entsprechenden Eintrag des $COLLMON_TOL PRO[]-Felds.
|
||||
; Falls ein Parameter nicht SAVE_CM_PRO_SETTING wird, behaelt der entsprechende
|
||||
; $COLLMON_TOL_PRO[]-Eintrag seinen Wert.
|
||||
GLOBAL DEF SET_CM_PRO_VALUES(CM_AX1:IN, CM_AX2:IN, CM_AX3:IN, CM_AX4:IN, CM_AX5:IN, CM_AX6:IN)
|
||||
INT TEST, CM_AX1, CM_AX2, CM_AX3, CM_AX4, CM_AX5, CM_AX6
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
TEST=CM_AX1
|
||||
IF $ERR.NUMBER == 0 THEN
|
||||
$COLLMON_TOL_PRO[1]=CM_AX1
|
||||
ENDIF
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
TEST=CM_AX2
|
||||
IF $ERR.NUMBER == 0 THEN
|
||||
$COLLMON_TOL_PRO[2]=CM_AX2
|
||||
ENDIF
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
TEST=CM_AX3
|
||||
IF $ERR.NUMBER == 0 THEN
|
||||
$COLLMON_TOL_PRO[3]=CM_AX3
|
||||
ENDIF
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
TEST=CM_AX4
|
||||
IF $ERR.NUMBER == 0 THEN
|
||||
$COLLMON_TOL_PRO[4]=CM_AX4
|
||||
ENDIF
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
TEST=CM_AX5
|
||||
IF $ERR.NUMBER == 0 THEN
|
||||
$COLLMON_TOL_PRO[5]=CM_AX5
|
||||
ENDIF
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
TEST=CM_AX6
|
||||
IF $ERR.NUMBER == 0 THEN
|
||||
$COLLMON_TOL_PRO[6]=CM_AX6
|
||||
ENDIF
|
||||
|
||||
ERR_CLEAR($ERR)
|
||||
$COLLMON_IDX = 0
|
||||
END
|
||||
|
||||
; Setzt $COLLMON_TOL_PRO[] auf die Defaultwerte aus.
|
||||
; der $CUSTOM.DAT
|
||||
GLOBAL DEF SET_CM_PRO_DEFAULT()
|
||||
INT I
|
||||
|
||||
FOR I=1 TO 12
|
||||
$COLLMON_TOL_PRO[I]=$COLLMON_TOL_PRO_DEF[I]
|
||||
ENDFOR
|
||||
$COLLMON_IDX = 0
|
||||
END
|
||||
; Setzt die globalen Werte falls welche vorhanden oder
|
||||
; deaktiviert die verbesserte Kollisionsueberwachung indem
|
||||
; $COLLMON_TOL_PRO[] auf Null gesetzt wird.
|
||||
GLOBAL DEF SET_CM_PRO_INACTIVE()
|
||||
INT I
|
||||
|
||||
IF $IMPROVED_COLLMON== TRUE THEN
|
||||
FOR I=1 TO 12
|
||||
IF (COLLMON_TOL_PRO[I] < 0) THEN ;no global COLLMON_TOL_PRO[I] exists
|
||||
$COLLMON_TOL_PRO[I]=0
|
||||
$COLLMON_IDX = 0
|
||||
ELSE
|
||||
$COLLMON_TOL_PRO[I]=COLLMON_TOL_PRO[I] ;sets $COLLMON_TOL_PRO[I] from global
|
||||
$COLLMON_IDX=COLLMON_IDX
|
||||
ENDIF
|
||||
ENDFOR
|
||||
ELSE
|
||||
FOR I=1 TO 12
|
||||
$COLLMON_TOL_PRO[I]=0
|
||||
ENDFOR
|
||||
ENDIF
|
||||
END
|
||||
|
||||
; Setzt $COLLMON_MAX auf 0 zurueck. Alle folgenden
|
||||
; Bewegungen gehen in die Maximumsbildung ein.
|
||||
GLOBAL DEF RESET_CM_MAX()
|
||||
INT I
|
||||
|
||||
FOR I=1 TO 12
|
||||
$COLLMON_MAX[I]=0
|
||||
ENDFOR
|
||||
END
|
||||
|
||||
; Sichert die aktuellen $COLLMON_TOL_PRO[]-Werte in ein
|
||||
; Parameter-Feld.
|
||||
; Parameter SETTING_IDX: Index des Collmon-Datensatz
|
||||
GLOBAL DEF SAVE_CM_PRO_SETTING(SETTING_IDX:IN)
|
||||
INT SETTING_IDX,I
|
||||
|
||||
FOR I=1 to 12
|
||||
COLLMON_SETTING[SETTING_IDX,I]=$COLLMON_TOL_PRO[I]
|
||||
ENDFOR
|
||||
END
|
||||
|
||||
; Sichert die aktuellen $COLLMON_TOL_COM[]-Werte in ein
|
||||
; Parameter-Feld.
|
||||
; Parameter SETTING_IDX: Index des Collmon-Datensatz
|
||||
GLOBAL DEF SAVE_CM_COM_SETTING(SETTING_IDX:IN)
|
||||
INT SETTING_IDX,I
|
||||
|
||||
FOR I=1 to 12
|
||||
COLLMON_SETTING[SETTING_IDX,I]=$COLLMON_TOL_COM[I]
|
||||
ENDFOR
|
||||
END
|
||||
|
||||
; Liest einen aktuell gespeicherten Collmon-Datensatz
|
||||
; Parameter SETTING_IDX: Index des Collmon-Datensatzes
|
||||
; Parameter VALUES: Array der Groesse 12 mit den Werten des Collmon-Datensatzes
|
||||
GLOBAL DEF READ_CM_SETTING(SETTING_IDX:IN, VALUES[]:OUT)
|
||||
INT SETTING_IDX
|
||||
INT VALUES[]
|
||||
INT I
|
||||
|
||||
IF ((SETTING_IDX < 1) OR (SETTING_IDX > NUM_COLLMON_SETTINGS)) THEN
|
||||
RETURN
|
||||
ENDIF
|
||||
|
||||
FOR I = 1 TO 12
|
||||
VALUES[I] = COLLMON_SETTING[SETTING_IDX,I]
|
||||
ENDFOR
|
||||
END
|
||||
|
||||
; Beschreibt einen Collmon-Datensatz
|
||||
; Parameter SETTING_IDX: Index des Collmon-Datensatzes
|
||||
; Parameter VALUES: Array der Groesse 12 mit den neuen Werten des Collmon-Datensatzes
|
||||
GLOBAL DEF WRITE_CM_SETTING(SETTING_IDX:IN, VALUES[]:OUT)
|
||||
INT SETTING_IDX
|
||||
INT VALUES[]
|
||||
INT I
|
||||
|
||||
IF ((SETTING_IDX < 1) OR (SETTING_IDX > NUM_COLLMON_SETTINGS)) THEN
|
||||
RETURN
|
||||
ENDIF
|
||||
|
||||
FOR I = 1 TO 12
|
||||
IF (VALUES[I] < 0) THEN
|
||||
COLLMON_SETTING[SETTING_IDX,I] = 0
|
||||
ELSE
|
||||
IF VALUES[I] > 500 THEN
|
||||
COLLMON_SETTING[SETTING_IDX,I] = 500
|
||||
ELSE
|
||||
COLLMON_SETTING[SETTING_IDX,I] = VALUES[I]
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDFOR
|
||||
END
|
||||
|
||||
; Sichert die aktuellen $COLLMON_MAX[]-Werte in ein
|
||||
; Collmon-Datensatz-Feld. Optional kann ein Skalierungs-Prozentwert
|
||||
; angegeben werden.
|
||||
; Parameter SETTING_IDX: Index des Collmon-Datensatz
|
||||
; Parameter OFFSET: optionaler Offset auf alle Komponenten von $COLLMON_MAX[]. Default-Wert=0.
|
||||
; Expert call
|
||||
GLOBAL DEF SAVE_CM_MAX_SETTING(SETTING_IDX:IN,OFFSET:IN)
|
||||
INT SETTING_IDX,OFFSET,TEST,OFFSET_WERT,I
|
||||
DECL INT SET_VALUES[12]
|
||||
|
||||
; Vorbelegung mit Default-Wert 0
|
||||
OFFSET_WERT=0
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
TEST=OFFSET
|
||||
|
||||
IF $ERR.NUMBER == 0 THEN
|
||||
OFFSET_WERT=OFFSET ; Parameter verwenden
|
||||
ENDIF
|
||||
|
||||
GET_COLLMON_SET(SETTING_IDX, SET_VALUES[])
|
||||
FOR I=1 to 12
|
||||
; durch Lernfahrt will man auskeschaltete Achsen nicht einschalten
|
||||
IF COLLMON_SETTING[SETTING_IDX,I] <> 0 THEN
|
||||
COLLMON_SETTING[SETTING_IDX,I]=SET_VALUES[I] + OFFSET_WERT
|
||||
ENDIF
|
||||
ENDFOR
|
||||
|
||||
ERR_CLEAR($ERR)
|
||||
END
|
||||
|
||||
; Schreibt einen gesicherten Collmon-Datensatz zurueck
|
||||
; in das $COLLMON_TOL_PRO[]-Feld.
|
||||
; Parameter SETTING_IDX: Index des Collmon-Datensatz
|
||||
GLOBAL DEF USE_CM_PRO_SETTING(SETTING_IDX:IN)
|
||||
INT SETTING_IDX,I
|
||||
|
||||
FOR I=1 to 12
|
||||
$COLLMON_TOL_PRO[I]=COLLMON_SETTING[SETTING_IDX,I]
|
||||
ENDFOR
|
||||
$COLLMON_IDX = SETTING_IDX
|
||||
END
|
||||
; Initialisiert alle Collmon-Datensaetze auf 100.
|
||||
GLOBAL DEF INIT_CM_SETTINGS()
|
||||
INT I,J
|
||||
|
||||
FOR I=1 TO NUM_COLLMON_SETTINGS
|
||||
FOR J=1 TO 12
|
||||
COLLMON_SETTING[I,J]=100
|
||||
ENDFOR
|
||||
ENDFOR
|
||||
END
|
||||
|
||||
;used in old motion command to set all 12 values
|
||||
;Expert call
|
||||
GLOBAL DEF SET_CD_PARAMS (Index :IN)
|
||||
DECL INT Index
|
||||
IF (Index > 0) AND (Index < 31) THEN
|
||||
USE_CM_PRO_SETTING (Index)
|
||||
ELSE
|
||||
SET_CM_PRO_INACTIVE()
|
||||
ENDIF
|
||||
END
|
||||
|
||||
;Expert call
|
||||
GLOBAL DEF USE_CD_PARAMS (Index :IN)
|
||||
DECL INT Index, I
|
||||
IF (Index > 0) AND (Index < 31) THEN
|
||||
FOR I=1 to 12
|
||||
COLLMON_TOL_PRO[I]=COLLMON_SETTING[Index,I] ; saves COLLMON_TOL_PRO for global using
|
||||
ENDFOR
|
||||
COLLMON_IDX=Index
|
||||
USE_CM_PRO_SETTING (Index)
|
||||
ELSE
|
||||
FOR I=1 to 12
|
||||
COLLMON_TOL_PRO[I]=-1 ; saves COLLMON_TOL_PRO for global using
|
||||
ENDFOR
|
||||
COLLMON_IDX=-1
|
||||
SET_CM_PRO_INACTIVE()
|
||||
ENDIF
|
||||
END
|
||||
|
||||
;resets COLLMON_TOL_PRO on the begin of KRL module
|
||||
;by call BAS(#INITMOV,0)
|
||||
GLOBAL DEF RESET_CD_PARAMS ()
|
||||
DECL INT I
|
||||
FOR I=1 to 12
|
||||
COLLMON_TOL_PRO[I]=-1 ; resets COLLMON_TOL_PRO for global using
|
||||
ENDFOR
|
||||
COLLMON_IDX=-1
|
||||
END
|
||||
|
||||
;used in spline command to set all 12 values by just one call
|
||||
;like ...WITH $COLLMON_TOL_PRO[1]=USE_CM_PRO_VALUES(SETTING_IDX)
|
||||
GLOBAL DEFFCT INT USE_CM_PRO_VALUES(SETTING_IDX:IN)
|
||||
INT SETTING_IDX
|
||||
|
||||
IF (SETTING_IDX == -1) THEN ;Force deactivation
|
||||
$COLLMON_TOL_PRO[2]=0
|
||||
$COLLMON_TOL_PRO[3]=0
|
||||
$COLLMON_TOL_PRO[4]=0
|
||||
$COLLMON_TOL_PRO[5]=0
|
||||
$COLLMON_TOL_PRO[6]=0
|
||||
$COLLMON_TOL_PRO[7]=0
|
||||
$COLLMON_TOL_PRO[8]=0
|
||||
$COLLMON_TOL_PRO[9]=0
|
||||
$COLLMON_TOL_PRO[10]=0
|
||||
$COLLMON_TOL_PRO[11]=0
|
||||
$COLLMON_TOL_PRO[12]=0
|
||||
$COLLMON_IDX = 0
|
||||
RETURN 0
|
||||
ENDIF
|
||||
|
||||
IF (SETTING_IDX > 0) AND (SETTING_IDX < 31) THEN
|
||||
$COLLMON_TOL_PRO[2]=COLLMON_SETTING[SETTING_IDX,2]
|
||||
$COLLMON_TOL_PRO[3]=COLLMON_SETTING[SETTING_IDX,3]
|
||||
$COLLMON_TOL_PRO[4]=COLLMON_SETTING[SETTING_IDX,4]
|
||||
$COLLMON_TOL_PRO[5]=COLLMON_SETTING[SETTING_IDX,5]
|
||||
$COLLMON_TOL_PRO[6]=COLLMON_SETTING[SETTING_IDX,6]
|
||||
$COLLMON_TOL_PRO[7]=COLLMON_SETTING[SETTING_IDX,7]
|
||||
$COLLMON_TOL_PRO[8]=COLLMON_SETTING[SETTING_IDX,8]
|
||||
$COLLMON_TOL_PRO[9]=COLLMON_SETTING[SETTING_IDX,9]
|
||||
$COLLMON_TOL_PRO[10]=COLLMON_SETTING[SETTING_IDX,10]
|
||||
$COLLMON_TOL_PRO[11]=COLLMON_SETTING[SETTING_IDX,11]
|
||||
$COLLMON_TOL_PRO[12]=COLLMON_SETTING[SETTING_IDX,12]
|
||||
$COLLMON_IDX = SETTING_IDX
|
||||
RETURN COLLMON_SETTING[SETTING_IDX,1]
|
||||
ELSE
|
||||
IF (COLLMON_TOL_PRO[1] < 0) THEN ;no global COLLMON_TOL_PRO[I] exists
|
||||
$COLLMON_TOL_PRO[2]=0
|
||||
$COLLMON_TOL_PRO[3]=0
|
||||
$COLLMON_TOL_PRO[4]=0
|
||||
$COLLMON_TOL_PRO[5]=0
|
||||
$COLLMON_TOL_PRO[6]=0
|
||||
$COLLMON_TOL_PRO[7]=0
|
||||
$COLLMON_TOL_PRO[8]=0
|
||||
$COLLMON_TOL_PRO[9]=0
|
||||
$COLLMON_TOL_PRO[10]=0
|
||||
$COLLMON_TOL_PRO[11]=0
|
||||
$COLLMON_TOL_PRO[12]=0
|
||||
$COLLMON_IDX = 0
|
||||
RETURN 0
|
||||
ELSE
|
||||
$COLLMON_TOL_PRO[2]=COLLMON_TOL_PRO[2] ;sets $COLLMON_TOL_PRO[I] from global
|
||||
$COLLMON_TOL_PRO[3]=COLLMON_TOL_PRO[3] ;sets $COLLMON_TOL_PRO[I] from global
|
||||
$COLLMON_TOL_PRO[4]=COLLMON_TOL_PRO[4] ;sets $COLLMON_TOL_PRO[I] from global
|
||||
$COLLMON_TOL_PRO[5]=COLLMON_TOL_PRO[5] ;sets $COLLMON_TOL_PRO[I] from global
|
||||
$COLLMON_TOL_PRO[6]=COLLMON_TOL_PRO[6] ;sets $COLLMON_TOL_PRO[I] from global
|
||||
IF (COLLMON_TOL_PRO[7]>-1) THEN
|
||||
$COLLMON_TOL_PRO[7]=COLLMON_TOL_PRO[7] ;sets $COLLMON_TOL_PRO[I] from global
|
||||
ELSE
|
||||
$COLLMON_TOL_PRO[7]=0
|
||||
ENDIF
|
||||
IF (COLLMON_TOL_PRO[8]>-1) THEN
|
||||
$COLLMON_TOL_PRO[8]=COLLMON_TOL_PRO[8] ;sets $COLLMON_TOL_PRO[I] from global
|
||||
ELSE
|
||||
$COLLMON_TOL_PRO[8]=0
|
||||
ENDIF
|
||||
IF (COLLMON_TOL_PRO[9]>-1) THEN
|
||||
$COLLMON_TOL_PRO[9]=COLLMON_TOL_PRO[9] ;sets $COLLMON_TOL_PRO[I] from global
|
||||
ELSE
|
||||
$COLLMON_TOL_PRO[9]=0
|
||||
ENDIF
|
||||
IF (COLLMON_TOL_PRO[10]>-1) THEN
|
||||
$COLLMON_TOL_PRO[10]=COLLMON_TOL_PRO[10] ;sets $COLLMON_TOL_PRO[I] from global
|
||||
ELSE
|
||||
$COLLMON_TOL_PRO[10]=0
|
||||
ENDIF
|
||||
IF (COLLMON_TOL_PRO[11]>-1) THEN
|
||||
$COLLMON_TOL_PRO[11]=COLLMON_TOL_PRO[11] ;sets $COLLMON_TOL_PRO[I] from global
|
||||
ELSE
|
||||
$COLLMON_TOL_PRO[11]=0
|
||||
ENDIF
|
||||
IF (COLLMON_TOL_PRO[12]>-1) THEN
|
||||
$COLLMON_TOL_PRO[12]=COLLMON_TOL_PRO[12] ;sets $COLLMON_TOL_PRO[I] from global
|
||||
ELSE
|
||||
$COLLMON_TOL_PRO[12]=0
|
||||
ENDIF
|
||||
$COLLMON_IDX=COLLMON_IDX
|
||||
RETURN COLLMON_TOL_PRO[1] ;returns $COLLMON_TOL_PRO[I] from global
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDFCT
|
||||
|
||||
;Expert call
|
||||
GLOBAL DEF SET_TQ_VALUES ( TQ_AX1:IN, TQ_AX2:IN, TQ_AX3:IN, TQ_AX4:IN, TQ_AX5:IN, TQ_AX6:IN)
|
||||
INT I, TQ_AX1, TQ_AX2, TQ_AX3, TQ_AX4, TQ_AX5, TQ_AX6
|
||||
|
||||
IF $IMPROVED_COLLMON== TRUE THEN
|
||||
ON_ERROR_PROCEED
|
||||
$COLLMON_TOL_PRO[1]=TQ_AX1
|
||||
IF $ERR.NUMBER == 0 THEN
|
||||
$COLLMON_TOL_PRO[2]=TQ_AX2
|
||||
$COLLMON_TOL_PRO[3]=TQ_AX3
|
||||
$COLLMON_TOL_PRO[4]=TQ_AX4
|
||||
$COLLMON_TOL_PRO[5]=TQ_AX5
|
||||
$COLLMON_TOL_PRO[6]=TQ_AX6
|
||||
ELSE
|
||||
FOR I=1 TO 12
|
||||
$COLLMON_TOL_PRO[I]=$COLLMON_TOL_PRO_DEF[I]
|
||||
ENDFOR
|
||||
ERR_CLEAR($ERR)
|
||||
ENDIF
|
||||
FOR I=1 TO 12
|
||||
COLLMON_TOL_PRO[I]=$COLLMON_TOL_PRO[I]
|
||||
ENDFOR
|
||||
COLLMON_IDX=0
|
||||
$COLLMON_IDX = 0
|
||||
ELSE
|
||||
ON_ERROR_PROCEED
|
||||
$TORQMON[1]=TQ_AX1
|
||||
IF $ERR.NUMBER == 0 THEN
|
||||
$TORQMON[2]=TQ_AX2
|
||||
$TORQMON[3]=TQ_AX3
|
||||
$TORQMON[4]=TQ_AX4
|
||||
$TORQMON[5]=TQ_AX5
|
||||
$TORQMON[6]=TQ_AX6
|
||||
ELSE
|
||||
FOR I=1 TO 12
|
||||
$TORQMON[I]=$TORQMON_DEF[I]
|
||||
ENDFOR
|
||||
ERR_CLEAR($ERR)
|
||||
ENDIF
|
||||
ENDIF
|
||||
END
|
||||
70
KUKA/KRC/R1/System/ir_stopm.src
Normal file
70
KUKA/KRC/R1/System/ir_stopm.src
Normal file
@@ -0,0 +1,70 @@
|
||||
&ACCESS R1
|
||||
&COMMENT HandlerOnRobotFault
|
||||
DEF IR_STOPM ( )
|
||||
;-----------------------------------
|
||||
; Error Handling Robot Controller
|
||||
; Switch OFF and Switch ON processes
|
||||
; KRC Version >= V5.5
|
||||
;-----------------------------------
|
||||
;FOLD DECLARATIONS
|
||||
;FOLD USER DECL
|
||||
; Please insert user defined declarations
|
||||
|
||||
;ENDFOLD (USER DECL)
|
||||
;FOLD BASISTECH DECL
|
||||
BOOL ApplicationRunFlag
|
||||
DECL CHAR ID[3]
|
||||
;ENDFOLD (BASISTECH DECL)
|
||||
;ENDFOLD (DECLARATIONS)
|
||||
;FOLD BASISTECH INIT
|
||||
INTERRUPT OFF 3
|
||||
STOPM_FLAG=TRUE ;Reflects state of interrupt 3 to activate/deactivate $Stopmess interrupt
|
||||
ID[]="CTL"
|
||||
If ($STOPMESS==TRUE) THEN ;APP// "IF" ~ Notepad++ Formatierung
|
||||
BRAKE
|
||||
;ENDFOLD (BASISTECH INIT)
|
||||
|
||||
;FOLD USER STOP
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER STOP)
|
||||
;FOLD COLLISION DETECTION
|
||||
IF ($IMPROVED_COLLMON == TRUE) AND ($COLL_ALARM == TRUE) THEN
|
||||
CollDetect_UserAction()
|
||||
ENDIF
|
||||
;ENDFOLD COLLISION DETECTION
|
||||
;FOLD BASISTECH STOP
|
||||
P00 (#EXT_ERR,#PGNO_GET,ID[],128 )
|
||||
ApplicationRunFlag=FALSE
|
||||
IF (Appl_Run>0) THEN
|
||||
IF $OUT[Appl_Run] THEN
|
||||
ApplicationRunFlag=TRUE
|
||||
$OUT[Appl_Run]=FALSE
|
||||
ENDIF
|
||||
ENDIF
|
||||
REPEAT
|
||||
POWER=SYNC()
|
||||
HALT
|
||||
UNTIL (($STOPMESS==FALSE) AND ($POWER_FAIL==FALSE))
|
||||
;ENDFOLD (BASISTECH STOP)
|
||||
|
||||
;FOLD BASISTECH RESTART
|
||||
P00 (#EXT_ERR,#PGNO_GET,ID[],0 )
|
||||
IF (ApplicationRunFlag==TRUE) THEN
|
||||
IF (Appl_Run>0) THEN
|
||||
$OUT[Appl_Run]=TRUE
|
||||
ENDIF
|
||||
ENDIF
|
||||
;ENDFOLD (BASISTECH RESTART)
|
||||
;FOLD USER RESTART
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER RESTART)
|
||||
|
||||
;FOLD BASISTECH REACTIVATE
|
||||
Endif ;APP// "ENDIF" ~ Notepad++ Formatierung
|
||||
INTERRUPT ON 3
|
||||
STOPM_FLAG=FALSE ;Reflects state of interrupt 3 to activate/deactivate $Stopmess interrupt
|
||||
;ENDFOLD (BASISTECH REACTIVATE)
|
||||
END
|
||||
|
||||
30
KUKA/KRC/R1/System/masref_main.dat
Normal file
30
KUKA/KRC/R1/System/masref_main.dat
Normal file
@@ -0,0 +1,30 @@
|
||||
&ACCESS RVO
|
||||
&REL 4
|
||||
&COMMENT Mastering Reference Main Task
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM DISKPATH = KRC:\R1\System
|
||||
DEFDAT MASREF_MAIN
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLERATIONS)
|
||||
;FOLD Messages
|
||||
DECL CONST CHAR MASREF_Modulname[6]
|
||||
MASREF_Modulname[]="MasRef"
|
||||
DECL KRLMSGOPT_T MASREF_MsgOptWithLogging={VL_STOP TRUE,CLEAR_P_RESET TRUE,LOG_TO_DB TRUE}
|
||||
DECL INT MASREF_StateMsgHandle=0 ; 0=> no handle exists
|
||||
;ENDFOLD (Messages)
|
||||
;FOLD timeout
|
||||
DECL CONST REAL MASREF_TimeoutOneCycle=0.096 ; one wait cycle is 8*12ms=96ms
|
||||
DECL CONST INT MASREF_nLapsedTimeout=30 ; means ca. 3s
|
||||
DECL INT MASREF_nLapsedTime=0 ; actual count of wait cycle
|
||||
;ENDFOLD (timeout)
|
||||
;FOLD reference groups
|
||||
DECL CONST INT MASREF_GroupSequenceSize=3 ; length of sequence list for reference groups
|
||||
DECL INT MASREF_GroupSequenceIdx=0 ; for iteration over the array of group sequence
|
||||
DECL INT MASREF_GroupNumber=0 ; actual group under test
|
||||
;ENDFOLD (reference groups)
|
||||
ENDDAT
|
||||
128
KUKA/KRC/R1/System/masref_main.src
Normal file
128
KUKA/KRC/R1/System/masref_main.src
Normal file
@@ -0,0 +1,128 @@
|
||||
&ACCESS RVO
|
||||
&REL 4
|
||||
&COMMENT Mastering Reference Main Task
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM DISKPATH = KRC:\R1\System
|
||||
DEF MasRef_Main()
|
||||
;*******************************************
|
||||
;* main module for safety relevant feature *
|
||||
;* 'Master Reference' *
|
||||
;*******************************************
|
||||
;FOLD Start conditions for mastering reference
|
||||
MsgState(MASREF_StateMsgHandle,"MasterReferenceCheckStartConditions",MASREF_Modulname[],,, 103)
|
||||
IF Varstate("$pro_ip.si01.name[]") <> #DECLARED THEN
|
||||
;APP//MasRef_Main() wurde von einem uebergeordneten Programm aufgerufen
|
||||
IF NOT $MasteringTest_Req_Ext AND NOT $MasteringTest_Req_Int THEN
|
||||
;APP//weder interne noch externe Anforderung ist freigegeben
|
||||
WAIT FOR Clear_KrlMsg(MASREF_StateMsgHandle)
|
||||
RETURN
|
||||
ENDIF
|
||||
ENDIF
|
||||
;APPBLOCK/*
|
||||
;Signale Referenzgruppe in Position und
|
||||
;Justagereferenzierung aktiv zuruecksetzen
|
||||
;APPBLOCK*/
|
||||
$MasteringTest_Group = 0
|
||||
$MasteringTest_Active = FALSE
|
||||
;APPBLOCK/*
|
||||
;Schalter Hardware pruefen und
|
||||
;Schalter darf nicht bedaempft sein
|
||||
;APPBLOCK*/
|
||||
REPEAT
|
||||
IF NOT $MasteringTest_Switch_OK THEN
|
||||
;APP//wartet auf Quittierung
|
||||
MsgQuit("MasterReferenceSwitchFailure", MASREF_Modulname[], , , 100, MASREF_MsgOptWithLogging)
|
||||
ENDIF
|
||||
;APP//aktiviert Safety-Modul
|
||||
$MasteringTest_Active = TRUE
|
||||
WAIT SEC 0.2
|
||||
;APP//lesend: Safety-Modul hat Variable wieder deaktiviert
|
||||
IF NOT $MasteringTest_Active THEN
|
||||
;APP//wartet auf Quittierung
|
||||
MsgQuit("MasterReferenceNotActivated", MASREF_Modulname[], , , 101, MASREF_MsgOptWithLogging)
|
||||
ENDIF
|
||||
UNTIL $MasteringTest_Active AND $MasteringTest_Switch_OK
|
||||
WAIT FOR Clear_KrlMsg(MASREF_StateMsgHandle)
|
||||
;ENDFOLD (Start conditions for mastering reference)
|
||||
;FOLD Reference group testing
|
||||
FOR MASREF_GroupSequenceIdx = 1 TO MASREF_GroupSequenceSize
|
||||
MASREF_GroupNumber = MASREFg_GroupSequence[MASREF_GroupSequenceIdx]
|
||||
IF MASREF_GroupNumber > 0 THEN
|
||||
MsgState(MASREF_StateMsgHandle,"MasterReferenceGroup",MASREF_Modulname[], MASREF_GroupNumber, , 104, MASREF_MsgOptWithLogging)
|
||||
RunTest_Group(MASREF_GroupNumber)
|
||||
WAIT FOR Clear_KrlMsg(MASREF_StateMsgHandle)
|
||||
ENDIF
|
||||
ENDFOR
|
||||
;ENDFOLD (Reference group testing)
|
||||
;FOLD Finalize mastering reference
|
||||
MsgState(MASREF_StateMsgHandle,"MasterReferenceFinalize",MASREF_Modulname[],,, 106)
|
||||
;APP//Positionspruefung in Sicherheitssteuerung beendet
|
||||
$MasteringTest_Active = FALSE
|
||||
|
||||
MASREF_nLapsedTime = 0
|
||||
REPEAT
|
||||
WAIT SEC MASREF_TimeoutOneCycle
|
||||
MASREF_nLapsedTime = MASREF_nLapsedTime + 1
|
||||
;APPBLOCK/*
|
||||
;lesend: warte bis Safety-Modul Variable auf FALSE setzt
|
||||
;oder Timeout abgelaufen
|
||||
;APPBLOCK*/
|
||||
UNTIL (NOT $MasteringTest_Active AND NOT $MasteringTest_Req_Int) or (MASREF_nLapsedTime > MASREF_nLapsedTimeout)
|
||||
|
||||
IF $MasteringTest_Active THEN
|
||||
;APP//wartet auf Quittierung
|
||||
MsgQuit("MasterReferenceFailed", MASREF_Modulname[], , , 102, MASREF_MsgOptWithLogging)
|
||||
ENDIF
|
||||
WAIT FOR Clear_KrlMsg(MASREF_StateMsgHandle)
|
||||
;ENDFOLD (Finalize mastering reference)
|
||||
END
|
||||
|
||||
DEF RunTest_Group(nGrpNr:IN)
|
||||
;FOLD Declaration
|
||||
INT nGrpNr
|
||||
;ENDFOLD (Declaration)
|
||||
;FOLD Implementation
|
||||
IF (nGrpNr <= 0) OR (nGrpNr > 3) THEN
|
||||
MsgQuit("MasterReferenceUnknownGroup", MASREF_Modulname[], nGrpNr, , 105, MASREF_MsgOptWithLogging)
|
||||
RETURN
|
||||
ENDIF
|
||||
|
||||
SWITCH nGrpNr
|
||||
CASE 1
|
||||
;APP//Pruefposition Gruppe 1 anfahren
|
||||
MasRefStartG1()
|
||||
CASE 2
|
||||
;APP//Pruefposition Gruppe 2 anfahren
|
||||
MasRefStartG2()
|
||||
CASE 3
|
||||
;APP//Pruefposition Gruppe 3 anfahren
|
||||
MasRefStartG3()
|
||||
DEFAULT
|
||||
ENDSWITCH
|
||||
|
||||
;APP//warte bis Pruefposition sicher erreicht
|
||||
WAIT SEC 0.5
|
||||
;APP//aktiviert Signal Referenzgruppe x in Position
|
||||
$MasteringTest_Group = nGrpNr
|
||||
;APP//warte bis Pruefung abgeschlossen
|
||||
WAIT SEC 0.5
|
||||
|
||||
SWITCH nGrpNr
|
||||
CASE 1
|
||||
;APP//zurueck von Pruefposition Gruppe 1
|
||||
MasRefBackG1()
|
||||
CASE 2
|
||||
;APP//zurueck von Pruefposition Gruppe 2
|
||||
MasRefBackG2()
|
||||
CASE 3
|
||||
;APP// zurueck von Pruefposition Gruppe 3
|
||||
MasRefBackG3()
|
||||
DEFAULT
|
||||
ENDSWITCH
|
||||
|
||||
WAIT SEC 0.2
|
||||
;APP//deaktiviert Signal Referenzgruppe x in Position
|
||||
$MasteringTest_Group = 0
|
||||
WAIT SEC 0.2
|
||||
;ENDFOLD (Implementation)
|
||||
END
|
||||
87
KUKA/KRC/R1/System/sps.sub
Normal file
87
KUKA/KRC/R1/System/sps.sub
Normal file
@@ -0,0 +1,87 @@
|
||||
&ACCESS RVP
|
||||
&COMMENT PLC on control
|
||||
DEF SPS ( )
|
||||
;FOLD DECLARATIONS
|
||||
;FOLD BASISTECH DECL
|
||||
;Automatik extern
|
||||
DECL STATE_T STAT
|
||||
DECL MODUS_T MODE
|
||||
;ENDFOLD (BASISTECH DECL)
|
||||
;FOLD USER DECL
|
||||
; Please insert user defined declarations
|
||||
|
||||
;ENDFOLD (USER DECL)
|
||||
;ENDFOLD (DECLARATIONS)
|
||||
;FOLD INI
|
||||
;FOLD BASISTECH INIT
|
||||
BasisTech_PLC_INIT()
|
||||
;ENDFOLD (BASISTECH INIT)
|
||||
;FOLD AUTOEXT INIT
|
||||
INTERRUPT DECL 91 WHEN $PRO_STATE1==#P_FREE DO RESET_OUT ()
|
||||
INTERRUPT ON 91
|
||||
INTERRUPT DECL 92 WHEN $PRO_MOVE==TRUE DO RESET_LINESEL()
|
||||
INTERRUPT ON 92
|
||||
$LOOP_MSG[]=" "
|
||||
MODE=#SYNC
|
||||
$H_POS=$H_POS
|
||||
;Automatik extern
|
||||
IF $MODE_OP==#EX THEN
|
||||
CWRITE($CMD,STAT,MODE,"RUN /R1/CELL()")
|
||||
ENDIF
|
||||
;ENDFOLD (AUTOEXT INIT)
|
||||
;FOLD BACKUPMANAGER PLC INIT
|
||||
BM_ENABLED = FALSE
|
||||
BM_OUTPUTVALUE = 0
|
||||
;ENDFOLD (BACKUPMANAGER PLC INIT)
|
||||
;FOLD USER INIT
|
||||
; Please insert user defined initialization commands
|
||||
|
||||
;ENDFOLD (USER INIT)
|
||||
;ENDFOLD (INI)
|
||||
|
||||
LOOP
|
||||
WAIT FOR NOT($POWER_FAIL)
|
||||
;FOLD BASISTECH PLC
|
||||
BasisTech_PLC_LOOP()
|
||||
;ENDFOLD (BASISTECH PLC)
|
||||
;FOLD BACKUPMANAGER PLC
|
||||
IF BM_ENABLED THEN
|
||||
BM_OUTPUTSIGNAL = BM_OUTPUTVALUE
|
||||
ENDIF
|
||||
;ENDFOLD (BACKUPMANAGER PLC)
|
||||
;FOLD USER PLC
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER PLC)
|
||||
ENDLOOP
|
||||
;FOLD ;%{H}
|
||||
;FOLD
|
||||
END
|
||||
;ENDFOLD
|
||||
|
||||
|
||||
DEF RESET_OUT ( )
|
||||
INT N
|
||||
MsgLoop(" ")
|
||||
IF REFLECT_PROG_NR == 1 THEN
|
||||
FOR N = 0 TO PGNO_LENGTH - 1
|
||||
$OUT[PGNO_FBIT_REFL + N] = FALSE
|
||||
ENDFOR
|
||||
ENDIF
|
||||
IF (PGNO_REQ>0) THEN
|
||||
$OUT[PGNO_REQ]=FALSE
|
||||
ELSE
|
||||
IF (PGNO_REQ<0) THEN
|
||||
$OUT[-PGNO_REQ]=TRUE
|
||||
ENDIF
|
||||
ENDIF
|
||||
END
|
||||
|
||||
DEF RESET_LINESEL()
|
||||
$LINE_SEL_OK=FALSE
|
||||
END
|
||||
;FOLD USER SUBROUTINE
|
||||
; Integrate your user defined subroutines
|
||||
|
||||
;ENDFOLD (USER SUBROUTINE)
|
||||
;ENDFOLD
|
||||
15
KUKA/KRC/R1/TP/BrakeTest/BrakeTestAxes.dat
Normal file
15
KUKA/KRC/R1/TP/BrakeTest/BrakeTestAxes.dat
Normal file
@@ -0,0 +1,15 @@
|
||||
&ACCESS RVO
|
||||
&REL 1
|
||||
&COMMENT BrkTst-main task for unconfigured brake test axes
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM DISKPATH = KRC:\R1\TP\BrakeTest
|
||||
DEFDAT BrakeTestAxes PUBLIC
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLERATIONS)
|
||||
|
||||
ENDDAT
|
||||
30
KUKA/KRC/R1/TP/BrakeTest/BrakeTestAxes.src
Normal file
30
KUKA/KRC/R1/TP/BrakeTest/BrakeTestAxes.src
Normal file
@@ -0,0 +1,30 @@
|
||||
&ACCESS RVO
|
||||
&REL 1
|
||||
&COMMENT BrkTst-main task for unconfigured brake test axes
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM DISKPATH = KRC:\R1\TP\BrakeTest
|
||||
DEF BRAKETESTAXES(AxesBitMask: IN)
|
||||
;BRAKETESTAXES(AxesBitMask: IN)
|
||||
;examples for parameter AxesBitMask
|
||||
;no parameter or -1 means all configured axes
|
||||
;'b00000000000011' means axis 1 and 2
|
||||
;'b10000000000001' means axis 1 and 12
|
||||
;'b11000000000000' means axis 11 and 12
|
||||
;FOLD {H}
|
||||
INT AxesBitMask
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
AxesBitMask=AxesBitMask*1
|
||||
|
||||
IF ($ERR.Number<>0) THEN
|
||||
AxesBitMask=-1
|
||||
ERR_CLEAR($ERR)
|
||||
ELSE
|
||||
ERR_RAISE($ERR)
|
||||
ENDIF
|
||||
|
||||
gBraketestForce=true
|
||||
BRAKETESTREQ(AxesBitMask)
|
||||
gBraketestForce=false
|
||||
;ENDFOLD
|
||||
END
|
||||
17
KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.dat
Normal file
17
KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.dat
Normal file
@@ -0,0 +1,17 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
&COMMENT path after test
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe
|
||||
DEFDAT BrakeTestBack
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make here your modifications
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLERATIONS)
|
||||
ENDDAT
|
||||
19
KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.src
Normal file
19
KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.src
Normal file
@@ -0,0 +1,19 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
&COMMENT path after test
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe
|
||||
DEF BrakeTestBack( )
|
||||
;FOLD INI
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
;Teach here the motion to the position after the brake test.
|
||||
|
||||
END
|
||||
19
KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.dat
Normal file
19
KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.dat
Normal file
@@ -0,0 +1,19 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
&COMMENT parkposition
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe
|
||||
&PARAM DISKPATH = KRC:\R1\TP\BrakeTest
|
||||
DEFDAT BRAKETESTPARK PUBLIC
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make here your modifications
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLERATIONS)
|
||||
DECL E6AXIS XParkPosition={A1 999.000,A2 999.000,A3 999.000,A4 999.000,A5 999.000,A6 999.000,E1 999.000,E2 999.000,E3 999.000,E4 999.000,E5 999.000,E6 999.000}
|
||||
DECL FDAT FParkPosition={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
ENDDAT
|
||||
35
KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.src
Normal file
35
KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.src
Normal file
@@ -0,0 +1,35 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
&COMMENT parkposition
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe
|
||||
&PARAM DISKPATH = KRC:\R1\TP\BrakeTest
|
||||
DEF BrakeTestPark( )
|
||||
;FOLD INI
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
;Teach here the motion to the parking position. The parking position is needed when the robot has failed the brake test.
|
||||
;FOLD {h}
|
||||
WHILE ParkPositionInNotValid()
|
||||
MsgDialog(SUCCESS,"ParkPositionIsNotValid",brakeTestMdbName[],,,,,,,"Ok")
|
||||
HALT
|
||||
ENDWHILE
|
||||
;ENDFOLD
|
||||
;FOLD SPTP ParkPosition Vel=10 % DEFAULT Tool[1] Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=ParkPosition; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=DEFAULT; Kuka.VelocityPtp=10; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XParkPosition WITH $VEL_AXIS[1] = SVEL_JOINT(10.0), $TOOL = STOOL2(FParkPosition), $BASE = SBASE(FParkPosition.BASE_NO), $IPO_MODE = SIPO_MODE(FParkPosition.IPO_FRAME), $LOAD = SLOAD(FParkPosition.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PDEFAULT), $APO = SAPO_PTP(PDEFAULT), $GEAR_JERK[1] = SGEAR_JERK(PDEFAULT), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
END
|
||||
;FOLD {h}
|
||||
Global DEFFCT BOOL ParkPositionInNotValid()
|
||||
RETURN ((XParkPosition.A1 == 999) AND (XParkPosition.A2 == 999) AND (XParkPosition.A3 == 999) AND (XParkPosition.A4 == 999) AND (XParkPosition.A5 == 999) AND (XParkPosition.A6 == 999) AND (XParkPosition.E1 == 999) AND (XParkPosition.E2 == 999) AND (XParkPosition.E3 == 999) AND (XParkPosition.E4 == 999) AND (XParkPosition.E5 == 999) AND (XParkPosition.E6 == 999))
|
||||
ENDFCT
|
||||
;ENDFOLD
|
||||
24
KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.dat
Normal file
24
KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.dat
Normal file
@@ -0,0 +1,24 @@
|
||||
&ACCESS RVO
|
||||
&REL 1
|
||||
&COMMENT BrkTst-main task
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM DISKPATH = TP/BrakeTest
|
||||
DEFDAT BRAKETESTREQ PUBLIC
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLERATIONS)
|
||||
|
||||
DECL BRAKE_STATE RobotBrkState
|
||||
GLOBAL CHAR brakeTestMdbName[30]
|
||||
brakeTestMdbName[]="BrkTst"
|
||||
|
||||
GLOBAL INT MaxCountResultUnknown = 10
|
||||
GLOBAL BOOL gBraketestForce=false
|
||||
DECL INT CountResultUnknown = 0
|
||||
|
||||
|
||||
ENDDAT
|
||||
122
KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.src
Normal file
122
KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.src
Normal file
@@ -0,0 +1,122 @@
|
||||
&ACCESS RVO
|
||||
&REL 1
|
||||
&COMMENT BrkTst-main task
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM DISKPATH = TP/BrakeTest
|
||||
DEF BRAKETESTREQ(AxesBitMask: IN)
|
||||
;BRAKETESTREQ
|
||||
;fold {h}
|
||||
INT Idx, Key, AxesBitMask
|
||||
BOOL Test_Ende
|
||||
BOOL BraketestForce
|
||||
BraketestForce=false
|
||||
IF gBraketestForce THEN
|
||||
BraketestForce=true
|
||||
ENDIF
|
||||
gBraketestForce=false
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
AxesBitMask=AxesBitMask*1
|
||||
|
||||
IF ($ERR.Number<>0) THEN
|
||||
AxesBitMask=-1
|
||||
ERR_CLEAR($ERR)
|
||||
ELSE
|
||||
ERR_RAISE($ERR)
|
||||
ENDIF
|
||||
|
||||
IF Varstate("$pro_ip.si01.name[]")==#declared THEN ;program selected
|
||||
MsgDialog(Key, "DlgPeformManuallyBrakeTest", brakeTestMdbName[], , "Cancel", "GoToPark", "BTman",,,,,FALSE)
|
||||
SWITCH Key ;dialogue answer
|
||||
|
||||
CASE 5
|
||||
BraketestForce=TRUE
|
||||
|
||||
CASE 6
|
||||
BrakeTestStart()
|
||||
BraketestError()
|
||||
|
||||
CASE 7
|
||||
Return
|
||||
|
||||
DEFAULT
|
||||
Return
|
||||
ENDSWITCH
|
||||
ELSE ;cyclic call
|
||||
IF NOT($BRAKETEST_REQ_INT) AND NOT(BraketestForce) THEN
|
||||
Return
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
Test_Ende=false
|
||||
|
||||
RobotBrkState=#BT_UNTESTED
|
||||
|
||||
BrakeTestStart()
|
||||
|
||||
BAS (#INITMOV,0 )
|
||||
repeat
|
||||
|
||||
PTP $AXIS_ACT
|
||||
|
||||
RobotBrkState = Test_BRAKE(AxesBitMask, BraketestForce)
|
||||
|
||||
SWITCH RobotBrkState
|
||||
|
||||
CASE #BT_WARNING,#BT_EXCESSIVE, #BT_MAXUNKNOWN, #BT_READY
|
||||
CountResultUnknown = 0
|
||||
Test_Ende = TRUE
|
||||
|
||||
CASE #BT_ERROR
|
||||
BraketestError()
|
||||
|
||||
CASE #BT_UNKNOWN
|
||||
Test_Ende = BraketestUnknown()
|
||||
|
||||
CASE #BT_UNTESTED
|
||||
Test_Ende = TRUE
|
||||
|
||||
ENDSWITCH
|
||||
|
||||
until Test_Ende
|
||||
|
||||
BrakeTestBack()
|
||||
|
||||
END
|
||||
|
||||
|
||||
DEF BraketestError()
|
||||
INT Key
|
||||
|
||||
Key = 0
|
||||
MsgDialog(Key, "BT_BRAKE_ERROR", brakeTestMdbName[]," ", "GoToPark",,,,,,,FALSE)
|
||||
|
||||
BrakeTestPark()
|
||||
WAIT FOR TRUE
|
||||
|
||||
repeat
|
||||
MsgNotify("ParkPositionReached", brakeTestMdbName[])
|
||||
halt
|
||||
until false
|
||||
|
||||
END
|
||||
|
||||
|
||||
DEFFCT BOOL BraketestUnknown()
|
||||
INT Key
|
||||
Key=0
|
||||
CountResultUnknown = CountResultUnknown + 1
|
||||
|
||||
IF (CountResultUnknown >= MaxCountResultUnknown) THEN
|
||||
|
||||
MsgDialog(Key, "BT_BRAKE_UNKNOWN", brakeTestMdbName[]," ", "TryAgain", "Cancel",,,,,,FALSE)
|
||||
IF Key==7 then
|
||||
Return FALSE
|
||||
ELSE
|
||||
Return TRUE
|
||||
ENDIF
|
||||
ELSE
|
||||
Return TRUE
|
||||
ENDIF
|
||||
ENDFCT
|
||||
;endfold
|
||||
17
KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.dat
Normal file
17
KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.dat
Normal file
@@ -0,0 +1,17 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
&COMMENT path to test
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe
|
||||
DEFDAT BrakeTestStart
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make here your modifications
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLERATIONS)
|
||||
ENDDAT
|
||||
19
KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.src
Normal file
19
KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.src
Normal file
@@ -0,0 +1,19 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
&COMMENT path to test
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe
|
||||
DEF BrakeTestStart( )
|
||||
;FOLD INI
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
;Teach here the motion to the start position of the brake test.
|
||||
|
||||
END
|
||||
27
KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL.dat
Normal file
27
KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL.dat
Normal file
@@ -0,0 +1,27 @@
|
||||
&ACCESS RO
|
||||
&REL 2396
|
||||
&PARAM DISKPATH = KRC:\R1\TP\EthernetKRL
|
||||
DEFDAT EthernetKRL PUBLIC
|
||||
;************************************************************
|
||||
; CopyRight KUKA Deutschland GmbH 2018
|
||||
; last modified 23.11.2016
|
||||
; prefix EKI
|
||||
; functions Interface between KRL and Ethernet (non Realtime)
|
||||
; This file is mainly designed to communicate
|
||||
; with external devices like sensors, vision
|
||||
; systems, other controllers and so on.
|
||||
;************************************************************
|
||||
|
||||
;FOLD EKI_Declaration
|
||||
|
||||
;FOLD INTERNAL
|
||||
GLOBAL STRUC EKI_STATUS INT Buff,Read,Msg_No,BOOL Connected,INT Counter
|
||||
DECL CONST EKI_STATUS EKI_NULL_STATUS={Buff 0,Read 0,Msg_No 0,Connected FALSE,Counter 0}
|
||||
DECL CONST INT TYPEFRAME=6
|
||||
DECL CONST INT TYPENULL=0
|
||||
DECL CONST INT ERRMSG_FORBIDDEN = 32768
|
||||
DECL CONST INT ERRMSG_ALL = 32767
|
||||
;ENDFOLD
|
||||
;ENDFOLD EKI_Declaration
|
||||
|
||||
ENDDAT
|
||||
707
KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL.src
Normal file
707
KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL.src
Normal file
@@ -0,0 +1,707 @@
|
||||
&ACCESS RO
|
||||
&REL 2396
|
||||
&PARAM DISKPATH = KRC:\R1\TP\EthernetKRL
|
||||
DEF EthernetKRL( )
|
||||
;************************************************************
|
||||
; CopyRight KUKA Deutschland GmbH 2018
|
||||
; last modified 11.07.2012
|
||||
; prefix EKI
|
||||
; functions Interface between KRL and Ethernet (non Realtime)
|
||||
; This file is mainly designed to communicate
|
||||
; with external devices like sensors, vision
|
||||
; systems, other controllers and so on.
|
||||
;************************************************************
|
||||
END
|
||||
|
||||
;FOLD EKI_InternalProgram
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_Init(strChannelName[]:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Ret = EKI_NULL_STATUS
|
||||
Mode = #SYNC
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Init",strChannelName[])
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_Close(strChannelName[]:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Ret = EKI_NULL_STATUS
|
||||
Mode = #SYNC
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Close",strChannelName[])
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_LOCK(strChannelName[]:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
DECL BOOL LOCK
|
||||
|
||||
Ret = EKI_NULL_STATUS
|
||||
Mode = #SYNC
|
||||
LOCK = TRUE
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_LockUnLock",strChannelName[], LOCK, Ret.Connected)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_UNLOCK(strChannelName[]:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
DECL BOOL LOCK
|
||||
|
||||
Ret = EKI_NULL_STATUS
|
||||
Mode = #SYNC
|
||||
LOCK = FALSE
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_LockUnLock",strChannelName[], LOCK, Ret.Connected)
|
||||
|
||||
; interrupt timeout to detect new edge
|
||||
CONTINUE
|
||||
wait sec 0.002
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_ClearBuffer(strChannelName[]:IN,strPlace[]:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Ret = EKI_NULL_STATUS
|
||||
Mode = #SYNC
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_ClearBuff",strChannelName[],strPlace[],Ret.Connected)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_Open(strChannelName[]:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Open",strChannelName[])
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
showMsgDepend(Ret)
|
||||
|
||||
IF (Ret.Msg_No == 0) THEN
|
||||
Ret.Connected = true
|
||||
ENDIF
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_Clear(strChannelName[]:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Clear",strChannelName[])
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_GetInteger(strChannelName[]:IN,strPlace[]:IN,value:OUT)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL INT value
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Get",strChannelName[],strPlace[],value,Ret.Buff, Ret.Read, TYPENULL,Ret.Connected, Ret.Counter)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_GetInt(strChannelName[]:IN,strPlace[]:IN,value:OUT)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL INT value
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Get",strChannelName[],strPlace[],value,Ret.Buff, Ret.Read, TYPENULL,Ret.Connected, Ret.Counter)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_GetIntegerArray(strChannelName[]:IN,strPlace[]:IN,value[]:OUT)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL INT value[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Get",strChannelName[],strPlace[],value[],Ret.Buff, Ret.Read, TYPENULL,Ret.Connected, Ret.Counter)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_GetIntArray(strChannelName[]:IN,strPlace[]:IN,value[]:OUT)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL INT value[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Get",strChannelName[],strPlace[],value[],Ret.Buff, Ret.Read, TYPENULL,Ret.Connected, Ret.Counter)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_GetBool(strChannelName[]:IN,strPlace[]:IN,value:OUT)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL BOOL value
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Get",strChannelName[],strPlace[],value,Ret.Buff, Ret.Read, TYPENULL,Ret.Connected, Ret.Counter)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_GetBoolArray(strChannelName[]:IN,strPlace[]:IN,value[]:OUT)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL BOOL value[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Get",strChannelName[],strPlace[],value[],Ret.Buff, Ret.Read, TYPENULL,Ret.Connected, Ret.Counter)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_GetReal(strChannelName[]:IN,strPlace[]:IN,value:OUT)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL REAL value
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Get",strChannelName[],strPlace[],value,Ret.Buff, Ret.Read, TYPENULL,Ret.Connected, Ret.Counter)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_GetRealArray(strChannelName[]:IN,strPlace[]:IN,value[]:OUT)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL REAL value[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Get",strChannelName[],strPlace[],value[],Ret.Buff, Ret.Read, TYPENULL,Ret.Connected, Ret.Counter)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_GetString(strChannelName[]:IN,strPlace[]:IN,value[]:OUT)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL CHAR value[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Get",strChannelName[],strPlace[],value[],Ret.Buff, Ret.Read, TYPENULL,Ret.Connected, Ret.Counter)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_GetFrame(strChannelName[]:IN,strPlace[]:IN,value:OUT)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL FRAME value
|
||||
DECL CHAR Buff[24]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
DECL INT Offset
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
Ret.buff=1
|
||||
|
||||
Offset = 0
|
||||
Cast_To(Buff[], Offset,value)
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Get",strChannelName[],strPlace[],Buff[],Ret.Buff, Ret.Read, TYPEFRAME,Ret.Connected, Ret.Counter)
|
||||
|
||||
Offset=0
|
||||
Cast_From(Buff[], Offset,value)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_GetFrameArray(strChannelName[]:IN,strPlace[]:IN,value[]:OUT)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL FRAME value[]
|
||||
DECL CHAR Buff[3600]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
DECL INT Offset
|
||||
DECL INT i,arraysize
|
||||
DECL BOOL ReadContinue
|
||||
DECL INT MayArrSz
|
||||
DECL INT ReadElements
|
||||
|
||||
MayArrSz = 150
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
REPEAT
|
||||
ReadContinue = false
|
||||
ReadElements=0
|
||||
arraysize=0
|
||||
; detect array size!
|
||||
Offset=0
|
||||
WHILE(($ERR.NUMBER==0) AND (arraysize<MayArrSz))
|
||||
arraysize = arraysize + 1
|
||||
ON_ERROR_PROCEED
|
||||
CAST_TO(Buff[],Offset,value[arraysize+Ret.read])
|
||||
ENDWHILE
|
||||
|
||||
IF ((arraysize+Ret.read == 1) AND ($ERR.NUMBER<>0)) THEN
|
||||
Ret.Msg_No = -26
|
||||
EXIT
|
||||
ENDIF
|
||||
|
||||
IF ((arraysize == 1) AND ($ERR.NUMBER<>0)) THEN
|
||||
EXIT
|
||||
ENDIF
|
||||
|
||||
IF ((arraysize == MayArrSz) AND ($ERR.NUMBER==0)) THEN
|
||||
ReadContinue = true;
|
||||
ELSE
|
||||
arraysize = arraysize - 1
|
||||
ENDIF
|
||||
|
||||
Ret.Buff = arraysize
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Get",strChannelName[],strPlace[],Buff[],Ret.Buff,ReadElements, TYPEFRAME,Ret.Connected, Ret.Counter)
|
||||
|
||||
Offset = 0
|
||||
FOR i=1 to ReadElements
|
||||
Cast_From(Buff[], Offset,value[i + Ret.Read])
|
||||
ENDFOR
|
||||
|
||||
Ret.Read = Ret.Read + ReadElements
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
showMsgDepend(Ret)
|
||||
|
||||
UNTIL ((Ret.Msg_No <> 0) OR (ReadContinue == false) OR (Ret.Buff == 0) OR (arraysize<MayArrSz))
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_Send(strChannelName[]:IN,strPlace[]:IN, Len:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
DECL INT Len
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
IF (VARSTATE("Len") == #Declared) THEN
|
||||
Len = 0
|
||||
ENDIF
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Send",strChannelName[],strPlace[],Ret.Connected,Len)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_SetInt(strChannelName[]:IN,strPlace[]:IN,value:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL INT value
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Set",strChannelName[],strPlace[],value,TYPENULL,Ret.Connected)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_SetReal(strChannelName[]:IN,strPlace[]:IN,value:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL REAL value
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Set",strChannelName[],strPlace[],value,TYPENULL,Ret.Connected)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_SetBool(strChannelName[]:IN,strPlace[]:IN,value:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL BOOL value
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Set",strChannelName[],strPlace[],value,TYPENULL,Ret.Connected)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_SetString(strChannelName[]:IN,strPlace[]:IN,value[]:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL CHAR value[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Set",strChannelName[],strPlace[],value[],TYPENULL,Ret.Connected)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_SetFrame(strChannelName[]:IN,strPlace[]:IN,value:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL FRAME value
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
DECL CHAR BUFF[24]
|
||||
DECL INT Offset
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
Offset = 0
|
||||
Cast_To(BUFF[], Offset,value)
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Set",strChannelName[],strPlace[], BUFF[], TYPEFRAME,Ret.Connected)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_SetParameter(strChannelName[]:IN,strParName[]:IN,strValue[]:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strParName[]
|
||||
DECL CHAR strValue[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_SetParam",strChannelName[],strParName[],strValue[],Ret.Connected)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEF EKI_Check(Ret:IN,Type:IN,strChannelName[]:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL EKI_STATUS Ret
|
||||
DECL EKrlMsgType Type
|
||||
INT Handle
|
||||
DECL KrlMsg_T name
|
||||
DECL KrlMsgPar_T params[3]
|
||||
DECL KrlMsgOpt_T options
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL INT Offset
|
||||
DECL INT Filter
|
||||
DECL INT i
|
||||
|
||||
IF (VARSTATE("strChannelName[]")==#INITIALIZED) THEN
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_CheckErr",strChannelName[],Ret.Connected)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
ENDIF
|
||||
|
||||
Ret.Msg_No = (ERRMSG_ALL B_AND Ret.Msg_No)
|
||||
|
||||
IF (Ret.Msg_No <>0) THEN
|
||||
name={modul[] "EthernetKRL", Nr 1, msg_txt[] "0"}
|
||||
Filter = 255
|
||||
FOR i=(0) TO (1)
|
||||
name.nr = (Ret.Msg_No B_AND Filter)
|
||||
IF (name.nr <> 0) THEN
|
||||
Offset = 0
|
||||
CONTINUE
|
||||
SWRITE(name.msg_txt[],Stat,Offset,"eki%i",name.nr)
|
||||
Handle = Set_KrlMsg(Type, name, params[], options)
|
||||
ENDIF
|
||||
Filter = 65280
|
||||
ENDFOR
|
||||
IF(Type==#Quit) THEN
|
||||
WHILE(Exists_KrlMsg(Handle))
|
||||
wait sec 0.2
|
||||
ENDWHILE
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
IF (VARSTATE("strChannelName[]")==#INITIALIZED) THEN
|
||||
EKI_Check_User(Ret,Type,strChannelName[])
|
||||
ELSE
|
||||
EKI_Check_User(Ret,Type)
|
||||
ENDIF
|
||||
END
|
||||
|
||||
|
||||
; ===========================================================
|
||||
GLOBAL DEFFCT EKI_STATUS EKI_CheckBuffer(strChannelName[]:IN,strPlace[]:IN)
|
||||
DECL CHAR strChannelName[]
|
||||
DECL CHAR strPlace[]
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
Mode = #SYNC
|
||||
Ret = EKI_NULL_STATUS
|
||||
|
||||
CONTINUE
|
||||
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_CheckBuff",strChannelName[],strPlace[],Ret.Buff,Ret.Connected, Ret.Counter)
|
||||
|
||||
Ret.Msg_No = -Stat.Msg_No
|
||||
|
||||
showMsgDepend(Ret)
|
||||
|
||||
RETURN Ret
|
||||
ENDFCT
|
||||
|
||||
; ===========================================================
|
||||
DEF showMsgDepend(Ret:OUT)
|
||||
DECL EKI_STATUS Ret
|
||||
|
||||
IF (Ret.Msg_no B_AND ERRMSG_FORBIDDEN)==0 THEN
|
||||
EKI_CHECK(Ret,#QUIT)
|
||||
ENDIF
|
||||
|
||||
Ret.Msg_no = Ret.Msg_no B_AND ERRMSG_ALL
|
||||
END
|
||||
|
||||
;ENDFOLD EKI_InternalProgram
|
||||
|
||||
39
KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL_USER.src
Normal file
39
KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL_USER.src
Normal file
@@ -0,0 +1,39 @@
|
||||
&ACCESS RO
|
||||
&REL 2314
|
||||
&PARAM DISKPATH = TP/EthernetKRL
|
||||
DEF EthernetKRL_USER( )
|
||||
;************************************************************
|
||||
; CopyRight KUKA Deutschland GmbH 2018
|
||||
; last modified 11.07.2012
|
||||
; prefix EKI
|
||||
; functions user routine for error handling
|
||||
;************************************************************
|
||||
END
|
||||
|
||||
;FOLD EKI_UserProgram
|
||||
; ===========================================================
|
||||
GLOBAL DEF EKI_Check_User(Ret:IN,Type:IN,strChannelName[]:IN)
|
||||
;FOLD Initialize variables
|
||||
DECL CHAR strChannelName[]
|
||||
DECL EKI_STATUS Ret
|
||||
DECL EKrlMsgType Type
|
||||
INT Handle
|
||||
DECL KrlMsg_T name
|
||||
DECL KrlMsgPar_T params[3]
|
||||
DECL KrlMsgOpt_T options
|
||||
DECL STATE_T Stat
|
||||
DECL MODUS_T Mode
|
||||
DECL BOOL B
|
||||
DECL INT Offset
|
||||
;ENDFOLD
|
||||
|
||||
IF (VARSTATE("strChannelName[]")==#INITIALIZED) THEN
|
||||
; strChannelName is initialized
|
||||
ENDIF
|
||||
|
||||
;************************************************************
|
||||
;write your error handling here
|
||||
;************************************************************
|
||||
|
||||
END
|
||||
;ENDFOLD EKI_UserProgram
|
||||
3
KUKA/KRC/R1/TP/Signals.dat
Normal file
3
KUKA/KRC/R1/TP/Signals.dat
Normal file
@@ -0,0 +1,3 @@
|
||||
&ACCESS RV
|
||||
DEFDAT SIGNALS PUBLIC
|
||||
ENDDAT
|
||||
103
KUKA/KRC/R1/TP/p00.dat
Normal file
103
KUKA/KRC/R1/TP/p00.dat
Normal file
@@ -0,0 +1,103 @@
|
||||
&ACCESS R1
|
||||
&COMMENT EXTERNAL package
|
||||
DEFDAT P00
|
||||
|
||||
BOOL PLC_ENABLE=FALSE ; Enable error-code transmission to plc
|
||||
INT I
|
||||
INT F_NO=1
|
||||
INT MAXERR_C=1 ; maximum messages for $STOPMESS
|
||||
INT MAXERR_A=1 ; maximum messages for APPLICATION
|
||||
DECL STOPMESS MLD
|
||||
SIGNAL ERR $OUT[25] TO $OUT[32]
|
||||
BOOL FOUND
|
||||
|
||||
STRUC PRESET INT OUT,CHAR PKG[3],INT ERR
|
||||
DECL PRESET P[255]
|
||||
|
||||
; z.B. P[1] FEHLERCODE AN SPS = 1
|
||||
;WENN:
|
||||
;AUTOMATIK_EXTERN PKG[] = "P00"
|
||||
;PARITAETSFEHLER = 10
|
||||
|
||||
; z.B. P[128] FEHLERCODE AN SPS = 128
|
||||
;WENN:
|
||||
;$STOPMESS-MELDUNG PKG[] = "CTL"
|
||||
;NOT-AUS: = 1
|
||||
|
||||
; APPLICATION MESSAGES: P[1]...P[127]
|
||||
P[1]={OUT 2,PKG[] "P00",ERR 10}
|
||||
;...
|
||||
;...
|
||||
; $STOPMESS MESSAGES: P[128]...P[255]
|
||||
P[128]={OUT 128,PKG[] "CTL",ERR 1}
|
||||
;...
|
||||
;...
|
||||
P[255]={OUT 255,PKG[] "CTL",ERR 1001}
|
||||
|
||||
STRUC ERR_MESS CHAR P[3],INT E
|
||||
DECL ERR_MESS ERR_FILE[64]
|
||||
ERR_FILE[1]={P[] "XXX",E 0}
|
||||
ERR_FILE[2]={P[] "XXX",E 0}
|
||||
ERR_FILE[3]={P[] "XXX",E 0}
|
||||
ERR_FILE[4]={P[] "XXX",E 0}
|
||||
ERR_FILE[5]={P[] "XXX",E 0}
|
||||
ERR_FILE[6]={P[] "XXX",E 0}
|
||||
ERR_FILE[7]={P[] "XXX",E 0}
|
||||
ERR_FILE[8]={P[] "XXX",E 0}
|
||||
ERR_FILE[9]={P[] "XXX",E 0}
|
||||
ERR_FILE[10]={P[] "XXX",E 0}
|
||||
ERR_FILE[11]={P[] "XXX",E 0}
|
||||
ERR_FILE[12]={P[] "XXX",E 0}
|
||||
ERR_FILE[13]={P[] "XXX",E 0}
|
||||
ERR_FILE[14]={P[] "XXX",E 0}
|
||||
ERR_FILE[15]={P[] "XXX",E 0}
|
||||
ERR_FILE[16]={P[] "XXX",E 0}
|
||||
ERR_FILE[17]={P[] "XXX",E 0}
|
||||
ERR_FILE[18]={P[] "XXX",E 0}
|
||||
ERR_FILE[19]={P[] "XXX",E 0}
|
||||
ERR_FILE[20]={P[] "XXX",E 0}
|
||||
ERR_FILE[21]={P[] "XXX",E 0}
|
||||
ERR_FILE[22]={P[] "XXX",E 0}
|
||||
ERR_FILE[23]={P[] "XXX",E 0}
|
||||
ERR_FILE[24]={P[] "XXX",E 0}
|
||||
ERR_FILE[25]={P[] "XXX",E 0}
|
||||
ERR_FILE[26]={P[] "XXX",E 0}
|
||||
ERR_FILE[27]={P[] "XXX",E 0}
|
||||
ERR_FILE[28]={P[] "XXX",E 0}
|
||||
ERR_FILE[29]={P[] "XXX",E 0}
|
||||
ERR_FILE[30]={P[] "XXX",E 0}
|
||||
ERR_FILE[31]={P[] "XXX",E 0}
|
||||
ERR_FILE[32]={P[] "XXX",E 0}
|
||||
ERR_FILE[33]={P[] "XXX",E 0}
|
||||
ERR_FILE[34]={P[] "XXX",E 0}
|
||||
ERR_FILE[35]={P[] "XXX",E 0}
|
||||
ERR_FILE[36]={P[] "XXX",E 0}
|
||||
ERR_FILE[37]={P[] "XXX",E 0}
|
||||
ERR_FILE[38]={P[] "XXX",E 0}
|
||||
ERR_FILE[39]={P[] "XXX",E 0}
|
||||
ERR_FILE[40]={P[] "XXX",E 0}
|
||||
ERR_FILE[41]={P[] "XXX",E 0}
|
||||
ERR_FILE[42]={P[] "XXX",E 0}
|
||||
ERR_FILE[43]={P[] "XXX",E 0}
|
||||
ERR_FILE[44]={P[] "XXX",E 0}
|
||||
ERR_FILE[45]={P[] "XXX",E 0}
|
||||
ERR_FILE[46]={P[] "XXX",E 0}
|
||||
ERR_FILE[47]={P[] "XXX",E 0}
|
||||
ERR_FILE[48]={P[] "XXX",E 0}
|
||||
ERR_FILE[49]={P[] "XXX",E 0}
|
||||
ERR_FILE[50]={P[] "XXX",E 0}
|
||||
ERR_FILE[51]={P[] "XXX",E 0}
|
||||
ERR_FILE[52]={P[] "XXX",E 0}
|
||||
ERR_FILE[53]={P[] "XXX",E 0}
|
||||
ERR_FILE[54]={P[] "XXX",E 0}
|
||||
ERR_FILE[55]={P[] "XXX",E 0}
|
||||
ERR_FILE[56]={P[] "XXX",E 0}
|
||||
ERR_FILE[57]={P[] "XXX",E 0}
|
||||
ERR_FILE[58]={P[] "XXX",E 0}
|
||||
ERR_FILE[59]={P[] "XXX",E 0}
|
||||
ERR_FILE[60]={P[] "XXX",E 0}
|
||||
ERR_FILE[61]={P[] "XXX",E 0}
|
||||
ERR_FILE[62]={P[] "XXX",E 0}
|
||||
ERR_FILE[63]={P[] "XXX",E 0}
|
||||
ERR_FILE[64]={P[] "XXX",E 0}
|
||||
ENDDAT
|
||||
452
KUKA/KRC/R1/TP/p00.src
Normal file
452
KUKA/KRC/R1/TP/p00.src
Normal file
@@ -0,0 +1,452 @@
|
||||
&ACCESS R1
|
||||
&COMMENT EXTERNAL package
|
||||
DEF P00 (COMMAND :IN,PGNO_FUNCT :IN,P_ID[] :OUT,E_NO :IN )
|
||||
DECL P00_COMMAND COMMAND
|
||||
DECL FUNCT_TYPE PGNO_FUNCT
|
||||
DECL CHAR P_ID[]
|
||||
E6AXIS AK_AXIS
|
||||
REAL AX_DIST
|
||||
INT E_NO
|
||||
SWITCH COMMAND
|
||||
CASE #INIT_EXT
|
||||
INIT_EXT ( )
|
||||
CASE #EXT_PGNO
|
||||
EXT_PGNO (PGNO_FUNCT )
|
||||
CASE #CHK_HOME
|
||||
CHK_HOME ( )
|
||||
CASE #EXT_ERR
|
||||
EXT_ERR (P_ID[],E_NO )
|
||||
ENDSWITCH
|
||||
END
|
||||
|
||||
|
||||
DEF INIT_EXT ( )
|
||||
;********************************
|
||||
; Function: initializing of the
|
||||
; external interface
|
||||
;********************************
|
||||
BOOL ERROR
|
||||
INT N
|
||||
PGNO_ERROR=0
|
||||
;********************************
|
||||
;CHECK HOME
|
||||
;********************************
|
||||
|
||||
;********************************
|
||||
;INIT PGNO_REQ UND APPL_RUN
|
||||
;********************************
|
||||
IF (PGNO_REQ>0) THEN
|
||||
$OUT[PGNO_REQ]=FALSE
|
||||
ENDIF
|
||||
IF (PGNO_REQ<0) THEN
|
||||
$OUT[-PGNO_REQ]=TRUE
|
||||
ENDIF
|
||||
IF (APPL_RUN>0) THEN
|
||||
$OUT[APPL_RUN]=FALSE
|
||||
ENDIF
|
||||
IF PLC_ENABLE AND (ERR_TO_PLC>0) THEN
|
||||
$OUT[ERR_TO_PLC]=FALSE
|
||||
ENDIF
|
||||
IF REFLECT_PROG_NR==1 THEN
|
||||
FOR N=0 TO PGNO_LENGTH-1
|
||||
$OUT[PGNO_FBIT_REFL+N]=FALSE
|
||||
ENDFOR
|
||||
ENDIF
|
||||
;*******************
|
||||
REPEAT
|
||||
;***********************************************************
|
||||
ERROR=FALSE
|
||||
REPEAT
|
||||
IF ($I_O_ACTCONF==FALSE) THEN
|
||||
ERROR=TRUE
|
||||
MsgQuit("OperatorModeWrong", "P00")
|
||||
ENDIF
|
||||
UNTIL ($I_O_ACTCONF==TRUE)
|
||||
SWITCH PGNO_TYPE
|
||||
;*********************************************************
|
||||
CASE 1,2 ;bci-coding,bcd-coding
|
||||
;*********************************************************
|
||||
;***** CHECK PGNO_LENGTH *****
|
||||
IF (PGNO_LENGTH<1) THEN
|
||||
ERROR=TRUE ;pgno_length
|
||||
MsgQuit("PgNo_LengthRangeWrong", "P00")
|
||||
ENDIF
|
||||
IF (PGNO_TYPE==1) THEN ;bci-coding
|
||||
IF (PGNO_LENGTH>16) THEN
|
||||
ERROR=TRUE ;pgno_length
|
||||
MsgQuit("PgNo_LengthRangeWrong", "P00")
|
||||
ENDIF
|
||||
ENDIF
|
||||
IF (PGNO_TYPE==2) THEN ;bcd-coding
|
||||
SWITCH PGNO_LENGTH
|
||||
CASE 4,8,12,16
|
||||
DEFAULT
|
||||
ERROR=TRUE ;pgno_length
|
||||
MsgQuit("PgNo_LengthWrong", "P00")
|
||||
ENDSWITCH
|
||||
ENDIF
|
||||
;***** CHECK PGNO_FBIT *****
|
||||
IF (PGNO_FBIT<1) THEN
|
||||
ERROR=TRUE ;pgno_fbit
|
||||
MsgQuit("PgNo_FBitWrong", "P00")
|
||||
ENDIF
|
||||
;***** CHECK PGNO_REQ *****
|
||||
IF (PGNO_REQ==0) THEN
|
||||
ERROR=TRUE ;pgno_req
|
||||
MsgQuit("PgNo_ReqWrong", "P00")
|
||||
ENDIF
|
||||
IF (PGNO_REQ>0) THEN ;active high
|
||||
$OUT[PGNO_REQ]=FALSE ;reset
|
||||
WAIT SEC 0.2 ;delay for plc
|
||||
ENDIF
|
||||
IF (PGNO_REQ<0) THEN ;active low
|
||||
$OUT[PGNO_REQ*(-1)]=TRUE ;reset
|
||||
WAIT SEC 0.2 ;delay for plc
|
||||
ENDIF
|
||||
;*********************************************************
|
||||
CASE 3 ;one out of n
|
||||
;*********************************************************
|
||||
;***** CHECK PGNO_LENGTH *****
|
||||
IF (PGNO_LENGTH<1) THEN
|
||||
ERROR=TRUE ;pgno_length
|
||||
MsgQuit("PgNo_LengthRangeWrong", "P00")
|
||||
ENDIF
|
||||
IF (PGNO_LENGTH>16) THEN
|
||||
ERROR=TRUE ;pgno_length
|
||||
MsgQuit("PgNo_LengthRangeWrong", "P00")
|
||||
ENDIF
|
||||
;***** CHECK PGNO_FBIT *****
|
||||
IF (PGNO_FBIT<1) THEN
|
||||
ERROR=TRUE ;pgno_fbit
|
||||
MsgQuit("PgNo_FBitWrong", "P00")
|
||||
ENDIF
|
||||
|
||||
;*********************************************************
|
||||
DEFAULT ;PGNO_TYPE wrong type
|
||||
;*********************************************************
|
||||
ERROR=TRUE ;pgno_type
|
||||
MsgQuit ("PgNo_TypeWrong", "P00")
|
||||
ENDSWITCH
|
||||
;***********************************************************
|
||||
UNTIL (ERROR==FALSE)
|
||||
END
|
||||
|
||||
|
||||
DEF EXT_PGNO (FUNCT :OUT )
|
||||
;********************************
|
||||
; Function: communication program
|
||||
; for external mode
|
||||
;********************************
|
||||
DECL FUNCT_TYPE FUNCT
|
||||
INT I,J,K,L,M,N,nHandle
|
||||
BOOL P_RECV,P_CALC,bRes
|
||||
J=1
|
||||
K=0
|
||||
L=1
|
||||
P_RECV=FALSE
|
||||
P_CALC=FALSE
|
||||
IF (APPL_RUN>0) THEN
|
||||
$OUT[APPL_RUN]=FALSE
|
||||
ENDIF
|
||||
SWITCH FUNCT
|
||||
;*******************
|
||||
CASE #PGNO_ACKN
|
||||
;*******************
|
||||
IF (PGNO_REQ>0) THEN
|
||||
$OUT[PGNO_REQ]=FALSE
|
||||
ENDIF
|
||||
IF (PGNO_REQ<0) THEN
|
||||
$OUT[PGNO_REQ*(-1)]=TRUE
|
||||
ENDIF
|
||||
IF (APPL_RUN>0) THEN
|
||||
$OUT[APPL_RUN]=TRUE
|
||||
ENDIF
|
||||
;*******************
|
||||
CASE #PGNO_GET
|
||||
;*******************
|
||||
IF REFLECT_PROG_NR==1 THEN
|
||||
FOR N=0 TO PGNO_LENGTH-1
|
||||
$OUT[PGNO_FBIT_REFL+N]=FALSE
|
||||
ENDFOR
|
||||
ENDIF
|
||||
SWITCH PGNO_TYPE
|
||||
;*******************
|
||||
CASE 1,2
|
||||
;*******************
|
||||
IF (PGNO_VALID>0) THEN
|
||||
WAIT FOR $IN[PGNO_VALID]==FALSE
|
||||
ENDIF
|
||||
IF (PGNO_VALID==0) THEN
|
||||
WAIT FOR $EXT_START==FALSE
|
||||
ENDIF
|
||||
IF (PGNO_VALID<0) THEN
|
||||
WAIT FOR $IN[PGNO_VALID*(-1)]==TRUE
|
||||
ENDIF
|
||||
IF (PGNO_REQ>0) THEN
|
||||
$OUT[PGNO_REQ]=TRUE
|
||||
ENDIF
|
||||
IF (PGNO_REQ<0) THEN
|
||||
$OUT[PGNO_REQ*(-1)]=FALSE
|
||||
ENDIF
|
||||
IF (PGNO_VALID>0) THEN
|
||||
MsgState(nHandle, "Wait for PGNO_VALID=True", "P00")
|
||||
REPEAT
|
||||
IF REFLECT_PROG_NR==1 THEN
|
||||
FOR I=0 TO PGNO_LENGTH-1
|
||||
IF $IN[PGNO_FBIT+I]==TRUE THEN
|
||||
$OUT[PGNO_FBIT_REFL+I]=TRUE
|
||||
ELSE
|
||||
$OUT[PGNO_FBIT_REFL+I]=FALSE
|
||||
ENDIF
|
||||
ENDFOR
|
||||
ENDIF
|
||||
UNTIL $IN[PGNO_VALID]==TRUE
|
||||
bRes=Clear_KrlMsg (nHandle)
|
||||
ENDIF
|
||||
IF (PGNO_VALID==0) THEN
|
||||
MsgState(nHandle, "Wait for $EXT_START=True", "P00")
|
||||
REPEAT
|
||||
IF REFLECT_PROG_NR==1 THEN
|
||||
FOR I=0 TO PGNO_LENGTH-1
|
||||
IF $IN[PGNO_FBIT+I]==TRUE THEN
|
||||
$OUT[PGNO_FBIT_REFL+I]=TRUE
|
||||
ELSE
|
||||
$OUT[PGNO_FBIT_REFL+I]=FALSE
|
||||
ENDIF
|
||||
ENDFOR
|
||||
ENDIF
|
||||
UNTIL $EXT_START==TRUE
|
||||
bRes=Clear_KrlMsg (nHandle)
|
||||
ENDIF
|
||||
IF (PGNO_VALID<0) THEN
|
||||
MsgState(nHandle, "Wait for PGNO_VALID=False", "P00")
|
||||
REPEAT
|
||||
IF REFLECT_PROG_NR==1 THEN
|
||||
FOR I=0 TO PGNO_LENGTH-1
|
||||
IF $IN[PGNO_FBIT+I]==TRUE THEN
|
||||
$OUT[PGNO_FBIT_REFL+I]=TRUE
|
||||
ELSE
|
||||
$OUT[PGNO_FBIT_REFL+I]=FALSE
|
||||
ENDIF
|
||||
ENDFOR
|
||||
ENDIF
|
||||
UNTIL $IN[PGNO_VALID*(-1)]==FALSE
|
||||
bRes=Clear_KrlMsg (nHandle)
|
||||
ENDIF
|
||||
PGNO=0
|
||||
SWITCH PGNO_TYPE
|
||||
;*******************
|
||||
CASE 1
|
||||
;*******************
|
||||
FOR I=0 TO PGNO_LENGTH-1
|
||||
IF $IN[PGNO_FBIT+I] THEN
|
||||
IF REFLECT_PROG_NR==1 THEN
|
||||
$OUT[PGNO_FBIT_REFL+I]=TRUE
|
||||
ENDIF
|
||||
PGNO=PGNO+J
|
||||
ENDIF
|
||||
J=J*2
|
||||
ENDFOR
|
||||
;*******************
|
||||
CASE 2
|
||||
;*******************
|
||||
FOR I=0 TO PGNO_LENGTH-1 STEP 4
|
||||
N=0
|
||||
J=1
|
||||
FOR M=I TO I+3
|
||||
IF $IN[PGNO_FBIT+M] THEN
|
||||
N=N+J
|
||||
IF REFLECT_PROG_NR==1 THEN
|
||||
$OUT[PGNO_FBIT_REFL+M]=TRUE
|
||||
ENDIF
|
||||
ENDIF
|
||||
J=J*2
|
||||
ENDFOR
|
||||
IF (N>9) THEN
|
||||
PGNO_ERROR=2
|
||||
PGNO=0
|
||||
EXIT
|
||||
ELSE
|
||||
PGNO=PGNO+N*L
|
||||
L=L*10
|
||||
ENDIF
|
||||
ENDFOR
|
||||
ENDSWITCH
|
||||
IF (PGNO_ERROR<>2) THEN
|
||||
IF (PGNO_PARITY>0) THEN
|
||||
P_RECV=$IN[PGNO_PARITY]
|
||||
FOR I=0 TO PGNO_LENGTH-1
|
||||
P_CALC=P_CALC EXOR $IN[PGNO_FBIT+I]
|
||||
ENDFOR
|
||||
IF (P_RECV<>P_CALC) THEN
|
||||
PGNO=0
|
||||
PGNO_ERROR=1
|
||||
ELSE
|
||||
PGNO_ERROR=0
|
||||
ENDIF
|
||||
ENDIF
|
||||
IF (PGNO_PARITY<0) THEN
|
||||
P_RECV=$IN[PGNO_PARITY*(-1)]
|
||||
FOR I=0 TO PGNO_LENGTH-1
|
||||
P_CALC=P_CALC EXOR $IN[PGNO_FBIT+I]
|
||||
ENDFOR
|
||||
IF (P_RECV<> NOT (P_CALC)) THEN
|
||||
PGNO=0
|
||||
PGNO_ERROR=1
|
||||
ELSE
|
||||
PGNO_ERROR=0
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
;*******************
|
||||
CASE 3
|
||||
;*******************
|
||||
IF PGNO>0 THEN
|
||||
WAIT FOR $IN[PGNO_FBIT+PGNO-1]==FALSE
|
||||
ENDIF
|
||||
K=0
|
||||
REPEAT
|
||||
FOR I=0 TO PGNO_LENGTH-1
|
||||
IF $IN[PGNO_FBIT+I] THEN
|
||||
IF K==0 THEN
|
||||
K=I+1
|
||||
ELSE
|
||||
PGNO_ERROR=0
|
||||
K=0
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDFOR
|
||||
UNTIL ((K<>0) OR (PGNO_ERROR==0))
|
||||
PGNO=K
|
||||
ENDSWITCH
|
||||
;***********************************************************
|
||||
CASE #PGNO_FAULT
|
||||
;***********************************************************
|
||||
IF PGNO_ERROR==1 THEN
|
||||
MsgQuit("ParityFault", "P00", PGNO)
|
||||
ENDIF
|
||||
IF PGNO_ERROR==2 THEN
|
||||
MsgQuit("BCDCodeError", "P00", PGNO)
|
||||
ENDIF
|
||||
IF PGNO_ERROR==0 THEN
|
||||
IF (PGNO_TYPE==3) THEN
|
||||
MsgQuit("ProgNumberWrong", "P00")
|
||||
ELSE
|
||||
MsgQuit("ProgramNotAvailable", "P00", PGNO)
|
||||
ENDIF
|
||||
ENDIF
|
||||
PGNO_ERROR=0
|
||||
IF (PGNO_REQ>0) THEN
|
||||
$OUT[PGNO_REQ]=FALSE
|
||||
ENDIF
|
||||
IF (PGNO_REQ<0) THEN
|
||||
$OUT[PGNO_REQ*(-1)]=TRUE
|
||||
ENDIF
|
||||
WAIT SEC 0.5
|
||||
ENDSWITCH
|
||||
END
|
||||
|
||||
|
||||
DEF CHK_HOME ( )
|
||||
BOOL H
|
||||
|
||||
IF ($I_O_ACTCONF==TRUE) THEN
|
||||
REPEAT
|
||||
H=TRUE
|
||||
IF ($IN_HOME==FALSE) THEN
|
||||
H=FALSE
|
||||
REPEAT
|
||||
MsgQuit("MoveHomeInT1", "P00")
|
||||
IF (($MODE_OP==#T1) OR ($MODE_OP==#T2)) THEN
|
||||
RETURN
|
||||
ENDIF
|
||||
HALT
|
||||
UNTIL $IN_HOME==TRUE
|
||||
ELSE
|
||||
H=TRUE
|
||||
ENDIF
|
||||
UNTIL ((H==TRUE) OR ($I_O_ACTCONF==FALSE))
|
||||
ENDIF
|
||||
END
|
||||
|
||||
|
||||
DEF EXT_ERR (P_ID :OUT, E_NO :IN )
|
||||
;******************************
|
||||
;Function : ext. error messages
|
||||
; for package P00
|
||||
;******************************
|
||||
CHAR P_ID[]
|
||||
INT E_NO,M
|
||||
;********* MODUL-/FEHLER-NUMMER AUSWERTEN ********
|
||||
I=1
|
||||
FOUND=FALSE
|
||||
IF (E_NO==0) THEN
|
||||
IF PLC_ENABLE THEN
|
||||
ERR=0
|
||||
WAIT SEC 0.2
|
||||
IF (ERR_TO_PLC >0) THEN
|
||||
$OUT[ERR_TO_PLC]=FALSE
|
||||
WAIT SEC 0.2
|
||||
ENDIF
|
||||
ENDIF
|
||||
ELSE
|
||||
IF PLC_ENABLE THEN
|
||||
FOUND=FALSE
|
||||
;******************************
|
||||
; APPLIKATIONS-FEHLER AUSWERTEN
|
||||
;******************************
|
||||
I=1
|
||||
REPEAT
|
||||
IF (E_NO==P[I].ERR) THEN
|
||||
IF (P_ID[1]==P[I].PKG[1]) THEN
|
||||
IF (P_ID[2]==P[I].PKG[2]) THEN
|
||||
IF (P_ID[3]==P[I].PKG[3]) THEN
|
||||
FOUND=TRUE
|
||||
ERR=P[I].OUT
|
||||
F_WRITE ( )
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
I=I+1
|
||||
UNTIL (I>MAXERR_A) OR FOUND
|
||||
;***************************
|
||||
; $STOPMESS-FEHLER AUSWERTEN
|
||||
;***************************
|
||||
I=128
|
||||
IF (P_ID[1]=="C") THEN
|
||||
IF (P_ID[2]=="T") THEN
|
||||
IF (P_ID[3]=="L") THEN
|
||||
M=MBX_REC(1,MLD)
|
||||
IF M==0 THEN
|
||||
REPEAT
|
||||
IF (MLD.MESSNO==P[I].ERR) THEN
|
||||
FOUND=TRUE
|
||||
ERR=P[I].OUT
|
||||
F_WRITE ( )
|
||||
ENDIF
|
||||
I=I+1
|
||||
UNTIL (I>MAXERR_C+128-1) OR FOUND
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
IF (ERR_TO_PLC >0) THEN
|
||||
$OUT[ERR_TO_PLC]=TRUE
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
END
|
||||
|
||||
|
||||
DEF F_WRITE ( )
|
||||
IF (F_NO>64) THEN
|
||||
F_NO=1
|
||||
ENDIF
|
||||
ERR_FILE[F_NO].P[1]=P[I].PKG[1]
|
||||
ERR_FILE[F_NO].P[2]=P[I].PKG[2]
|
||||
ERR_FILE[F_NO].P[3]=P[I].PKG[3]
|
||||
ERR_FILE[F_NO].E=P[I].ERR
|
||||
F_NO=F_NO+1
|
||||
END
|
||||
|
||||
55
KUKA/KRC/R1/cell.src
Normal file
55
KUKA/KRC/R1/cell.src
Normal file
@@ -0,0 +1,55 @@
|
||||
&ACCESS RVO
|
||||
&COMMENT HANDLER on external automatic
|
||||
DEF CELL ( )
|
||||
;EXT EXAMPLE1 ( )
|
||||
;EXT EXAMPLE2 ( )
|
||||
;EXT EXAMPLE3 ( )
|
||||
|
||||
;FOLD INIT
|
||||
DECL CHAR DMY[3]
|
||||
DMY[]="---"
|
||||
;ENDFOLD (INIT)
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
BAS (#INITMOV,0 )
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD CHECK HOME
|
||||
$H_POS=XHOME
|
||||
IF CHECK_HOME==TRUE THEN
|
||||
P00 (#CHK_HOME,#PGNO_GET,DMY[],0 ) ;Testing Home-Position
|
||||
ENDIF
|
||||
;ENDFOLD (CHECK HOME)
|
||||
;FOLD PTP HOME Vel= 100 % DEFAULT;%{PE}%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:HOME, 3:, 5:100, 7:DEFAULT
|
||||
$H_POS=XHOME
|
||||
PDAT_ACT=PDEFAULT
|
||||
BAS (#PTP_DAT )
|
||||
FDAT_ACT=FHOME
|
||||
BAS (#FRAMES )
|
||||
BAS (#VEL_PTP,100 )
|
||||
PTP XHOME
|
||||
;ENDFOLD
|
||||
;FOLD AUTOEXT INI
|
||||
P00 (#INIT_EXT,#PGNO_GET,DMY[],0 ) ; Initialize extern mode
|
||||
;ENDFOLD (AUTOEXT INI)
|
||||
LOOP
|
||||
P00 (#EXT_PGNO,#PGNO_GET,DMY[],0 )
|
||||
SWITCH PGNO ; Select with Programnumber
|
||||
|
||||
CASE 1
|
||||
P00 (#EXT_PGNO,#PGNO_ACKN,DMY[],0 ) ; Reset Progr.No.-Request
|
||||
;EXAMPLE1 ( ) ; Call User-Program
|
||||
|
||||
CASE 2
|
||||
P00 (#EXT_PGNO,#PGNO_ACKN,DMY[],0 ) ; Reset Progr.No.-Request
|
||||
;EXAMPLE2 ( ) ; Call User-Program
|
||||
|
||||
CASE 3
|
||||
P00 (#EXT_PGNO,#PGNO_ACKN,DMY[],0 ) ; Reset Progr.No.-Request
|
||||
;EXAMPLE3 ( ) ; Call User-Program
|
||||
|
||||
DEFAULT
|
||||
P00 (#EXT_PGNO,#PGNO_FAULT,DMY[],0 )
|
||||
ENDSWITCH
|
||||
ENDLOOP
|
||||
END
|
||||
4
KUKA/KRC/STEU/$config.dat
Normal file
4
KUKA/KRC/STEU/$config.dat
Normal file
@@ -0,0 +1,4 @@
|
||||
&ACCESS RV$1
|
||||
DEFDAT $CONFIG
|
||||
|
||||
ENDDAT
|
||||
650
KUKA/KRC/STEU/Mada/$custom.dat
Normal file
650
KUKA/KRC/STEU/Mada/$custom.dat
Normal file
@@ -0,0 +1,650 @@
|
||||
&ACCESS RV$
|
||||
&PARAM VERSION = 1.0.0
|
||||
DEFDAT $CUSTOM PUBLIC
|
||||
DECL SPREADSTARTPOLICY $SPREADSTARTPOLICY=#DEFAULT_BCO ;Zu nutzende Regel beim Verteilen des Start-Kommandos im RoboTeam
|
||||
CHAR $V_CUSTOM[32]
|
||||
$V_CUSTOM[]="V1.0.0/KUKA8.7" ;VERSIONSKENNUNG
|
||||
BOOL $SR_VEL_RED=TRUE ;TRUE: Overrideregelung des SafeRobot fuer Geschwindigkeitsgrenzen im Grundsystem aktiviert
|
||||
BOOL $BRAKE_ON_SBH=TRUE ;TRUE: Je nach anliegenden SBH werden entweder alle Bremsen sofort geschlossen bzw. nur diejenigen die zur Achsgruppe gehoeren
|
||||
BOOL $NO_MOVEMENT_ON_SBH=TRUE ;Bewegungsstart nicht moeglich bei SBH
|
||||
BOOL $SR_WORKSPACE_RED=TRUE ;TRUE: Overrideregelung des SafeRobot fuer Ueberwachungsraeume im Grundsystem aktiviert
|
||||
BOOL $TOOL_DIRECTION_LIN_CIRC=FALSE ;TRUE $TOOL_DIRECTION-Wert wird fuer Drehen und Schwenken und die TTS-Berechnung bei LIN- und CIRC-Bewegungen verwendet
|
||||
INT $SR_OV_RED=75 ;Reduzierungsfaktor der SafeRobot Overrideregelung zu Geschwindigkeitsgrenzen [10-95]
|
||||
DECL MOTION_MODE $DEFAULT_MOTION_MODE=#STANDARD ; Mit $DEFAULT_MOTION_MODE wird der default MotionMode angegeben
|
||||
BOOL $COLL_ENABLECAV=FALSE ;Enable/Disable Collision Avoidance
|
||||
REAL $COLL_DISTANCE_MAN[16] ;Distance tolerances when jogging manually or when no program running
|
||||
$COLL_DISTANCE_MAN[1]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[2]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[3]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[4]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[5]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[6]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[7]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[8]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[9]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[10]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[11]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[12]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[13]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[14]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[15]=0.0 ;
|
||||
$COLL_DISTANCE_MAN[16]=0.0 ;
|
||||
REAL $COLL_DISTANCE_PROG[16] ;Distance tolerance when program is selected
|
||||
BOOL $WORKSPACERESTOREACTIVE=FALSE ; Fuer Aktivierung der Arbeitsbereich Zustand-Wiederherstellung
|
||||
DECL AXIS_OF_COORDINATES $TOOL_DIRECTION=#X ;Werkzeugstossrichtung fuer neue CP-Bewegungen (Spline)
|
||||
DECL AXIS_OF_COORDINATES $BASE_ALIGN=#Z ;Achse des Base um Werkzeug auszurichten
|
||||
DECL SPLINE_PARA_VARIANT $SPTP_EXAX_PARA[6] ;Parametrisierungsart einer Zusatzachse beim PTP-Spline
|
||||
$SPTP_EXAX_PARA[1]=#DEFAULT_PARA
|
||||
$SPTP_EXAX_PARA[2]=#DEFAULT_PARA
|
||||
$SPTP_EXAX_PARA[3]=#DEFAULT_PARA
|
||||
$SPTP_EXAX_PARA[4]=#DEFAULT_PARA
|
||||
$SPTP_EXAX_PARA[5]=#DEFAULT_PARA
|
||||
$SPTP_EXAX_PARA[6]=#DEFAULT_PARA
|
||||
DECL STRIKE_OUT_COMPONENTS $MAX_ABS_STRIKE_OUT={ORIENTATION 20.0000,ROT_EXT_AXES 20.0000,LIN_EXT_AXES 100.000} ;maximaler Wert der ABSOLUTE-Komponenten von $STRIKE_OUT_DEFAULT oder $STRIKE_OUT
|
||||
DECL STRIKE_OUT_STRUC $STRIKE_OUT_DEFAULT={MODE #ON,ABSOLUTE {ORIENTATION 7.50000,ROT_EXT_AXES 7.50000,LIN_EXT_AXES 50.0000},RELATIVE {ORIENTATION 40.0000,ROT_EXT_AXES 40.0000,LIN_EXT_AXES 40.0000}} ;Standardkonfiguration der Ausholstrategie fuer SPL-Segmente im Spline-Block
|
||||
DECL PRO_IO_T $PRO_I_O_SYS={MODULE[] "/R1/SPS()",COLD_BOOT_RUN #ON}
|
||||
DECL PRO_IO_T $PRO_I_O_PROC_ID3={MODULE[] " ",COLD_BOOT_RUN #ON}
|
||||
DECL PRO_IO_T $PRO_I_O_PROC_ID4={MODULE[] " ",COLD_BOOT_RUN #ON}
|
||||
DECL PRO_IO_T $PRO_I_O_PROC_ID5={MODULE[] " ",COLD_BOOT_RUN #ON}
|
||||
DECL PRO_IO_T $PRO_I_O_PROC_ID6={MODULE[] " ",COLD_BOOT_RUN #ON}
|
||||
DECL PRO_IO_T $PRO_I_O_PROC_ID7={MODULE[] " ",COLD_BOOT_RUN #ON}
|
||||
DECL PRO_IO_T $PRO_I_O_PROC_ID8={MODULE[] " ",COLD_BOOT_RUN #ON}
|
||||
DECL PRO_IO_T $PRO_I_O_PROC_ID9={MODULE[] " ",COLD_BOOT_RUN #ON}
|
||||
DECL SER $PSER_1={PROTO 1,PROC 0,RCO 5,BL 0,BAUD 19200,NOC 8,NOS 1,PARITY 2,TRC 1,FLP 0,LLP 0,RT 300,PT 5,DSR 0,WCCXON 0,VXON 0,VXOFF 0,WEOBC 0,VEOBC 0} ;SCHNITTSTELLE 1
|
||||
DECL SER $PSER_2={PROTO 0,PROC 3,RCO 0,BL 0,BAUD 9600,NOC 7,NOS 2,PARITY 2,TRC 0,FLP 1,LLP 60,RT 0,PT 0,DSR 0,WCCXON 0,VXON 11,VXOFF 13,WEOBC 1,VEOBC 3} ;SCHNITTSTELLE 2
|
||||
DECL SER $PSER_3={PROTO 0,PROC 3,RCO 0,BL 0,BAUD 9600,NOC 7,NOS 2,PARITY 2,TRC 0,FLP 1,LLP 60,RT 0,PT 0,DSR 0,WCCXON 0,VXON 11,VXOFF 13,WEOBC 1,VEOBC 3} ;SCHNITTSTELLE 2
|
||||
DECL SER $PSER_4={PROTO 0,PROC 3,RCO 0,BL 0,BAUD 9600,NOC 7,NOS 2,PARITY 2,TRC 0,FLP 1,LLP 60,RT 0,PT 0,DSR 0,WCCXON 0,VXON 11,VXOFF 13,WEOBC 1,VEOBC 3} ;SCHNITTSTELLE 2
|
||||
DECL SER $PPG={PROTO 2,PROC 4,BAUD 9600} ;PG-SCHNITTSTELLE
|
||||
DECL EXT_MOD_T $EXT_MOD_1={O_FILE[] " ",OPTION 'B0000'} ;ext. Modul Informationen
|
||||
DECL EXT_MOD_T $EXT_MOD_2={O_FILE[] " ",OPTION 'B0000'} ;ext. Modul Informationen
|
||||
DECL EXT_MOD_T $EXT_MOD_3={O_FILE[] " ",OPTION 'B0000'} ;ext. Modul Informationen
|
||||
DECL EXT_MOD_T $EXT_MOD_4={O_FILE[] " ",OPTION 'B0000'} ;ext. Modul Informationen
|
||||
CHANNEL :SER_1 :SER_1 $PSER_1
|
||||
CHANNEL :SER_2 :SER_2 $PSER_2
|
||||
CHANNEL :SER_3 :SER_3 $PSER_3
|
||||
CHANNEL :SER_4 :SER_4 $PSER_4
|
||||
CHANNEL :PG :SER_1 $PPG
|
||||
CHANNEL :LD_EXT_OBJ1 :LD_EXT_OBJ1 $EXT_MOD_1 ;external module 1
|
||||
CHANNEL :LD_EXT_OBJ2 :LD_EXT_OBJ2 $EXT_MOD_2 ;external module 2
|
||||
CHANNEL :LD_EXT_FCT1 :LD_EXT_FCT1 $EXT_MOD_3 ;external module 3
|
||||
CHANNEL :LD_EXT_FCT2 :LD_EXT_FCT2 $EXT_MOD_4 ;external module 4
|
||||
INT $IBUS_ON=0 ;EINSCHALTEN ALTERNATIVER INTERBUSGRUPPEN
|
||||
INT $EDIT_MODE=0 ;KOMMUNIKATION TP - XEDIT
|
||||
INT $IBUS_OFF=0 ;ABSCHALTEN ALTERNATIVER INTERBUSGRUPPEN
|
||||
DECL BOX $WORKSPACE[8] ;UEBERWACHT ARBEITSRAEUME
|
||||
$WORKSPACE[1]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,X1 0.0,Y1 0.0,Z1 0.0,X2 0.0,Y2 0.0,Z2 0.0,MODE #OFF}
|
||||
$WORKSPACE[2]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,X1 0.0,Y1 0.0,Z1 0.0,X2 0.0,Y2 0.0,Z2 0.0,MODE #OFF}
|
||||
$WORKSPACE[3]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,X1 0.0,Y1 0.0,Z1 0.0,X2 0.0,Y2 0.0,Z2 0.0,MODE #OFF}
|
||||
$WORKSPACE[4]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,X1 0.0,Y1 0.0,Z1 0.0,X2 0.0,Y2 0.0,Z2 0.0,MODE #OFF}
|
||||
$WORKSPACE[5]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,X1 0.0,Y1 0.0,Z1 0.0,X2 0.0,Y2 0.0,Z2 0.0,MODE #OFF}
|
||||
$WORKSPACE[6]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,X1 0.0,Y1 0.0,Z1 0.0,X2 0.0,Y2 0.0,Z2 0.0,MODE #OFF}
|
||||
$WORKSPACE[7]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,X1 0.0,Y1 0.0,Z1 0.0,X2 0.0,Y2 0.0,Z2 0.0,MODE #OFF}
|
||||
$WORKSPACE[8]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0,X1 0.0,Y1 0.0,Z1 0.0,X2 0.0,Y2 0.0,Z2 0.0,MODE #OFF}
|
||||
BOOL $ABS_CONVERT=FALSE ;KONVERTIERUNG DER PUNKTKOORDINATEN
|
||||
BOOL $DEACTIVATE_ABS_ACCUR=FALSE
|
||||
REAL $NEARPATHTOL=200.000 ;TOLERANZ FUER DIE ABWEICHUNG VON $POS_RET
|
||||
INT $ASYNC_MODE='B0000' ;MODE FUER ASYNCHRONE ZUSATZACHSEN
|
||||
INT $TECH_FUNC='B0000' ;BITS ZUM AKTIVIEREN EINZELNER FUNKTIONEN DES FUNKTIONSGENERATORS
|
||||
BOOL $IMPROVED_COLLMON=TRUE ;Schalter Verbesserte Kollisionserkennung
|
||||
INT $COLLMON_STARTUP_MAX=200 ;maximale Abschaltzeit [ms] der Kollisionserkennung am Bewegungsstart (unbeschraenkt falls <=0)
|
||||
INT $COLLMON_TOL_PRO_DEF[12] ;Verbesserte Kollisionserkennung: Default-Sensibilitaetseinstellung Programm
|
||||
$COLLMON_TOL_PRO_DEF[1]=0 ;Achse 1
|
||||
$COLLMON_TOL_PRO_DEF[2]=0 ;Achse 2
|
||||
$COLLMON_TOL_PRO_DEF[3]=0 ;Achse 3
|
||||
$COLLMON_TOL_PRO_DEF[4]=0 ;Achse 4
|
||||
$COLLMON_TOL_PRO_DEF[5]=0 ;Achse 5
|
||||
$COLLMON_TOL_PRO_DEF[6]=0 ;Achse 6
|
||||
$COLLMON_TOL_PRO_DEF[7]=0 ;Achse 7
|
||||
$COLLMON_TOL_PRO_DEF[8]=0 ;Achse 8
|
||||
$COLLMON_TOL_PRO_DEF[9]=0 ;Achse 9
|
||||
$COLLMON_TOL_PRO_DEF[10]=0 ;Achse 10
|
||||
$COLLMON_TOL_PRO_DEF[11]=0 ;Achse 11
|
||||
$COLLMON_TOL_PRO_DEF[12]=0 ;Achse 12
|
||||
INT $COLLMON_TOL_COM_DEF[12] ;Verbesserte Kollisionserkennung: Default-Sensibilitaetseinstellung Kommando
|
||||
$COLLMON_TOL_COM_DEF[1]=0 ;Achse 1
|
||||
$COLLMON_TOL_COM_DEF[2]=0 ;Achse 2
|
||||
$COLLMON_TOL_COM_DEF[3]=0 ;Achse 3
|
||||
$COLLMON_TOL_COM_DEF[4]=0 ;Achse 4
|
||||
$COLLMON_TOL_COM_DEF[5]=0 ;Achse 5
|
||||
$COLLMON_TOL_COM_DEF[6]=0 ;Achse 6
|
||||
$COLLMON_TOL_COM_DEF[7]=0 ;Achse 7
|
||||
$COLLMON_TOL_COM_DEF[8]=0 ;Achse 8
|
||||
$COLLMON_TOL_COM_DEF[9]=0 ;Achse 9
|
||||
$COLLMON_TOL_COM_DEF[10]=0 ;Achse 10
|
||||
$COLLMON_TOL_COM_DEF[11]=0 ;Achse 11
|
||||
$COLLMON_TOL_COM_DEF[12]=0 ;Achse 12
|
||||
INT $TORQMON_DEF[12] ;DEFAULTWERTE FUER DEN MOMENTENUEBERWACHUNGSSCHLAUCH IM PROGRAMMBETRIEB [%]
|
||||
$TORQMON_DEF[1]=0 ;ACHSE 1
|
||||
$TORQMON_DEF[2]=0 ;ACHSE 2
|
||||
$TORQMON_DEF[3]=0 ;ACHSE 3
|
||||
$TORQMON_DEF[4]=0 ;ACHSE 4
|
||||
$TORQMON_DEF[5]=0 ;ACHSE 5
|
||||
$TORQMON_DEF[6]=0 ;ACHSE 6
|
||||
$TORQMON_DEF[7]=0 ;ACHSE 7
|
||||
$TORQMON_DEF[8]=0 ;ACHSE 8
|
||||
$TORQMON_DEF[9]=0 ;ACHSE 9
|
||||
$TORQMON_DEF[10]=0 ;ACHSE 10
|
||||
$TORQMON_DEF[11]=0 ;ACHSE 11
|
||||
$TORQMON_DEF[12]=0 ;ACHSE 12
|
||||
INT $TORQMON_COM_DEF[12] ;DEFAULTWERTE FUER DEN MOMENTENUEBERWACHUNGSSCHLAUCH IM KOMMANDOBETRIEB [%]
|
||||
$TORQMON_COM_DEF[1]=0 ;ACHSE 1
|
||||
$TORQMON_COM_DEF[2]=0 ;ACHSE 2
|
||||
$TORQMON_COM_DEF[3]=0 ;ACHSE 3
|
||||
$TORQMON_COM_DEF[4]=0 ;ACHSE 4
|
||||
$TORQMON_COM_DEF[5]=0 ;ACHSE 5
|
||||
$TORQMON_COM_DEF[6]=0 ;ACHSE 6
|
||||
$TORQMON_COM_DEF[7]=0
|
||||
$TORQMON_COM_DEF[8]=0
|
||||
$TORQMON_COM_DEF[9]=0
|
||||
$TORQMON_COM_DEF[10]=0
|
||||
$TORQMON_COM_DEF[11]=0
|
||||
$TORQMON_COM_DEF[12]=0
|
||||
REAL $TORQMON_TIME=0.0120000 ;ZEIT [MS], NACH DER DIE FAHRMOMENTUEBERWACHUNG ZUSCHLAEGT
|
||||
FRAME $SINGUL_ERR_PRO={A 0.0,B 0.0,C 0.0} ;MAX. ORIENTIERUNGSFEHLER PROGRAMMVERFAHREN
|
||||
FRAME $SINGUL_ERR_JOG={A 5.00000,B 5.00000,C 5.00000} ;MAX. ORIENTIERUNGSFEHLER HANDVERFAHREN
|
||||
DECL TARGET_STATUS $TARGET_STATUS=#SOURCE
|
||||
BOOL $RED_T1_OV_CP=FALSE ;BEHANDLUNG VON CP_BAHNEN IN T1 (FALSE=GESCHW.-REDUZ. AUF $VEL_CP_T1, TRUE=OVERRIDE-REDUZIERUNG UM $RED_T1)
|
||||
DECL CP_VEL_TYPE $CP_VEL_TYPE=#VAR_T1 ;RED. DER CP-GESCHW. BEI UEBERSCHREITUNG DER ACHSGRENZWERTE (#VAR_T1 : NUR IM T1-Betrieb, #VAR_ALL : IMMER, #VAR_ALL_MODEL: modellbasierte Achsgrenzwerte im Programmbetrieb und T2,AUT,EXT)
|
||||
DECL CP_STATMON $CP_STATMON=#NONE ;variable fuer die CP Konfigurationsueberwachung
|
||||
REAL $KCP_POS=0.0 ;STELLUNG DES KCP BZGL. DES ROBOTERS ( WINDROSE )
|
||||
BOOL $TECH_ANA_FLT_OFF[6] ;ZYKL. ANALOGAUSGABE DES TECHVALS GEFILTERT (FALSE)/UNGEFILTERT (TRUE) AUSGEBEN
|
||||
$TECH_ANA_FLT_OFF[1]=FALSE
|
||||
$TECH_ANA_FLT_OFF[2]=FALSE
|
||||
$TECH_ANA_FLT_OFF[3]=FALSE
|
||||
$TECH_ANA_FLT_OFF[4]=FALSE
|
||||
$TECH_ANA_FLT_OFF[5]=FALSE
|
||||
$TECH_ANA_FLT_OFF[6]=FALSE
|
||||
CHAR $WORKSPACE_NAME1[24]
|
||||
$WORKSPACE_NAME1[]="WORKSPACE 1"
|
||||
CHAR $WORKSPACE_NAME2[24]
|
||||
$WORKSPACE_NAME2[]="WORKSPACE 2"
|
||||
CHAR $WORKSPACE_NAME3[24]
|
||||
$WORKSPACE_NAME3[]="WORKSPACE 3"
|
||||
CHAR $WORKSPACE_NAME4[24]
|
||||
$WORKSPACE_NAME4[]="WORKSPACE 4"
|
||||
CHAR $WORKSPACE_NAME5[24]
|
||||
$WORKSPACE_NAME5[]="WORKSPACE 5"
|
||||
CHAR $WORKSPACE_NAME6[24]
|
||||
$WORKSPACE_NAME6[]="WORKSPACE 6"
|
||||
CHAR $WORKSPACE_NAME7[24]
|
||||
$WORKSPACE_NAME7[]="WORKSPACE 7"
|
||||
CHAR $WORKSPACE_NAME8[24]
|
||||
$WORKSPACE_NAME8[]="WORKSPACE 8"
|
||||
DECL COOP_KRC $COOP_KRC[16] ;POTENTIAL REMOTE ROBOTS
|
||||
$COOP_KRC[1]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[2]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[3]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[4]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[5]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[6]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[7]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[8]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[9]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[10]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[11]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[12]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[13]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[14]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[15]={IP_ADDR[] " ",NAME[] " "}
|
||||
$COOP_KRC[16]={IP_ADDR[] " ",NAME[] " "}
|
||||
DECL WS_CONFIG $WS_CONFIG[32] ;WORKSPACE CONFIGURATION FOR WORKSPACE SHARING
|
||||
$WS_CONFIG[1]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[2]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[3]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[4]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[5]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[6]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[7]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[8]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[9]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[10]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[11]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[12]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[13]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[14]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[15]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[16]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[17]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[18]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[19]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[20]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[21]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[22]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[23]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[24]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[25]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[26]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[27]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[28]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[29]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[30]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[31]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
$WS_CONFIG[32]={COOP_KRC 0,WS_NAME[] " ",WS_PRIO 0}
|
||||
INT $COUNT_I[160] ;COUNTER
|
||||
$COUNT_I[1]=0
|
||||
$COUNT_I[2]=0
|
||||
$COUNT_I[3]=0
|
||||
$COUNT_I[4]=0
|
||||
$COUNT_I[5]=0
|
||||
$COUNT_I[6]=0
|
||||
$COUNT_I[7]=0
|
||||
$COUNT_I[8]=0
|
||||
$COUNT_I[9]=0
|
||||
$COUNT_I[10]=0
|
||||
$COUNT_I[11]=0
|
||||
$COUNT_I[12]=0
|
||||
$COUNT_I[13]=0
|
||||
$COUNT_I[14]=0
|
||||
$COUNT_I[15]=0
|
||||
$COUNT_I[16]=0
|
||||
$COUNT_I[17]=0
|
||||
$COUNT_I[18]=0
|
||||
$COUNT_I[19]=0
|
||||
$COUNT_I[20]=0
|
||||
$COUNT_I[21]=0
|
||||
$COUNT_I[22]=0
|
||||
$COUNT_I[23]=0
|
||||
$COUNT_I[24]=0
|
||||
$COUNT_I[25]=0
|
||||
$COUNT_I[26]=0
|
||||
$COUNT_I[27]=0
|
||||
$COUNT_I[28]=0
|
||||
$COUNT_I[29]=0
|
||||
$COUNT_I[30]=0
|
||||
$COUNT_I[31]=0
|
||||
$COUNT_I[32]=0
|
||||
$COUNT_I[33]=0
|
||||
$COUNT_I[34]=0
|
||||
$COUNT_I[35]=0
|
||||
$COUNT_I[36]=0
|
||||
$COUNT_I[37]=0
|
||||
$COUNT_I[38]=0
|
||||
$COUNT_I[39]=0
|
||||
$COUNT_I[40]=0
|
||||
$COUNT_I[41]=0
|
||||
$COUNT_I[42]=0
|
||||
$COUNT_I[43]=0
|
||||
$COUNT_I[44]=0
|
||||
$COUNT_I[45]=0
|
||||
$COUNT_I[46]=0
|
||||
$COUNT_I[47]=0
|
||||
$COUNT_I[48]=0
|
||||
$COUNT_I[49]=0
|
||||
$COUNT_I[50]=0
|
||||
$COUNT_I[51]=0
|
||||
$COUNT_I[52]=0
|
||||
$COUNT_I[53]=0
|
||||
$COUNT_I[54]=0
|
||||
$COUNT_I[55]=0
|
||||
$COUNT_I[56]=0
|
||||
$COUNT_I[57]=0
|
||||
$COUNT_I[58]=0
|
||||
$COUNT_I[59]=0
|
||||
$COUNT_I[60]=0
|
||||
$COUNT_I[61]=0
|
||||
$COUNT_I[62]=0
|
||||
$COUNT_I[63]=0
|
||||
$COUNT_I[64]=0
|
||||
$COUNT_I[65]=0
|
||||
$COUNT_I[66]=0
|
||||
$COUNT_I[67]=0
|
||||
$COUNT_I[68]=0
|
||||
$COUNT_I[69]=0
|
||||
$COUNT_I[70]=0
|
||||
$COUNT_I[71]=0
|
||||
$COUNT_I[72]=0
|
||||
$COUNT_I[73]=0
|
||||
$COUNT_I[74]=0
|
||||
$COUNT_I[75]=0
|
||||
$COUNT_I[76]=0
|
||||
$COUNT_I[77]=0
|
||||
$COUNT_I[78]=0
|
||||
$COUNT_I[79]=0
|
||||
$COUNT_I[80]=0
|
||||
$COUNT_I[81]=0
|
||||
$COUNT_I[82]=0
|
||||
$COUNT_I[83]=0
|
||||
$COUNT_I[84]=0
|
||||
$COUNT_I[85]=0
|
||||
$COUNT_I[86]=0
|
||||
$COUNT_I[87]=0
|
||||
$COUNT_I[88]=0
|
||||
$COUNT_I[89]=0
|
||||
$COUNT_I[90]=0
|
||||
$COUNT_I[91]=0
|
||||
$COUNT_I[92]=0
|
||||
$COUNT_I[93]=0
|
||||
$COUNT_I[94]=0
|
||||
$COUNT_I[95]=0
|
||||
$COUNT_I[96]=0
|
||||
$COUNT_I[97]=0
|
||||
$COUNT_I[98]=0
|
||||
$COUNT_I[99]=0
|
||||
$COUNT_I[100]=0
|
||||
$COUNT_I[101]=0
|
||||
$COUNT_I[102]=0
|
||||
$COUNT_I[103]=0
|
||||
$COUNT_I[104]=0
|
||||
$COUNT_I[105]=0
|
||||
$COUNT_I[106]=0
|
||||
$COUNT_I[107]=0
|
||||
$COUNT_I[108]=0
|
||||
$COUNT_I[109]=0
|
||||
$COUNT_I[110]=0
|
||||
$COUNT_I[111]=0
|
||||
$COUNT_I[112]=0
|
||||
$COUNT_I[113]=0
|
||||
$COUNT_I[114]=0
|
||||
$COUNT_I[115]=0
|
||||
$COUNT_I[116]=0
|
||||
$COUNT_I[117]=0
|
||||
$COUNT_I[118]=0
|
||||
$COUNT_I[119]=0
|
||||
$COUNT_I[120]=0
|
||||
$COUNT_I[121]=0
|
||||
$COUNT_I[122]=0
|
||||
$COUNT_I[123]=0
|
||||
$COUNT_I[124]=0
|
||||
$COUNT_I[125]=0
|
||||
$COUNT_I[126]=0
|
||||
$COUNT_I[127]=0
|
||||
$COUNT_I[128]=0
|
||||
$COUNT_I[129]=0
|
||||
$COUNT_I[130]=0
|
||||
$COUNT_I[131]=0
|
||||
$COUNT_I[132]=0
|
||||
$COUNT_I[133]=0
|
||||
$COUNT_I[134]=0
|
||||
$COUNT_I[135]=0
|
||||
$COUNT_I[136]=0
|
||||
$COUNT_I[137]=0
|
||||
$COUNT_I[138]=0
|
||||
$COUNT_I[139]=0
|
||||
$COUNT_I[140]=0
|
||||
$COUNT_I[141]=0
|
||||
$COUNT_I[142]=0
|
||||
$COUNT_I[143]=0
|
||||
$COUNT_I[144]=0
|
||||
$COUNT_I[145]=0
|
||||
$COUNT_I[146]=0
|
||||
$COUNT_I[147]=0
|
||||
$COUNT_I[148]=0
|
||||
$COUNT_I[149]=0
|
||||
$COUNT_I[150]=0
|
||||
$COUNT_I[151]=0
|
||||
$COUNT_I[152]=0
|
||||
$COUNT_I[153]=0
|
||||
$COUNT_I[154]=0
|
||||
$COUNT_I[155]=0
|
||||
$COUNT_I[156]=0
|
||||
$COUNT_I[157]=0
|
||||
$COUNT_I[158]=0
|
||||
$COUNT_I[159]=0
|
||||
$COUNT_I[160]=0
|
||||
DECL BIN_TYPE $BIN_OUT[64] ;Binary Output configuration
|
||||
$BIN_OUT[1]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[2]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[3]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[4]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[5]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[6]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[7]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[8]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[9]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[10]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[11]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[12]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[13]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[14]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[15]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[16]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[17]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[18]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[19]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[20]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[21]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[22]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[23]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[24]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[25]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[26]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[27]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[28]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[29]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[30]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[31]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[32]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[33]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[34]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[35]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[36]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[37]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[38]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[39]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[40]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[41]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[42]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[43]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[44]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[45]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[46]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[47]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[48]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[49]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[50]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[51]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[52]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[53]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[54]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[55]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[56]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[57]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[58]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[59]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[60]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[61]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[62]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[63]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_OUT[64]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
DECL BIN_TYPE $BIN_IN[64] ;Binary Output configuration
|
||||
$BIN_IN[1]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[2]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[3]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[4]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[5]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[6]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[7]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[8]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[9]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[10]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[11]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[12]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[13]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[14]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[15]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[16]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[17]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[18]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[19]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[20]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[21]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[22]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[23]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[24]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[25]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[26]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[27]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[28]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[29]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[30]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[31]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[32]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[33]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[34]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[35]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[36]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[37]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[38]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[39]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[40]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[41]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[42]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[43]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[44]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[45]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[46]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[47]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[48]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[49]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[50]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[51]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[52]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[53]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[54]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[55]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[56]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[57]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[58]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[59]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[60]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[61]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[62]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[63]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
$BIN_IN[64]={F_BIT 1,LEN 0,PARITY #NONE}
|
||||
INT $SYNCCMD_SIM=0 ;Simulation aller ProgSync und MotionSync Befehle fuer eine def. Steuerung
|
||||
INT $SYNCLINESELECTMASK=0 ;erzwingt eine synchrone Statzanwahl auf Remote-Steuerung
|
||||
INT $SPREADACTION=0 ;kennzeichnet die angegebenen Steuerungen als Verbund
|
||||
BOOL $COLL_AVOID=FALSE ; COLL_AVOID
|
||||
DECL COOP_UPDATE_T $COOP_UPDATE ;Kommunikation zwische WCD und TPBASIS
|
||||
INT $TP_COOP_UPDATE=0 ;Kommunikation zwische CellMap und TPBASIS
|
||||
INT $TP_WS_UPDATE=0 ;Kommunikation zwische workspace sharing und TPBASIS
|
||||
DECL LDC_REACTION $LDC_CONFIG[128] ;Konfiguration der Lastdatenpruefung
|
||||
$LDC_CONFIG[1]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[2]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[3]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[4]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[5]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[6]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[7]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[8]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[9]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[10]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[11]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[12]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[13]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[14]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[15]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[16]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[17]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[18]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[19]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[20]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[21]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[22]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[23]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[24]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[25]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[26]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[27]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[28]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[29]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[30]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[31]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[32]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[33]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[34]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[35]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[36]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[37]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[38]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[39]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[40]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[41]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[42]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[43]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[44]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[45]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[46]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[47]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[48]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[49]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[50]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[51]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[52]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[53]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[54]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[55]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[56]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[57]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[58]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[59]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[60]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[61]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[62]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[63]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[64]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[65]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[66]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[67]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[68]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[69]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[70]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[71]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[72]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[73]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[74]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[75]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[76]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[77]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[78]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[79]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[80]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[81]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[82]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[83]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[84]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[85]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[86]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[87]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[88]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[89]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[90]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[91]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[92]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[93]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[94]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[95]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[96]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[97]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[98]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[99]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[100]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[101]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[102]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[103]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[104]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[105]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[106]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[107]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[108]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[109]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[110]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[111]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[112]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[113]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[114]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[115]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[116]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[117]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[118]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[119]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[120]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[121]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[122]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[123]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[124]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[125]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[126]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[127]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
$LDC_CONFIG[128]={UNDERLOAD #WARNONLY,OVERLOAD #STOPROBOT}
|
||||
ENDDAT
|
||||
103
KUKA/KRC/STEU/Mada/$machine.dat
Normal file
103
KUKA/KRC/STEU/Mada/$machine.dat
Normal file
@@ -0,0 +1,103 @@
|
||||
&ACCESS RV$
|
||||
&REL 3
|
||||
&PARAM VERSION = 1.0.0
|
||||
DEFDAT $MACHINE PUBLIC
|
||||
SIGNAL $CRIT_PERI_ACK_REQ $IN[1026] ;Schalter zur Konfiguration der Bewegung kritischer Peripherie
|
||||
SIGNAL $CRIT_PERI_ACK FALSE
|
||||
CHAR $V_STEUMADA[32]
|
||||
$V_STEUMADA[]="V1.0.0/KUKA8.3" ;VERSIONSKENNUNG
|
||||
SIGNAL $MASTERINGTEST_REQ_EXT $IN[1026] ;TRUE = Referenzfahrt angefordert (extern)
|
||||
SIGNAL $BRAKETEST_REQ_EX $IN[1026] ;TRUE = Bremsentest soll gestartet werden
|
||||
SIGNAL $BRAKETEST_MONTIME FALSE
|
||||
SIGNAL $MAINTENANCE_TO_PLC FALSE
|
||||
SIGNAL $DRIVE_STOP_NOT_REQ $IN[1025] ;FALSE = Drehzahlstopp Anforderung
|
||||
SIGNAL $BRAKETEST_REQ_INT FALSE
|
||||
SIGNAL $BRAKETEST_WORK FALSE
|
||||
SIGNAL $BRAKES_OK FALSE
|
||||
SIGNAL $BRAKETEST_WARN FALSE
|
||||
DECL EMSTOP_PATH $EMSTOP_PATH={T1 #ON,T2 #ON,AUT #ON,EX #ON} ;PROJEKTIERUNG DES BAHNTREUEN NOT-AUS FUER T1,T2,AUT,EX
|
||||
SIGNAL $EXT_START $IN[3] ;EXTERNER START
|
||||
SIGNAL $MOVE_ENABLE $IN[4] ;FAHRFREIGABE GESAMT
|
||||
SIGNAL $RC_RDY1 $OUT[17] ;RC-BETRIEBSBEREIT 1
|
||||
SIGNAL $SPOC_MOTION_ENABLE $OUT[1015] ; FAHRFREIGABE DURCH SAFETY CONTROLLER
|
||||
SIGNAL $ALARM_STOP $OUT[1] ;NOT-STOP
|
||||
SIGNAL $T1 $OUT[10] ;BETRIEBSART T1
|
||||
SIGNAL $T2 $OUT[11] ;BETRIEBSART T2
|
||||
SIGNAL $AUT $OUT[12] ;BETRIEBSART AUTOMATIK
|
||||
SIGNAL $I_O_ACTCONF $OUT[18] ;E/A-SCHNITTSTELLE AKTIV QUITTUNG
|
||||
SIGNAL $MODE_AUTO FALSE
|
||||
SIGNAL $MODE_TEST FALSE
|
||||
SIGNAL $LOCAL_NETWORK_OK FALSE
|
||||
SIGNAL $COMPLETE_NETWORK_OK FALSE
|
||||
SIGNAL $EXT $OUT[13] ;BETRIEBSART EXTERN
|
||||
SIGNAL $STOPMESS $OUT[4] ;STOP-MELDUNG
|
||||
SIGNAL $CONF_MESS $IN[5] ;EXTERNE QUITTUNG
|
||||
SIGNAL $USER_SAF $OUT[2]
|
||||
SIGNAL $PERI_RDY $OUT[3]
|
||||
SIGNAL $IN_HOME $OUT[8] ;ROB IN HOMEPOSITION
|
||||
SIGNAL $IN_HOME1 FALSE
|
||||
SIGNAL $IN_HOME2 FALSE
|
||||
SIGNAL $IN_HOME3 FALSE
|
||||
SIGNAL $IN_HOME4 FALSE
|
||||
SIGNAL $IN_HOME5 FALSE
|
||||
SIGNAL $DRIVES_ON $IN[7] ;ANTRIEBE EIN
|
||||
SIGNAL $DRIVES_OFF $IN[6] ;ANTRIEBE ENABLE
|
||||
SIGNAL $ON_PATH $OUT[9] ;ROB AUF BAHN
|
||||
SIGNAL $PR_MODE $OUT[21] ;HAND/PROGRAMMIERMODUS
|
||||
SIGNAL $SS_MODE $OUT[22] ;HAND/SINGLE-STEP
|
||||
SIGNAL $ALARM_STOP_INTERN $OUT[1002] ;NOT-STOP INTERN
|
||||
SIGNAL $WORKSTATE1 FALSE
|
||||
SIGNAL $WORKSTATE2 FALSE
|
||||
SIGNAL $WORKSTATE3 FALSE
|
||||
SIGNAL $WORKSTATE4 FALSE
|
||||
SIGNAL $WORKSTATE5 FALSE
|
||||
SIGNAL $WORKSTATE6 FALSE
|
||||
SIGNAL $WORKSTATE7 FALSE
|
||||
SIGNAL $WORKSTATE8 FALSE
|
||||
SIGNAL $CYLWORKSTATE1 FALSE
|
||||
SIGNAL $CYLWORKSTATE2 FALSE
|
||||
SIGNAL $CYLWORKSTATE3 FALSE
|
||||
SIGNAL $CYLWORKSTATE4 FALSE
|
||||
SIGNAL $CYLWORKSTATE5 FALSE
|
||||
SIGNAL $CYLWORKSTATE6 FALSE
|
||||
SIGNAL $CYLWORKSTATE7 FALSE
|
||||
SIGNAL $CYLWORKSTATE8 FALSE
|
||||
SIGNAL $AXWORKSTATE1 FALSE
|
||||
SIGNAL $AXWORKSTATE2 FALSE
|
||||
SIGNAL $AXWORKSTATE3 FALSE
|
||||
SIGNAL $AXWORKSTATE4 FALSE
|
||||
SIGNAL $AXWORKSTATE5 FALSE
|
||||
SIGNAL $AXWORKSTATE6 FALSE
|
||||
SIGNAL $AXWORKSTATE7 FALSE
|
||||
SIGNAL $AXWORKSTATE8 FALSE
|
||||
SIGNAL $DELTAWORKSTATE FALSE
|
||||
SIGNAL $ASYNC_AX1_P $IN[1026]
|
||||
SIGNAL $ASYNC_AX2_P $IN[1026]
|
||||
SIGNAL $ASYNC_AX3_P $IN[1026]
|
||||
SIGNAL $ASYNC_AX4_P $IN[1026]
|
||||
SIGNAL $ASYNC_AX5_P $IN[1026]
|
||||
SIGNAL $ASYNC_AX6_P $IN[1026]
|
||||
SIGNAL $ASYNC_AX1_M $IN[1026]
|
||||
SIGNAL $ASYNC_AX2_M $IN[1026]
|
||||
SIGNAL $ASYNC_AX3_M $IN[1026]
|
||||
SIGNAL $ASYNC_AX4_M $IN[1026]
|
||||
SIGNAL $ASYNC_AX5_M $IN[1026]
|
||||
SIGNAL $ASYNC_AX6_M $IN[1026]
|
||||
SIGNAL $ZUST_ASYNC $IN[1026]
|
||||
SIGNAL $NEAR_POSRET $OUT[14] ;ROBOTER IN TOLERANZFENSTER
|
||||
SIGNAL $COLLISION FALSE
|
||||
SIGNAL $COLLISION_STOP FALSE
|
||||
SIGNAL $I_O_ACT $IN[1025] ;E/A-SCHNITTSTELLE AKTIV
|
||||
SIGNAL $SAFEGATE_OP $IN[1025] ;SAFETY GATE ON PATH STOP
|
||||
SIGNAL $MOVE_ENA_ACK FALSE
|
||||
SIGNAL $COLL_ALARM FALSE
|
||||
SIGNAL $COLL_ENABLE FALSE
|
||||
SIGNAL $IMM_STOP $IN[1025] ;NOT-AUS VON DER SPS
|
||||
SIGNAL $AUX_POWER $IN[1026] ;EXTERNE SPANNUNGSVERSORGUNG AKTIV
|
||||
SIGNAL $T2_ENABLE $IN[1025] ;SAFETY-SPEED
|
||||
REAL $FAN_FOLLOW_UP_TIME=5.00000 ;NACHLAUFZEIT FUER DIE FAN-ANSTEUERUNG
|
||||
SIGNAL $ROB_STOPPED $OUT[1023] ;ROBOTER STEHT
|
||||
SIGNAL $ROB_CAL $OUT[1001] ;ROBOTER SYNCHRON
|
||||
SIGNAL $PRO_ACT $OUT[5] ;PROZESS AKTIV
|
||||
SIGNAL $PRO_MOVE $OUT[1022] ;PROGRAMMBEWEGUNG AKTIV
|
||||
ENDDAT
|
||||
29
KUKA/KRC/STEU/Mada/$option.dat
Normal file
29
KUKA/KRC/STEU/Mada/$option.dat
Normal file
@@ -0,0 +1,29 @@
|
||||
&ACCESS RV$
|
||||
&PARAM VERSION = 1.0.0
|
||||
DEFDAT $OPTION PUBLIC
|
||||
CHAR $V_OPTION[32]
|
||||
$V_OPTION[]="V1.0.0/KUKA8.3" ;VERSIONSKENNUNG
|
||||
BOOL $TECH_OPT=TRUE ;FUNKTIONSGENERATOR
|
||||
BOOL $CONSIDER_DLIN_ENERGY=FALSE ;Energie bei DLIN-Planung beruecksichtigen
|
||||
BOOL $TCP_IPO=TRUE ;GREIFERBEZOGENE INTERPOLATION
|
||||
BOOL $SEP_ASYNC_OV=FALSE ;Schalter fuer asynchrone Hand-Overrides
|
||||
BOOL $LOOP_CONT=FALSE
|
||||
CHAR $LOOP_MSG[128]
|
||||
BOOL $IDENT_OPT=TRUE
|
||||
INT $SINGUL_STRATEGY=0 ;0=NONE, 1=APPROX
|
||||
BOOL $MOT_STOP_OPT=FALSE ;AKTIVIERUNG "BLOCK EXTERNAL START"
|
||||
BOOL $CHCK_MOVENA=TRUE ;AB-UND EINSCHALTEN DER UEBERPRUEFUNG DER EINGANGSNUMMER VON $MOVE_ENABLE
|
||||
BOOL $COLLISAVOID=FALSE ;
|
||||
BOOL $MOTIONCOOP=FALSE ;
|
||||
BOOL $PROGCOOP=FALSE ;
|
||||
BOOL $T2_OV_REDUCE=TRUE ;TRUE = Overridereduzierung auf 10 % in Mode T2
|
||||
BOOL $VAR_TCP_IPO=FALSE
|
||||
BOOL $SPL_VEL_MODE_OPT=TRUE ; Defaulteinstellung fuer $SPL_VEL_MODE
|
||||
INT $SPL_PTP_PARA_OPT=2 ; Defaulteinstellung fuer PTP-Spline Parametrisierung
|
||||
BOOL $IMPROVEDMIXEDBLENDING=TRUE ; verbessertes gemischtes Ueberschleifen
|
||||
BOOL $IMPROVEDSPLINEGEOMETRY=TRUE ;verbesserte Spline Geometrie
|
||||
DECL STEP_ENUM $SPL_MIXEDBLENDING_OPT=#STEP2 ;Optimierungen des gemischten Ueberschleifens im Spline
|
||||
DECL INSTALLED_MOTION_MODES $INSTALLED_MOTION_MODES={PATH FALSE,DYNAMIC FALSE,ECO FALSE} ;Motion modes are subject to charges! Do not set manually to true.
|
||||
CHAR $MAX_XROB_VERS[32] ;Hoechste zu verwendende Version des XROB-Absolutgenauigkeitsmodells
|
||||
$MAX_XROB_VERS[]="4.2" ;="Major.Minor"
|
||||
ENDDAT
|
||||
107
KUKA/Modifications.xml
Normal file
107
KUKA/Modifications.xml
Normal file
@@ -0,0 +1,107 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Folder OriginalName="" CurrentName="" Type="None" OriginalPath="">
|
||||
<Folder OriginalName="KRC" CurrentName="KRC:" Type="None" OriginalPath="KRC:\">
|
||||
<Folder OriginalName="R1" CurrentName="R1" Type="None" OriginalPath="KRC:\R1">
|
||||
<Folder OriginalName="KUKA" CurrentName="KUKA" Type="None" OriginalPath="KRC:\R1\KUKA">
|
||||
<File OriginalName="CollDetect_UserAction.dat" CurrentName="CollDetect_UserAction.dat" Type="None" OriginalPath="KRC:\R1\KUKA\CollDetect_UserAction.dat" OriginalChecksum="525fb8ceb628df9818e433edf1e6f1bf" CurrentChecksum="525fb8ceb628df9818e433edf1e6f1bf" />
|
||||
<File OriginalName="CollDetect_UserAction.src" CurrentName="CollDetect_UserAction.src" Type="None" OriginalPath="KRC:\R1\KUKA\CollDetect_UserAction.src" OriginalChecksum="66e63c582463d895b3c02d3a038a6672" CurrentChecksum="66e63c582463d895b3c02d3a038a6672" />
|
||||
<File OriginalName="masref_user.dat" CurrentName="masref_user.dat" Type="None" OriginalPath="KRC:\R1\KUKA\masref_user.dat" OriginalChecksum="f67ff606ea52204705eb1141cf7808a2" CurrentChecksum="f67ff606ea52204705eb1141cf7808a2" />
|
||||
<File OriginalName="masref_user.src" CurrentName="masref_user.src" Type="None" OriginalPath="KRC:\R1\KUKA\masref_user.src" OriginalChecksum="a78246b787ecdb0d82dc7e0181ae9159" CurrentChecksum="a78246b787ecdb0d82dc7e0181ae9159" />
|
||||
</Folder>
|
||||
<Folder OriginalName="Mada" CurrentName="Mada" Type="None" OriginalPath="KRC:\R1\Mada">
|
||||
<File OriginalName="$machine.dat" CurrentName="$machine.dat" Type="None" OriginalPath="KRC:\R1\Mada\$machine.dat" OriginalChecksum="a6d2cc938e2a1ef1ef3017affa67f2de" CurrentChecksum="a6d2cc938e2a1ef1ef3017affa67f2de" />
|
||||
<File OriginalName="$robcor.dat" CurrentName="$robcor.dat" Type="None" OriginalPath="KRC:\R1\Mada\$robcor.dat" OriginalChecksum="b016257e7ddafcec6947463b0b21adff" CurrentChecksum="b016257e7ddafcec6947463b0b21adff" />
|
||||
</Folder>
|
||||
<Folder OriginalName="Program" CurrentName="Program" Type="None" OriginalPath="KRC:\R1\Program">
|
||||
<Folder OriginalName="Grip" CurrentName="Grip" Type="None" OriginalPath="KRC:\R1\Program\Grip">
|
||||
<File OriginalName="GripClose.src" CurrentName="GripClose.src" Type="None" OriginalPath="KRC:\R1\Program\Grip\GripClose.src" OriginalChecksum="515576abd3bed6643921712f74c40398" CurrentChecksum="515576abd3bed6643921712f74c40398" />
|
||||
<File OriginalName="GripOpen.src" CurrentName="GripOpen.src" Type="None" OriginalPath="KRC:\R1\Program\Grip\GripOpen.src" OriginalChecksum="2f43186412afa7640a5063bdbc8327c9" CurrentChecksum="2f43186412afa7640a5063bdbc8327c9" />
|
||||
</Folder>
|
||||
<Folder OriginalName="Home" CurrentName="Home" Type="None" OriginalPath="KRC:\R1\Program\Home">
|
||||
<File OriginalName="HomeModule.dat" CurrentName="HomeModule.dat" Type="None" OriginalPath="KRC:\R1\Program\Home\HomeModule.dat" OriginalChecksum="e1cdb53da7936d066fa7ba26f287260d" CurrentChecksum="e1cdb53da7936d066fa7ba26f287260d" />
|
||||
<File OriginalName="HomeModule.src" CurrentName="HomeModule.src" Type="None" OriginalPath="KRC:\R1\Program\Home\HomeModule.src" OriginalChecksum="595fe373cf05f593fe99ea18621b695b" CurrentChecksum="595fe373cf05f593fe99ea18621b695b" />
|
||||
</Folder>
|
||||
<Folder OriginalName="Mylib" CurrentName="Mylib" Type="None" OriginalPath="KRC:\R1\Program\Mylib">
|
||||
<File OriginalName="Initmove.src" CurrentName="Initmove.src" Type="None" OriginalPath="KRC:\R1\Program\Mylib\Initmove.src" OriginalChecksum="7ad76e14bd6f62a6a1d15f79e8bccbe6" CurrentChecksum="7ad76e14bd6f62a6a1d15f79e8bccbe6" />
|
||||
<File OriginalName="INT_TO_STR.src" CurrentName="INT_TO_STR.src" Type="None" OriginalPath="KRC:\R1\Program\Mylib\INT_TO_STR.src" OriginalChecksum="646cdf41c243fc31ba6e305a02dc2351" CurrentChecksum="646cdf41c243fc31ba6e305a02dc2351" />
|
||||
<File OriginalName="OffsetByBase.src" CurrentName="OffsetByBase.src" Type="None" OriginalPath="KRC:\R1\Program\Mylib\OffsetByBase.src" OriginalChecksum="ef740ebd42dbb3f0124a5c22a1f00154" CurrentChecksum="ef740ebd42dbb3f0124a5c22a1f00154" />
|
||||
<File OriginalName="OffsetByTool.src" CurrentName="OffsetByTool.src" Type="None" OriginalPath="KRC:\R1\Program\Mylib\OffsetByTool.src" OriginalChecksum="389f847e2c2ddac716192ad378ee4721" CurrentChecksum="389f847e2c2ddac716192ad378ee4721" />
|
||||
<File OriginalName="REAL_TO_Output.src" CurrentName="REAL_TO_Output.src" Type="None" OriginalPath="KRC:\R1\Program\Mylib\REAL_TO_Output.src" OriginalChecksum="0be03b9bb12a8f6a384c1d17c9c0e13b" CurrentChecksum="0be03b9bb12a8f6a384c1d17c9c0e13b" />
|
||||
<File OriginalName="REAL_TO_STR.src" CurrentName="REAL_TO_STR.src" Type="None" OriginalPath="KRC:\R1\Program\Mylib\REAL_TO_STR.src" OriginalChecksum="635d9acbc7b60201068468750e81c849" CurrentChecksum="635d9acbc7b60201068468750e81c849" />
|
||||
<File OriginalName="CheckInPos.src" CurrentName="CheckInPos.src" Type="None" OriginalPath="KRC:\R1\Program\Mylib\CheckInPos.src" OriginalChecksum="a4a92fd5053ad106fb6652d7f460f2d4" CurrentChecksum="a4a92fd5053ad106fb6652d7f460f2d4" />
|
||||
</Folder>
|
||||
<Folder OriginalName="PL" CurrentName="PL" Type="None" OriginalPath="KRC:\R1\Program\PL">
|
||||
<File OriginalName="FeedBelt1Pick.dat" CurrentName="FeedBelt1Pick.dat" Type="None" OriginalPath="KRC:\R1\Program\PL\FeedBelt1Pick.dat" OriginalChecksum="80ee14183b9bf2e108f163aaf1414549" CurrentChecksum="80ee14183b9bf2e108f163aaf1414549" />
|
||||
<File OriginalName="FeedBelt1Pick.src" CurrentName="FeedBelt1Pick.src" Type="None" OriginalPath="KRC:\R1\Program\PL\FeedBelt1Pick.src" OriginalChecksum="843b2d84122a384e169ef660b907d573" CurrentChecksum="843b2d84122a384e169ef660b907d573" />
|
||||
<File OriginalName="FeedBelt2Pick.dat" CurrentName="FeedBelt2Pick.dat" Type="None" OriginalPath="KRC:\R1\Program\PL\FeedBelt2Pick.dat" OriginalChecksum="0bb6d2212e6b5fd8395592432599760c" CurrentChecksum="0bb6d2212e6b5fd8395592432599760c" />
|
||||
<File OriginalName="FeedBelt2Pick.src" CurrentName="FeedBelt2Pick.src" Type="None" OriginalPath="KRC:\R1\Program\PL\FeedBelt2Pick.src" OriginalChecksum="83c35da000d384f9729eca03fe7a9878" CurrentChecksum="83c35da000d384f9729eca03fe7a9878" />
|
||||
<File OriginalName="NgBeltPlace.dat" CurrentName="NgBeltPlace.dat" Type="None" OriginalPath="KRC:\R1\Program\PL\NgBeltPlace.dat" OriginalChecksum="cd6c1b64ac4e5fb68ad3c35581b0279c" CurrentChecksum="cd6c1b64ac4e5fb68ad3c35581b0279c" />
|
||||
<File OriginalName="NgBeltPlace.src" CurrentName="NgBeltPlace.src" Type="None" OriginalPath="KRC:\R1\Program\PL\NgBeltPlace.src" OriginalChecksum="0d66063b40d8bb9a642953fbbbe536c5" CurrentChecksum="0d66063b40d8bb9a642953fbbbe536c5" />
|
||||
<File OriginalName="Pallet1Place.dat" CurrentName="Pallet1Place.dat" Type="None" OriginalPath="KRC:\R1\Program\PL\Pallet1Place.dat" OriginalChecksum="4884cd7a5fc72d96fa9594d216bfa17a" CurrentChecksum="4884cd7a5fc72d96fa9594d216bfa17a" />
|
||||
<File OriginalName="Pallet1Place.src" CurrentName="Pallet1Place.src" Type="None" OriginalPath="KRC:\R1\Program\PL\Pallet1Place.src" OriginalChecksum="25e20450bdd213ff1fd395331572bc9d" CurrentChecksum="25e20450bdd213ff1fd395331572bc9d" />
|
||||
<File OriginalName="Pallet2Place.dat" CurrentName="Pallet2Place.dat" Type="None" OriginalPath="KRC:\R1\Program\PL\Pallet2Place.dat" OriginalChecksum="8c318a64a7d2ff7a05bd4cf867daa98a" CurrentChecksum="8c318a64a7d2ff7a05bd4cf867daa98a" />
|
||||
<File OriginalName="Pallet2Place.src" CurrentName="Pallet2Place.src" Type="None" OriginalPath="KRC:\R1\Program\PL\Pallet2Place.src" OriginalChecksum="054aec9dc299b6ba959b0af4a3f8dd5a" CurrentChecksum="054aec9dc299b6ba959b0af4a3f8dd5a" />
|
||||
<File OriginalName="PosBase.dat" CurrentName="PosBase.dat" Type="None" OriginalPath="KRC:\R1\Program\PL\PosBase.dat" OriginalChecksum="6bb2b5b37146dcb80ac4fde52070247b" CurrentChecksum="6bb2b5b37146dcb80ac4fde52070247b" />
|
||||
<File OriginalName="ReFeedBeltPick.dat" CurrentName="ReFeedBeltPick.dat" Type="None" OriginalPath="KRC:\R1\Program\PL\ReFeedBeltPick.dat" OriginalChecksum="32334f6612b59e5e51f5660abb52bc61" CurrentChecksum="32334f6612b59e5e51f5660abb52bc61" />
|
||||
<File OriginalName="ReFeedBeltPick.src" CurrentName="ReFeedBeltPick.src" Type="None" OriginalPath="KRC:\R1\Program\PL\ReFeedBeltPick.src" OriginalChecksum="c75737d6cedc50c965d169b75a957de5" CurrentChecksum="c75737d6cedc50c965d169b75a957de5" />
|
||||
<File OriginalName="WaterBeltPick.dat" CurrentName="WaterBeltPick.dat" Type="None" OriginalPath="KRC:\R1\Program\PL\WaterBeltPick.dat" OriginalChecksum="a4dce7c3b2908fb1e63976a018aab475" CurrentChecksum="a4dce7c3b2908fb1e63976a018aab475" />
|
||||
<File OriginalName="WaterBeltPick.src" CurrentName="WaterBeltPick.src" Type="None" OriginalPath="KRC:\R1\Program\PL\WaterBeltPick.src" OriginalChecksum="23a7cb96dbc926fc70de395cd7e061dd" CurrentChecksum="23a7cb96dbc926fc70de395cd7e061dd" />
|
||||
</Folder>
|
||||
<Folder OriginalName="TP" CurrentName="TP" Type="None" OriginalPath="KRC:\R1\Program\TP">
|
||||
<File OriginalName="TestModule.dat" CurrentName="TestModule.dat" Type="None" OriginalPath="KRC:\R1\Program\TP\TestModule.dat" OriginalChecksum="73fb2fd3f59f35130a5a4faba51f9787" CurrentChecksum="73fb2fd3f59f35130a5a4faba51f9787" />
|
||||
<File OriginalName="TestModule.src" CurrentName="TestModule.src" Type="None" OriginalPath="KRC:\R1\Program\TP\TestModule.src" OriginalChecksum="a50e73c1c034bf9c36ba50942d524146" CurrentChecksum="a50e73c1c034bf9c36ba50942d524146" />
|
||||
</Folder>
|
||||
<File OriginalName="ActionReturn.src" CurrentName="ActionReturn.src" Type="None" OriginalPath="KRC:\R1\Program\ActionReturn.src" OriginalChecksum="3b7ea0d927814bda90401a3671b6efa9" CurrentChecksum="3b7ea0d927814bda90401a3671b6efa9" />
|
||||
<File OriginalName="Config.dat" CurrentName="Config.dat" Type="None" OriginalPath="KRC:\R1\Program\Config.dat" OriginalChecksum="087530c4c809b7abdd208a824e32bce1" CurrentChecksum="087530c4c809b7abdd208a824e32bce1" />
|
||||
<File OriginalName="MainModule.dat" CurrentName="MainModule.dat" Type="None" OriginalPath="KRC:\R1\Program\MainModule.dat" OriginalChecksum="4776fe0191d16db190dc94ab5686ca57" CurrentChecksum="4776fe0191d16db190dc94ab5686ca57" />
|
||||
<File OriginalName="MainModule.src" CurrentName="MainModule.src" Type="None" OriginalPath="KRC:\R1\Program\MainModule.src" OriginalChecksum="99287dc9ae739811ad9eabbdf0de9b57" CurrentChecksum="99287dc9ae739811ad9eabbdf0de9b57" />
|
||||
<File OriginalName="SignalIO.dat" CurrentName="SignalIO.dat" Type="None" OriginalPath="KRC:\R1\Program\SignalIO.dat" OriginalChecksum="dfe2df15b3f5150d1e890507d685a0a2" CurrentChecksum="dfe2df15b3f5150d1e890507d685a0a2" />
|
||||
</Folder>
|
||||
<Folder OriginalName="System" CurrentName="System" Type="None" OriginalPath="KRC:\R1\System">
|
||||
<File OriginalName="$config.dat" CurrentName="$config.dat" Type="None" OriginalPath="KRC:\R1\System\$config.dat" OriginalChecksum="2004cbaeeadd8fb010085babd25ac2b9" CurrentChecksum="2004cbaeeadd8fb010085babd25ac2b9" />
|
||||
<File OriginalName="bas.src" CurrentName="bas.src" Type="None" OriginalPath="KRC:\R1\System\bas.src" OriginalChecksum="6208846cbb3162dc70f79e924a705b32" CurrentChecksum="6208846cbb3162dc70f79e924a705b32" />
|
||||
<File OriginalName="collmonlib.dat" CurrentName="collmonlib.dat" Type="None" OriginalPath="KRC:\R1\System\collmonlib.dat" OriginalChecksum="984b722e665de4e0594a259e9c250552" CurrentChecksum="984b722e665de4e0594a259e9c250552" />
|
||||
<File OriginalName="collmonlib.src" CurrentName="collmonlib.src" Type="None" OriginalPath="KRC:\R1\System\collmonlib.src" OriginalChecksum="a51a060c8c31b7a274667f023cd031e8" CurrentChecksum="a51a060c8c31b7a274667f023cd031e8" />
|
||||
<File OriginalName="Global_Points.dat" CurrentName="Global_Points.dat" Type="None" OriginalPath="KRC:\R1\System\Global_Points.dat" OriginalChecksum="3f5487667627d201746ee8d57b9300d4" CurrentChecksum="3f5487667627d201746ee8d57b9300d4" />
|
||||
<File OriginalName="ir_stopm.src" CurrentName="ir_stopm.src" Type="None" OriginalPath="KRC:\R1\System\ir_stopm.src" OriginalChecksum="3991d21dcf3fb403f09a3f67574fece6" CurrentChecksum="3991d21dcf3fb403f09a3f67574fece6" />
|
||||
<File OriginalName="masref_main.dat" CurrentName="masref_main.dat" Type="None" OriginalPath="KRC:\R1\System\masref_main.dat" OriginalChecksum="1bb5d06ccb2b89ecda13ff7b7d69fc69" CurrentChecksum="1bb5d06ccb2b89ecda13ff7b7d69fc69" />
|
||||
<File OriginalName="masref_main.src" CurrentName="masref_main.src" Type="None" OriginalPath="KRC:\R1\System\masref_main.src" OriginalChecksum="0bf966476bc5a47eba933e80b15733ad" CurrentChecksum="0bf966476bc5a47eba933e80b15733ad" />
|
||||
<File OriginalName="MqttConfig.dat" CurrentName="MqttConfig.dat" Type="None" OriginalPath="KRC:\R1\System\MqttConfig.dat" OriginalChecksum="5c0344fca2007755a77cce000ea1adde" CurrentChecksum="5c0344fca2007755a77cce000ea1adde" />
|
||||
<File OriginalName="MsgLib.dat" CurrentName="MsgLib.dat" Type="None" OriginalPath="KRC:\R1\System\MsgLib.dat" OriginalChecksum="41b47238c5c391cb2e0dffad9ba5641f" CurrentChecksum="41b47238c5c391cb2e0dffad9ba5641f" />
|
||||
<File OriginalName="MsgLib.src" CurrentName="MsgLib.src" Type="None" OriginalPath="KRC:\R1\System\MsgLib.src" OriginalChecksum="b2e67e9f2a364568cdc36dafbabfe5c4" CurrentChecksum="b2e67e9f2a364568cdc36dafbabfe5c4" />
|
||||
<File OriginalName="sps.sub" CurrentName="sps.sub" Type="None" OriginalPath="KRC:\R1\System\sps.sub" OriginalChecksum="8b0233bab85a94dbb5a6b2c9e091fa84" CurrentChecksum="8b0233bab85a94dbb5a6b2c9e091fa84" />
|
||||
</Folder>
|
||||
<Folder OriginalName="TP" CurrentName="TP" Type="None" OriginalPath="KRC:\R1\TP">
|
||||
<Folder OriginalName="BrakeTest" CurrentName="BrakeTest" Type="None" OriginalPath="KRC:\R1\TP\BrakeTest">
|
||||
<File OriginalName="BrakeTestAxes.dat" CurrentName="BrakeTestAxes.dat" Type="None" OriginalPath="KRC:\R1\TP\BrakeTest\BrakeTestAxes.dat" OriginalChecksum="afb4da69e365f8e7c97ae9955fe31c88" CurrentChecksum="afb4da69e365f8e7c97ae9955fe31c88" />
|
||||
<File OriginalName="BrakeTestAxes.src" CurrentName="BrakeTestAxes.src" Type="None" OriginalPath="KRC:\R1\TP\BrakeTest\BrakeTestAxes.src" OriginalChecksum="32b4a97956306e60dc01e755dd60401c" CurrentChecksum="32b4a97956306e60dc01e755dd60401c" />
|
||||
<File OriginalName="BrakeTestBack.dat" CurrentName="BrakeTestBack.dat" Type="None" OriginalPath="KRC:\R1\TP\BrakeTest\BrakeTestBack.dat" OriginalChecksum="8ca66738dc9d32e457971bdb69021496" CurrentChecksum="8ca66738dc9d32e457971bdb69021496" />
|
||||
<File OriginalName="BrakeTestBack.src" CurrentName="BrakeTestBack.src" Type="None" OriginalPath="KRC:\R1\TP\BrakeTest\BrakeTestBack.src" OriginalChecksum="d54d5bf10a2c0cd62df368c96fe01ece" CurrentChecksum="d54d5bf10a2c0cd62df368c96fe01ece" />
|
||||
<File OriginalName="BrakeTestPark.dat" CurrentName="BrakeTestPark.dat" Type="None" OriginalPath="KRC:\R1\TP\BrakeTest\BrakeTestPark.dat" OriginalChecksum="855dd9a3fbeece7656ebef7cb89c52dc" CurrentChecksum="855dd9a3fbeece7656ebef7cb89c52dc" />
|
||||
<File OriginalName="BrakeTestPark.src" CurrentName="BrakeTestPark.src" Type="None" OriginalPath="KRC:\R1\TP\BrakeTest\BrakeTestPark.src" OriginalChecksum="0af88332ce0fefb0a9e558526927a6a3" CurrentChecksum="0af88332ce0fefb0a9e558526927a6a3" />
|
||||
<File OriginalName="BrakeTestReq.dat" CurrentName="BrakeTestReq.dat" Type="None" OriginalPath="KRC:\R1\TP\BrakeTest\BrakeTestReq.dat" OriginalChecksum="081ed4cf4cc222b65aa11103162acdb3" CurrentChecksum="081ed4cf4cc222b65aa11103162acdb3" />
|
||||
<File OriginalName="BrakeTestReq.src" CurrentName="BrakeTestReq.src" Type="None" OriginalPath="KRC:\R1\TP\BrakeTest\BrakeTestReq.src" OriginalChecksum="caa9a554f588e8479ecbbfd3e94ce200" CurrentChecksum="caa9a554f588e8479ecbbfd3e94ce200" />
|
||||
<File OriginalName="BrakeTestStart.dat" CurrentName="BrakeTestStart.dat" Type="None" OriginalPath="KRC:\R1\TP\BrakeTest\BrakeTestStart.dat" OriginalChecksum="004198a1a87e50ec3d26591772bdc22d" CurrentChecksum="004198a1a87e50ec3d26591772bdc22d" />
|
||||
<File OriginalName="BrakeTestStart.src" CurrentName="BrakeTestStart.src" Type="None" OriginalPath="KRC:\R1\TP\BrakeTest\BrakeTestStart.src" OriginalChecksum="2872134dcf6bc698ce343dd84c4c6ed5" CurrentChecksum="2872134dcf6bc698ce343dd84c4c6ed5" />
|
||||
</Folder>
|
||||
<Folder OriginalName="EthernetKRL" CurrentName="EthernetKRL" Type="None" OriginalPath="KRC:\R1\TP\EthernetKRL">
|
||||
<File OriginalName="EthernetKRL.dat" CurrentName="EthernetKRL.dat" Type="None" OriginalPath="KRC:\R1\TP\EthernetKRL\EthernetKRL.dat" OriginalChecksum="dbbb7b7928542c37a2211b2acc8ff2aa" CurrentChecksum="dbbb7b7928542c37a2211b2acc8ff2aa" />
|
||||
<File OriginalName="EthernetKRL.src" CurrentName="EthernetKRL.src" Type="None" OriginalPath="KRC:\R1\TP\EthernetKRL\EthernetKRL.src" OriginalChecksum="b1d8270052d1185c9fa41cb993a7162c" CurrentChecksum="b1d8270052d1185c9fa41cb993a7162c" />
|
||||
<File OriginalName="EthernetKRL_USER.src" CurrentName="EthernetKRL_USER.src" Type="None" OriginalPath="KRC:\R1\TP\EthernetKRL\EthernetKRL_USER.src" OriginalChecksum="3031f4efb4be48beacf547c180c0acac" CurrentChecksum="3031f4efb4be48beacf547c180c0acac" />
|
||||
</Folder>
|
||||
<File OriginalName="p00.dat" CurrentName="p00.dat" Type="None" OriginalPath="KRC:\R1\TP\p00.dat" OriginalChecksum="976925778011f82c7cae80d6e287eeb1" CurrentChecksum="976925778011f82c7cae80d6e287eeb1" />
|
||||
<File OriginalName="p00.src" CurrentName="p00.src" Type="None" OriginalPath="KRC:\R1\TP\p00.src" OriginalChecksum="ead0efefbde68dcceac4e3479ab671eb" CurrentChecksum="ead0efefbde68dcceac4e3479ab671eb" />
|
||||
<File OriginalName="Signals.dat" CurrentName="Signals.dat" Type="None" OriginalPath="KRC:\R1\TP\Signals.dat" OriginalChecksum="7c23e2e5347474611b59961e02dba2f0" CurrentChecksum="7c23e2e5347474611b59961e02dba2f0" />
|
||||
</Folder>
|
||||
<File OriginalName="cell.src" CurrentName="cell.src" Type="None" OriginalPath="KRC:\R1\cell.src" OriginalChecksum="3e132389c72da99a3bf85da49dd451c8" CurrentChecksum="3e132389c72da99a3bf85da49dd451c8" />
|
||||
</Folder>
|
||||
<Folder OriginalName="STEU" CurrentName="STEU" Type="None" OriginalPath="KRC:\STEU">
|
||||
<Folder OriginalName="Mada" CurrentName="Mada" Type="None" OriginalPath="KRC:\STEU\Mada">
|
||||
<File OriginalName="$custom.dat" CurrentName="$custom.dat" Type="None" OriginalPath="KRC:\STEU\Mada\$custom.dat" OriginalChecksum="f087df76bcdb3ee7916d584906a8e28a" CurrentChecksum="f087df76bcdb3ee7916d584906a8e28a" />
|
||||
<File OriginalName="$machine.dat" CurrentName="$machine.dat" Type="None" OriginalPath="KRC:\STEU\Mada\$machine.dat" OriginalChecksum="d3a507bd6698aecb01eedbeaaad269e2" CurrentChecksum="d3a507bd6698aecb01eedbeaaad269e2" />
|
||||
<File OriginalName="$option.dat" CurrentName="$option.dat" Type="None" OriginalPath="KRC:\STEU\Mada\$option.dat" OriginalChecksum="b14809a4ed34d4fd3ace9e88f982729c" CurrentChecksum="b14809a4ed34d4fd3ace9e88f982729c" />
|
||||
</Folder>
|
||||
<File OriginalName="$config.dat" CurrentName="$config.dat" Type="None" OriginalPath="KRC:\STEU\$config.dat" OriginalChecksum="bb819252e2bd4be741415f13f83eba3f" CurrentChecksum="bb819252e2bd4be741415f13f83eba3f" />
|
||||
</Folder>
|
||||
</Folder>
|
||||
</Folder>
|
||||
53
KUKA/actions.log
Normal file
53
KUKA/actions.log
Normal file
@@ -0,0 +1,53 @@
|
||||
Repository '810169497(PCRC-3HXLTUHYM6)', 'D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)'
|
||||
====================================================================================================
|
||||
|
||||
2026-02-05 03:19:10.654 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\Mylib\CheckPosArea.src
|
||||
2026-02-05 03:19:10.692 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\Mylib
|
||||
2026-02-05 03:20:11.856 下午 | DELETED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\Mylib\CheckPosArea.src
|
||||
2026-02-05 03:20:11.940 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\Mylib
|
||||
2026-02-05 03:21:08.416 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt1Pick.src
|
||||
2026-02-05 03:21:08.433 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt1Pick.src
|
||||
2026-02-05 03:21:08.433 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt1Pick.src
|
||||
2026-02-05 03:21:08.433 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt1Pick.src
|
||||
2026-02-05 03:21:23.788 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt1Pick.src
|
||||
2026-02-05 03:21:23.807 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt1Pick.src
|
||||
2026-02-05 03:21:23.807 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt1Pick.src
|
||||
2026-02-05 03:21:23.807 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt1Pick.src
|
||||
2026-02-05 03:21:51.851 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\Config.dat
|
||||
2026-02-05 03:21:51.863 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\Config.dat
|
||||
2026-02-05 03:21:51.863 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\Config.dat
|
||||
2026-02-05 03:21:51.863 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\Config.dat
|
||||
2026-02-05 03:22:27.575 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\ActionReturn.src
|
||||
2026-02-05 03:22:27.586 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\ActionReturn.src
|
||||
2026-02-05 03:22:27.586 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\ActionReturn.src
|
||||
2026-02-05 03:22:27.587 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\ActionReturn.src
|
||||
2026-02-05 03:23:13.336 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt1Pick.src
|
||||
2026-02-05 03:23:13.352 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt1Pick.src
|
||||
2026-02-05 03:23:13.352 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt1Pick.src
|
||||
2026-02-05 03:23:13.352 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt1Pick.src
|
||||
2026-02-05 03:23:48.803 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt2Pick.src
|
||||
2026-02-05 03:23:48.819 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt2Pick.src
|
||||
2026-02-05 03:23:48.819 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt2Pick.src
|
||||
2026-02-05 03:23:48.819 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\FeedBelt2Pick.src
|
||||
2026-02-05 03:23:48.819 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\NgBeltPlace.src
|
||||
2026-02-05 03:23:48.820 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\NgBeltPlace.src
|
||||
2026-02-05 03:23:48.820 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\NgBeltPlace.src
|
||||
2026-02-05 03:23:48.820 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\NgBeltPlace.src
|
||||
2026-02-05 03:24:02.210 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\Pallet1Place.src
|
||||
2026-02-05 03:24:02.226 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\Pallet1Place.src
|
||||
2026-02-05 03:24:02.226 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\Pallet1Place.src
|
||||
2026-02-05 03:24:02.227 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\Pallet1Place.src
|
||||
2026-02-05 03:24:37.067 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\Pallet2Place.src
|
||||
2026-02-05 03:24:37.082 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\Pallet2Place.src
|
||||
2026-02-05 03:24:37.082 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\Pallet2Place.src
|
||||
2026-02-05 03:24:37.082 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\Pallet2Place.src
|
||||
2026-02-05 03:24:37.082 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\ReFeedBeltPick.src
|
||||
2026-02-05 03:24:37.082 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\ReFeedBeltPick.src
|
||||
2026-02-05 03:24:37.082 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\ReFeedBeltPick.src
|
||||
2026-02-05 03:24:37.083 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\ReFeedBeltPick.src
|
||||
2026-02-05 03:24:37.083 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\WaterBeltPick.src
|
||||
2026-02-05 03:24:37.083 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\WaterBeltPick.src
|
||||
2026-02-05 03:24:37.083 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\WaterBeltPick.src
|
||||
2026-02-05 03:24:37.083 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\KRC\R1\Program\PL\WaterBeltPick.src
|
||||
2026-02-05 03:25:29.120 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\Modifications.xml
|
||||
2026-02-05 03:25:29.120 下午 | CHANGED | D:\系统文件\文档\WorkVisual 6.0\Repositories\810169497(PCRC-3HXLTUHYM6)\Modifications.xml
|
||||
Reference in New Issue
Block a user