&ACCESS RVO &REL 26 &PARAM DISKPATH = KRC:\R1\Program\PL DEF Pallet2Place ( ) DECL REAL x_offset,y_offset,z_offset ;FOLD INI;%{PE} ;FOLD BASISTECH INI GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( ) INTERRUPT ON 3 BAS (#INITMOV,0 ) ;ENDFOLD (BASISTECH INI) ;FOLD USER INI ;Make your modifications here ;ENDFOLD (USER INI) ;ENDFOLD (INI) WAIT FOR $IN_HOME OR $IN_HOME1 OR $IN_HOME2 OR CheckInPos(20.0, END_POS) XPlace=XPallet2PlaceB 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 XPlaceSigH=XPlace XPlaceSigH.X=XPlace.X-50 XPlaceSigH.Z=XPlace.Z+500 XPlaceSig=XPlace XPlaceSig.X=XPlace.X-50 XPlaceSig.Z=XPlace.Z+400 ;FOLD LIN PlaceSigH CONT Vel=2 m/s CPDAT7 Tool[1] Base[1] ;%{PE} ;FOLD Parameters ;%{h} ;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.old; Kuka.IsGlobalPoint=False; Kuka.PointName=PlaceSigH; Kuka.BlendingEnabled=True; Kuka.MoveDataName=CPDAT7; Kuka.VelocityPath=2; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=LIN ;ENDFOLD $BWDSTART = FALSE LDAT_ACT = LCPDAT7 FDAT_ACT = FPlaceSigH BAS(#CP_PARAMS, 2.0) SET_CD_PARAMS (0) LIN XPlaceSigH C_Dis C_Dis ;ENDFOLD ;FOLD LIN PlaceSig Vel=2 m/s CPDAT8 Tool[1] Base[1] ;%{PE} ;FOLD Parameters ;%{h} ;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.old; Kuka.IsGlobalPoint=False; Kuka.PointName=PlaceSig; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT8; Kuka.VelocityPath=2; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=LIN ;ENDFOLD $BWDSTART = FALSE LDAT_ACT = LCPDAT8 FDAT_ACT = FPlaceSig BAS(#CP_PARAMS, 2.0) SET_CD_PARAMS (0) LIN XPlaceSig ;ENDFOLD WAIT FOR NOT I_GripBelowExist ;FOLD LIN PlaceH CONT Vel=2 m/s CPDAT5 Tool[1] Base[1] ;%{PE} ;FOLD Parameters ;%{h} ;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.old; Kuka.IsGlobalPoint=False; Kuka.PointName=PlaceH; Kuka.BlendingEnabled=True; Kuka.MoveDataName=CPDAT5; Kuka.VelocityPath=2; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=LIN ;ENDFOLD $BWDSTART = FALSE LDAT_ACT = LCPDAT5 FDAT_ACT = FPlaceH BAS(#CP_PARAMS, 2.0) SET_CD_PARAMS (0) LIN XPlaceH C_Dis C_Dis ;ENDFOLD CONTINUE WAIT FOR I_AreaReady2 AND I_GripSafty1 AND I_GripSafty2 CONTINUE Q_AreaEnter2=TRUE ;FOLD LIN Place Vel=2 m/s CPDAT1 Tool[1] Base[1] ;%{PE} ;FOLD Parameters ;%{h} ;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.old; Kuka.IsGlobalPoint=False; Kuka.PointName=Place; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT1; Kuka.VelocityPath=2; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=LIN ;ENDFOLD $BWDSTART = FALSE LDAT_ACT = LCPDAT1 FDAT_ACT = FPlace BAS(#CP_PARAMS, 2.0) SET_CD_PARAMS (0) LIN XPlace ;ENDFOLD GripOpen() ;FOLD LIN PlaceH Vel=2 m/s CPDAT2 Tool[1] Base[1] ;%{PE} ;FOLD Parameters ;%{h} ;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.old; Kuka.IsGlobalPoint=False; Kuka.PointName=PlaceH; Kuka.BlendingEnabled=False; Kuka.MoveDataName=CPDAT2; Kuka.VelocityPath=2; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=LIN ;ENDFOLD $BWDSTART = FALSE LDAT_ACT = LCPDAT2 FDAT_ACT = FPlaceH BAS(#CP_PARAMS, 2.0) SET_CD_PARAMS (0) LIN XPlaceH ;ENDFOLD CONTINUE Q_AreaEnter2=FALSE ActionReturn(1) END_POS=$POS_ACT END