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:

C-axis custom drill cycles?


JohnBoy13
 Share

Recommended Posts

Hello,

I'm trying to figure out if it's possible to make a custom drill cycle in Mastercam X6 for C-axis milling on our Toshiba turn/mill machines. I think someone told me it is, but I haven't been able to figure it out.

Basically I want to start a hole at one feed rate to a certain depth, then take the hole to finish depth at another feed rate. I have been doing this by hand for a while, but there has to be a better way... Thanks.

Link to comment
Share on other sites

Here is what me and Zoober came up with about 7 years ago for probing in Mastercam.

# ---------------------------------------------------------------------
# Macro Variables as I need them for Probing using Drill Cycles
# ---------------------------------------------------------------------
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
scos      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
sfeature  FEATURE  #Comments for Probing of Features
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
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

# --------------------------------------------------------------------------
# Probing String Varaibles Put here to keep post cleaner
# --------------------------------------------------------------------------
strg659730   "G65P9730" #Printing Macro Call 
strg659732   "G65P9732" #Offset Update Macro 
strg659810   "G65P9810" #Probe Protect Cycle 
strg659811   "G65P9811" #XYZ Single Surface Measure 
strg659812   "G65P9812" #Web / Pocket Measure 
strg659814   "G65P9814" #Bore / Boss
strg659815   "G65P9815" #Internal Corner
strg659816   "G65P9816" #External Corner
strg659817   "G65P9817" #4th Axis X measure - Horiziontal
strg659818   "G65P9818" #4th Axis Y Measure - Horiziontal
strg659819   "G65P9819" #Bore / Boss on PCD
strg659820   "G65P9820" #Stock Allowance Measure
strg659821   "G65P9821" #Angle Single Surface Measure
strg659822   "G65P9822" #Angle Web / Pocket Measure
strg659823   "G65P9823" #3-Point Bore / Boss Measure
strg659834   "G65P9834" #Feature to Feature Measure

# --------------------------------------------------------------------------
# Probe Format Statements
# --------------------------------------------------------------------------
fmt  Z  2  prorefht     #Z Rapid Position for Rapid
fmt  Z  2  prnrefht     #Z clearence for Protect Cycle
fmt  Z  2  zbossdep     #Z Position for Probing
fmt  D  2  diadwell     #P9614 Bore/Boss Measurement Dia call out
fmt  C  2  pcddia       #P9819 Bolt Circle Diameter for Measurement
fmt  K  2  zpcddep      #P9819 Z Depth if doing Bores for a Bolt Circle Measurement 
fmt  R  2  radclear     #Radius Clearance Postive for Od and Negative for Id
fmt  S  4  offupdate    #Used to Fixture Offsets
fmt  Y  2  cyspan       #Used for Across Distance
fmt  H  2  feattol      #Tolerance of Feature being Measured
fmt  T  4  toolupdate   #Used for Updating Tool Offsets
fmt  M  2  trueposzone  #True Position Tolerenance Zone
fmt  B  2  cangtoler    #C axis Tolerance for C-Axis Align Cycle
fmt  B  2  corn_angtoler#Angle Tolerance for Internal Corner if not 90 deg corner
fmt  Q  2  covertrav    #C Axis Overtravel for Probe Amount
fmt     2  drl_prm1$    #Tolerance Vaule for Repeat Loop in Post
fmt  X  2  drl_prm2$    #Size to Measure for P9812 Cycle X axis
fmt  Y  2  drl_prm3$    #Size to Measure for P9812 Cycel Y axis
fmt  W  4  drl_prm10$   #Print Variable for Increment or Reset
fmt     30 drl_prm6$    #GOTO statement Number to use
fmt  X  2  xsinsurf     #Single Surface for X
fmt  Y  2  ysinsurf     #Single Surface for Y
fmt  Z  2  zsinsurf     #Single Surface for Z
fmt  Z  2  zcorn        #Corner Probing for Z
fmt  X  2  xcorn        #Corner Probing for X
fmt  Y  2  ycorn        #Corner Probing for Y
fmt  I  2  icorn        #Corner Probing for I
fmt  J  2  jcorn        #Corner Probing for J
fmt     2  xdcorn       #Move amount for Corner Cycles
fmt     2  ydcorn       #Move amount for Corner Cycles
fmt  A  2  apcdang      #Angle for 1st Hole on PCD P9819 Measure Cycle
fmt  H  2  pcdholtol    #Tolerance for Holes in Bolt Hole Circle

# --------------------------------------------------------------------------
# Probe Varabiles Defined to Use with Drill Cycles
# --------------------------------------------------------------------------
prorefht = refht$        #Z Rapid Position for Rapid
prnrefht = tosz$         #Z Clearence for Protect Cycle
diadwell = dwell$  	 #P9814 Bore/Boss Measurement Dia call out
radclear = retr$         #P9814 Bore/Boss R Postive or Negative for clearance on Boss use Postive on Bore Use Negtive
feattol = shftdrl$       #P9811 Single Surface Measure Toleracne of Surface you are Measuring
zbossdep = depth$        #P9814 Bore/Boss Section Default to Boss use 1 to Make it A Bore Measure Cycle
zpcddep = depth$         #P9819 Bolt Circle Measurement Depth for Id Measurement
zsinsurf = depth$        #P9811 Z Axis Single Surface Use
zcorn = depth$           #P9815 Z Axis Corner Probing
cyspan = dwell$          #Used for Across Distance
jcorn = dwell$           #Used for Internal Corner
icorn = retr$            #Used for Internal Corner 
offupdate = peckclr$     #Used to Update Workoffsets if no Vaule is Used Nothing is Posted Out
trueposzone = peck2$     #Used for True Position Callout if no Vaule is Used Nothing is Posted Out
toolupdate = peck1$      #Used for Tooloffset Update to a Known Feature if No Value is Used Nothing is Posted Out
cangtoler = peck1$       #Used for C Axis Tolance in 4th Axis Measurements
corn_angtoler = peck1$   #Used for Internal Corner Angle Tolance
covertrav = peck2$       #Used for C Axis Overtravel Adjustment and setting in Cycle
pcddia = peck1$          #Used for Bolt Hole Circle on PCD P9819 Cycle
apcdang = drl_prm1$      #Used for Angle of 1st Hole on PCD P9819 Cycle 
xdcorn = drl_prm2$       #Used for Distance of Safe Position in X for Corner Cycles
ydcorn = drl_prm3$       #Used for Distance of Safe Position in Y for Corner Cycles

