// ---------------------------------------- // // The following SmartCAM code generator has been // created to generate NC code for the respective // machine and control combinations listed below. // // Due to differences in programming styles, // controller versions, and optional equipment, // SmartCAMcnc DOES NOT and CANNOT guarantee // that the NC code generated is correct for any // specific machine. Some modification to the code // generator to match your setup and output // requirements is likely necessary. // // Modifications to code generators do not TYPICALLY // require a significant amount of time. SmartCAM // customers with active SMA contracts are entitled // to support for their code generators from the // SmartCAMcnc Support Group. To contact them for // support, please send an email to: // Support@SmartCAMcnc.com. If you would like // information on purchasing SMA for your SmartCAM // products, please contact: Sales@SmartCAMcnc.com // // DISCLAIMER: It is the responsibility of the end // user to confirm and verify that the NC code // created by any code generator is accurate and // will not cause a machine malfunction which // could result in stock, tooling, machine, and/or // personal injury. // // SmartCAMcnc assumes no responsibility or // liability for any damage caused or alleged to // have been caused by the use of any of the code // generators it provides. // ---------------------------------------- @START #EVAL(#C0=2) % O#FILE #ONBLK G40 G49 G80 G90 T#TOOL M6 #OFFBLK(T#TOOL #TDESC #TLCMT) #ONBLK #MOV X#XPOS Y#YPOS S#SPEED #SPNDL E1 H#LOFF Z#ZPOS #C0 @TOOLCHG T#TOOL M6 #OFFBLK(T#TOOL #TDESC #TLCMT) #ONBLK G40 G49 #FXD G90 #MOV X#XPOS Y#YPOS S#SPEED #SPNDL H#LOFF Z#ZPOS #C0 #RESET(#C4) @END G28 M2 #OFFBLK% @STPROF < #MOV>< #FXD>< X#XPOS>< Y#YPOS>< Z#ZPOS> @ENDPROF < #MOV Z#ZPOS> < #DCOMP> @RAP < #MOV>< #FXD>< X#XPOS>< Y#YPOS>< Z#ZPOS> @LINE < #MOV>< #DCOMP>< X#XPOS>< Y#YPOS>< Z#ZPOS>< F#FEED> @ARC #IF(#TANG=360,OR#TANG=-360) << #MOV>< X#XPOS>< Y#YPOS>< I#XCTR>< J#YCTR>< F#FEED>> #ELSE << #MOV>< X#XPOS>< Y#YPOS> R#FMT(#ARAD,F2.4)< F#FEED>> @ZCLRMV < #MOV>< #FXD>< Z#ZPOS> #RESET(#C4) @ZCHKMV < #MOV>< #FXD>< Z#ZPOS> #RESET(#C4) @ZDPTHMV < #MOV>< Z#ZPOS>< F#FEED> @FXD1 #EVAL(#C4=1) < #RTNLVL>< #FXD>< X#XPOS>< Y#YPOS>< Z#ZDPTH>< R#ZCHK>< F#FEED>< #C4> @FXD2 #EVAL(#C4=1) < #RTNLVL>< #FXD>< X#XPOS>< Y#YPOS>< Z#ZDPTH>#EXLN < R#ZCHK>< P#DWELL>< F#FEED>< #C4> @FXD3 #EVAL(#V0=#FEED/#SPEED) #EVAL(#V1=#SPEED) #EVAL(#C4=1) < #RTNLVL>< #FXD>< X#XPOS>< Y#YPOS>< Z#ZDPTH>< R#ZCHK>< Q#V0>< F#V1>< #C4> @FXD4 #EVAL(#C4=1) < #RTNLVL>< #FXD>< X#XPOS>< Y#YPOS>< Z#ZDPTH>< R#ZCHK>< F#FEED>< #C4> @FXD5 #EVAL(#PECK=#TLDIA/2) #EVAL(#C4=1) < #RTNLVL>< #FXD>< X#XPOS>< Y#YPOS>< Z#ZDPTH>< R#ZCHK>< Q#PECK>< F#FEED>< #C4> @DWELL G4 P#DWELL @