更新KUKA程序
This commit is contained in:
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
|
||||
Reference in New Issue
Block a user