pdrlcst$         #Custom drill cycles 8 - 19 (user option)
      #Use this postblock to customize drilling cycles 8 - 19
      if drillcyc$ = 8, #XYZ Single Surface Measure 
           [
           pdrlcommonb
           if drl_prm2$ <> 0 & drl_prm3$ = 0, #X Axis Single Surface Probing
                [
                xsinsurf = (xout + drl_prm2$)
                pbld, n$, *strg659810, *xsinsurf,  e$
                pbld, n$, *strg659810, *prorefht, e$
                pbld, n$, *strg659810, *zsinsurf, e$
                pbld, n$, *strg659811, *xout, [if offupdate > 0,*offupdate], [if feattol, *feattol],
 [if trueposzone > 0, *trueposzone], [if toolupdate > 0, *toolupdate], [if drl_prm10$ > 0, *drl_prm10$], e$
                pbld, n$, *strg659810, *zsinsurf, e$
                pbld, n$, *strg659810, *xsinsurf,  e$
                pbld, n$, *strg659810, *prorefht, e$
                if drl_prm9$ = 1,
                     [
                     spaces$ = 0
                     "#135=#120(STORE 1ST Z PLANE HIT)", e$
                     ]
                if drl_prm10$,                
                     [
                     spaces$ = 0
                     "POPEN", e$
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[X*AXIS*SINGLE*SURFACE*PROBING*]", e$                     
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$
                     sdprint, "[","Z*POSITION*IS*#137[24]*Z*ERROR*IS*#142[24]]", e$
                     sdprint, "[","SIZE*OF*FEATURE*IS*#138[24]*ERROR*IS*#143][24]", e$ 
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     "PCLOS", e$
                     spaces$ = 1
                     ] 
                ]
           if drl_prm3$ <> 0 & drl_prm2$ = 0, #Y Axis Single Surface Probing
                [
                ysinsurf = (yout + drl_prm3$)
                pbld, n$, *strg659810, *ysinsurf,  e$
                pbld, n$, *strg659810, *prorefht, e$
                pbld, n$, *strg659810, *zsinsurf, e$
                pbld, n$, *strg659811, *yout, [if offupdate > 0,*offupdate], [if feattol, *feattol],
 [if trueposzone > 0, *trueposzone], [if toolupdate > 0, *toolupdate], [if drl_prm10$ > 0, *drl_prm10$], e$
                pbld, n$, *strg659810, *zsinsurf, e$
                pbld, n$, *strg659810, *ysinsurf, e$
                pbld, n$, *strg659810, *prorefht, e$
                if drl_prm10$,                
                     [
                     spaces$ = 0
                     "POPEN", e$
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[Y*AXIS*SINGLE*SURFACE*PROBING*]", e$                     
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]",e$ 
                     sdprint, "[","Z*POSITION*IS*#137[24]*Z*ERROR*IS*#142[24]*]", e$
                     sdprint, "[","SIZE*OF*FEATURE*IS*#138[24]*ERROR*IS*#143[24]*]", e$ 
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     "PCLOS", e$
                     spaces$ = 1
                     ] 
                ]
           if drl_prm2$ = 0 & drl_prm3$ = 0, #Z Axis Single Surface Probing 
                [
                pbld, n$, *strg659810, *prorefht, e$
                pbld, n$, *strg659810, *prnrefht, e$
                pbld, n$, *strg659811, *zsinsurf, [if offupdate > 0,*offupdate], [if feattol, *feattol],
 [if trueposzone > 0, *trueposzone], [if toolupdate > 0, *toolupdate], [if drl_prm10$ > 0, *drl_prm10$], e$
                pbld, n$, *strg659810, *prnrefht, e$
                pbld, n$, *strg659810, *prorefht, e$,    
                if drl_prm10$,                
                     [
                     spaces$ = 0
                     "POPEN", e$
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[Z*AXIS*SINGLE*SURFACE*PROBING*]", e$                     
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$ 
                     sdprint, "[","Z*POSITION*IS*#137[24]*Z*ERROR*IS*#142[24]*]", e$
                     sdprint, "[","SIZE*OF*FEATURE*IS*#138[24]*ERROR*IS*#143[24]*]", e$ 
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     "PCLOS", e$
                     spaces$ = 1
                     ] 
                ]    
           pcom_movea
           ]          
      if drillcyc$ = 9, #Web/Pocket Measure 
           [
           pdrlcommonb
           pbld, n$, *strg659810, *prorefht, e$
           pbld, n$, *strg659810, prnrefht, e$
           pbld, n$, *strg659812,[if drl_prm2$ > 0, *drl_prm2$],[if drl_prm3$, *drl_prm3$],[if dwell$ = zero, *zbossdep],[if dwell$ = 1,[if radclear, *radclear]],
 [if feattol, *feattol],[if offupdate, *offupdate],[if trueposzone, *trueposzone],[if toolupdate, *toolupdate],[if drl_prm10$, *drl_prm10$],e$
           pbld, n$, *strg659810, *prnrefht, e$
           pbld, n$, *strg659810, *prorefht, e$
           if drl_prm10$,
                     [
                     spaces$ = 0
                     "POPEN", e$
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$
                     sdprint, "[","Z*POSITION*IS",*zbossdep,"]", e$
                     sdprint, "[","SIZE*OF*FEATURE*IS*#138[24]*ERROR*IS*#143[24]*]", e$ 
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     "PCLOS", e$
                     spaces$ = 1
                     ]    
           pcom_movea
           ]                
      if drillcyc$ = 10, #Bore/Boss
           [
           pdrlcommonb
           pbld, n$, *strg659810, *prorefht, e$           
           pbld, n$, *strg659810, *prnrefht, e$
           pbld, n$, *strg659814, *diadwell, [if shftdrl$ = zero, *zbossdep], [if radclear, *radclear], [if offupdate > 0,*offupdate],
 [if trueposzone > 0, *trueposzone], [if toolupdate > 0, *toolupdate], [if drl_prm10$ > 0, *drl_prm10$], e$
           pbld, n$, *strg659810, *prnrefht, e$
           pbld, n$, *strg659810, *prorefht, e$
           if drl_prm10$,
                     [
                     spaces$ = 0
                     "POPEN", e$
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$
                     #sdprint, "[","Z*POSITION*IS",*zbossdep,"]", e$
                     sdprint, "[","*DIA*#138[24]*ERROR*#143[24]*]", e$ 
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     "PCLOS", e$
                     spaces$ = 1
                     ] 
           pbld, n$, *sg00, *zabs, e$        
           pcom_movea 
           ]            
      if drillcyc$ = 11, #Internal Corner Measure 
           [
           pdrlcommonb
           if icorn <> 0 & jcorn = 0, #Internal Corner Probing Using I 
                [
                if drl_prm1$ = 1, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 2, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 3, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 4, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 0, result = mprint(scornerror), exitpost$
                if drl_prm1$ > 4, result = mprint(scornerror), exitpost$                      
                pbld, n$, *strg659810, *xcorn, *ycorn, e$
                pbld, n$, *strg659810, *prorefht, e$
                pbld, n$, *strg659810, *zcorn, e$
                pbld, n$, *strg659815, *xout, *yout, [if shftdrl$, *icorn], [if corn_angtoler > 0, *corn_angtoler], [if offupdate > 0,*offupdate], [if feattol, *feattol],
 [if trueposzone > 0, *trueposzone], [if drl_prm10$ > 0, *drl_prm10$], e$
                pbld, n$, *strg659810, *prorefht, e$
                if drl_prm10$,                
                     [
                     spaces$ = 0
                     "POPEN", e$
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[INTERNAL*CORNER*PROBING*USING*I]", e$                     
                     sdprint, "[ANGLE*OF*X*SURFACE*IS*#139[24]*]", e$                     
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$ 
                     sdprint, "[","Z*POSITION*IS*",*zcorn,"]", e$
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     "PCLOS", e$
                     spaces$ = 1
                     ] 
                ]
           if icorn = 0 & jcorn <> 0, #Internal Corner Probing Using J
                [
                if drl_prm1$ = 1, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 2, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 3, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 4, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 0, result = mprint(scornerror), exitpost$
                if drl_prm1$ > 4, result = mprint(scornerror), exitpost$ 
                pbld, n$, *strg659810, *xcorn, *ycorn, e$
                pbld, n$, *strg659810, *prorefht, e$
                pbld, n$, *strg659810, *zcorn, e$
                pbld, n$, *strg659815, *xout, *yout, [if retr$, *jcorn], [if corn_angtoler > 0, *corn_angtoler], [if offupdate > 0,*offupdate], [if feattol, *feattol],
 [if trueposzone > 0, *trueposzone], [if drl_prm10$ > 0, *drl_prm10$], e$
                pbld, n$, *strg659810, *prorefht, e$
                if drl_prm10$,                
                     [
                     spaces$ = 0
                     "POPEN", e$
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[INTERNAL*CORNER*PROBING*USING*J]", e$                                          
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[ANGLE*OF*Y*SURFACE*IIS*#142[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$
                     sdprint, "[","Z*POSITION*IS*",*zcorn,"]", e$ 
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     "PCLOS", e$
                     spaces$ = 1
                     ] 
                ]
           if icorn <> 0 & jcorn <> 0, #Internal Corner Probing Using I and J
                [
                if drl_prm1$ = 1, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 2, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 3, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 4, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 0, result = mprint(scornerror), exitpost$
                if drl_prm1$ > 4, result = mprint(scornerror), exitpost$ 
                pbld, n$, *strg659810, *xcorn, *ycorn, e$
                pbld, n$, *strg659810, *prorefht, e$
                pbld, n$, *strg659810, *zcorn, e$
                pbld, n$, *strg659815, *xout, *yout, [if dwell$, *icorn], [if retr$, *jcorn],  [if corn_angtoler > 0, *corn_angtoler], [if offupdate > 0,*offupdate], [if feattol, *feattol],
 [if trueposzone > 0, *trueposzone], [if drl_prm10$ > 0, *drl_prm10$], e$
                pbld, n$, *strg659810, *prorefht, e$
                if drl_prm10$,                
                     [
                     spaces$ = 0
                     "POPEN", e$
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[INTERNAL*CORNER*PROBING*USING*I*AND*J]", e$                     
                     sdprint, "[ANGLE*OF*X*SURFACE*=*#139]", e$                     
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[ANGLE*OF*Y*SURFACE*IS*#142[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$
                     sdprint, "[","Z*POSITION*IS*",*zcorn,"]", e$
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     "PCLOS", e$
                     spaces$ = 1
                     ] 
                ]                
           if icorn = 0 & jcorn = 0, #Internal Corner Probing 90 deg Corner 
                [
                if drl_prm1$ = 1, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 2, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 3, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 4, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 0, result = mprint(scornerror), exitpost$
                if drl_prm1$ > 4, result = mprint(scornerror), exitpost$                
                pbld, n$, *strg659810, *xcorn, *ycorn, e$
                pbld, n$, *sg00, *prorefht, e$
                pbld, n$, *strg659810, *zcorn, e$
                pbld, n$, *strg659815, *xout, *yout, [if offupdate > 0,*offupdate], [if feattol, *feattol],
 [if trueposzone > 0, *trueposzone], [if drl_prm10$ > 0, *drl_prm10$], e$
                pbld, n$, *strg659810, *prorefht, e$   
                if drl_prm10$,                
                     [
                     spaces$ = 0
                     "POPEN", e$
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[INTERNAL*CORNER*90*DEG*CORNER*PROBING*]", e$                     
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$
                     sdprint, "[","Z*POSITION*IS*",*zcorn,"]", e$
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     "PCLOS", e$
                     spaces$ = 1
                     ] 
                ]    
           pcom_movea
           ]                
      if drillcyc$ = 12, #External Corner Probing Routine 
           [
           pdrlcommonb
           if icorn <> 0 & jcorn = 0, #Internal Corner Probing Using I 
                [
                if drl_prm1$ = 1, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 2, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 3, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 4, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 0, result = mprint(scornerror), exitpost$
                if drl_prm1$ > 4, result = mprint(scornerror), exitpost$                      
                pbld, n$, *strg659810, *xcorn, *ycorn, e$
                pbld, n$, *strg659810, *prorefht, e$
                pbld, n$, *strg659810, *zcorn, e$
                pbld, n$, *strg659816, *xout, *yout, [if shftdrl$, *icorn], [if corn_angtoler > 0, *corn_angtoler], [if offupdate > 0,*offupdate], [if feattol, *feattol],
 [if trueposzone > 0, *trueposzone], [if drl_prm10$ > 0, *drl_prm10$], e$
                pbld, n$, *strg659810, *prorefht, e$
                if drl_prm10$,                
                     [
                     spaces$ = 0
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[EXTERNAL*CORNER*PROBING*USING*I]", e$                     
                     sdprint, "[ANGLE*OF*X*SURFACE*IS*#139[24]*]", e$                     
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$
                     sdprint, "[","Z*POSITION*IS*",*zcorn,"]", e$
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     spaces$ = 1
                     ] 
                ]
           if icorn = 0 & jcorn <> 0, #Internal Corner Probing Using J
                [
                if drl_prm1$ = 1, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 2, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 3, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 4, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 0, result = mprint(scornerror), exitpost$
                if drl_prm1$ > 4, result = mprint(scornerror), exitpost$ 
                pbld, n$, *strg659810, *xcorn, *ycorn, e$
                pbld, n$, *strg659810, *prorefht, e$
                pbld, n$, *strg659810, *zcorn, e$
                pbld, n$, *strg659816, *xout, *yout, [if retr$, *jcorn], [if corn_angtoler > 0, *corn_angtoler], [if offupdate > 0,*offupdate], [if feattol, *feattol],
 [if trueposzone > 0, *trueposzone], [if drl_prm10$ > 0, *drl_prm10$], e$
                pbld, n$, *strg659810, *prorefht, e$
                if drl_prm10$,                
                     [
                     spaces$ = 0
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[EXTERNAL*CORNER*PROBING*USING*J]", e$                                        
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[ANGLE*OF*Y*SURFACE*IS*#142[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$
                     sdprint, "[","Z*POSITION*IS*",*zcorn,"]", e$
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     spaces$ = 1
                     ] 
                ]
           if icorn <> 0 & jcorn <> 0, #Internal Corner Probing Using I and J
                [
                if drl_prm1$ = 1, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 2, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 3, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 4, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 0, result = mprint(scornerror), exitpost$
                if drl_prm1$ > 4, result = mprint(scornerror), exitpost$ 
                pbld, n$, *strg659810, *xcorn, *ycorn, e$
                pbld, n$, *strg659810, *prorefht, e$
                pbld, n$, *strg659810, *zcorn, e$
                pbld, n$, *strg659816, *xout, *yout, [if dwell$, *icorn], [if retr$, *jcorn],  [if corn_angtoler > 0, *corn_angtoler], [if offupdate > 0,*offupdate], [if feattol, *feattol],
 [if trueposzone > 0, *trueposzone], [if drl_prm10$ > 0, *drl_prm10$], e$
                pbld, n$, *strg659810, *prorefht, e$
                if drl_prm10$,                
                     [
                     spaces$ = 0
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[EXTERNAL*CORNER*PROBING*USING*I*AND*J]", e$                     
                     sdprint, "[ANGLE*OF*X*SURFACE*IS*#139[24]*]", e$                     
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[ANGLE*OF*Y*SURFACE*IS*#142[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$
                     sdprint, "[","Z*POSITION*IS*",*zcorn,"]", e$
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     spaces$ = 1
                     ] 
                ]                
           if icorn = 0 & jcorn = 0, #Internal Corner Probing 90 deg Corner 
                [
                if drl_prm1$ = 1, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 2, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout + ydcorn
                     ]
                if drl_prm1$ = 3, 
                     [                    
                     xcorn = xout - xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 4, 
                     [
                     xcorn = xout + xdcorn
                     ycorn = yout - ydcorn
                     ]
                if drl_prm1$ = 0, result = mprint(scornerror), exitpost$
                if drl_prm1$ > 4, result = mprint(scornerror), exitpost$                
                pbld, n$, *strg659810, *xcorn, *ycorn, e$
                pbld, n$, *strg659810, *prorefht, e$
                pbld, n$, *strg659810, *zcorn, e$
                pbld, n$, *strg659816, *xout, *yout, [if offupdate > 0,*offupdate], [if feattol, *feattol],
 [if trueposzone > 0, *trueposzone], [if drl_prm10$ > 0, *drl_prm10$], e$
                pbld, n$, *strg659810, *prorefht, e$   
                if drl_prm10$,                
                     [
                     spaces$ = 0
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[EXTERNAL*CORNER*90*DEG*CORNER*PROBING*]", e$                      
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$
                     sdprint, "[","Z*POSITION*IS*",*zcorn,"]", e$
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     spaces$ = 1
                     ] 
                ]    
           pcom_movea 
           ]               
      if drillcyc$ = 13, #4th Axis X Measure
           [
           pdrlcommonb
           pbld, n$, *strg659810, *prorefht, e$
           pbld, n$, *strg659810, prnrefht, e$
           pbld, n$, "G65P9818", diedwell, pfyout, pfzout, [if offupdate > 0,*offupdate], [if trueposzone > 0, *trueposzone], [if toolupdate > 0, *toolupdate], [if drl_prm10$ > 0, *drl_prm10$], e$
           pbld, n$, *strg659810, *prnrefht, e$ 
           pbld, n$, *strg659810, *prorefht, e$            
           pcom_movea
           ]
      if drillcyc$ = 14, #4th Axis Y Measure
           [
           pdrlcommonb
           pbld, n$, *strg659810, *prorefht, e$
           pbld, n$, *strg659810, prnrefht, e$
           pbld, n$, *strg659811, pfyout, pfzout, [if offupdate > 0,*offupdate], [if trueposzone > 0, *trueposzone], [if toolupdate > 0, *toolupdate], [if drl_prm10$ > 0, *drl_prm10$], e$
           pbld, n$, *strg659810, *prnrefht, e$
           pbld, n$, *strg659810, *prorefht, e$
           pcom_movea
           ] 
      if drillcyc$ = 15, #Bore/Boss on PCD  
           [
           pdrlcommonb
           pbld, n$, *strg659810, *prorefht, e$           
           pbld, n$, *strg659810, *prnrefht, e$
           pbld, n$, *strg659819, *pcddia, *diadwell, [if shftdrl$ = zero, *zbossdep], [if shftdrl$ = one, *zpcddep], [if radclear, *radclear],
 [if trueposzone > 0, *trueposzone], [ if apcdang, *apcdang], [if drl_prm10$ > 0, *drl_prm10$], e$
           pbld, n$, *strg659810, *prnrefht, e$
           pbld, n$, *strg659810, *prorefht, e$
           if drl_prm10$,
                     [
                     spaces$ = 0
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$
                     #sdprint, "[","Z*POSITION*IS",*zbossdep,"]", e$
                     sdprint, "[","*DIA*#138[24]*ERROR*#143[24]*]", e$ 
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     spaces$ = 1
                     ]         
           pcom_movea 
           ]                
      if drillcyc$ = 16, #Bore/Boss 
           [
           pdrlcommonb
           pbld, n$, *strg659810, *prorefht, e$
           pbld, n$, *strg659810, *prnrefht, e$
           pbld, n$, *strg659814, *diedwell, pxout, pyout, pzout, [if offupdate > 0,*offupdate], [if trueposzone > 0, *trueposzone], [if toolupdate > 0, *toolupdate], [if drl_prm10$ > 0, *drl_prm10$], e$
           pbld, n$, *strg659810, *prnrefht, e$
           pbld, n$, *strg659810, *prorefht, e$
           pcom_movea 
           ]               
      if drillcyc$ = 17, #C Axis Measure 
           [
           pdrlcommonb
           pbld, n$, *strg659810, *prorefht, e$
           pbld, n$, *strg659810, prnrefht, e$
           pbld, n$, *strg659618, cyspan, pfxout, pfzout, [if offupdate > 0,*offupdate], [if cangtoler > 0, *cangtoler], [if drl_prm2$ > 0, *drl_prm2$], [if drl_prm10$ > 0, *drl_prm10$], e$
           pbld, n$, *strg659810, *prnrefht, e$    
           *sg00 ,*sg91, sg28, "Z0", e$     
           *sg00, *sg90, [if workofs$ > 53, *g_wcs], [if workofs$ < 49 , "G54.1", *p_wcs],"C20.",e$
           spaces$ = 0
           sif,sbracketopen,spound,sm152,sgt,drl_prm1$,sbracketclose,sgoto,"1000", e$ 
           spaces$ = 1    
           pcom_movea
           ]                
      if drillcyc$ = 18, #Bore/Boss on PCD 
           [
           pdrlcommonb
           pbld, n$, *strg659810, prnrefht, e$
           pbld, n$, *strg659819, diedwell, pfyout, pfzout, [if offupdate > 0,*offupdate], [if trueposzone > 0, *trueposzone], [if toolupdate > 0, *toolupdate], [if drl_prm10$ > 0, *drl_prm10$], e$
           pbld, n$, *strg659810, *prnrefht, e$
           pcom_movea 
           ]               
      if drillcyc$ = 19,
           [
           pdrlcommonb
           pbld, n$, *strg659810, prnrefht, e$
           pbld, n$, "G65P9818", diedwell, pfyout, pfzout, [if offupdate > 0,*offupdate], [if trueposzone > 0, *trueposzone], [if toolupdate > 0, *toolupdate], [if drl_prm10$ > 0, *drl_prm10$], 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 drl_prm2$ <> 0 & drl_prm3$ = 0, #X Axis Single Surface Probing
                [
                xsinsurf = (xout + drl_prm2$)
                pbld, n$, *strg659810, *xsinsurf, *yout, e$
                pbld, n$, *strg659810, *prorefht, e$
                pbld, n$, *strg659810, *zsinsurf, e$
                pbld, n$, *strg659811, *xout, [if offupdate > 0,*offupdate], [if feattol, *feattol],
 [if trueposzone > 0, *trueposzone], [if toolupdate > 0, *toolupdate], [if drl_prm10$ > 0, *drl_prm10$], e$
                pbld, n$, *strg659810, *zsinsurf, e$
                pbld, n$, *strg659810, *xsinsurf, e$
                pbld, n$, *strg659810, *prorefht, e$
                if drl_prm9$ = 1,
                     [
                     spaces$ = 0
                     "#135=#12X(STORE 1ST Z PLANE HIT)", e$
                     ]
                if drl_prm10$,                
                     [
                     spaces$ = 0
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[X*AXIS*SINGLE*SURFACE*PROBING*]", e$                     
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$
                     sdprint, "[","Z*POSITION*IS*#137[24]*Z*ERROR*IS*#142[24]*]", e$
                     sdprint, "[","SIZE*OF*FEATURE*IS*#138[24]*ERROR*IS*#143[24]*]", e$ 
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     spaces$ = 1
                     ] 
                ]
           if drl_prm3$ <> 0 & drl_prm2$ = 0, #Y Axis Single Surface Probing
                [
                ysinsurf = (yout + drl_prm3$)
                pbld, n$, *strg659810, *ysinsurf, *xout, e$
                pbld, n$, *strg659810, *prorefht, e$
                pbld, n$, *strg659810, *zsinsurf, e$
                pbld, n$, *strg659811, *yout, [if offupdate > 0,*offupdate], [if feattol, *feattol],
 [if trueposzone > 0, *trueposzone], [if toolupdate > 0, *toolupdate], [if drl_prm10$ > 0, *drl_prm10$], e$
                pbld, n$, *strg659810, *zsinsurf, e$
                pbld, n$, *strg659810, *ysinsurf, e$
                pbld, n$, *strg659810, *prorefht, e$
                if drl_prm10$,                
                     [
                     spaces$ = 0
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[Y*AXIS*SINGLE*SURFACE*PROBING*]", e$
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$
                     sdprint, "[","Z*POSITION*IS*#137[24]*Z*ERROR*IS*#142[24]*]", e$
                     sdprint, "[","SIZE*OF*FEATURE*IS*#138[24]*ERROR*IS*#143[24]*]", e$ 
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     spaces$ = 1
                     ] 
                ]
           if drl_prm2$ = 0 & drl_prm3$ = 0, #Z Axis Single Surface Probing 
                [
                pbld, n$, *strg659810, *xout, *yout, e$
                pbld, n$, *strg659810, *prorefht, e$
                pbld, n$, *strg659810, *prnrefht, e$
                pbld, n$, *strg659811, *zsinsurf, [if offupdate > 0,*offupdate], [if feattol, *feattol],
 [if trueposzone > 0, *trueposzone], [if toolupdate > 0, *toolupdate], [if drl_prm10$ > 0, *drl_prm10$], e$
                pbld, n$, *strg659810, *prnrefht, e$
                pbld, n$, *strg659810, *prorefht, e$,     
                if drl_prm10$,                
                     [
                     spaces$ = 0
                     sdprint, "[", sopcomment, "]", e$
                     sdprint, "[Z*AXIS*SINGLE*SURFACE*PROBING*]", e$                     
                     sdprint, "[","*X*#135[24]*ERROR*#140[24]*]", e$
                     sdprint, "[","*Y*#136[24]*ERROR*#141[24]*]", e$
                     sdprint, "[","Z*POSITION*IS*#137[24]*Z*ERROR*IS*#142[24]*]", e$
                     sdprint, "[","SIZE*OF*FEATURE*IS*#138[24]*ERROR*IS*#143[24]*]", e$ 
                     sdprint, "[","*TRUE*POSITION*ERROR*#145[24]*]", e$
                     sdprint, "[","-------------------------------------------","]", e$
                     spaces$ = 1
                     ]
                ] 
           pcom_movea
           ]
      if drillcyc$ = 9, 
           [
           pdrlcommonb
           result = mprint(sperror), exitpost$
           pcom_movea
           ]                
      if drillcyc$ = 10,
           [
           pdrlcommonb
           result = mprint(sperror), exitpost$
           pcom_movea 
           ]               
      if drillcyc$ = 11,
           [
           pdrlcommonb
           result = mprint(sperror), exitpost$
           pcom_movea
           ]                
      if drillcyc$ = 12,
           [
           pdrlcommonb
           result = mprint(sperror), exitpost$
           pcom_movea 
                ]               
      if drillcyc$ = 13,
           [
           pdrlcommonb
           pbld, n$, `strg659810, `prnrefht, e$
           pbld, n$, "G65P9818", diedwell, pfyout, pfzout, [if trueposzone > 0, *trueposzone], e$
           pbld, n$, *strg659810, *prnrefht, e$             
           pcom_movea
           ] 
      if drillcyc$ = 14,
           [
           pdrlcommonb
           pbld, n$, `strg659810, `prnrefht, e$
           pbld, n$, *strg659811, pfyout, pfzout, [if trueposzone > 0, *trueposzone], e$
           pbld, n$, *strg659810, *prnrefht, e$               
           pcom_movea
           ]
      if drillcyc$ = 15, #Web/Pocket Measure 
           [
           pdrlcommonb
           pbld, n$, `strg659810, `prnrefht, e$
           pbld, n$, *strg659812, diedwell, pfyout, pfzout, [if trueposzone > 0, *trueposzone], e$
           pbld, n$, *strg659810, *prnrefht, e$
           pcom_movea
           ]                
      if drillcyc$ = 16, #Bore/Boss 
           [
           pdrlcommonb
           pbld, n$, `strg659810, `prnrefht, e$
           #pbld, n$, *strg659814, diedwell, pfyout, pfzout, [if trueposzone > 0, *trueposzone], e$
           pbld, n$, *strg659810, *prnrefht, e$
           pcom_movea 
           ]               
      if drillcyc$ = 17,
           [
           pdrlcommonb
           pbld, n$, `strg659810, `prnrefht, e$
           pbld, n$, "G65P9818", diedwell, pfyout, pfzout, [if trueposzone > 0, *trueposzone], e$
           pbld, n$, *strg659810, *prnrefht, e$
           pcom_movea
           ]                
      if drillcyc$ = 18,
           [
           pdrlcommonb
           pbld, n$, `strg659810, `prnrefht, e$
           pbld, n$, "G65P9818", diedwell, pfyout, pfzout, [if trueposzone > 0, *trueposzone], e$
           pbld, n$, *strg659810, *prnrefht, e$
           pcom_movea 
                ]               
      if drillcyc$ = 19,
           [
           pdrlcommonb
           pbld, n$, *strg659810, *prorefht, e$
           pbld, n$, `strg659810, `prnrefht, e$
           pbld, n$, "G65P9818", diedwell, pfyout, pfzout, [if trueposzone > 0, *trueposzone], e$
           pbld, n$, *strg659810, *prnrefht, e$ 
           pbld, n$, *strg659810, *prorefht, e$            
           pcom_movea
           ] 

pcanceldc$       #Cancel canned drill cycle
      result = newfs(three, zinc)
      z$ = initht$
      prv_zia = initht$
      pxyzcout
      !zabs, !zinc
      prv_gcode$ = zero
      pcan
      pcan1, pbld, n$, sg80, strcantext, e$
      if drillcyc$ = 7, pbld, n$, sg94, e$
      pcan2

Here is the text section from the post:

[CTRL_MILL|Fanuc 3X Mill PROBE]
[misc integers]
1. "Probe Datum Check and Print Header [0=no]"
2. "Absolute or Incremental [0=Abs, 1=Inc]"
3. "Reference return [0=G28, 1=G30]"
4. "Initial primary [-999=Low, 0=Def, 999=Hi]"
5. "Initial secondary [-999=Low, 0=Def, 999=Hi]"
6. "Add work shift [0=Orig, 1=WCS Orig]"
7. "Enable retract to/from limits [0=Off, 1=On]"
8. "Retract toolchange [0=Off, 1=Null, 2=Tlchg, 3=Both, NEG/4=Chain]"
9. "Nutating bias [0=off, 1=Pos, 2=Neg]"
10. "Secondary axis [0=off, 1=Pos, 2=Neg]"
[misc reals]
1. "Retract/approach clearance distance"//2.//50.
2. "Right Angle head angle/activate [0=Off]"
6. "Safe Z retract [0=Off]"
10. "Nutating distance WCS to table/RA spindle"
[simple drill]
1. "Drill/Counterbore"
7. ""
8. ""
9. ""
10. ""
11. ""
[peck drill]
10. ""
11. ""
[chip break]
11. ""
[tap]
7. ""
8. ""
9. ""
10. ""
11. ""
[bore1]
1. "Bore #1 (feed-out)"
7. ""
8. ""
9. ""
10. ""
11. ""
[bore2]
1. "Bore #2 (stop spindle, rapid out)"
7. ""
8. ""
9. ""
10. ""
11. ""
[misc1]
1. "Fine bore (shift)"
7. ""
8. ""
9. ""
10. ""
[drill cycle 9]
1. "P9811 Single Surface"
3. ""
4. "Saftey Rapid Pos"
5. "Protect Position"
7. "Tool Offset # Update"
8. "True Position Amount"
9. "Fixture Offset"
10. "Tolerance of Surface"
11. ""
[drill cycle 10]
1. "P9812 Web/Pocket"
3. "Web = 0/Pocket = 1"
4. "Saftey Rapid Pos"
5. "Protect Position"
6. "Z Position/0=Poc"
7. "Tool Offset # Update"
8. "True Position Amount"
9. "Fixture Offset"
10. "Rad Clear 0=Poc/1=Web"
11. "Tolerance of Feature"
[drill cycle 11]
1. "P9814 Bore/Boss"
3. "Dia of Feature"
4. "Saftey Rapid Pos"
5. "Protect Position"
6. "Z Position/0=Poc"
7. "Tool Offset # Update"
8. "True Position Amount"
9. "Fixture Offset"
10. "Rad Clear (+)OD/(-)ID"
11. "Boss = 0/Bore = 1"
[drill cycle 12]
1. "P9815 Internal Corner"
3. "J Value"
4. "Rapid Position"
5. "Saftey Z Position"
6. "Z Position of Corner"
7. "Angle Tolerence"
8. "True Position Amount"
9. "Fixture Offset"
10. "I Value"
11. ""
[drill cycle 13]
1. "P9816 External Corner"
3. "J Value"
4. "Rapid Position"
5. "Saftey Z Position"
6. "Z Position of Corner"
7. "Angle Tolerence"
8. "True Position Amount"
9. "Fixture Offset"
10. "I Value"
11. ""
[drill cycle 14]
1. "P9817 4th Axis X Measure "
3. "Diameter of Feature"
4. "Saftey Rapid Pos"
5. "Protect Position"
6. "X Position of Surf"
7. "Angle Tolerence"
8. "Overtravel Amount"
9. "Fixture Offset"
10. "N GOTO #"
11. "N GOTO #"
[drill cycle 15]
1. "P9818 4th Axis Y Measure "
3. "Diameter of Feature"
4. "Saftey Rapid Pos"
5. "Protect Position"
6. "X Position of Surf"
7. "Angle Tolerence"
8. "Overtravel Amount"
9. "Fixture Offset"
10. "N GOTO #"
11. "N GOTO #"
[drill cycle 16]
1. "P9819 Bore/Boss on PCD"
3. "Dia of BHC"
4. "Saftey Rapid Pos"
5. "Protect Position"
6. "Z Position/0=Poc"
7. "Dia of Hole/Boss"
8. "True Position Amount"
9. "Number Of Holes"
10. "Rad Clear (+)OD/(-)ID"
11. "Boss = 0/Bore = 1"
[drill cycle 17]
1. "Angle Single Surface Probing"
3. ""
4. "Saftey Rapid Pos"
5. "Protect Position"
7. "Tool Offset # Update"
8. "True Position Amount"
9. "Fixture Offset"
10. ""
11. ""
[drill cycle 18]
1. "P9821 Angle Single Surface"
3. ""
4. "Saftey Rapid Pos"
5. "Protect Position"
7. "Tool Offset # Update"
8. "True Position Amount"
9. "Fixture Offset"
10. ""
11. ""
[drill cycle 19]
1. "P9822 Angle Web/Pocket"
4. "Saftey Rapid Pos"
5. "Protect Position"
7. "Tool Offset # Update"
8. "True Position Amount"
9. "Fixture Offset"
10. ""
11. ""
[drill cycle 20]
1. "P9823 3-Point Bore/Boss"
4. "Saftey Rapid Pos"
5. "Protect Position"
7. "Tool Offset # Update"
8. "True Position Amount"
9. "Fixture Offset"
10. ""
11. ""
[simple drill custom parameters]
1. "Custom Drill Parameters 1"
[peck drill custom parameters]
1. "Custom Drill Parameters 2"
[chip break drill custom parameters]
1. "Custom Drill Parameters 3"
[tap custom parameters]
1. "Custom Drill Parameters 4"
[bore1 custom parameters]
1. "Custom Drill Parameters 5"
[bore2 custom parameters]
1. "Custom Drill Parameters 6"
[misc1 custom parameters]
1. "Custom Drill Parameters 7"
[misc2 custom parameters]
1. "Custom Drill Parameters 8"
[drill cycle 9 custom parameters]
1. "Addition Probing Features"
2. ""
3. "X Axis Approach Amount +/-"
4. "Y Axis Approach Amount +/-"
5. ""
6. ""
7. ""
8. ""
9. ""
10. ""
11. "Data Print [1=Increm,2= Reset]"
[drill cycle 10 custom parameters]
1. "Addition Probing Features"
2. ""
3. "X axis Distance to Measure"
4. "Y axis Distance to Measure "
5. ""
6. ""
7. ""
8. ""
9. ""
10. ""
11. "Data Print [1=Increm,2= Reset]"
[drill cycle 11 custom parameters]
1. "Addition Probing Features"
2. ""
3. ""
4. ""
5. ""
6. ""
7. ""
8. ""
9. ""
10. ""
11. "Data Print [1=Increm,2= Reset]"
[drill cycle 12 custom parameters]
1. "Addition Probing Features"
2. "1=X+,Y+,2=X-,Y+,3=X-,Y-,4=X+,Y-"
3. "X Saftey Amount > Rad of Probe"
4. "Y Saftey Amount > Rad of Probe"
5. ""
6. ""
7. ""
8. ""
9. ""
10. ""
11. "Data Print [1=Increm,2= Reset]"
[drill cycle 13 custom parameters]
1. "Addition Probing Features"
2. "1=X+,Y+,2=X-,Y+,3=X-,Y-,4=X+,Y-"
3. "X Saftey Amount > Rad of Probe"
4. "Y Saftey Amount > Rad of Probe"
5. ""
6. ""
7. ""
8. ""
9. ""
10. ""
11. "Data Print [1=Increm,2= Reset]"
[drill cycle 14 custom parameters]
1. "Addition Probing Features"
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 "
7. ""
8. ""
9. ""
10. ""
11. "Data Print [1=Increm,2= Reset]"
[drill cycle 15 custom parameters]
1. "Addition Probing Features"
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 "
7. ""
8. ""
9. ""
10. ""
11. "Data Print [1=Increm,2= Reset]"
[drill cycle 16 custom parameters]
1. "Addition Probing Features"
2. "Angle of 1st Hole Default 0"
3. ""
4. ""
5. ""
6. ""
7. ""
8. ""
9. ""
10. ""
11. "Data Print [1=Increm,2= Reset]"
[drill cycle 17 custom parameters]
1. "Addition Probing Features"
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 "
7. ""
8. ""
9. ""
10. ""
11. "Data Print [1=Increm,2= Reset]"
[drill cycle 18 custom parameters]
1. "Addition Probing Features"
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 "
7. ""
8. ""
9. ""
10. ""
11. "Data Print [1=Increm,2= Reset]"
[drill cycle 19 custom parameters]
1. "Addition Probing Features"
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 "
7. ""
8. ""
9. ""
10. ""
11. "Data Print [1=Increm,2= Reset]"
[drill cycle 20 custom parameters]
1. "Addition Probing Features"
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 "
7. ""
8. ""
9. ""
10. ""
11. "Data Print [1=Increm,2= Reset]"
[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. "P9811 Single Face"
10. "P9812 Web/Pocket"
11. "P9814 Bore/Boss"
12. "P9815 Internal Corner"
13. "P9816 Extrenal Croner"
14. "P9817 4th Axis Y Meas"
15. "P9818 4th Axis X Meas"
16. "P9819 Bore/Boss PCD"
17. "P9820 Stock Allow"
18. "P9821 Angle One Surf"
19. "P9822 Angle Web/Pock"
20. "P9823 3P Bore/Boss"
[canned text]
1. "Ostop"
2. "Stop"
3. "Bld on"
4. "bLd off"
5. "Text5"
6. "Text6"
7. "Text7"
8. "Text8"
9. "Text9"
10. "Text10"
[CTRL_TEXT_END]

HTH(Hope that helps)

  • Like 1
Link to comment
Share on other sites

You did not get the cheque yet Ron?!?! ROR

 

:unworthy: :unworthy: :unworthy:

 

Well yes I did this forum stepped up when I almost died 2 years ago and was in a coma. Had they not I am not sure what would have happened to my wife and kids will I was laying in that hospital bed. It was 2 months before I was able to go back to work. Much to everyone surprise I stayed the course with going into contracting. I give back to something that I am passionate about and that is Manufacturing.

  • Like 4
Link to comment
Share on other sites

I figured it was a mod, I really appreciate your help. I'm just not sure how to apply it... I guess my questions don't attract people's attention. I'm not sure what OT is? Thanks again. Thanks, John

 

John many years of knowledge in this forum. OT is the off topic. Sorry I have a business to run and I am constantly trying to train anyone I can to work myself out of a job. I share to help and not to make me look like I am all that special or important. Get some training or read some of the different topics. What I put up there is almost a plug and play. about 15 years ago I went into a shop and they were doing 5 Axis Work on a router. They had a post supplied by the OEM of the machinate that was okay. I wanted to add functionality to the post and the OEM said it would be $3k to add it. They had just developed MPGEN5AX.PST and the dealer said we have this generic 5 Axis post would you like to see if you can tweak it? I probably put 500 hours on that post figuring things out that I never got paid for at the time. However the experience doing it has allowed me to do just about anything I have ever needed with a post. 5th Axis uses Postability as our Post Builder.  Nothing against In-House they make great posts, but I personally like Dave and like working with him. I don't mess with post like I use to, but doesn't mean I can get the job done. I would rather focus on what I am good at making parts and let those who are good at their craft do that.

  • Like 1
Link to comment
Share on other sites

Well I appreciate your help, and I am glad that there are people like you who do spend time communicating with other manufacturers. Everything I know, I have learned by trial and error. I love the challenge of trying to get machines/programs to make parts. I can program turning no problem, I am working on turn/ mill machines now, next is milling machines. I would like to get some training on post processors, I just don't know if that's in my future. I have played with posts, and had success, but I don't fully understand. I intend on poking around the forum for more information. Thank you. I to, have a family, a full time day job, and a cnc garage shop. I'm trying to make it happen...

 

Thanks,

John

 

 

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...