Jump to content

Welcome to eMastercam

Register now to participate in the forums, access the download area, buy Mastercam training materials, post processors and more. This message will be removed once you have signed in.

Use your display name or email address to sign in:

Integrex Probing Renishaw Macro Logic for B0, B90 and B180 positions through Custom Drill Cycles


Recommended Posts

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"

 

  • Thanks 1
  • Like 8
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.

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.

Follow us

×
×
  • Create New...