@COMMENTS Machine: Okuma MC-4VA Vertical Machining Center Control: Okuma OSP5000M-G CNC Control @ @DECLARE //#OUTCND //#OUTSEC //#OUTREF //#OUTRPT @ @START $#FILE.MIN% #ONBLK G15 H0 G0 Z#ZPOS X0.0 Y0.0 T#TOOL M6 #EVAL(#V1=#TOOL) #EVAL(#V2=#NTOOL) #IF(#V1=#V2)< M63>#ELSE< T#NTOOL> G15 H1 M5 S#SPEED #SPNDL M8 #UPDATE(#ZPOS) @ @TOOLCHG M5 < #FXD> M9 G15 H0 G0 Z#ZPOS X0.0 Y0.0 M6 #EVAL(#V2=#NTOOL) #IF(#V1=#V2)< M63>#ELSE< T#NTOOL> G15 H1 M5 S#SPEED #SPNDL M8 #UPDATE(#ZPOS) #RESET(#V0) @ @END M5 M9 G15 H0 G0 Z#ZPOS X0.0 Y0.0 M6 M2 #OFFBLK% @ @STPROF < #ABSI>< #FXD>< #MOV>< X#XPOS>< Y#YPOS> < G56 Z#ZPOS H#LOFF> @ @ENDPROF < #MOV>< Z#ZPOS> #RESET(#DOFF) @ @RAP < #ABSI>< #FXD>< #MOV>< X#XPOS>< Y#YPOS> @ @LINE < #MOV>< #DCOMP#EXC< D#DOFF>>< X#XPOS>< Y#YPOS>< Z#ZPOS>< F#FEED> @ @ARC #IF(#TANG=360,OR#TANG=-360) << #PLANE>< #MOV>< X#XPOS>< Y#YPOS> I#XCTR J#YCTR< F#FEED>> #ELSE << #PLANE>< #MOV>< X#XPOS>< Y#YPOS> R#ARAD< F#FEED>> @ @XZARC #IF(#TANG=360,OR#TANG=-360) << #PLANE>< #MOV>< X#XPOS>< Z#ZPOS> I#XCTR K#ZCTR< F#FEED>> #ELSE << #PLANE>< #MOV>< X#XPOS>< Z#ZPOS> R#ARAD< F#FEED>> @ @YZARC #IF(#TANG=360,OR#TANG=-360) << #PLANE>< #MOV>< Y#YPOS>< Z#ZPOS> J#YCTR K#ZCTR< F#FEED>> #ELSE << #PLANE>< #MOV>< Y#YPOS>< Z#ZPOS> R#ARAD< F#FEED>> @ @HELIX #IF(#TANG=360,OR#TANG=-360) << #PLANE> #MOV< X#XPOS>< Y#YPOS> Z#ZPOS I#XCTR J#YCTR< F#FEED>> #ELSE << #PLANE> #MOV< X#XPOS>< Y#YPOS> Z#ZPOS R#ARAD< F#FEED>> @ @XZHELIX #IF(#TANG=360,OR#TANG=-360) << #PLANE> #MOV< X#XPOS> Y#YPOS< Z#ZPOS> I#XCTR K#ZCTR< F#FEED>> #ELSE << #PLANE> #MOV< X#XPOS> Y#YPOS< Z#ZPOS> R#ARAD K#ZCTR< F#FEED>> @ @YZHELIX #IF(#TANG=360,OR#TANG=-360) << #PLANE> #MOV X#XPOS< Y#YPOS>< Z#ZPOS> J#YCTR K#ZCTR< F#FEED>> #ELSE << #PLANE> #MOV X#XPOS< Y#YPOS>< Z#ZPOS> R#ARAD< F#FEED>> @ @ZCLRMV < #ABSI>< #FXD><< #MOV> Z#ZPOS> @ @ZCHKMV < #FXD><< #MOV> Z#ZPOS> @ @ZDPTHMV << #MOV> Z#ZPOS< F#FEED>> @ // spot drill, center drill, ream, drill (no dwell) @OP_CDRL #CALL(OP_DRL) @OP_REAM #CALL(OP_DRL) @OP_DRL #EVAL(#V0=#ZPOS) < G71 Z#V0> < G56 #CYCLE>< X#XPOS>< Y#YPOS>#EXLN < Z#ZDPTH R#ZCHK>< F#FEED>< #RTNLVL>< H#LOFF> @@CYCLE 0,G81 @ @OP_SPDRL #EVAL(#V0=#ZPOS) < G71 Z#V0> < G56 #CYCLE>< X#XPOS>< Y#YPOS>#EXLN < Z#ZDPTH R#ZCHK>< P#DWELL>< F#FEED>< #RTNLVL>< H#LOFF> @@CYCLE 0,G82 @ // tap @OP_TAP #EVAL(#V0=#ZPOS) < G71 Z#V0> < G56 #CYCLE>< X#XPOS>< Y#YPOS>#EXLN < Z#ZDPTH R#ZCHK>< F#FEED>< #RTNLVL>< H#LOFF> @@CYCLE 0,G84 @ // bore (dwell for cycle > 1) @OP_SPEC #CALL(OP_BORE) @OP_BORE #EVAL(#V0=#ZPOS) < G71 Z#V0> < G56 #CYCLE>< X#XPOS>< Y#YPOS>#EXLN < Z#ZDPTH R#ZCHK>< F#FEED>< #RTNLVL>< H#LOFF> @@CYCLE 0,G85 @ // peck drill full or partial retract (no dwell) @OP_PDRL #EVAL(#V9=#TLDIA/2) #EVAL(#V0=#ZPOS) < G71 Z#V0> < G56 #CYCLE>< X#XPOS>< Y#YPOS>#EXLN < Z#ZDPTH R#ZCHK>< Q#V9>< F#FEED>< #RTNLVL>< H#LOFF> @@CYCLE 0,G83 @ @DWELL G4 F#DWELL @ @M0 M0 @ @M1 M1 @ @M7 M7 @ @M8 M8 @ @M9 M9 @