Search the Community
Showing results for tags 'integrex'.
-
Hello Mastercam Community. I shared this when I originally developed this back in 2007. I keep getting requests about it so I thought I would share it again. There were many people who helped me back then to make it what it is so I cannot take al the credit for it. Robert Brunsen (Zoober) had a big hand in this. Please use at your own risk. <!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!> <!><!><!><!><!><!><!><!> Make a Backup of your Post before attempting any of this <!><!><!><!><!><!><!><!> <!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!><!> I defined all the variables I wanted to use in the drilling section of the post right before the custom drill cycles: # --------------------------------------------------------------------- # Macro Variables as I need them # --------------------------------------------------------------------- sequal : "=" #Equal Sign spound : "#" #Pound Sign sminus : "-" #Minus Sign sadd : "+" #Addition Sign sdivide : "/" #Division Sign smultiply : "*" #Multiply Sign seq : "EQ" #Equal Call sne : "NE" #Not Equal To Call sgt : "GT" #Greater Than to Call slt : "LT" #Less Than Call sge : "GE" #Is Great than or Equal to Call sle : "LE" #Is Less than or Equal to Call sin : "SIN" #Sine Math scos : "COS" #Cosine Math stan : "TAN" #Tangent Math satan : "ATAN" #ArcTangent Math sacos : "ACOS" #ArcCosine Math sqrt : "SQRT" #Sqaure Root Math sabs : "ABS" #Absoulte Value sbin : "BIN" #Bin sbcd : "BCD" #Bcd sround : "ROUND" #Round to the Nearest Whole Number sfix : "FIX" #Use for Cutting away any Decimal Numbers sfup : "FUP" #Counting Decimal Digits as one's sln : "LN" #Natural Logarithm sexp : "EXP" #Exponent sbracketopen : "[" #Open Bracket sbracketclose : "]" #Close Bracket sif : "IF" #If Call sgoto : "GOTO" #Goto Call swhile : "WHILE" #While Call sdo : "DO" #Do Call sor : "OR" #Or Call sand : "AND" #And Call smod : "MOD" #Surplus Math sdprint : "DPRNT" #Data Output in from Probing Cycles sm100 : "100" #Macro Varaible 100 for Spindle Tranfer Operation sm150 : "150" #Macro Variable 150 for Math Functions in C Axis Aling Macro sm151 : "151" #Macro Variable 151 for Math Functions in C Axis Aling Macro sm152 : "152" #Macro Variable 152 Math Functions in C Axis Aling Macro sm5021 : "5021" #Machine Postion X Axis Variable sm5022 : "5022" #Machine Postion Y Axis Variable sm5023 : "5023" #Machine Postion Z Axis Variable sm5024 : "5024" #Machine Postion B Axis Variable sm5025 : "5025" #Machine Postion C Axis Varaible for Main Spindle sm5026 : "5026" #Machine Postion W Axis Varaible for Sub Spindle sm5027 : "5027" #Machine Postion U Axis Varaible for Sub Spindle sm5221 : "5221" #Workoffset Machine Postion X Axis Variable sm5222 : "5222" #Workoffset Machine Postion Y Axis Variable sm5223 : "5223" #Workoffset Machine Postion Z Axis Variable sm5224 : "5224" #Workoffset Machine Postion B Axis Variable sm5225 : "5225" #Workoffset Machine Postion C Axis Varaible for Main Spindle sm5226 : "5226" #Workoffset Machine Postion W Axis Varaible for Sub Spindle sm5227 : "5227" #Workoffset Machine Postion U Axis Varaible for Sub Spindle # -------------------------------------------------------------------------- # Probing String Varaibles Put here to keep post cleaner # -------------------------------------------------------------------------- strg659530 : "G65P9530" #Printing Macro Call for B90 strg659532 : "G65P9532" #Offset Update Macro for B90 strg659610 : "G65P9610" #Probe Protect Cycle for B90 strg659611 : "G65P9611" #XYZ Single Surface Measure B90 strg659612 : "G65P9612" #Web / Pocket Measure B90 strg659614 : "G65P9614" #Bore / Boss B90 strg659618 : "G65P9618" #C Axis Measure - Vertical B90 strg659619 : "G65P9619" #Bore / Boss on PCD B90 strg659621 : "G65P9621" #Angle Single Surface Measure B90 strg659622 : "G65P9622" #Angle Web / Pocket Measure B90 strg659623 : "G65P9623" #3-Point Bore / Boss Measure B90 strg659634 : "G65P9634" #Feature to Feature Measure B90 strg659650 : "G65P9650" #C-Axis Measure - Vertical B90 strg659730 : "G65P9730" #Printing Macro Call for B0 strg659732 : "G65P9732" #Offset Update Macro for B0 strg659810 : "G65P9810" #Probe Protect Cycle for B0 strg659811 : "G65P9811" #XYZ Single Surface Measure B0 strg659812 : "G65P9812" #Web / Pocket Measure B0 strg659814 : "G65P9814" #Bore / Boss B0 strg659818 : "G65P9818" #C Axis Measure - Horizontal B0 strg659819 : "G65P9819" #Bore / Boss on PCD B0 strg659821 : "G65P9821" #Angle Single Surface Measure B0 strg659822 : "G65P9822" #Angle Web / Pocket Measure B0 strg659823 : "G65P9823" #3-Point Bore / Boss Measure B0 strg659834 : "G65P9834" #Feature to Feature Measure B0 strg659850 : "G65P9850" #C-Axis Measure - Horizontal B0 zsinsurf : 0 #P9811 Z Axis Single Surface Use at B0,B90,B180 xsinsurf : 0 #P9811 X Axis Single Surface Use at B0,B90,B180 ysinsurf : 0 #P9811 Y Axis Single Surface Use At B0,B90,B180 drl_prm2$ : 0 drl_prm3$ : 0 drl_prm4$ : 0 # -------------------------------------------------------------------------- # Macro Force Start Amounts # -------------------------------------------------------------------------- m5225 : 5225 m5227 : 5227 # -------------------------------------------------------------------------- # Probe 90 deg Format Statements # -------------------------------------------------------------------------- fmt "X" 2 prorefht #B90 X clearence for Protect Cycle fmt "D" 2 diadwell #B90 P9614 Bore/Boss Measurement Dia call out fmt "Y" 2 cyspan #Used for Across Distance # -------------------------------------------------------------------------- # Probe 90 deg Varabiles # -------------------------------------------------------------------------- prorefht = refht$ #B90 X clearence for Protect Cycle diadwell = dwell$ #B90 P9614 Bore/Boss Measurement Dia call out cyspan = dwell$ #Used for Across Distance # -------------------------------------------------------------------------- # Probe 0 deg Format Statements # -------------------------------------------------------------------------- fmt "Z" 2 prnrefht #B0 X clearence for Protect Cycle fmt "D" 2 diedwell #B0 P9814 Bore/Boss Measurement # -------------------------------------------------------------------------- # Probe 0 deg Varabiles # -------------------------------------------------------------------------- prnrefht = refht$ #B0 Z clearence for Protect Cycle diedwell = dwell$ #B90 P9814 Bore/Boss Measurement Dia call out # -------------------------------------------------------------------------- # Probe Shared Index deg Format Statements # -------------------------------------------------------------------------- fmt "S" 4 offupdate #Used to Fixture Offsets fmt "H" 2 feattoler #Tolerance of Feature being Measured fmt "M" 2 trueposzone #True Position Tolerenance Zone fmt "B" 2 cangtoler #C axis Tolerance for C-Axis Align Cycle fmt "Q" 2 covertrav #C Axis Overtravel for Probe Amount fmt 2 drl_prm1$ #Tolerance Vaule for Repeat Loop in Post fmt "W" 4 drl_prm2$ #Print Variable for Increment or Reset fmt "N" 30 ngoto #GOTO statement Number to use in Header fmt 30 ngoto2 #GOTO statement Number to use in Probing Routine fmt 30 m5225 #Format for correct Number Values fmt 30 m5227 #Format for correct Number Values fmt "X" 2 xsinsurf #Single Surface for X fmt "Y" 2 ysinsurf #Single Surface for Y fmt "Z" 2 zsinsurf #Single Surface for Z # -------------------------------------------------------------------------- # Probe Shared Index deg Varabiles # -------------------------------------------------------------------------- offupdate = workofs$ #Used for Probing cycles to update workoffset fixed to used offset for operation. trueposzone = peck2$ #Used for the True Position amount cangtoler = peck1$ #Used for Angle Tolerance on C Axis Align Cycle covertrav = peck2$ #Used for Amount of Overtravel allowed for C Axis Align Cycle feattoler = peck1$ #Used for Tolerance of Feature being Measured ngoto = retr$ #Used for Goto Call in C Axis Align Macro in Header ngoto2 = retr$ #Used for Goto Call in C Axis Align Macro in Probing Routine zsinsurf = depth$ #P9811 Z Axis Single Surface Use at B0,B90,B180 xsinsurf = depth$ #P9811 X Axis Single Surface Use at B0,B90,B180 ysinsurf = depth$ #P9811 Y Axis Single Surface Use At B0,B90,B180 pdrlcst$ #Custom drill cycles 8 - 19 (user option) Then here is how I defined all the custom drill cycles with Logic to support B0, B90 and B180 probing. pdrlcst$ #Custom drill cycles 8 - 19 (user option) #Use this postblock to customize drilling cycles 8 - 19 if drillcyc$ = 8, #XYZ Single Surface Measure B0/B90/B180 [ pdrlcommonb if babs = 180, [ if drl_prm2$ <> 0 & drl_prm3$ = 0, #X Axis Single Surface Probing [ xsinsurf = (xabs + drl_prm2$) pbld, n$, *strg659810, *xsinsurf, e$ pbld, n$, *strg659810, *prnrefht, e$ pbld, n$, *strg659810, *zsinsurf, e$ pbld, n$, *strg659811, pfxout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *zsinsurf, e$ pbld, n$, *strg659810, *xsinsurf, e$ pbld, n$, *strg659810, *prnrefht, e$ ] if drl_prm3$ <> 0 & drl_prm2$ = 0, #Y Axis Single Surface Probing [ ysinsurf = (yabs + drl_prm3$) pbld, n$, *strg659810, *ysinsurf, e$ pbld, n$, *strg659810, prnrefht, e$ pbld, n$, *strg659810, *zsinsurf, e$ pbld, n$, *strg659811, pfyout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *zsinsurf, e$ pbld, n$, *strg659810, *ysinsurf, e$ pbld, n$, *strg659810, *prnrefht, e$ ] if drl_prm2$ = 0 & drl_prm3$ = 0, #Z Axis Single Surface Probing [ pbld, n$, *strg659810, prnrefht, e$ pbld, n$, *strg659811, pfyout, pfzout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] ] if babs = 90, #Single Surface B90 Probing with approach Logic using additonal Drill Parameters. [ if drl_prm4$ <> 0 & drl_prm3$ = 0, #Z Axis Single Surface Probing [ zsinsurf = (zabs + drl_prm2$) pbld, n$, *strg659610, *zsinsurf, e$ pbld, n$, *strg659610, *prorefht, e$ pbld, n$, *strg659610, *zsinsurf, e$ pbld, n$, *strg659611, pfxout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659610, *zsinsurf, e$ pbld, n$, *strg659610, *xsinsurf, e$ pbld, n$, *strg659610, *prorefht, e$ ] if drl_prm3$ <> 0 & drl_prm4$ = 0, #Y Axis Single Surface Probing [ ysinsurf = (yabs + drl_prm3$) pbld, n$, *strg659610, *ysinsurf, e$ pbld, n$, *strg659610, prorefht, e$ pbld, n$, *strg659610, *zsinsurf, e$ pbld, n$, *strg659611, pfyout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659610, *zsinsurf, e$ pbld, n$, *strg659610, *ysinsurf, e$ pbld, n$, *strg659610, *prorefht, e$ ] if drl_prm3$ = 0 & drl_prm4$ = 0, #X Axis Single Surface Probing [ pbld, n$, *strg659610, prorefht, e$ pbld, n$, *strg659611, pfxout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659610, *prorefht, e$ ] ] if babs = 0, [ if drl_prm2$ <> 0 & drl_prm3$ = 0, #X Axis Single Surface Probing [ xsinsurf = (xabs + drl_prm2$) pbld, n$, *strg659810, *xsinsurf, e$ pbld, n$, *strg659810, *prnrefht, e$ pbld, n$, *strg659810, *zsinsurf, e$ pbld, n$, *strg659811, pfxout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *zsinsurf, e$ pbld, n$, *strg659810, *xsinsurf, e$ pbld, n$, *strg659810, *prnrefht, e$ ] if drl_prm3$ <> 0 & drl_prm2$ = 0, #Y Axis Single Surface Probing [ ysinsurf = (yabs + drl_prm3$) pbld, n$, *strg659810, *ysinsurf, e$ pbld, n$, *strg659810, prnrefht, e$ pbld, n$, *strg659810, *zsinsurf, e$ pbld, n$, *strg659811, pfyout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *zsinsurf, e$ pbld, n$, *strg659810, *ysinsurf, e$ pbld, n$, *strg659810, *prnrefht, e$ ] if drl_prm2$ = 0 & drl_prm3$ = 0, #Z Axis Single Surface Probing [ pbld, n$, *strg659810, prnrefht, e$ pbld, n$, *strg659811, pfyout, pfzout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] ] pcom_movea ] if drillcyc$ = 9, #Web/Pocket Measure B0/B90/B180 [ pdrlcommonb if babs = 180, [ pbld, n$, *strg659810, prnrefht, e$ pbld, n$, *strg659612, pfyout, pfzout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659610, *prnrefht, e$ ] if babs = 90, [ pbld, n$, *strg659610, prorefht, e$ pbld, n$, *strg659612, pfyout, pfzout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659610, *prorefht, e$ ] if babs = 0, [ pbld, n$, *strg659810, prnrefht, e$ pbld, n$, *strg659812, pfyout, pfzout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] pcom_movea ] if drillcyc$ = 10, #Bore/Boss B0/B90/B180 [ pdrlcommonb if babs = 180, [ pbld, n$, *strg659810, *prnrefht, e$ pbld, n$, *strg659814, *diedwell, pfzout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] if babs = 90, [ pbld, n$, *strg659610, *prorefht, e$ pbld, n$, *strg659614, *diadwell, pfxout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659610, *prorefht, e$ ] if babs = 0, [ pbld, n$, *strg659810, *prnrefht, e$ pbld, n$, *strg659814, *diedwell, pfzout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] pcom_movea ] if drillcyc$ = 11, #C Axis Measure - Vertical B0/B90/B180 [ pdrlcommonb if babs = 180, [ pbld, n$, *strg659810, prnrefht, e$ pbld, n$, *strg659818, *cyspan, pfxout, *offupdate,[if cangtoler > 0, *cangtoler], [if drl_prm2$ > 0, *drl_prm2$], e$ pbld, n$, *strg659810, *prnrefht, e$ ] if babs = 90, [ pbld, n$, *strg659610, prorefht, e$ pbld, n$, *strg659618, *cyspan, pfxout, *offupdate, [if cangtoler > 0, *cangtoler], [if drl_prm2$ > 0, *drl_prm2$], e$ pbld, n$, *strg659610, *prorefht, e$ ] if babs = 0, [ pbld, n$, *strg659810, prnrefht, e$ pbld, n$, *strg659818, *cyspan, pfxout, *offupdate, [if cangtoler > 0, *cangtoler], [if drl_prm2$ > 0, *drl_prm2$], e$ pbld, n$, *strg659810, *prnrefht, e$ ] *sg00 ,*sg91, sg30_3, "X0", e$ *sg00, *sg90, [if workofs$ > 53, *g_wcs], [if workofs$ < 49 , "G54.1", *p_wcs],[if spindle_no$ = 0, "C20."],[if spindle_no$ = 1, "U20."],e$ *sg00, *sg90, [if spindle_no$ = 0, "C0"],[if spindle_no$ = 1, "U0"], e$ spaces$ = 0 sif,sbracketopen,spound,sm152,sgt,drl_prm1$,sbracketclose,sgoto,ngoto2, e$ spaces$ = 1 pcom_movea ] if drillcyc$ = 12, #Bore/Boss on PCD B0/B90/B180 [ pdrlcommonb if babs = 180, [ pbld, n$, *strg659810, prnrefht, e$ pbld, n$, *strg659819, diedwell, pfyout, pfzout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] if babs = 90, [ pbld, n$, *strg659610, prorefht, e$ pbld, n$, *strg659619, diadwell, pfyout, pfzout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659610, *prorefht, e$ ] if babs = 0, [ pbld, n$, *strg659810, prnrefht, e$ pbld, n$, *strg659819, diedwell, pfyout, pfzout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] pcom_movea ] if drillcyc$ = 13, [ pdrlcommonb if babs = 180, [ pbld, n$, *strg659810, prnrefht, e$ pbld, n$, *strg659818, diedwell, pfyout, pfzout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] if babs = 90, [ pbld, n$, *strg659610, prorefht, e$ pbld, n$, *strg659818, diadwell, pfyout, pfzout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659610, *prorefht, e$ ] if babs = 0, [ pbld, n$, *strg659810, prnrefht, e$ pbld, n$, *strg659818, diedwell, pfyout, pfzout, [if peckclr$ > 0,*offupdate], [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] pcom_movea ] pdrlcst_2$ #Custom drill cycles 8 - 19 (user option) #Use this postblock to customize drilling cycles 8 - 19 if drillcyc$ = 8, [ pdrlcommonb if babs = 180, [ pbld, n$, `strg659810, `prnrefht, e$ pbld, n$, *strg659811, pfyout, pfzout, [if peck2$ > 0, *trueposzone], e$ pbld, n$, *strg659810, *prorefht, e$ ] if babs = 90, [ pbld, n$, `strg659610, `prnrefht, e$ pbld, n$, *strg659611, pfyout, pfzout, [if peck2$ > 0, *trueposzone], e$ pbld, n$, *strg659610, *prorefht, e$ ] if babs = 0, [ pbld, n$, `strg659810, `prnrefht, e$ pbld, n$, *strg659811, pfyout, pfzout, [if peck2$ > 0, *trueposzone], e$ pbld, n$, *strg659810, *prnrefht, e$ ] pcom_movea ] if drillcyc$ = 9, #Web/Pocket Measure B0/B90 [ pdrlcommonb if babs = 180, [ pbld, n$, `strg659810, `prnrefht, e$ pbld, n$, *strg659812, diadwell, pfyout, pfzout, [if peck2$ > 0, *trueposzone], e$ pbld, n$, *strg659810, *prnrefht, e$ ] if babs = 90, [ pbld, n$, `strg659610, `prorefht, e$ pbld, n$, *strg659612, diadwell, pfyout, pfzout, [if peck2$ > 0, *trueposzone], e$ pbld, n$, *strg659610, *prorefht, e$ ] if babs = 0, [ pbld, n$, `strg659810, `prnrefht, e$ pbld, n$, *strg659812, diedwell, pfyout, pfzout, [if peck2$ > 0, *trueposzone], e$ pbld, n$, *strg659810, *prnrefht, e$ ] pcom_movea ] if drillcyc$ = 10, #Bore/Boss B0/B90 [ pdrlcommonb if babs = 180, [ pbld, n$, *strg659810, pyout, pxout, e$ pbld, n$, `strg659810, `prnrefht, e$ pbld, n$, *strg659814, *diadwell, pfzout, [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] if babs = 90, [ pbld, n$, *strg659610, pyout, pxout, e$ pbld, n$, `strg659610, `prorefht, e$ pbld, n$, *strg659614, *diadwell, pfxout, [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659610, *prorefht, e$ ] if babs = 0, [ pbld, n$, *strg659810, pyout, pxout, e$ pbld, n$, `strg659810, `prnrefht, e$ pbld, n$, *strg659814, *diedwell, pfzout, [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] pcom_movea ] if drillcyc$ = 11, [ result = mprint(sperror), exitpost$ ] if drillcyc$ = 12, [ pdrlcommonb if babs = 180, [ pbld, n$, `strg659810, `prnrefht, e$ pbld, n$, "G65P9618", diadwell, pfyout, pfzout, [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] if babs = 90, [ pbld, n$, `strg659610, `prorefht, e$ pbld, n$, "G65P9618", diadwell, pfyout, pfzout, [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659610, *prorefht, e$ ] if babs = 0, [ pbld, n$, `strg659810, `prnrefht, e$ pbld, n$, "G65P9818", diedwell, pfyout, pfzout, [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] pcom_movea ] if drillcyc$ = 13, [ pdrlcommonb if babs = 180, [ pbld, n$, `strg659810, `prnrefht, e$ pbld, n$, "G65P9618", diadwell, pfyout, pfzout, [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] if babs = 90, [ pbld, n$, `strg659610, `prorefht, e$ pbld, n$, "G65P9618", diadwell, pfyout, pfzout, [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659610, *prorefht, e$ ] if babs = 0, [ pbld, n$, `strg659810, `prnrefht, e$ pbld, n$, "G65P9818", diedwell, pfyout, pfzout, [if peck2$ > 0, *trueposzone], [if feattoler > 0, *feattoler], e$ pbld, n$, *strg659810, *prnrefht, e$ ] pcom_movea ] Here is how the text was defined to be used through the Mastercam Control Definition. This must be done through the Mastercam Control Definition not through just copying and pasting into a Post. This is extremely important since this section of the post is an XML format that can be corrupted very easily if someone goes hacking this section of a post. Why it is best to make these changes through the Mastercam Control Definition. [drill cycle 9 custom parameters] 1. "Additional Probing" 2. "Feat to Feat[0=N,1=Y]" 3. "X Axis App Amount +/-" 4. "Y Axis App Amount +/-" 5. "Z Axis App Amount +/-" 6. "" 7. "" 8. "" 9. "" 10. "" 11. "" [drill cycle 10 custom parameters] 1. "Additional Probing" 2. "Feat to Feat [0=No,1=Yes]" 3. "Z axis Distance to Measure" 4. "X axis Distance to Measure" 5. "Y axis Distance to Measure " 6. "Angle XY Plane " [drill cycle 11 custom parameters] 1. "Additional Probing" 2. "Feat to Feat [0=No,1=Yes]" 3. "Z axis Distance to Measure" 4. "X axis Distance to Measure" 5. "Y axis Distance to Measure " 6. "Angle XY Plane " [drill cycle 12 custom parameters] 1. "Additional Probing" 2. "Tolerance for Repeat " 3. "Data Print [1=Increm,2= Reset]" 4. "" 5. "" 6. "" 7. "" 8. "" 9. "" 10. "" 11. "" [drill cycle 13 custom parameters] 1. "Additional Probing" 2. "Feat to Feat [0=No,1=Yes]" 3. "Z axis Distance to Measure" 4. "X axis Distance to Measure" 5. "Y axis Distance to Measure " 6. "Angle XY Plane " [drill cycle 14 custom parameters] 1. "Additional Probing" 2. "Feat to Feat [0=No,1=Yes]" 3. "Z axis Distance to Measure" 4. "X axis Distance to Measure" 5. "Y axis Distance to Measure " 6. "Angle XY Plane " [drill cycle 15 custom parameters] 1. "Additional Probing" 2. "Feat to Feat [0=No,1=Yes]" 3. "Z axis Distance to Measure" 4. "X axis Distance to Measure" 5. "Y axis Distance to Measure " 6. "Angle XY Plane " [drill cycle 16 custom parameters] 1. "Custom Drill Parameters 16" [drill cycle 17 custom parameters] 1. "Custom Drill Parameters 17" [drill cycle 18 custom parameters] 1. "Custom Drill Parameters 18" [drill cycle 19 custom parameters] 1. "Custom Drill Parameters 19" [drill cycle 20 custom parameters] 1. "Custom Drill Parameters 20" [drill cycle descriptions] 1. "Standard Drill - G81/G82" 2. "Peck Drill - G83" 3. "Chip Break - G83" 4. "Tap - G84/G74" 5. "Reaming - G85" 6. "Gundrill - longhand" 9. "XYZ Single Face Probing" 10. "Web/Pocket Probing" 11. "Bore/Boss Probing" 12. "Angle Single Surface Probing" 13. "Angle Web/Pocket Probing" 14. "3-Point Bore/Boss Probing" Error Message if trying to use a probing cycle for repeated features: # -------------------------------------------------------------------------- # Error message strings # -------------------------------------------------------------------------- sperror :"ONLY USE THIS PROBING CYCLE ON ONE FEATURE AT A TIME"
- 1 reply
-
- 10
-
- probing
- renishaw probing cycle
-
(and 3 more)
Tagged with:
-
Hey y'all Today I am trying to figure out a wa y to generate this hex using a bore bar on an Integrex i300. So far I used basic contour and rotary axis set to C and turned off cutter comp. When I run it in the air it works as expected and should perform. The problem is going to be the rubbing on the back side in the tight corners. The corners are .05". I'm fine with relieving the back side more but does anyone know of a way to gradually lead the tool into the corners ( requiring the Y to come off center ) and also exiting the corners? Or is this a dream i'm having? Thanks for any input! The real part has an extra 2.5" on the CB side FYI Mcam 2023 HEX-TEST.mcam
-
Hello, So I am running an Integrex and am making a custom grooving tool and want to cut the pink surfaces with a flat bottom em ( a true flat bottom ). Making the toolpath was easy and backplot and simulation show correct only the posted code is different. I know simulation doesn't read code. The first initial B rotation is B-15. and this is correct. All passes after are reversed so the C rotates 180° and starts the cut at the top. When it does this I overtravel when the head gets to the bottom. When it is B-15. and works bottom up, all is well. When i run the first pass on the machine it cuts perfectly. Is there a way I can prevent/force the post to keep all the passes the same? Looking at the picture with the pink surfaces shows that the toolpath is clean and no weird jerky moves. I am using multiaxis Curve using 3D Curves for the Curve Type and lines for the tool axis control. I did try using Misc Integer 4 which is the start solution + or -. When I changed this that is when I got it to post B-15. on the first pass only. So it worked but not on every pass. I also do get a rotary/tilt axis unwind message. It makes one pass just fine, why can't it do the others that are the same cut? What are your thoughts? Thanks for any assistance.
-
Hey, I did a search and couldn't find anything on this topic. I am looking to use the shaping option Mazak offers on my Integrex i300. The feature on the part is just a simple o-ring groove that is 1.37" major diameter ( correct terminology for grooves? ). Not very big at all. My question is, has anyone ever written a program for Shaping before and willing to share some sample code? I've been studying the manual trying to make sense of it buuuuttt...... The groove will be machined at B90.° so the C axis will not be used except to position the groove top surface. It's just a flat O-Ring Groove. I'm working on getting the Shaping Option as we speak. The Orbiturn option I do not believe is necessary. Thoughts/concerns? Thanks for the help!
-
I'm trying to do a parallel multiaxis toolpath with the part in the sub-spindle on an Integrex i100. The problem I'm having is I need to lock the 5th axis at about an 8 degree away from the chuck. No matter what angle I enter, it tilts towards the chuck. Toolpath works fine on the main spindle. Is there a workaround for this? I'm just getting back into Mastercam, I've been on NX for a few years now. Alot has changed apparently, anybody know of a good resource to brush up on mill-turn?
- 16 replies
-
Hey everyone, I'm trying to better understand inverse feed for a Mazak Integrex J200 Mill-Turn. I'm doing a C-axis contour path to cut a chamfer on a part and I'm just not sure if the code is correct. Everything looks okay, there are feed rates on each line, etc, but it's posting out an H address for the C rotation when there is no movement in Z. Is this correct, or is something not right in my control def/post? Sample code is below. I appreciate any help. O1111(OP1 - 13965) (2/24/2017 10:36 AM) (OP1 - 13965) (*************TOOL LIST************************) (T6 | .25 CHAMFERMILL | LEN. - 6. | DIA. - 6. ) (***********************************************) N6 (T6 | .25 CHAMFERMILL | LEN. - 6. | DIA. - 6. ) (CHAMFER ALL AROUND) M200 G10.9 X0. G20 G40 G80 G18 G94 G90 G98 G91 G28 X0. Y0. G91 G28 Z0. G90 T6 M6 G91 G28 X0. Y0. G91 G28 Z0. G90 M901 M108 M212 G55 G0 G90 B90. C274.9295 M107 M211 G97 S1000 M03 G18 G90 G0 G18 G43 H#3020 X2.755 Y0. Z.073 X1.855 G94 G1 X1.7275 F4. G93 C275.5825 F203.184 Z.0591 C275.5298 F285.756 Z.0459 C275.3789 F286.292 Z.034 C275.1358 F287.07 Z.0241 C274.8127 F288.053 Z.0167 C274.4258 F289.045 Z.0121 C273.9945 F289.848 Z.0105 C273.542 F291.257 C272.5421 F132.676 C271.5417 F132.614 C270.5414 F132.632 C270. F245.038 C269.0001 F132.676 C267.9997 F132.614 C266.9994 F132.632 C266.458 F245.038 C265.4576 F132.614 C264.4568 F132.561 C263.4562 F132.589 C262.6712 F168.998 Z.0094 C262.4453 F579.793 Z.0062 C262.2405 F575.363 Z.0012 C262.078 F572.686 Z-.005 C261.9737 F570.045 Z-.012 C261.9366 F566.069 Z-.0645 C261.9385 F76.226 H-343.4599 F.386 Z-.0644 C278.2722 F642.842 C278.1425 F1022.849 Z-.0645 C278.075 F1965.581 C278.0615 F9848.908 Z-.012 C278.0634 F76.284 Z-.005 C278.0259 F565.892 Z.0012 C277.9215 F570.049 Z.0062 C277.759 F572.689 Z.0094 C277.5542 F575.365 Z.0105 C277.3288 F580.996 C276.3288 F132.667 C275.3282 F132.576 C274.3274 F132.566 C273.542 F168.925 Z.0121 C273.0894 F291.2 Z.0167 C272.6581 F289.848 Z.0241 C272.2713 F289.044 Z.034 C271.9482 F288.052 Z.0459 C271.7051 F287.071 Z.0591 C271.5542 F286.292 Z.073 C271.5016 F285.762 C272.1545 F203.184 G0 X2.755 M05 G91 G28 X0. Y0. G91 G28 Z0. G90 M01 M30
Join us!
eMastercam - your online source for all things Mastercam.
Together, we are the strongest Mastercam community on the web with over 56,000 members, and our online store offers a wide selection of training materials for all applications and skill levels.