// ---------------------------------------- // // 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 SSA 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 SSA 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. // ---------------------------------------- @COMMENTS 08/03/90 TREE Machine Type: Tree Vertical Machining Center Control Type: Fanuc 10 M @START % :#FILE(#S1) #ONBLK G80 #ABSI #MOV G40 S#SPEED #SPNDL T#TOOL #OFFBLK( T#TOOL #TDESC #TLCMT) #ONBLK #C0 M08 #MOV X#XPOS Y#YPOS G43 Z#ZPOS H#LOFF @TOOLCHG M98 P999 #EVAL(#U1=INT(#TLTIME)) #EVAL(#U2=#TLTIME-#U1) #EVAL(#U0=#U2*60) #OFFBLK(T#LTOOL EST.TIME:#EXLN #IF(#U1>0)< #FMT(#U1,T3.0) MIN.> #FMT(#U0,T2.0) SEC.)#ONBLK M06 T#TOOL G28 Z0.0 S#SPEED #SPNDL< F#FEED> #OFFBLK( T#TOOL #TDESC #TLCMT) #ONBLK< #C0> #MOV X#XPOS Y#YPOS M08 G43 Z#ZPOS H#LOFF #EVAL(#U9=0) @END M98 P999 #EVAL(#U1=INT(#TLTIME)) #EVAL(#U2=#TLTIME-#U1) #EVAL(#U0=#U2*60) #OFFBLK(T#LTOOL EST.TIME:#EXLN #IF(#U1>0)< #FMT(#U1,T3.0) MIN.> #FMT(#U0,T2.0) SEC.) #EVAL(#U1=INT(#CYTIME)) #EVAL(#U2=#CYTIME-#U1) #EVAL(#U0=#U2*60) (TOTAL EST.TIME:#EXLN #IF(#U1>0)< #FMT(#U1,T3.0) MIN.> #FMT(#U0,T2.0) SEC.)#ONBLK T#TOOL M06 G28 Z0.0 G00 X#XHOME Y#YHOME #OFFBLK% @STPROF < #ABSI>< #FXD>< #MOV>< X#XPOS>< Y#YPOS>< Z#ZPOS> @RAP < #ABSI>< #FXD>< #MOV>< X#XPOS>< Y#YPOS>< Z#ZPOS> @LINE < #MOV>#IF(#DOFF<>0)<< #DCOMP#EXC< D#DOFF>>>< X#XPOS>< Y#YPOS>#EXLN < Z#ZPOS>< F#FEED> @ARC < #MOV>< X#XPOS>< Y#YPOS>< I#XCTR>< J#YCTR>< F#FEED> @ZCLRMV < #ABSI>< #FXD><< #MOV> Z#ZPOS> @ZCHKMV < #FXD><< #MOV> Z#ZPOS> @ZDPTHMV << #MOV> Z#ZPOS< F#FEED>> @FXD1 < #ABSI>< #RTNLVL>< #FXD>< X#XPOS>< Y#YPOS>< Z#ZDPTH R#ZCHK>< F#FEED> @FXD2 < #ABSI>< #RTNLVL>< #FXD>< X#XPOS>< Y#YPOS>< Z#ZDPTH R#ZCHK>< F#FEED>#EXLN < P#DWELL> @FXD3 #IF(#SPNDL=2)<#EVAL(#C4=1)> #IF(#U9<>1)<#RESET(#C4,#FEED)> < #ABSI>< #RTNLVL>< #C4>< X#XPOS>< Y#YPOS>< Z#ZDPTH R#ZCHK>< F#FEED> #EVAL(#U9=1) @FXD4 < #ABSI>< #RTNLVL>< #FXD>< X#XPOS>< Y#YPOS>< Z#ZDPTH R#ZCHK>< F#FEED> @FXD5 #IF(#U1=83)<#EVAL(#C3=1)> #IF(#U9<>1)<#RESET(#C3)> < #ABSI>< #RTNLVL>< #C3>< X#XPOS>< Y#YPOS>< Z#ZDPTH R#ZCHK Q#PECK>< F#FEED> #EVAL(#U9=1) @DWELL G04 P#DWELL @G54 #EVAL(#C0=0) < #C0> @G55 #EVAL(#C0=1) < #C0> @G56 #EVAL(#C0=2) < #C0> @G57 #EVAL(#C0=3) < #C0> @G58 #EVAL(#C0=4) < #C0> @G59 #EVAL(#C0=5) < #C0> @M00 M00 @M01 M01 @