// ---------------------------------------- // // 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 10/31/89 Machine Type: Binns & Berry Horizontal Lathe Control Type: General Electric Mark Century One Plus GEK-96645 @START %#FILE #ONBLK G92 S1000 #IF(#SPMODE=1)< #SPMODE S#SPEED #C0 #SPNDL>#ELSE< #SPMODE S#SPEED #SPNDL> < #MOV>< X#XPOS>< Z#ZPOS>< F#FEED>< T#TOOL.#TOOL> M8 #NEXTPT #IF(#SPMODE)<#EVAL(#V5=#SPEED*12/(3.1416*#XPOS*2))>#ELSE<#EVAL(#V5=#SPEED)> #IF(#V5<=ABS(60))<#EVAL(#C0=0)> #IF(#V5>ABS(60)#AND#V5<=ABS(280))<#EVAL(#C0=1)> #IF(#V5>ABS(280))<#EVAL(#C0=2)> @TOOLCHG M9 M0 M5 #IF(#SPMODE=1)< #SPMODE S#SPEED #C0 #SPNDL>#ELSE< #SPMODE S#SPEED #SPNDL> < #DCOMP>< #MOV>< X#XPOS>< Z#ZPOS>< F#FEED>< T#TOOL.#TOOL> M8 #IF(#SPMODE)<#EVAL(#V5=#SPEED*12/(3.1416*#XPOS*2))>#ELSE<#EVAL(#V5=#SPEED)> #IF(#V5<=ABS(60))<#EVAL(#C0=0)> #IF(#V5>ABS(60)#AND#V5<=ABS(280))<#EVAL(#C0=1)> #IF(#V5>ABS(280))<#EVAL(#C0=2)> #NEXTPT @END < #MOV> X#XHOME Z#ZHOME M9 M30 #OFFBLK @STPROF #RESET(#FXD) < #MOV>< X#XPOS>< Z#ZPOS> @RAP #RESET(#FXD) < #DCOMP>< #MOV>< X#XPOS>< Z#ZPOS> @LINE #RESET(#FXD) < #MOV>< #DCOMP>< X#XPOS>< Z#ZPOS>< F#FEED>< S#SPEED> @ARC #RESET(#FXD) < #MOV>< X#XPOS>< Z#ZPOS> I#XCTR K#ZCTR< F#FEED>< S#SPEED> @FXD1 #EVAL(#V3=#V0+.05) #EVAL(#V3=#V3-#V0) #IF(#V0<#XCTR)<#EVAL(#V1=#V1*-1)> G86 P0=K#V0 P1=K#ZCTR P2=K#V0 P3=K#ZPASS P4=K#V1 P5=K#V2 P6=K#V3#EXLN P7=K.001 P10=K#FTHRD P11=K0 P12=K10 @FXD2 < G00< X#XPOS> Z#ZPOS> < #FXD>< X#XPASS>< Z#ZPASS>< F#FEED> @FXD3 < G00 X#XPOS > < #FXD>< X#XPASS>< Z#ZPASS>< F#FEED> @FXD4 G1 Z#ZPASS F#FEED #SPNDL M5 #IF(#SPNDL=1)<#EVAL(#SPNDL=2)>#ELSE<#EVAL(#SPNDL=1)> G1 Z#ZPOS F#FEED #SPNDL @FXD5 #EVAL(#PECK=#TLDIA) #EVAL(#V4=#ZPOS+.1) #EVAL(#V9=#ZPASS) #EVAL(#V9=#V9*-1) G83 P0=K#XPOS P1=K#ZPOS P4=K#V9 P5=K#PECK P6=K#V4 P15=K#DWELL#EXLN P16=K0 P17=K.05 @DWELL G04 P#DWELL#EVAL(#TIME=#DWELL/60) @