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:

Colin Gilchrist

Verified Members
  • Posts

  • Joined

  • Last visited

  • Days Won


Colin Gilchrist last won the day on November 27

Colin Gilchrist had the most liked content!

Profile Information

  • Gender


  • Location

Recent Profile Visitors

14,877 profile views

Colin Gilchrist's Achievements


Collaborator (7/14)

  • Well Followed Rare
  • Conversation Starter Rare
  • Dedicated Rare
  • Posting Machine Rare
  • Collaborator Rare

Recent Badges



  1. This is a slippery slope type of question. There is nothing to guarantee that just because a Tool Length Offset, or other Tool Data is set in the control, that the actual tool has been loaded into the tool magazine. There are no sensors to verify if a tool is present in a pot, and the Side Mount Tool Changes are random pot assignment anyway. It is possible to add G10 Lines to automatically load tool data, so if you are presetting your tools, or if the tools are already setup/mounted (and remain setup) in Tooling Carts, you could programmatically set the offsets. Or, you could add logic to set Tool Data for each tool, and then run "Tool Touch-Off Macros" to measure the tools using the WIPS Tool Probe.
  2. You'll need to contact your Reseller for support then.
  3. You show that your "Break Max Angle" is set to "2". Try setting it to "5". Your break angle should be evenly divisible into the total +- Angle Range for your Secondary Axis. You should also try setting "adj2sec" to "-1". Are you only using the "Table/Table" functions on this machine? (Tool always stays "vertical" and aligned to the Machine Z Axis?)
  4. Joseph, One more thing to note in your Control Definition: I would change your Arc Break options to "Do not break arcs" in at least the XY drop-down, and enable the "allow 360 degree arcs". The Haas Control has no issue with full circles, and this would further reduce your NC Code by a factor of 4X! (1-line of code for a full circle helix, instead of 4-quarter arc helixes.)
  5. Is your insert really "Face Up" in your Boring Bar, or is it "Face Down"? If the tool isn't defined correctly (like Ron mentioned), you can Edit the Tool Holder page in the Tool Definition. Pick the "other hand holder" (Left hand vs. Right hand is selected by choosing the opposite picture). Then check your Spindle Direction. I always use "Draw Tool" when setting up a new lathe tool in Mastercam. Insert Up is Yellow, while Insert Down is Orange.
  6. Need to change "use_only_tl" from "1" to "0". (Use only Top Left Turret switch.)
  7. It is a Post Setting. Need to modify the "B" Column, for the "Top Turret, Right Spindle" scase string. Flip from "0" to "1". #Machining position turret/spindle settings # Switch strings based on turret position top/bottom-left/right and cut type. # Turret position is based on the Mastercam settings (see lathtype). # Strings are re-assigned for output in the routine psw_str_mult. # The string variable sw_string holds the place position value to determine # how to assign the strings. Planes are relative to the view from Mastercam. # Assign the 17 digit string following the alpha columns below: # A - C axis, 1 = axis winds, 2 = axis signed, 3 = indexer, 4 = shortest direction # B - Spindle direction, 0 = normal, 1 = reverse # C - Plane 0 arc/comp, 0 = normal, 1 = switch # D - Plane 1 arc/comp, 0 = normal, 1 = switch # E - Plane 2 arc/comp, 0 = normal, 1 = switch # F - Plane 0, 0 = G17, 1 = G19, 2 = G18 # G - Plane 1, 0 = G17, 1 = G19, 2 = G18 # H - Plane 2, 0 = G17, 1 = G19, 2 = G18 # Decimal (required) # I - Plane 0, X axis, 0 = normal, 1 = switch sign from basic # J - Plane 0, Y axis, 0 = normal, 1 = switch sign from basic # K - Plane 0, Z axis, 0 = normal, 1 = switch sign from basic # L - Plane 1, X axis, 0 = normal, 1 = switch sign from basic # M - Plane 1, Y axis, 0 = normal, 1 = switch sign from basic # N - Plane 1, Z axis, 0 = normal, 1 = switch sign from basic # O - Plane 2, X axis, 0 = normal, 1 = switch sign from basic # P - Plane 2, Y axis, 0 = normal, 1 = switch sign from basic # Q - Plane 2, Z axis, 0 = normal, 1 = switch sign from basic use_only_tl : 1 #Use only Top turret/Left spindle settings (below) for #all Mastercam turret/spindle selections #When configuring for multi-spindle/turret set to 0 #Columns- ABCDEFGH.IJKLMNOPQ #Turret/Spindle #Path Type scase_tl_c1 : "10000222.000000000" #Top turret/Left spindle, Turning cut scase_tl_c2 : "10000012.000000000" #Top turret/Left spindle, Right Face cut scase_tl_c_2 : "10110012.000000000" #Top turret/Left spindle, Left Face cut scase_tl_c3 : "40010102.000000000" #Top turret/Left spindle, Cross cut scase_tl_c4c : "10000111.000000000" #Top turret/Left spindle, Y axis subs. Cycle scase_tl_c4 : "10000222.000000000" #Top turret/Left spindle, Y axis subs. scase_tl_c5 : "10000222.000000000" #Top turret/Left spindle, Multisurf Rotary #Columns- ABCDEFGH.IJKLMNOPQ scase_bl_c1 : "10000222.000000000" #Bottom turret/Left spindle, Turning cut scase_bl_c2 : "11000012.000000000" #Bottom turret/Left spindle, Right Face cut scase_bl_c_2 : "11110012.000000000" #Bottom turret/Left spindle, Left Face cut scase_bl_c3 : "10010102.000000000" #Bottom turret/Left spindle, Cross cut scase_bl_c4c : "10000111.000000000" #Bottom turret/Left spindle, Y axis subs. Cycle scase_bl_c4 : "10000222.000000000" #Bottom turret/Left spindle, Y axis subs. scase_bl_c5 : "10000222.000000000" #Bottom turret/Left spindle, Multisurf Rotary #Columns- ABCDEFGH.IJKLMNOPQ scase_tr_c1 : "10000222.000000000" #Top turret/Right spindle, Turning cut scase_tr_c2 : "11000012.000000000" #Top turret/Right spindle, Right Face cut scase_tr_c_2 : "11110012.000000000" #Top turret/Right spindle, Left Face cut scase_tr_c3 : "10010102.000000000" #Top turret/Right spindle, Cross cut scase_tr_c4c : "10000111.000000000" #Top turret/Right spindle, Y axis subs. Cycle scase_tr_c4 : "10000222.000000000" #Top turret/Right spindle, Y axis subs. scase_tr_c5 : "10000222.000000000" #Top turret/Right spindle, Multisurf Rotary
  8. Some formula, on Line 2049 in your Post, (formula starts in column #9), has a divisor in the equation which is evaluating to "0" at runtime. What is the formula in your Post on line 2049?
  9. Your Post is not coupled to machine simulation, unless you specifically paid for it. You would know if you had it, because it would have been negotiated with the purchase of the Post.
  10. Time-saver, absolutely. Reliable? Only if you have G-Code verification to catch issues. Of course, that goes with anything though. I've caught issues with surface paths where a surface became "unselected" from a toolpath, and caused the tool to "dive" down into the hollow of the part. You're right when you say "verify the G-code, or run it slow". And for simple models, sure, I will occasionally program from the solid. I really like the new "automatic 2D profile from solid" for programming Lathe parts. That is really nice. But, I still catch myself wondering if it is working 100%. For anything where I am programming from a Solid, which is already in-process, and I need to do a push-pull, or edit the model in some way, I'll typically copy the solid to a new level, change the color, and then "remove history" on that model, before making my edits. This can be a pain, because you can end up with multiple copies of the solid (similar, but modified) in the same file, so I usually only do this on smaller solids. Unfortunately, there is no bullet-proof solution when it comes to editing a solid with toolpaths already attached to the models...
  11. This is the reason I still create wireframe and surface geometry for many of my operations. Use "Hole Axis", and make the function generate centerline holes, with points at the bottom of where you are drilling. You can use the Hole Axis function to extend the line beyond the hole bottom as well, if needed. More work for selection, but I absolutely hate having paths that change geometry on me, just because I do something to a solid. The only time I really use Solids for driving a toolpath, is if I'm creating an Opti-rough path, and just selecting the whole model for roughing.
  12. What are you doing with the #101 variable? Are you using it for "D#101" when using Cutter Compensation? I've seen and written plenty of Posts to capture the actual Tool Diameter, but typically I'm buffering that information during the Pre-Read (Tool Table) output, and then writing G10 Lines at the top of the program to overwrite the Tool Diameter Compensation values in the Offsets Table on the machine, so we don't end up with an incorrect Tool Diameter that someone forgot to clear out. Or are you using it with a Tool Probing Routine to take the "Nominal Tool Diameter" for use in a Probing formula to calculate the difference between nominal diameter and measured diameter?
  13. The Post Block 'pprep2' is a user defined Post Block that is called from the binned portion of pprep$. Add your code to 'pprep2'.

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