diff --git a/6040-003上下料 V2.1.Device.Application.xml b/6040-003上下料 V2.1.Device.Application.xml
index 6750cf0..90c9f28 100644
--- a/6040-003上下料 V2.1.Device.Application.xml
+++ b/6040-003上下料 V2.1.Device.Application.xml
@@ -1292,13 +1292,15 @@
-
+
+
+
@@ -1511,7 +1513,7 @@
-
+
@@ -1605,7 +1607,7 @@
-
+
@@ -1692,7 +1694,7 @@
-
+
@@ -1779,7 +1781,7 @@
-
+
diff --git a/6040-003上下料 V2.1.project b/6040-003上下料 V2.1.project
index 85500e5..076de8a 100644
Binary files a/6040-003上下料 V2.1.project and b/6040-003上下料 V2.1.project differ
diff --git a/6040-003上料下侧ZA08.cmtp b/6040-003上料下侧ZA08.cmtp
index 6ca3fc0..f1f78ae 100644
Binary files a/6040-003上料下侧ZA08.cmtp and b/6040-003上料下侧ZA08.cmtp differ
diff --git a/KUKA/KRC/R1/KUKA/CollDetect_UserAction.dat b/KUKA/KRC/R1/KUKA/CollDetect_UserAction.dat
index e4959f9..7cae1ab 100644
--- a/KUKA/KRC/R1/KUKA/CollDetect_UserAction.dat
+++ b/KUKA/KRC/R1/KUKA/CollDetect_UserAction.dat
@@ -1,4 +1,4 @@
-&ACCESS R6
+&ACCESS R3
DEFDAT CollDetect_UserAction
diff --git a/KUKA/KRC/R1/KUKA/CollDetect_UserAction.src b/KUKA/KRC/R1/KUKA/CollDetect_UserAction.src
index d530134..0171bef 100644
--- a/KUKA/KRC/R1/KUKA/CollDetect_UserAction.src
+++ b/KUKA/KRC/R1/KUKA/CollDetect_UserAction.src
@@ -1,4 +1,4 @@
-&ACCESS R6
+&ACCESS R3
DEF CollDetect_UserAction( )
diff --git a/KUKA/KRC/R1/KUKA/masref_user.dat b/KUKA/KRC/R1/KUKA/masref_user.dat
index 83f285e..e898148 100644
--- a/KUKA/KRC/R1/KUKA/masref_user.dat
+++ b/KUKA/KRC/R1/KUKA/masref_user.dat
@@ -1,4 +1,4 @@
-&ACCESS RV5
+&ACCESS RV2
&REL 1
&COMMENT Mastering Reference User Program
&PARAM DISKPATH = KRC:\R1\Program
diff --git a/KUKA/KRC/R1/KUKA/masref_user.src b/KUKA/KRC/R1/KUKA/masref_user.src
index 4e90d6e..5cb41e2 100644
--- a/KUKA/KRC/R1/KUKA/masref_user.src
+++ b/KUKA/KRC/R1/KUKA/masref_user.src
@@ -1,4 +1,4 @@
-&ACCESS RV5
+&ACCESS RV2
&REL 1
&COMMENT Mastering Reference User Program
&PARAM DISKPATH = KRC:\R1\Program
diff --git a/KUKA/KRC/R1/Mada/$machine.dat b/KUKA/KRC/R1/Mada/$machine.dat
index e0ba0ab..9086753 100644
--- a/KUKA/KRC/R1/Mada/$machine.dat
+++ b/KUKA/KRC/R1/Mada/$machine.dat
@@ -612,9 +612,9 @@ FRAME $ET6_TA2A1={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A2 UND A1
FRAME $ET6_TA3A2={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN A3 UND A2
FRAME $ET6_TFLA3={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN FL UND A3
FRAME $ET6_TPINFL={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ZWISCHEN MESSPUNKT UND FL
-E6AXIS $H_POS={A1 -40.6010590,A2 -89.9439621,A3 107.739754,A4 -0.0583330207,A5 71.7248154,A6 -24.9933281,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
+E6AXIS $H_POS={A1 -40.3666763,A2 -83.7005,A3 104.610184,A4 -0.0553556271,A5 68.6550,A6 -25.0909958,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
E6AXIS $AXIS_HOME[5]
-$AXIS_HOME[1]={A1 -54.9559364,A2 -61.7260933,A3 72.9432526,A4 0.0665770397,A5 78.3046722,A6 -39.3794899,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
+$AXIS_HOME[1]={A1 -47.3356514,A2 -65.9847336,A3 82.3962097,A4 0.00171302236,A5 73.1501541,A6 -32.0802269,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
$AXIS_HOME[2]={A1 -20.1579895,A2 -101.293922,A3 118.012291,A4 -0.229550526,A5 72.8518906,A6 -4.50146055,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
$AXIS_HOME[3]={A1 0.0,A2 -90.0000,A3 90.0000,A4 0.0,A5 0.0,A6 0.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
$AXIS_HOME[4]={A1 0.0,A2 -90.0000,A3 90.0000,A4 0.0,A5 0.0,A6 0.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
diff --git a/KUKA/KRC/R1/Program/ActionReturn.src b/KUKA/KRC/R1/Program/ActionReturn.src
index 864334b..e7ceaf4 100644
--- a/KUKA/KRC/R1/Program/ActionReturn.src
+++ b/KUKA/KRC/R1/Program/ActionReturn.src
@@ -1,4 +1,4 @@
-&ACCESS RV4
+&ACCESS RV1
DEF ActionReturn (nRet:IN )
DECL INT nRet
CONTINUE
diff --git a/KUKA/KRC/R1/Program/Config.dat b/KUKA/KRC/R1/Program/Config.dat
index 64e2fb5..d2563e3 100644
--- a/KUKA/KRC/R1/Program/Config.dat
+++ b/KUKA/KRC/R1/Program/Config.dat
@@ -1,16 +1,20 @@
-&ACCESS RV6
+&ACCESS RV3
DEFDAT CONFIG PUBLIC
GLOBAL INT PdtTypeLast=0
-GLOBAL INT CmdCountLast=582
GLOBAL INT CmdSave=11
-GLOBAL INT OffsetX_Save=1247
-GLOBAL INT OffsetY_Save=2200
-GLOBAL INT CountX_Save=10
-GLOBAL INT CountY_Save=3
+GLOBAL INT CmdCountLast=2
+GLOBAL INT PlaceOffsetX_Save=-1167
+GLOBAL INT PlaceOffsetY_Save=-3250
+GLOBAL INT PlaceOffsetZ_Save=0
+GLOBAL INT PickOffsetX_Save=0
+GLOBAL INT PickOffsetY_Save=0
+GLOBAL INT PickOffsetZ_Save=0
+GLOBAL INT CountX_Save=2
+GLOBAL INT CountY_Save=0
GLOBAL BOOL ConfMessSave=FALSE
-DECL GLOBAL E6POS END_POS={X -371.799255,Y 3335.85059,Z 535.821533,A -167.311752,B 0.414277077,C 179.724655,S 'B0010',T 'B00100011',E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
+DECL GLOBAL E6POS END_POS={X 567.624878,Y 2965.83350,Z 747.798157,A -164.436340,B 0.381067097,C 179.743317,S 'B0010',T 'B00100011',E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
ENDDAT
diff --git a/KUKA/KRC/R1/Program/Grip/GripClose.src b/KUKA/KRC/R1/Program/Grip/GripClose.src
index 5c20763..4ba3dd5 100644
--- a/KUKA/KRC/R1/Program/Grip/GripClose.src
+++ b/KUKA/KRC/R1/Program/Grip/GripClose.src
@@ -1,4 +1,4 @@
-&ACCESS RV3
+&ACCESS RV
DEF GripClose ( )
Q_GripPosIndex=102
Q_GripPosCount=I_GripPosCountRet+1
diff --git a/KUKA/KRC/R1/Program/Grip/GripOpen.src b/KUKA/KRC/R1/Program/Grip/GripOpen.src
index 6de9507..f94c398 100644
--- a/KUKA/KRC/R1/Program/Grip/GripOpen.src
+++ b/KUKA/KRC/R1/Program/Grip/GripOpen.src
@@ -1,4 +1,4 @@
-&ACCESS RV2
+&ACCESS RV1
DEF GripOpen ( )
Q_GripPosIndex=101
diff --git a/KUKA/KRC/R1/Program/Home/HomeModule.dat b/KUKA/KRC/R1/Program/Home/HomeModule.dat
index cd7223a..e8f8f0e 100644
--- a/KUKA/KRC/R1/Program/Home/HomeModule.dat
+++ b/KUKA/KRC/R1/Program/Home/HomeModule.dat
@@ -10,4 +10,5 @@ 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=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=False; 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="}
ENDDAT
\ No newline at end of file
diff --git a/KUKA/KRC/R1/Program/Home/HomeModule.src b/KUKA/KRC/R1/Program/Home/HomeModule.src
index 0816189..a1d4f2b 100644
--- a/KUKA/KRC/R1/Program/Home/HomeModule.src
+++ b/KUKA/KRC/R1/Program/Home/HomeModule.src
@@ -19,7 +19,7 @@ DEF HomeModule ( )
;FOLD SPTP HOME Vel=100 % DEFAULT ;%{PE}
;FOLD Parameters ;%{h}
- ;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=HOME; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=DEFAULT; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
+ ;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=HOME; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=DEFAULT; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
;ENDFOLD
SPTP XHOME WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FHOME), $BASE = SBASE(FHOME.BASE_NO), $IPO_MODE = SIPO_MODE(FHOME.IPO_FRAME), $LOAD = SLOAD(FHOME.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PDEFAULT), $APO = SAPO_PTP(PDEFAULT), $GEAR_JERK[1] = SGEAR_JERK(PDEFAULT), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
;ENDFOLD
diff --git a/KUKA/KRC/R1/Program/MainModule.dat b/KUKA/KRC/R1/Program/MainModule.dat
index 84f4ee4..292e6f9 100644
--- a/KUKA/KRC/R1/Program/MainModule.dat
+++ b/KUKA/KRC/R1/Program/MainModule.dat
@@ -1,4 +1,4 @@
-&ACCESS RVP
+&ACCESS RVO
&REL 1
DEFDAT MainModule
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
diff --git a/KUKA/KRC/R1/Program/MainModule.src b/KUKA/KRC/R1/Program/MainModule.src
index 1fcf762..f6140a0 100644
--- a/KUKA/KRC/R1/Program/MainModule.src
+++ b/KUKA/KRC/R1/Program/MainModule.src
@@ -1,4 +1,4 @@
-&ACCESS RVP
+&ACCESS RVO
&REL 1
DEF MainModule()
;FOLD INI
@@ -15,7 +15,6 @@ DEF MainModule()
INTERRUPT DECL 24 WHEN $CYCFLAG[1] DO StopSafty()
INTERRUPT ON 24
-
;FOLD PTP $POS_ACT Tool[0] Base[0]
BAS(#INITMOV, 0)
BAS(#BASE, 0)
@@ -37,12 +36,16 @@ DEF AutoRun()
HALT
ENDIF
PdtTypeLast=I_ProductType
- WAIT FOR (I_Cmd > 0) AND (I_CmdCount <> CmdCountLast) AND (Q_Cmd_Running==0)
+ WAIT FOR (I_Cmd > 0) AND (I_CmdCount <> Q_CmdCountRet) AND (Q_Cmd_Running==0)
CmdSave = I_Cmd
- CmdCountLast = I_CmdCount
+ CmdCountLast=I_CmdCount
Q_Cmd_Running=CmdSave
- OffsetX_Save=I_OffsetX
- OffsetY_Save=I_OffsetY
+ PickOffsetX_Save=GetInt16(I_PickOffsetX)
+ PickOffsetY_Save=GetInt16(I_PickOffsetY)
+ PickOffsetZ_Save=GetInt16(I_PickOffsetZ)
+ PlaceOffsetX_Save=GetInt16(I_PlaceOffsetX)
+ PlaceOffsetY_Save=GetInt16(I_PlaceOffsetY)
+ PlaceOffsetZ_Save=GetInt16(I_PlaceOffsetZ)
CountX_Save=I_CountX
CountY_Save=I_CountY
diff --git a/KUKA/KRC/R1/Program/Mylib/CheckInPos.src b/KUKA/KRC/R1/Program/Mylib/CheckInPos.src
index 8f99b2b..a5168be 100644
--- a/KUKA/KRC/R1/Program/Mylib/CheckInPos.src
+++ b/KUKA/KRC/R1/Program/Mylib/CheckInPos.src
@@ -1,4 +1,4 @@
-&ACCESS RVO4
+&ACCESS RVO1
DEFFCT BOOL CheckInPos (R_offset:IN,EndPos:IN )
DECL REAL R_offset
DECL BOOL b_Pok
diff --git a/KUKA/KRC/R1/Program/Mylib/FixA6Jump.src b/KUKA/KRC/R1/Program/Mylib/FixA6Jump.src
new file mode 100644
index 0000000..a92b684
--- /dev/null
+++ b/KUKA/KRC/R1/Program/Mylib/FixA6Jump.src
@@ -0,0 +1,18 @@
+&ACCESS RV
+DEFFCT E6POS FixA6Jump(TargetPos:IN)
+ DECL E6POS TargetPos,NewPos
+ DECL REAL dA6
+ NewPos=TargetPos
+ dA6 = TargetPos.A - $AXIS_ACT.A6
+
+ WHILE dA6 > 180.0
+ NewPos.A = NewPos.A - 360.0
+ dA6 = TargetPos.A - $AXIS_ACT.A6
+ ENDWHILE
+
+ WHILE dA6 < -180.0
+ NewPos.A = NewPos.A + 360.0
+ dA6 = NewPos.A - $AXIS_ACT.A6
+ ENDWHILE
+ RETURN NewPos
+ENDFCT
\ No newline at end of file
diff --git a/KUKA/KRC/R1/Program/Mylib/GetInt16.src b/KUKA/KRC/R1/Program/Mylib/GetInt16.src
new file mode 100644
index 0000000..ba33df7
--- /dev/null
+++ b/KUKA/KRC/R1/Program/Mylib/GetInt16.src
@@ -0,0 +1,10 @@
+&ACCESS RV
+DEFFCT INT GetInt16 (iVal:IN )
+ DECL INT iVal,iRet
+ IF iVal>32767 THEN
+ iRet=iVal-65536
+ ELSE
+ iRet=iVal
+ ENDIF
+ RETURN iRet
+ENDFCT
\ No newline at end of file
diff --git a/KUKA/KRC/R1/Program/PL/FeedBelt1Pick.dat b/KUKA/KRC/R1/Program/PL/FeedBelt1Pick.dat
index 5825c6f..6525e7f 100644
--- a/KUKA/KRC/R1/Program/PL/FeedBelt1Pick.dat
+++ b/KUKA/KRC/R1/Program/PL/FeedBelt1Pick.dat
@@ -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}
diff --git a/KUKA/KRC/R1/Program/PL/FeedBelt1Pick.src b/KUKA/KRC/R1/Program/PL/FeedBelt1Pick.src
index 92bbbbc..005516b 100644
--- a/KUKA/KRC/R1/Program/PL/FeedBelt1Pick.src
+++ b/KUKA/KRC/R1/Program/PL/FeedBelt1Pick.src
@@ -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}
diff --git a/KUKA/KRC/R1/Program/PL/FeedBelt2Pick.dat b/KUKA/KRC/R1/Program/PL/FeedBelt2Pick.dat
index 535b698..30f9bc1 100644
--- a/KUKA/KRC/R1/Program/PL/FeedBelt2Pick.dat
+++ b/KUKA/KRC/R1/Program/PL/FeedBelt2Pick.dat
@@ -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
\ No newline at end of file
diff --git a/KUKA/KRC/R1/Program/PL/FeedBelt2Pick.src b/KUKA/KRC/R1/Program/PL/FeedBelt2Pick.src
index 06c5cf9..00d035e 100644
--- a/KUKA/KRC/R1/Program/PL/FeedBelt2Pick.src
+++ b/KUKA/KRC/R1/Program/PL/FeedBelt2Pick.src
@@ -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}
diff --git a/KUKA/KRC/R1/Program/PL/NgBeltPlace.dat b/KUKA/KRC/R1/Program/PL/NgBeltPlace.dat
index 58d3c28..6701e3b 100644
--- a/KUKA/KRC/R1/Program/PL/NgBeltPlace.dat
+++ b/KUKA/KRC/R1/Program/PL/NgBeltPlace.dat
@@ -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
diff --git a/KUKA/KRC/R1/Program/PL/NgBeltPlace.src b/KUKA/KRC/R1/Program/PL/NgBeltPlace.src
index 53a1f33..3f82344 100644
--- a/KUKA/KRC/R1/Program/PL/NgBeltPlace.src
+++ b/KUKA/KRC/R1/Program/PL/NgBeltPlace.src
@@ -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}
diff --git a/KUKA/KRC/R1/Program/PL/Pallet1Place.dat b/KUKA/KRC/R1/Program/PL/Pallet1Place.dat
index 244c8f1..1f96200 100644
--- a/KUKA/KRC/R1/Program/PL/Pallet1Place.dat
+++ b/KUKA/KRC/R1/Program/PL/Pallet1Place.dat
@@ -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
\ No newline at end of file
diff --git a/KUKA/KRC/R1/Program/PL/Pallet1Place.src b/KUKA/KRC/R1/Program/PL/Pallet1Place.src
index 08a729a..1a2a9f6 100644
--- a/KUKA/KRC/R1/Program/PL/Pallet1Place.src
+++ b/KUKA/KRC/R1/Program/PL/Pallet1Place.src
@@ -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
diff --git a/KUKA/KRC/R1/Program/PL/Pallet2Place.dat b/KUKA/KRC/R1/Program/PL/Pallet2Place.dat
index ddc678b..d83ad79 100644
--- a/KUKA/KRC/R1/Program/PL/Pallet2Place.dat
+++ b/KUKA/KRC/R1/Program/PL/Pallet2Place.dat
@@ -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
\ No newline at end of file
diff --git a/KUKA/KRC/R1/Program/PL/Pallet2Place.src b/KUKA/KRC/R1/Program/PL/Pallet2Place.src
index 738e329..ce805bb 100644
--- a/KUKA/KRC/R1/Program/PL/Pallet2Place.src
+++ b/KUKA/KRC/R1/Program/PL/Pallet2Place.src
@@ -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
diff --git a/KUKA/KRC/R1/Program/PL/ReFeedBeltPick.dat b/KUKA/KRC/R1/Program/PL/ReFeedBeltPick.dat
index da24863..e3c9038 100644
--- a/KUKA/KRC/R1/Program/PL/ReFeedBeltPick.dat
+++ b/KUKA/KRC/R1/Program/PL/ReFeedBeltPick.dat
@@ -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
diff --git a/KUKA/KRC/R1/Program/PL/ReFeedBeltPick.src b/KUKA/KRC/R1/Program/PL/ReFeedBeltPick.src
index 6d37d10..5b52fee 100644
--- a/KUKA/KRC/R1/Program/PL/ReFeedBeltPick.src
+++ b/KUKA/KRC/R1/Program/PL/ReFeedBeltPick.src
@@ -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}
diff --git a/KUKA/KRC/R1/Program/PL/WaterBeltPick.dat b/KUKA/KRC/R1/Program/PL/WaterBeltPick.dat
index 0dbf405..d0ab344 100644
--- a/KUKA/KRC/R1/Program/PL/WaterBeltPick.dat
+++ b/KUKA/KRC/R1/Program/PL/WaterBeltPick.dat
@@ -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}
diff --git a/KUKA/KRC/R1/Program/PL/WaterBeltPick.src b/KUKA/KRC/R1/Program/PL/WaterBeltPick.src
index 6bedcb2..619c4bc 100644
--- a/KUKA/KRC/R1/Program/PL/WaterBeltPick.src
+++ b/KUKA/KRC/R1/Program/PL/WaterBeltPick.src
@@ -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}
diff --git a/KUKA/KRC/R1/Program/PosBase.dat b/KUKA/KRC/R1/Program/PosBase.dat
index 0e61ebc..4e85a0f 100644
--- a/KUKA/KRC/R1/Program/PosBase.dat
+++ b/KUKA/KRC/R1/Program/PosBase.dat
@@ -1,4 +1,4 @@
-&ACCESS RV5
+&ACCESS RV2
&REL 7
&PARAM DISKPATH = KRC:\R1\Program\TP
DEFDAT POSBASE PUBLIC
@@ -8,11 +8,11 @@ DEFDAT POSBASE PUBLIC
;***************************************************
DECL GLOBAL E6POS XPallet1PlaceB={X 1501.64038,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 GLOBAL E6POS XPallet2PlaceB={X 1501.64038,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 GLOBAL E6POS XFeedBelt1Pick={X 1797.49475,Y 1360.66516,Z 667.609802,A -165.399490,B -1.87913013,C 179.432770,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
-DECL GLOBAL E6POS XFeedBelt2Pick={X 1797.49353,Y 1360.66553,Z 667.598755,A -165.400482,B -1.87961507,C 179.432861,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
-DECL GLOBAL E6POS XNgBeltPlace={X 1797.49353,Y 1360.66553,Z 667.598755,A -165.400482,B -1.87961507,C 179.432861,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
-DECL GLOBAL E6POS XWaterBeltPick={X 1797.49353,Y 1360.66553,Z 667.598755,A -165.400482,B -1.87961507,C 179.432861,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
-DECL GLOBAL E6POS XReFeedBeltPick={X 1797.49353,Y 1360.66553,Z 667.598755,A -165.400482,B -1.87961507,C 179.432861,S 2,T 43,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
+DECL GLOBAL E6POS XFeedBelt1Pick={X -371.799255,Y 3335.85059,Z 37,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 GLOBAL E6POS XFeedBelt2Pick={X -513.757690,Y 3336.04053,Z 37,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 GLOBAL E6POS XNgBeltPlace={X -372.497620,Y -392.548706,Z 42.0128441,A 103.970634,B 0.387568325,C 179.739,S 2,T 42,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
+DECL GLOBAL E6POS XWaterBeltPick={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}
+DECL GLOBAL E6POS XReFeedBeltPick={X -355.786682,Y 285.198730,Z 34.5330734,A 103.969742,B 0.385545075,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}
diff --git a/KUKA/KRC/R1/Program/SignalIO.dat b/KUKA/KRC/R1/Program/SignalIO.dat
index 7e0bdf9..0a0ecd7 100644
--- a/KUKA/KRC/R1/Program/SignalIO.dat
+++ b/KUKA/KRC/R1/Program/SignalIO.dat
@@ -51,10 +51,16 @@ GLOBAL SIGNAL I_CmdCount $IN[97] TO $IN[112]
GLOBAL SIGNAL I_GripPosIndexRet $IN[113] TO $IN[128]
GLOBAL SIGNAL I_GripPosCountRet $IN[129] TO $IN[144]
GLOBAL SIGNAL I_GripPosResult $IN[145] TO $IN[160]
-GLOBAL SIGNAL I_OffsetX $IN[161] TO $IN[176]
-GLOBAL SIGNAL I_OffsetY $IN[177] TO $IN[192]
-GLOBAL SIGNAL I_CountX $IN[193] TO $IN[208]
-GLOBAL SIGNAL I_CountY $IN[209] TO $IN[224]
+
+GLOBAL SIGNAL I_CountX $IN[161] TO $IN[176]
+GLOBAL SIGNAL I_CountY $IN[177] TO $IN[192]
+GLOBAL SIGNAL I_PickOffsetX $IN[193] TO $IN[208]
+GLOBAL SIGNAL I_PickOffsetY $IN[209] TO $IN[224]
+GLOBAL SIGNAL I_PickOffsetZ $IN[225] TO $IN[240]
+GLOBAL SIGNAL I_PlaceOffsetX $IN[241] TO $IN[256]
+GLOBAL SIGNAL I_PlaceOffsetY $IN[257] TO $IN[272]
+GLOBAL SIGNAL I_PlaceOffsetZ $IN[273] TO $IN[288]
+
;ENDFOLD
;FOLD KUKA_TO_PLC
diff --git a/KUKA/KRC/R1/System/$config.dat b/KUKA/KRC/R1/System/$config.dat
index 9ba37e2..071816d 100644
--- a/KUKA/KRC/R1/System/$config.dat
+++ b/KUKA/KRC/R1/System/$config.dat
@@ -1,4 +1,4 @@
-&ACCESS RV$7
+&ACCESS RV$4
DEFDAT $CONFIG
;FOLD BASISTECH GLOBALS
;==================================
@@ -175,8 +175,8 @@ INT $ACT_GROUP='B0001'
; HOME POSITION
;----------------------------------
-E6AXIS XHOME={A1 -40.6010590,A2 -89.9439621,A3 107.739754,A4 -0.0583330207,A5 71.7248154,A6 -24.9933281,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
-E6AXIS XHOME1={A1 -54.9559364,A2 -61.7260933,A3 72.9432526,A4 0.0665770397,A5 78.3046722,A6 -39.3794899,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
+E6AXIS XHOME={A1 -40.3666763,A2 -83.7005,A3 104.610184,A4 -0.0553556271,A5 68.6550,A6 -25.0909958,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
+E6AXIS XHOME1={A1 -47.3356514,A2 -65.9847336,A3 82.3962097,A4 0.00171302236,A5 73.1501541,A6 -32.0802269,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}
E6AXIS XHOME2={A1 -20.1579895,A2 -101.293922,A3 118.012291,A4 -0.229550526,A5 72.8518906,A6 -4.50146055,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}
diff --git a/KUKA/KRC/R1/System/MqttConfig.dat b/KUKA/KRC/R1/System/MqttConfig.dat
index 3cac8ee..abfcfa3 100644
--- a/KUKA/KRC/R1/System/MqttConfig.dat
+++ b/KUKA/KRC/R1/System/MqttConfig.dat
@@ -1,4 +1,4 @@
-&ACCESS RV5
+&ACCESS RV2
DEFDAT MqttConfig PUBLIC
; Publisher IP address for KukaConnect data-set configuration.
diff --git a/KUKA/KRC/R1/System/MsgLib.dat b/KUKA/KRC/R1/System/MsgLib.dat
index 5c79c42..d8aa177 100644
--- a/KUKA/KRC/R1/System/MsgLib.dat
+++ b/KUKA/KRC/R1/System/MsgLib.dat
@@ -1,4 +1,4 @@
-&ACCESS R6
+&ACCESS R3
&COMMENT Message library
DEFDAT MsgLib PUBLIC
diff --git a/KUKA/KRC/R1/System/MsgLib.src b/KUKA/KRC/R1/System/MsgLib.src
index 8c3db27..9f0ce5b 100644
--- a/KUKA/KRC/R1/System/MsgLib.src
+++ b/KUKA/KRC/R1/System/MsgLib.src
@@ -1,4 +1,4 @@
-&ACCESS R6
+&ACCESS R3
&COMMENT Message library
DEF MsgLib ( )
;**************************************************
diff --git a/KUKA/KRC/R1/System/bas.src b/KUKA/KRC/R1/System/bas.src
index 3077693..bc3aec6 100644
--- a/KUKA/KRC/R1/System/bas.src
+++ b/KUKA/KRC/R1/System/bas.src
@@ -1,4 +1,4 @@
-&ACCESS R6
+&ACCESS R3
&REL 1
&COMMENT BASIS package
DEF BAS (COMMAND :IN,REAL_PAR :IN )
diff --git a/KUKA/KRC/R1/System/collmonlib.dat b/KUKA/KRC/R1/System/collmonlib.dat
index 35ac6ce..078fec0 100644
--- a/KUKA/KRC/R1/System/collmonlib.dat
+++ b/KUKA/KRC/R1/System/collmonlib.dat
@@ -1,4 +1,4 @@
-&ACCESS R6
+&ACCESS R3
&COMMENT Collision monitoring library
DEFDAT COLLMONLIB PUBLIC
;DO NOT MODIFY THIS FILE
diff --git a/KUKA/KRC/R1/System/collmonlib.src b/KUKA/KRC/R1/System/collmonlib.src
index 13ec076..5cffcdb 100644
--- a/KUKA/KRC/R1/System/collmonlib.src
+++ b/KUKA/KRC/R1/System/collmonlib.src
@@ -1,4 +1,4 @@
-&ACCESS R6
+&ACCESS R3
&COMMENT Collision monitoring library
DEF CollMonLib( )
diff --git a/KUKA/KRC/R1/System/ir_stopm.src b/KUKA/KRC/R1/System/ir_stopm.src
index 16dce14..bd78af4 100644
--- a/KUKA/KRC/R1/System/ir_stopm.src
+++ b/KUKA/KRC/R1/System/ir_stopm.src
@@ -1,4 +1,4 @@
-&ACCESS R6
+&ACCESS R3
&COMMENT HandlerOnRobotFault
DEF IR_STOPM ( )
;-----------------------------------
diff --git a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.dat b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.dat
index 508fab7..a63a9c7 100644
--- a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.dat
+++ b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.dat
@@ -1,4 +1,4 @@
-&ACCESS RV5
+&ACCESS RV2
&REL 1
&COMMENT path after test
&PARAM EDITMASK = *
diff --git a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.src b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.src
index 79d4877..0f11a17 100644
--- a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.src
+++ b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.src
@@ -1,4 +1,4 @@
-&ACCESS RV5
+&ACCESS RV2
&REL 1
&COMMENT path after test
&PARAM EDITMASK = *
diff --git a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.dat b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.dat
index 5e3b37f..80d9715 100644
--- a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.dat
+++ b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.dat
@@ -1,4 +1,4 @@
-&ACCESS RV5
+&ACCESS RV2
&REL 1
&COMMENT parkposition
&PARAM EDITMASK = *
diff --git a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.src b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.src
index 18381d6..6eb4f60 100644
--- a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.src
+++ b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.src
@@ -1,4 +1,4 @@
-&ACCESS RV5
+&ACCESS RV2
&REL 1
&COMMENT parkposition
&PARAM EDITMASK = *
diff --git a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.dat b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.dat
index 3e4ce60..5320079 100644
--- a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.dat
+++ b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.dat
@@ -1,4 +1,4 @@
-&ACCESS RVO5
+&ACCESS RVO2
&REL 1
&COMMENT BrkTst-main task
&PARAM EDITMASK = *
diff --git a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.src b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.src
index e0b75b6..66cbaf3 100644
--- a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.src
+++ b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.src
@@ -1,4 +1,4 @@
-&ACCESS RVO5
+&ACCESS RVO2
&REL 1
&COMMENT BrkTst-main task
&PARAM EDITMASK = *
diff --git a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.dat b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.dat
index 2678b19..278d11d 100644
--- a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.dat
+++ b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.dat
@@ -1,4 +1,4 @@
-&ACCESS RV5
+&ACCESS RV2
&REL 1
&COMMENT path to test
&PARAM EDITMASK = *
diff --git a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.src b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.src
index 1462540..e8c41c0 100644
--- a/KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.src
+++ b/KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.src
@@ -1,4 +1,4 @@
-&ACCESS RV5
+&ACCESS RV2
&REL 1
&COMMENT path to test
&PARAM EDITMASK = *
diff --git a/KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL.dat b/KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL.dat
index 4d19fc4..786b6a3 100644
--- a/KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL.dat
+++ b/KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL.dat
@@ -1,4 +1,4 @@
-&ACCESS RO5
+&ACCESS RO2
&REL 2396
&PARAM DISKPATH = KRC:\R1\TP\EthernetKRL
DEFDAT EthernetKRL PUBLIC
diff --git a/KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL.src b/KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL.src
index 68f5a5c..06ae15b 100644
--- a/KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL.src
+++ b/KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL.src
@@ -1,4 +1,4 @@
-&ACCESS RO5
+&ACCESS RO2
&REL 2396
&PARAM DISKPATH = KRC:\R1\TP\EthernetKRL
DEF EthernetKRL( )
diff --git a/KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL_USER.src b/KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL_USER.src
index 48c5633..0608a95 100644
--- a/KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL_USER.src
+++ b/KUKA/KRC/R1/TP/EthernetKRL/EthernetKRL_USER.src
@@ -1,4 +1,4 @@
-&ACCESS RO5
+&ACCESS RO2
&REL 2314
&PARAM DISKPATH = TP/EthernetKRL
DEF EthernetKRL_USER( )
diff --git a/KUKA/KRC/R1/TP/p00.dat b/KUKA/KRC/R1/TP/p00.dat
index 3cc8574..ed6c061 100644
--- a/KUKA/KRC/R1/TP/p00.dat
+++ b/KUKA/KRC/R1/TP/p00.dat
@@ -1,4 +1,4 @@
-&ACCESS R6
+&ACCESS R3
&COMMENT EXTERNAL package
DEFDAT P00
diff --git a/KUKA/KRC/R1/TP/p00.src b/KUKA/KRC/R1/TP/p00.src
index f62c145..94d8626 100644
--- a/KUKA/KRC/R1/TP/p00.src
+++ b/KUKA/KRC/R1/TP/p00.src
@@ -1,4 +1,4 @@
-&ACCESS R6
+&ACCESS R3
&COMMENT EXTERNAL package
DEF P00 (COMMAND :IN,PGNO_FUNCT :IN,P_ID[] :OUT,E_NO :IN )
DECL P00_COMMAND COMMAND
diff --git a/软件/汇川线缆驱动.zip b/软件/汇川线缆驱动.zip
new file mode 100644
index 0000000..e5f4c7d
Binary files /dev/null and b/软件/汇川线缆驱动.zip differ