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:

Mill.set report outputs preceeding feedrate at null tool change


Recommended Posts

I just started using Mill.set reports which I love.  However, I noticed today that upon the 1st null toolchange the feedrate will be copied from the 1st tool.   After the 2nd null toolchange the feedrate is correct.  This error repeatable across different tools I tried.  I have attached my Mill.set post file.  I would love to get this squared away as I really want to use this report for self checking and prove out.   Thanks, 

Steve A

Here is what it posted:

CUSTOMIZABLE MILL SETUP SHEET - MILL.SET
=========================================
 
PROGRAM NAME   = 1159CM50121-15
DATE PROCESSED = MAY. 23 2018
TIME           = 3:30 PM
MACHINE NAME   = OKUMA 3X 650
 
--------------------------------------------------------------
OPERATION TYPE = CONTOUR
T20 - 1/2 ENDMILL 7 FLUTE 0.125 RAD 1.75LOC 2.CLR USE 5.GAGE SHRINK HOLDER
***** SPINDLE ***** = 2292
***** FEEDRATE ***** = 85.  <-----------------------------------------correct
CUTTER COMP. (COMPUTER) = LEFT
STOCK TO LEAVE (XY)= -.125
STOCK TO LEAVE (Z) = .01
FEEDRATES: MAX = 85. MIN = 85.
MAX_Z = +8.0000  MIN_Z = +5.0468
RAPID TIME = 2 MINUTES, 25.96 SECONDS
FEED TIME  = 21 MINUTES, 42.47 SECONDS
OPERATION TIME = 24 MINUTES, 8.43 SECONDS
 
--------------------------------------------------------------
OPERATION TYPE = 2-D HARDMILL MACHINING/PEEL MILL
T20 - 1/2 ENDMILL 7 FLUTE 0.125 RAD 1.75LOC 2.CLR USE 5.GAGE SHRINK HOLDER
***** SPINDLE ***** = 2292
***** FEEDRATE ***** = 85.      <-----------------------------------------should be 81.87
CUTTER COMP. (COMPUTER) = LEFT
STOCK TO LEAVE (XY)= 0.
STOCK TO LEAVE (Z) = .125
FEEDRATES: MAX = 500. MIN = 50.
MAX_Z = +8.0000  MIN_Z = +3.3773
RAPID TIME = 1 MINUTE, 45.79 SECONDS
FEED TIME  = 9 MINUTES, 12.42 SECONDS
OPERATION TIME = 10 MINUTES, 58.22 SECONDS
 
--------------------------------------------------------------
OPERATION TYPE = 2-D HARDMILL MACHINING/PEEL MILL
T20 - 1/2 ENDMILL 7 FLUTE 0.125 RAD 1.75LOC 2.CLR USE 5.GAGE SHRINK HOLDER
***** SPINDLE ***** = 2292
***** FEEDRATE ***** = 81.87     <-----------------------------------------correct
CUTTER COMP. (COMPUTER) = LEFT
STOCK TO LEAVE (XY)= .01
STOCK TO LEAVE (Z) = .125
FEEDRATES: MAX = 500. MIN = 50.
MAX_Z = +8.0000  MIN_Z = +3.3773
RAPID TIME = 1 MINUTE, 45.59 SECONDS
FEED TIME  = 16 MINUTES, 55.28 SECONDS
OPERATION TIME = 18 MINUTES, 40.87 SECONDS
 
==============================================================
PROGRAM TOTALS (3 TOOLS):
 
FEEDRATES: MAX = 500. MIN = 50.
MAX_Z = +8.0000  MIN_Z = +3.3773
TOTAL RAPID TIME = 5 MINUTES, 57.34 SECONDS
TOTAL FEED TIME = 47 MINUTES, 50.18 SECONDS
CYCLE TIME:  54 MINUTES, 5.52 SECONDS

MILL.SET

Link to comment
Share on other sites
16 hours ago, lowcountrycamo said:

I just started using Mill.set reports which I love.  However, I noticed today that upon the 1st null toolchange the feedrate will be copied from the 1st tool.   After the 2nd null toolchange the feedrate is correct.  This error repeatable across different tools I tried.  I have attached my Mill.set post file.  I would love to get this squared away as I really want to use this report for self checking and prove out.   Thanks, 

Steve A

Here is what it posted:


CUSTOMIZABLE MILL SETUP SHEET - MILL.SET
=========================================
 
PROGRAM NAME   = 1159CM50121-15
DATE PROCESSED = MAY. 23 2018
TIME           = 3:30 PM
MACHINE NAME   = OKUMA 3X 650
 
--------------------------------------------------------------
OPERATION TYPE = CONTOUR
T20 - 1/2 ENDMILL 7 FLUTE 0.125 RAD 1.75LOC 2.CLR USE 5.GAGE SHRINK HOLDER
***** SPINDLE ***** = 2292
***** FEEDRATE ***** = 85.  <-----------------------------------------correct
CUTTER COMP. (COMPUTER) = LEFT
STOCK TO LEAVE (XY)= -.125
STOCK TO LEAVE (Z) = .01
FEEDRATES: MAX = 85. MIN = 85.
MAX_Z = +8.0000  MIN_Z = +5.0468
RAPID TIME = 2 MINUTES, 25.96 SECONDS
FEED TIME  = 21 MINUTES, 42.47 SECONDS
OPERATION TIME = 24 MINUTES, 8.43 SECONDS
 
