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

    7,779
  • Joined

  • Last visited

  • Days Won

    164

Everything posted by Colin Gilchrist

  1. Not seeing those variables published in any of the documentation I've got from Haas. Just out of curiosity; have you tried having your Operators run the Program in Graphics before leaving for the night? That could be a simple way to catch these errors, that doesn't require a bunch of coding... Just a thought. I'm still researching to see if I can find the tool table/tool number macro variables...
  2. Heule FTW! I like how the web link for Mollart says "black-spot-facing".
  3. After creating edge curves (this creates splines), you have to use the 'Curve Surface' command (in the Drop-Down Menu, under the "curves" section of the Wireframe Ribbon), to convert the Splines into "Surface Curves", before they can be mapped to the flattened surface. You should only use "Map.dll", and "Flatten.dll" on surfaces that are curved in two directions. Otherwise, you can just use Roll/Unroll under the Transform Ribbon, which will work with Splines.
  4. Can you post up a screen shot from the Haas Control of where it is showing "in the machine"? Just trying to narrow down what variables you want to read...
  5. 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.
  6. You'll need to contact your Reseller for support then.
  7. 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?)
  8. 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.)
  9. 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.
  10. Need to change "use_only_tl" from "1" to "0". (Use only Top Left Turret switch.)
  11. 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
  12. 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?
  13. 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.
  14. 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...
  15. 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.
  16. 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?
  17. The Post Block 'pprep2' is a user defined Post Block that is called from the binned portion of pprep$. Add your code to 'pprep2'.
  18. What Graphics Card? Try Right-Clicking on your Desktop, and use Nvidia Control Panel (if you have their graphics card). Then, under Manage 3D Settings, to the Global Settings, and pick "Solidworks or Dassault Systems - V5 / 3D Experience". Then, go to "Program Settings" Tab, and choose "Add", and navigate to each version of Mastercam (under Program Files, find the ".exe" file for Mastercam). After adding the Mastercam Program, make sure "High-performance NVIDIA processor" is selected. Fun Windows Fact > even if you have a nice graphics card, your system won't use it, unless you tell it to! Do this for > Program Files Folder, My Mastercam Folder, and Shared Mastercam Folders: On each Folder, Right-Click > Properties > Security Tab > Users (find your profile) > Edit > Set "Full Control".
  19. The difference in cost is about 5X-10X! My recommendation: try the Post-Integrated Machine Simulation. For the money, you're investment is fairly low, and you can decide if that level of Simulation & Support is enough. The issue will be: if it isn't enough, that could be an expensive lesson, however from what I know about the work you're doing, and the machines you're running, it seems like a worth investment/test.
  20. I heard some advice very early in my career, which has proved to be an ugly truth: "To move up, you've got to move on". I find it sad that employers typically fail to reward increases in knowledge and skills beyond a standard Cost of Living raise, which tends to be a unilateral adjustment across the board. In 2006, I was working for a local Mastercam Reseller, teaching Mastercam classes, and making $17/hr. After training some NC Programmers from Boeing, one of them reached out and asked if I'd be interested in working for their department, and they made me an offer I couldn't refuse. Overnight (well, the hiring process did take about 120 days total), I went from making about $35K/yr, to $69.5K/yr, and the pay increase was life-changing. Know your worth, and don't be afraid to talk-the-talk, provided you can walk-the-walk.
  21. I'm with JP. I typically rebuild the paths from top-to-bottom on complex parts. Remember that you can "Right-Click, Drag-and-Drop" geometry, and "replace" it in toolpaths, but it doesn't work with Solids, only surfaces/wireframe. And I'm not sure that works with the new "Tree style" geometry selections for most of the paths. I typically do this with chains and arcs/points for drilling ops, but will go manually select surfaces for operations.
  22. I was telling you! Sorry if I didn't quote you and make that clear. I see that you reached out on LinkedIn as well, and responded to your message. Helping people learn new skills and advance their careers is one of my favorite things to do in life. Early in my career I had mentors/sponsors who took the time to teach me new skills, and helped me to get where I'm at today, and it is my duty to pay it forward.
  23. You're welcome. Given that I've been developing Posts for a while, that took me less than 15 minutes, and gives a good example of "before and after" for anyone else following this thread. There is still more for you to do, but hopefully if you watch my videos, you can learn to start doing some of the development yourself. Necessity is the mother of invention, and I enjoy getting a chance to introduce people to the "dark arts" of Post Processor Development. It is a skill that has served me so very well over the course of my career!

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