更新优化程序
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
&ACCESS RVO1
|
||||
&ACCESS RVO
|
||||
&REL 1
|
||||
&PARAM DISKPATH = KRC:\R1\Program\PL
|
||||
DEFDAT FEEDBELT1PICK
|
||||
@@ -15,10 +15,10 @@ DECL INT SUCCESS
|
||||
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS={PARAMS[] "Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.MovementParameterFieldEnabled=True; Kuka.IsAngleEnabled=False; Kuka.PointName=Pick; Kuka.FrameData.base_no=1; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT1; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=2; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=False; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0; Kuka.MoveDataName=CPDAT1; Kuka.MovementData.cb={AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}; Kuka.MovementData.apo_fac=50; Kuka.MovementData.apo_dist=500; Kuka.MovementData.axis_acc=100; Kuka.MovementData.axis_vel=100; Kuka.MovementData.circ_typ=#BASE; Kuka.MovementData.jerk_fac=50; Kuka.MovementData.ori_typ=#VAR; Kuka.VelocityPath=2; Kuka.FrameData.point2= "}
|
||||
DECL FDAT FPickH={TOOL_NO 1,BASE_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPickH={X -371.799255,Y 3335.85059,Z 535.821533,A -167.311752,B 0.414277077,C 179.724655,S 2,T 35,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL E6POS XPickH={X -371.799255,Y 3335.85059,Z 537.000,A -167.311752,B 0.414277077,C 179.724655,S 2,T 35,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT1={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL FDAT FPick={TOOL_NO 1,BASE_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPick={X -371.799255,Y 3335.85059,Z 35.8215332,A -167.311752,B 0.414277077,C 179.724655,S 2,T 35,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL E6POS XPick={X -371.799255,Y 3335.85059,Z 37.0000,A -167.311752,B 0.414277077,C 179.724655,S 2,T 35,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT2={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
|
||||
DECL PDAT PPDAT1={VEL 100.000,ACC 100.000,APO_DIST 500.000,APO_MODE #CDIS,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
&ACCESS RVO1
|
||||
&ACCESS RVO
|
||||
&REL 1
|
||||
&PARAM DISKPATH = KRC:\R1\Program\PL
|
||||
DEF FeedBelt1Pick ( )
|
||||
DECL REAL x_offset,y_offset,z_offset
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
@@ -14,7 +15,14 @@ DEF FeedBelt1Pick ( )
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
XPick=XFeedBelt1Pick
|
||||
x_offset=PickOffsetX_Save/10.0
|
||||
y_offset=PickOffsetY_Save/10.0
|
||||
z_offset=PickOffsetZ_Save/10.0
|
||||
XPick.X=XFeedBelt1Pick.X + x_offset
|
||||
XPick.Y=XFeedBelt1Pick.Y + y_offset
|
||||
XPick.Z=XFeedBelt1Pick.Z + z_offset
|
||||
XPickH=XPick
|
||||
XPickH.Z=XPick.Z+500
|
||||
;FOLD SPTP PickH CONT Vel=100 % PDAT1 Tool[1]:Tool1 Base[1] ;%{PE}
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
&ACCESS RVO1
|
||||
&ACCESS RVO
|
||||
&REL 3
|
||||
&PARAM DISKPATH = KRC:\R1\Program\PL
|
||||
DEFDAT FEEDBELT2PICK
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
@@ -16,7 +18,7 @@ DECL LDAT LCPDAT1={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS
|
||||
DECL PDAT PPDAT1={VEL 100.000,ACC 100.000,APO_DIST 500.000,APO_MODE #CDIS,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
DECL FDAT FPickH={TOOL_NO 1,BASE_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS={PARAMS[] "Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.MovementParameterFieldEnabled=True; Kuka.IsAngleEnabled=False; Kuka.PointName=Pick; Kuka.FrameData.base_no=1; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT1; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=2; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=False; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0; Kuka.MoveDataName=CPDAT1; Kuka.MovementData.cb={AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}; Kuka.MovementData.apo_fac=50; Kuka.MovementData.apo_dist=500; Kuka.MovementData.axis_acc=100; Kuka.MovementData.axis_vel=100; Kuka.MovementData.circ_typ=#BASE; Kuka.MovementData.jerk_fac=50; Kuka.MovementData.ori_typ=#VAR; Kuka.VelocityPath=2; Kuka.FrameData.point2= "}
|
||||
DECL E6POS XPickH={X -513.757690,Y 3336.04053,Z 535.817505,A -167.311752,B 0.414277077,C 179.724655,S 2,T 35,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL E6POS XPick={X -513.757690,Y 3336.04053,Z 35.8174858,A -167.311752,B 0.414277077,C 179.724655,S 2,T 35,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL E6POS XPickH={X -513.757690,Y 3336.04053,Z 537.000,A -167.311752,B 0.414277077,C 179.724655,S 2,T 35,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL E6POS XPick={X -513.757690,Y 3336.04053,Z 37.0000,A -167.311752,B 0.414277077,C 179.724655,S 2,T 35,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL FDAT FPick={TOOL_NO 1,BASE_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
ENDDAT
|
||||
@@ -1,5 +1,8 @@
|
||||
&ACCESS RVO1
|
||||
&ACCESS RVO
|
||||
&REL 3
|
||||
&PARAM DISKPATH = KRC:\R1\Program\PL
|
||||
DEF FeedBelt2Pick ( )
|
||||
DECL REAL x_offset,y_offset,z_offset
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
@@ -13,6 +16,13 @@ DEF FeedBelt2Pick ( )
|
||||
;ENDFOLD (INI)
|
||||
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
XPick=XFeedBelt2Pick
|
||||
x_offset=PickOffsetX_Save/10.0
|
||||
y_offset=PickOffsetY_Save/10.0
|
||||
z_offset=PickOffsetZ_Save/10.0
|
||||
XPick.X=XFeedBelt2Pick.X + x_offset
|
||||
XPick.Y=XFeedBelt2Pick.Y + y_offset
|
||||
XPick.Z=XFeedBelt2Pick.Z + z_offset
|
||||
XPickH=XPick
|
||||
XPickH.Z=XPick.Z+500
|
||||
;FOLD SPTP PickH CONT Vel=100 % PDAT1 Tool[1]:Tool1 Base[1] ;%{PE}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
&ACCESS RVP1
|
||||
&ACCESS RVO
|
||||
DEFDAT NGBELTPLACE
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
&ACCESS RVP1
|
||||
&ACCESS RVO
|
||||
DEF NgBeltPlace ( )
|
||||
DECL REAL x_offset,y_offset,z_offset
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
@@ -13,6 +14,13 @@ DEF NgBeltPlace ( )
|
||||
;ENDFOLD (INI)
|
||||
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
XPlace=XNgBeltPlace
|
||||
x_offset=PlaceOffsetX_Save/10.0
|
||||
y_offset=PlaceOffsetY_Save/10.0
|
||||
z_offset=PlaceOffsetZ_Save/10.0
|
||||
XPlace.X=XNgBeltPlace.X + x_offset
|
||||
XPlace.Y=XNgBeltPlace.Y + y_offset
|
||||
XPlace.Z=XNgBeltPlace.Z + z_offset
|
||||
XPlaceH=XPlace
|
||||
XPlaceH.Z=XPlace.Z+500
|
||||
;FOLD SPTP PlaceH CONT Vel=100 % PDAT1 Tool[1]:Tool1 Base[1] ;%{PE}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
&ACCESS RV1
|
||||
&REL 1
|
||||
&ACCESS RV
|
||||
&REL 3
|
||||
&PARAM DISKPATH = KRC:\R1\Program\PL
|
||||
DEFDAT PALLET1PLACE
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
@@ -15,14 +15,17 @@ DECL INT SUCCESS
|
||||
|
||||
|
||||
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS={PARAMS[] "Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.MovementParameterFieldEnabled=True; Kuka.IsAngleEnabled=False; Kuka.PointName=Place; Kuka.FrameData.base_no=1; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT1; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=2; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=False; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0; Kuka.MoveDataName=CPDAT1; Kuka.MovementData.cb={AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}; Kuka.MovementData.apo_fac=50; Kuka.MovementData.apo_dist=500; Kuka.MovementData.axis_acc=100; Kuka.MovementData.axis_vel=100; Kuka.MovementData.circ_typ=#BASE; Kuka.MovementData.jerk_fac=50; Kuka.MovementData.ori_typ=#VAR; Kuka.VelocityPath=2; Kuka.FrameData.point2= "}
|
||||
DECL FDAT FPlaceH={TOOL_NO 1,BASE_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPlaceH={X 1800.64709,Y -146.362045,Z 1228.85449,A -165.397675,B -1.88142359,C 179.427,S 2,T 2,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS = {PARAMS[] "Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.MovementParameterFieldEnabled=True; Kuka.IsAngleEnabled=False; Kuka.PointName=PlaceH; Kuka.FrameData.base_no=1; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT3; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=100; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=True; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0; Kuka.MoveDataName=CPDAT3; Kuka.MovementData.cb={AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}; Kuka.MovementData.apo_fac=50; Kuka.MovementData.apo_dist=500; Kuka.MovementData.axis_acc=100; Kuka.MovementData.axis_vel=100; Kuka.MovementData.circ_typ=#BASE; Kuka.MovementData.jerk_fac=50; Kuka.MovementData.ori_typ=#VAR; Kuka.VelocityPath=2; Kuka.FrameData.point2= "}
|
||||
DECL FDAT FPlaceH={BASE_NO 1,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPlaceH={X 1384.94043,Y 2642.32153,Z 765.978271,A -164.789139,B 0.414351225,C 179.724762,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT1={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL FDAT FPlace={TOOL_NO 1,BASE_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPlace={X 1800.64709,Y -146.362045,Z 728.854492,A -165.397675,B -1.88142359,C 179.427,S 2,T 2,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL E6POS XPlace={X 1384.94043,Y 2642.32153,Z 265.978241,A -164.789139,B 0.414351225,C 179.724762,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT2={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL PDAT PPDAT1={VEL 100.000,ACC 100.000,APO_DIST 500.000,APO_MODE #CDIS,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
DECL FDAT FHOME1={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL PDAT PPDAT2={VEL 100.000,ACC 100.000,APO_DIST 500.000,APO_MODE #CDIS,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
DECL FDAT FHOME1={BASE_NO 1,TOOL_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL PDAT PPDAT2={APO_MODE #CDIS,APO_DIST 500,VEL 100,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
DECL LDAT LCPDAT3={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL PDAT PPDAT3 = {APO_MODE #CDIS,APO_DIST 500,VEL 100,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
DECL PDAT PPDAT4 = {APO_MODE #CDIS,APO_DIST 500,VEL 100,ACC 100,GEAR_JERK 100.0,EXAX_IGN 0}
|
||||
ENDDAT
|
||||
@@ -1,8 +1,8 @@
|
||||
&ACCESS RV1
|
||||
&REL 1
|
||||
&ACCESS RV
|
||||
&REL 3
|
||||
&PARAM DISKPATH = KRC:\R1\Program\PL
|
||||
DEF Pallet1Place ( )
|
||||
DECL REAL x_offset,y_offset
|
||||
DECL REAL x_offset,y_offset,z_offset
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
@@ -17,17 +17,28 @@ DEF Pallet1Place ( )
|
||||
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
XPlace=XPallet1PlaceB
|
||||
x_offset=OffsetX_Save/10.0
|
||||
y_offset=OffsetY_Save/10.0
|
||||
XPlace.X=XPallet1PlaceB.X - CountX_Save*x_offset
|
||||
XPlace.Y=XPallet1PlaceB.Y - CountY_Save*y_offset
|
||||
x_offset=PlaceOffsetX_Save/10.0
|
||||
y_offset=PlaceOffsetY_Save/10.0
|
||||
z_offset=PlaceOffsetZ_Save/10.0
|
||||
XPlace.X=XPallet1PlaceB.X + CountX_Save*x_offset
|
||||
XPlace.Y=XPallet1PlaceB.Y + CountY_Save*y_offset
|
||||
XPlace.Z=XPallet1PlaceB.Z + z_offset
|
||||
XPlaceH=XPlace
|
||||
XPlaceH.Z=XPlace.Z+500
|
||||
;FOLD SPTP PlaceH CONT Vel=100 % PDAT1 Tool[1]:Tool1 Base[1] ;%{PE}
|
||||
|
||||
|
||||
;FOLD SPTP HOME1 CONT Vel=100 % PDAT3 ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PlaceH; Kuka.BlendingEnabled=True; Kuka.MoveDataPtpName=PDAT1; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=HOME1; Kuka.BlendingEnabled=True; Kuka.MoveDataPtpName=PDAT3; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XPlaceH WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FPlaceH), $BASE = SBASE(FPlaceH.BASE_NO), $IPO_MODE = SIPO_MODE(FPlaceH.IPO_FRAME), $LOAD = SLOAD(FPlaceH.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT1), $APO = SAPO_PTP(PPDAT1), $GEAR_JERK[1] = SGEAR_JERK(PPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
SPTP XHOME1 WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FHOME1), $BASE = SBASE(FHOME1.BASE_NO), $IPO_MODE = SIPO_MODE(FHOME1.IPO_FRAME), $LOAD = SLOAD(FHOME1.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT3), $APO = SAPO_PTP(PPDAT3), $GEAR_JERK[1] = SGEAR_JERK(PPDAT3), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
;ENDFOLD
|
||||
|
||||
;FOLD SPTP PlaceH CONT Vel=100 % PDAT4 Tool[1]:Tool1 Base[1]:Base1 ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PlaceH; Kuka.BlendingEnabled=True; Kuka.MoveDataPtpName=PDAT4; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XPlaceH WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FPlaceH), $BASE = SBASE(FPlaceH.BASE_NO), $IPO_MODE = SIPO_MODE(FPlaceH.IPO_FRAME), $LOAD = SLOAD(FPlaceH.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT4), $APO = SAPO_PTP(PPDAT4), $GEAR_JERK[1] = SGEAR_JERK(PPDAT4), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
;ENDFOLD
|
||||
CONTINUE
|
||||
WAIT FOR I_AreaReady2 AND NOT I_GripBelowExist AND I_GripSafty1 AND I_GripSafty2
|
||||
@@ -50,10 +61,10 @@ DEF Pallet1Place ( )
|
||||
Q_AreaEnter2=FALSE
|
||||
ActionReturn(1)
|
||||
;FOLD SPTP HOME1 Vel=100 % PDAT2 ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=HOME1; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT2; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XHOME1 WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FHOME1), $BASE = SBASE(FHOME1.BASE_NO), $IPO_MODE = SIPO_MODE(FHOME1.IPO_FRAME), $LOAD = SLOAD(FHOME1.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT2), $APO = SAPO_PTP(PPDAT2), $GEAR_JERK[1] = SGEAR_JERK(PPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=HOME1; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT2; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XHOME1 WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FHOME1), $BASE = SBASE(FHOME1.BASE_NO), $IPO_MODE = SIPO_MODE(FHOME1.IPO_FRAME), $LOAD = SLOAD(FHOME1.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT2), $APO = SAPO_PTP(PPDAT2), $GEAR_JERK[1] = SGEAR_JERK(PPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
|
||||
END_POS=$POS_ACT
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
&ACCESS RVO1
|
||||
&REL 1
|
||||
&ACCESS RVP
|
||||
&REL 5
|
||||
&PARAM DISKPATH = KRC:\R1\Program\PL
|
||||
DEFDAT PALLET2PLACE
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
@@ -12,14 +12,18 @@ DECL INT SUCCESS
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLARATIONS)
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS={PARAMS[] "Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.MovementParameterFieldEnabled=True; Kuka.IsAngleEnabled=False; Kuka.PointName=Place; Kuka.FrameData.base_no=1; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT1; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=2; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=False; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0; Kuka.MoveDataName=CPDAT1; Kuka.MovementData.cb={AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}; Kuka.MovementData.apo_fac=50; Kuka.MovementData.apo_dist=500; Kuka.MovementData.axis_acc=100; Kuka.MovementData.axis_vel=100; Kuka.MovementData.circ_typ=#BASE; Kuka.MovementData.jerk_fac=50; Kuka.MovementData.ori_typ=#VAR; Kuka.VelocityPath=2; Kuka.FrameData.point2= "}
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS={PARAMS[] "Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.MovementParameterFieldEnabled=True; Kuka.IsAngleEnabled=False; Kuka.PointName=PlaceH; Kuka.FrameData.base_no=1; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT3; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=100; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=True; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0; Kuka.MoveDataName=CPDAT3; Kuka.MovementData.cb={AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}; Kuka.MovementData.apo_fac=50; Kuka.MovementData.apo_dist=500; Kuka.MovementData.axis_acc=100; Kuka.MovementData.axis_vel=100; Kuka.MovementData.circ_typ=#BASE; Kuka.MovementData.jerk_fac=50; Kuka.MovementData.ori_typ=#VAR; Kuka.VelocityPath=2; Kuka.FrameData.point2= "}
|
||||
DECL FDAT FPlaceH={TOOL_NO 1,BASE_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPlaceH={X 254.640381,Y 1982.32153,Z 665.978271,A -164.789139,B 0.414351225,C 179.724762,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL E6POS XPlaceH={X 1268.24036,Y 2642.32153,Z 665.978271,A -164.789139,B 0.414351225,C 179.724762,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT1={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL FDAT FPlace={TOOL_NO 1,BASE_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPlace={X 254.640381,Y 1982.32153,Z 265.978241,A -164.789139,B 0.414351225,C 179.724762,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL E6POS XPlace={X 1268.24036,Y 2642.32153,Z 265.978241,A -164.789139,B 0.414351225,C 179.724762,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT2={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL PDAT PPDAT1={VEL 100.000,ACC 100.000,APO_DIST 500.000,APO_MODE #CDIS,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
DECL FDAT FHOME1={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL FDAT FHOME1={TOOL_NO 0,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL PDAT PPDAT2={VEL 100.000,ACC 100.000,APO_DIST 500.000,APO_MODE #CDIS,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
DECL LDAT LCPDAT3={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL PDAT PPDAT3={VEL 100.000,ACC 100.000,APO_DIST 500.000,APO_MODE #CDIS,GEAR_JERK 100.000,EXAX_IGN 0}
|
||||
DECL FDAT FHOME2={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XHOME1={X 1407.35352,Y 1741.39893,Z 1283.17041,A -164.745026,B 0.372301966,C 179.768570,S 2,T 35,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
ENDDAT
|
||||
@@ -1,8 +1,8 @@
|
||||
&ACCESS RVO1
|
||||
&REL 1
|
||||
&ACCESS RVP
|
||||
&REL 5
|
||||
&PARAM DISKPATH = KRC:\R1\Program\PL
|
||||
DEF Pallet2Place ( )
|
||||
DECL REAL x_offset,y_offset
|
||||
DECL REAL x_offset,y_offset,z_offset
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
@@ -16,17 +16,28 @@ DEF Pallet2Place ( )
|
||||
;ENDFOLD (INI)
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
XPlace=XPallet2PlaceB
|
||||
x_offset=OffsetX_Save/10.0
|
||||
y_offset=OffsetY_Save/10.0
|
||||
XPlace.X=XPallet1PlaceB.X - CountX_Save*x_offset
|
||||
XPlace.Y=XPallet1PlaceB.Y - CountY_Save*y_offset
|
||||
x_offset=PlaceOffsetX_Save/10.0
|
||||
y_offset=PlaceOffsetY_Save/10.0
|
||||
z_offset=PlaceOffsetZ_Save/10.0
|
||||
XPlace.X=XPallet1PlaceB.X + CountX_Save*x_offset
|
||||
XPlace.Y=XPallet1PlaceB.Y + CountY_Save*y_offset
|
||||
XPlace.Z=XPallet1PlaceB.Z + z_offset
|
||||
XPlaceH=XPlace
|
||||
XPlaceH.Z=XPlace.Z+400
|
||||
;FOLD SPTP PlaceH CONT Vel=100 % PDAT1 Tool[1]:Tool1 Base[1]:Base1 ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PlaceH; Kuka.BlendingEnabled=True; Kuka.MoveDataPtpName=PDAT1; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XPlaceH WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FPlaceH), $BASE = SBASE(FPlaceH.BASE_NO), $IPO_MODE = SIPO_MODE(FPlaceH.IPO_FRAME), $LOAD = SLOAD(FPlaceH.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT1), $APO = SAPO_PTP(PPDAT1), $GEAR_JERK[1] = SGEAR_JERK(PPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
|
||||
|
||||
;FOLD SPTP HOME1 CONT Vel=100 % PDAT3 ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=HOME1; Kuka.BlendingEnabled=True; Kuka.MoveDataPtpName=PDAT3; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XHOME1 WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FHOME1), $BASE = SBASE(FHOME1.BASE_NO), $IPO_MODE = SIPO_MODE(FHOME1.IPO_FRAME), $LOAD = SLOAD(FHOME1.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT3), $APO = SAPO_PTP(PPDAT3), $GEAR_JERK[1] = SGEAR_JERK(PPDAT3), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
;ENDFOLD
|
||||
|
||||
;FOLD SLIN PlaceH CONT Vel=2 m/s CPDAT3 Tool[1]:Tool1 Base[1]:Base1 ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=PlaceH; Kuka.BlendingEnabled=True; Kuka.MoveDataName=CPDAT3; Kuka.VelocityPath=2; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SLIN
|
||||
;ENDFOLD
|
||||
SLIN XPlaceH WITH $VEL = SVEL_CP(2.0, , LCPDAT3), $TOOL = STOOL2(FPlaceH), $BASE = SBASE(FPlaceH.BASE_NO), $IPO_MODE = SIPO_MODE(FPlaceH.IPO_FRAME), $LOAD = SLOAD(FPlaceH.TOOL_NO), $ACC = SACC_CP(LCPDAT3), $ORI_TYPE = SORI_TYP(LCPDAT3), $APO = SAPO(LCPDAT3), $JERK = SJERK(LCPDAT3), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0) C_Spl
|
||||
;ENDFOLD
|
||||
CONTINUE
|
||||
WAIT FOR I_AreaReady2 AND NOT I_GripBelowExist AND I_GripSafty1 AND I_GripSafty2
|
||||
@@ -49,10 +60,10 @@ DEF Pallet2Place ( )
|
||||
Q_AreaEnter2=FALSE
|
||||
ActionReturn(1)
|
||||
;FOLD SPTP HOME1 Vel=100 % PDAT2 ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=HOME1; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT2; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XHOME1 WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FHOME1), $BASE = SBASE(FHOME1.BASE_NO), $IPO_MODE = SIPO_MODE(FHOME1.IPO_FRAME), $LOAD = SLOAD(FHOME1.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT2), $APO = SAPO_PTP(PPDAT2), $GEAR_JERK[1] = SGEAR_JERK(PPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=HOME1; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT2; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XHOME1 WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FHOME1), $BASE = SBASE(FHOME1.BASE_NO), $IPO_MODE = SIPO_MODE(FHOME1.IPO_FRAME), $LOAD = SLOAD(FHOME1.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT2), $APO = SAPO_PTP(PPDAT2), $GEAR_JERK[1] = SGEAR_JERK(PPDAT2), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
|
||||
END_POS=$POS_ACT
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
&ACCESS RVP1
|
||||
&ACCESS RVO
|
||||
DEFDAT REFEEDBELTPICK
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
&ACCESS RVP1
|
||||
&ACCESS RVO
|
||||
DEF ReFeedBeltPick ( )
|
||||
DECL REAL x_offset,y_offset,z_offset
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
@@ -13,6 +14,13 @@ DEF ReFeedBeltPick ( )
|
||||
;ENDFOLD (INI)
|
||||
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
XPick=XReFeedBeltPick
|
||||
x_offset=PickOffsetX_Save/10.0
|
||||
y_offset=PickOffsetY_Save/10.0
|
||||
z_offset=PickOffsetZ_Save/10.0
|
||||
XPick.X=XFeedBelt1Pick.X + x_offset
|
||||
XPick.Y=XFeedBelt1Pick.Y + y_offset
|
||||
XPick.Z=XFeedBelt1Pick.Z + z_offset
|
||||
XPickH=XPick
|
||||
XPickH.Z=XPick.Z+500
|
||||
;FOLD SPTP PickH CONT Vel=100 % PDAT1 Tool[1]:Tool1 Base[1]:Base1 ;%{PE}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
&ACCESS RVP1
|
||||
&ACCESS RVO
|
||||
DEFDAT WATERBELTPICK
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
@@ -12,7 +12,7 @@ DECL INT SUCCESS
|
||||
;ENDFOLD (EXTERNAL DECLARATIONS)
|
||||
DECL MODULEPARAM_T LAST_TP_PARAMS={PARAMS[] "Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.MovementParameterFieldEnabled=True; Kuka.IsAngleEnabled=False; Kuka.PointName=Pick; Kuka.FrameData.base_no=1; Kuka.FrameData.tool_no=1; Kuka.FrameData.ipo_frame=#BASE; Kuka.isglobalpoint=False; Kuka.MoveDataPtpName=PDAT1; Kuka.MovementDataPdat.apo_mode=#CDIS; Kuka.MovementDataPdat.apo_dist=500; Kuka.MovementData.vel=2; Kuka.MovementData.acc=100; Kuka.MovementData.exax_ign=0; Kuka.VelocityPtp=100; Kuka.BlendingEnabled=False; Kuka.APXEnabled=False; Kuka.CurrentCDSetIndex=0; Kuka.MoveDataName=CPDAT1; Kuka.MovementData.cb={AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}; Kuka.MovementData.apo_fac=50; Kuka.MovementData.apo_dist=500; Kuka.MovementData.axis_acc=100; Kuka.MovementData.axis_vel=100; Kuka.MovementData.circ_typ=#BASE; Kuka.MovementData.jerk_fac=50; Kuka.MovementData.ori_typ=#VAR; Kuka.VelocityPath=2; Kuka.FrameData.point2= "}
|
||||
DECL FDAT FPickH={TOOL_NO 1,BASE_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPickH={X 1797.49475,Y 1360.66516,Z 1167.60986,A -165.399490,B -1.87913013,C 179.432770,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL E6POS XPickH={X -362.541016,Y -53.0821304,Z 535.058350,A 103.969742,B 0.385545105,C 179.739044,S 2,T 42,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
DECL LDAT LCPDAT1={VEL 2.00000,ACC 100.000,APO_DIST 500.000,APO_FAC 50.0000,AXIS_VEL 100.000,AXIS_ACC 100.000,ORI_TYP #VAR,CIRC_TYP #BASE,JERK_FAC 50.0000,GEAR_JERK 100.000,EXAX_IGN 0,CB {AUX_PT {ORI #CONSIDER,E1 #CONSIDER,E2 #CONSIDER,E3 #CONSIDER,E4 #CONSIDER,E5 #CONSIDER,E6 #CONSIDER},TARGET_PT {ORI #INTERPOLATE,E1 #INTERPOLATE,E2 #INTERPOLATE,E3 #INTERPOLATE,E4 #INTERPOLATE,E5 #INTERPOLATE,E6 #INTERPOLATE}}}
|
||||
DECL FDAT FPick={TOOL_NO 1,BASE_NO 1,IPO_FRAME #BASE,POINT2[] " "}
|
||||
DECL E6POS XPick={X -362.541016,Y -53.0821304,Z 35.0583267,A 103.969742,B 0.385545105,C 179.739044,S 2,T 42,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
&ACCESS RVP1
|
||||
&ACCESS RVO
|
||||
DEF WaterBeltPick ( )
|
||||
DECL REAL x_offset,y_offset,z_offset
|
||||
;FOLD INI;%{PE}
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
@@ -13,6 +14,13 @@ DEF WaterBeltPick ( )
|
||||
;ENDFOLD (INI)
|
||||
|
||||
WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS)
|
||||
XPick=XWaterBeltPick
|
||||
x_offset=PickOffsetX_Save/10.0
|
||||
y_offset=PickOffsetY_Save/10.0
|
||||
z_offset=PickOffsetZ_Save/10.0
|
||||
XPick.X=XFeedBelt1Pick.X + x_offset
|
||||
XPick.Y=XFeedBelt1Pick.Y + y_offset
|
||||
XPick.Z=XFeedBelt1Pick.Z + z_offset
|
||||
XPickH=XPick
|
||||
XPickH.Z=XPick.Z+500
|
||||
;FOLD SPTP PickH CONT Vel=100 % PDAT1 Tool[1]:Tool1 Base[1]:Base1 ;%{PE}
|
||||
|
||||
Reference in New Issue
Block a user