--------------------------------------------------------------
OPERATION TYPE = 2-D HARDMILL MACHINING/PEEL MILL
T20 - 1/2 ENDMILL 7 FLUTE 0.125 RAD 1.75LOC 2.CLR USE 5.GAGE SHRINK HOLDER
***** SPINDLE ***** = 2292
***** FEEDRATE ***** = 85.      <-----------------------------------------should be 81.87
CUTTER COMP. (COMPUTER) = LEFT
STOCK TO LEAVE (XY)= 0.
STOCK TO LEAVE (Z) = .125
FEEDRATES: MAX = 500. MIN = 50.
MAX_Z = +8.0000  MIN_Z = +3.3773
RAPID TIME = 1 MINUTE, 45.79 SECONDS
FEED TIME  = 9 MINUTES, 12.42 SECONDS
OPERATION TIME = 10 MINUTES, 58.22 SECONDS
 
--------------------------------------------------------------
OPERATION TYPE = 2-D HARDMILL MACHINING/PEEL MILL
T20 - 1/2 ENDMILL 7 FLUTE 0.125 RAD 1.75LOC 2.CLR USE 5.GAGE SHRINK HOLDER
***** SPINDLE ***** = 2292
***** FEEDRATE ***** = 81.87     <-----------------------------------------correct
CUTTER COMP. (COMPUTER) = LEFT
STOCK TO LEAVE (XY)= .01
STOCK TO LEAVE (Z) = .125
FEEDRATES: MAX = 500. MIN = 50.
MAX_Z = +8.0000  MIN_Z = +3.3773
RAPID TIME = 1 MINUTE, 45.59 SECONDS
FEED TIME  = 16 MINUTES, 55.28 SECONDS
OPERATION TIME = 18 MINUTES, 40.87 SECONDS
 
==============================================================
PROGRAM TOTALS (3 TOOLS):
 
FEEDRATES: MAX = 500. MIN = 50.
MAX_Z = +8.0000  MIN_Z = +3.3773
TOTAL RAPID TIME = 5 MINUTES, 57.34 SECONDS
TOTAL FEED TIME = 47 MINUTES, 50.18 SECONDS
CYCLE TIME:  54 MINUTES, 5.52 SECONDS

MILL.SET

Morning LowCountryAmo,
  Why not using Active Report?  It's much easier to read and the readers don't need to be required much English skill.  Take a look at the attached images.

1.PNG

2.PNG

Link to comment
Share on other sites

It looks like there is some suspect logic in the 'ptimel' Post Block. (Calculates the "length" of the path)

I see this line, which I suspect is the root of your troubles:

ptimel           #Feed time and length calc
      if fr_pos$ < zero, fr_pos$ = prv_fr_pos$

I'm sure we could dig into the logic, and add some code to fix this "manipulation" of the Calculated Variable 'fr_pos$'. However, I'd like to offer a simpler fix. But you'll have to do some work on your end, to get the correct Parameter Number.

Here is where the value is supposed to be output from, from within the "psetup" Post Block:

      if fr_pos$ = zero, "*ERROR* - THE FEEDRATE WAS SET TO ZERO", e$
      else, "***** FEEDRATE ***** = ", fr_pos$, e$

I would suggest creating your own, user defined, output variable, like so:

# --------------------------------------------------------------------------
# Format assignments
# --------------------------------------------------------------------------
fmt     9   progno$     #Program number
fmt     3   t$          #Tool number
fmt     7   tldia$      #Tool diameter
fmt     7   tcr$        #Tool corner radius
fmt     3   tloffno$    #Diameter offset number
fmt     3   tlngno$     #Length offset number
fmt     3   ss$         #Spindle speed
fmt     4   fr_pos$     #Feedrate
fmt     4   op_feed     #Feedrate from Operation Parameters (avoids messing with "time and length" calc logic)
fmt     2   llen        #Feed cut length

Notice I added 'op_feed' to the list, and formatted it the same as 'fr_pos$'.

Next, we add some logic to "capture" the actual Feedrate Parameter from within the Mastercam Op:

pparameter$      #Read operation parameters
      #rd_params is used to call pparameter postblock and read the parameters of the operation specified in rd_param_op_no
      #"pparameter", ~prmcode$, ~sparameter$, e$
      #Read tool definition data
      if prmcode$ = 20002, stl_mfg_com = sparameter$              #'manufacturer' data
      if prmcode$ = 20003, stl_chuck_com = sparameter$            #'chuck name' data
      if prmcode$ = 20004, tl_number = rpar(sparameter$, 16)      #'tool parameters' data
      if prmcode$ = 20005, drl_cycle$ = rpar(sparameter$, 9)      #'DRILL type tool' parameters
      if prmcode$ = 20006, tl_cut_cap = rpar(sparameter$, 8)      #'MILL type tool' parameters
      if prmcode$ = 20007, tl_min_dia_plg = rpar(sparameter$, 11) #'MILL type tool HOLDER' parameters
      result = fprm(opcode$)  #Run the parameter table for current OPCODE
      if prmcode$ = 12345, op_feed = rpar(sparameter$, 1)         #Capture actual Feedrate from Operation Dialog

 

Notice that I've just entered "12345" for the Parameter Number. You'll need to look in the MP Documentation to figure out what the real parameter number is.

Finally, we edit the "output" line, to output the correct value, every time...

      if op_feed = zero, "*ERROR* - THE FEEDRATE WAS SET TO ZERO", e$
      else, "***** FEEDRATE ***** = ", *op_feed, e$

 

  • Like 2
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...