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:

Darin

Verified Members
  • Posts

    285
  • Joined

  • Last visited

Posts posted by Darin

  1. I would like the canned text to output after the operation's finished just before the last G00 Z retract. When I select add after it outputs it before my operation. Where can I change this in this post?

     

     

    This is how it outputs now with add after on a canned text

     

    N100 G20

    N110 G91 G28 Z0.

    N120 G91 G28 X0. Y0. B0.

    N130 G00 G17 G40 G49 G80 G90

    N17 M01 ( 1-1/4 END MILL )

    N140 T17 M06

    N150 G00 G90 G55 X2.4218 Y2.4218 B0. S450 M03

    N160 G43 H17 Z.1

    N170 M05 <------------------------------- Need this to be before the G00 Z.1---------------------------------------->

    N180 G01 Z-16.5 F15.

    N190 G02 X2.6048 Y1.9799 I-.4419 J-.4419

    N200 X1.9799 Y1.355 I-.6249 J0.

    N210 X1.355 Y1.9799 I0. J.6249

    N220 X1.9799 Y2.6048 I.6249 J0.

    N230 X2.4218 Y2.4218 I0. J-.6249

    N240 G00 Z.1

     

     

     

    This is how I would like it to post

     

    N100 G20

    N110 G91 G28 Z0.

    N120 G91 G28 X0. Y0. B0.

    N130 G00 G17 G40 G49 G80 G90

    N17 M01 ( 1-1/4 END MILL )

    N140 T17 M06

    N150 G00 G90 G55 X2.4218 Y2.4218 B0. S450 M03

    N160 G43 H17 Z.1

    N180 G01 Z-16.5 F15.

    N190 G02 X2.6048 Y1.9799 I-.4419 J-.4419

    N200 X1.9799 Y1.355 I-.6249 J0.

    N210 X1.355 Y1.9799 I0. J.6249

    N220 X1.9799 Y2.6048 I.6249 J0.

    N230 X2.4218 Y2.4218 I0. J-.6249

    N235 M05 <--------------------------------Post here---------------------------------->

    N240 G00 Z.1

     

     

     

     

    Here is the post

     

    [post_VERSION] #DO NOT MOVE OR ALTER THIS LINE# V16.00 P0 E1 W16.00 T1368216059 M16.00 I0 O0

    # Post Name : Fanuc 4X Mill.pst

    # Product : Mill

    # Machine Name : Mill

    # Control Name : Fanuc

    # Description : Generic 4 Axis Mill Post

    # 4-axis/Axis subs. : Yes

    # 5-axis : No

    # Subprograms : Yes

    # Executable : MP 14.0

    #

    # WARNING: THIS POST IS GENERIC AND IS INTENDED FOR MODIFICATION TO

    # THE MACHINE TOOL REQUIREMENTS AND PERSONAL PREFERENCE.

    #

    # THIS POST REQUIRES A VALID 3 OR 4 AXIS MACHINE DEFINITION.

    # YOU WILL RECEIVE AN ERROR MESSAGE IF MORE THAN ONE ROTARY AXIS IS DETECTED IN

    # THE ACTIVE AXIS COMBINATION WITH READ_MD SET TO YES.

    #

    # Associated File List$

    #

    # GENERIC FANUC 4X MILL.control-5

    #

    # Associated File List$

    #

    # --------------------------------------------------------------------------

    # Revision log:

    # --------------------------------------------------------------------------

    # CNC 06/09/05 - Initial post setup for Mastercam X

    # CNC 10/06/05 - Changed parameter read for min_speed, modified pspindle, pprep$ and pset_mach

    # - Modified pset_rot_label to use srot_y for horizontal machines

    # - Added call to pset_mach in pq$ to set rotaxtyp$

     

     

     

    Thanks

    post-1869-0-33660600-1378520059_thumb.jpg

  2. Is there any way to set up my nesting set up sheets to have the tools incorporated with the sheet nesting print outs? Also is there a way to edit the sheet names? It just calls them sheet #1 result #1 and so on. Is there an add-on nesting set up sheet that can be edited?

  3. Is there anyway to control the size of the font to default to a smaller size? Sheet size - result 2 font defaults to 16.0 size font every time we nest. We can change it after with F4 but it is a pain everytime we re- nest we have to do this. Or is there a way to shut off? I tried the config settings and display options.

    post-1869-0-29406300-1378321777_thumb.png

    post-1869-0-94607900-1378321791_thumb.png

    post-1869-0-72286300-1378321862_thumb.png

  4. I just took a look at the mpmaster post and the logic is already there for what you want to do. Remove all the code that I gave you earlier and uncomment the following in pcomment3

     

    #	 if stpgrpname <> snull, pbld, n$, pspc, scomm_str, "TOOLPATH GROUP - ", stpgrpname, scomm_end, e$
    

     

    Just for reference the issues with the what you had were

    1. The IF statement was inside of another IF improperly.

    2. Not sure that was exactly where you whanted the sgroupname to be output

    3. Your post didn't have "sopen_prn" and "sclose_prn" strings defined.

     

    Great thanks . Worked perfect. I thought it was in there.

  5. Initialize variable

    sgroupname : ""
    

     

    Add to psof$, ptlchg$ and ptlchg0$ wherever you want the comment to come out, probably before/after "comment$".

     

    sopen_prn, sgroupname, sclose_prn, e$
    

     

     

    Add to pparameter$ postblock

     #Group Comment
     if prmcode$ = 20018, sgroupname = sparameter$	
    

     

    Thanks John. But for some reason I get a error. Maybe I am putting in at the wrong place.

     

     

    Here is the error I am getting

     

    g 2013 04:18:32 PM - <2> - Initialization of pre-defined post variables, strings, postblocks was successful.

    27 Aug 2013 04:18:32 PM - <2> - Search for defined post variables, strings, postblocks was successful.

    27 Aug 2013 04:18:32 PM - <2> - PST LINE (1742) - The post block output type processing has failed!, , Label has not been defined[4]

    27 Aug 2013 04:18:32 PM - <2> - PST LINE (1742) - The post block output type processing has failed!, , Label has not been defined[27]

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'mtol$' was re-initialized from 0.0001 to 0.00001

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'met_mtol$' was re-initialized from 0.001 to 0.0001

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'ltol$' was re-initialized from 0.0005 to 0.002

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'maxrad$' was re-initialized from 999.9999 to 999.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'met_maxrad$' was re-initialized from 9999.999 to 9999.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'helix_tol$' was re-initialized from 0.0005 to 0.0001

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'met_helix_tol$' was re-initialized from 0.005 to 0.001

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'atol$' was re-initialized from 0.5 to 0.01

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'dec_seq_right$' was re-initialized from 3. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'dec_seq_left$' was re-initialized from 3. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'sub_seq_typ$' was re-initialized from 0. to 1.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'bldnxtool$' was re-initialized from 0. to 1.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'nobrk$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'nobrkxz$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'nobrkyz$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'lnobrk$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'lnobrkxz$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'lnobrkyz$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'arcoutput$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'arcoutputxz$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'arcoutputyz$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'larcoutput$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'larctypexz$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'larcoutputyz$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'breakarcs$' was re-initialized from 0. to 2.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'breakarcsxz$' was re-initialized from 0. to 2.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'breakarcsyz$' was re-initialized from 0. to 2.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'lbreakarcs$' was re-initialized from 0. to 2.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'lbreakarcsxz$' was re-initialized from 0. to 2.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'lbreakarcsyz$' was re-initialized from 0. to 2.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'do_full_arc$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'do_full_arcxz$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'do_full_arcyz$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'ldo_full_arc$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'ldo_full_arcxz$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'ldo_full_arcyz$' was re-initialized from 1. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'rotfeed4$' was re-initialized from 2. to 1.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'rotfeed5$' was re-initialized from 3. to 0.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'lrotfeed4$' was re-initialized from 2. to 1.

    27 Aug 2013 04:18:32 PM - <2> - CONTROL DEFINITION - Post variable 'sub_level$' was re-initialized from 0. to 0.

    27 Aug 2013 04:18:32 PM - <2> - Successful completion of posting process!

     

     

     

     

     

    This is where I added the changes.

     

    pparameter$ # Run parameter table

    if opcode$=13 | opcode$=14, result = fprm (opcode$)

    if prmcode$ = 10000, stoper = ucase(sparameter$)

    if stoper=snull, stoper = snullop

    if prmcode$ = 10010, stock = rpar(sparameter$,1) # Stock to leave in Z

    if prmcode$ = 10068, stock1 = rpar(sparameter$,1) # Stock to leave in XY

    if prmcode$ = 12068, stock2 = rpar(sparameter$,1) # Stock to leave in Z facing

    if prmcode$ = 10020, clearinc = rpar(sparameter$,1) #param 10020 is clearance now and 10021 indicates abs or inc

    if prmcode$ = 15100, clearflg = rpar(sparameter$,1)

    if prmcode$ = 15145, metvals = rpar(sparameter$,1)

    if prmcode$ = 15339, clearstrt = rpar(sparameter$,1)

    if prmcode$ = 15346, comp_type = rpar(sparameter$,1)

    if prmcode$ = 15182, miscvalon = rpar(sparameter$,1)

    if prmcode$ = 20010, sconstplname = ucase(sparameter$)

    if prmcode$ = 20011, sconstplcomm = ucase(sparameter$)

    if prmcode$ = 20012, stoolplname = ucase(sparameter$)

    if prmcode$ = 20013, stoolplcomm = ucase(sparameter$)

    if prmcode$ = 20014, swcsplname = ucase(sparameter$)

    if prmcode$ = 20015, swcsplcomm = ucase(sparameter$)

    if prmcode$ = 20016, smatlname1 = ucase(sparameter$)

    if prmcode$ = 20017, smatlname2 = ucase(sparameter$)

    if prmcode$ = 20018, stpgrpname = ucase(sparameter$)

    if prmcode$ = 12025, rotary_axis2 = rpar(sparameter$,1) #Capture the axis of rotation in Multiaxis Drill and Curve 5 Axis

    if prmcode$ = 15371, axissubdir = rpar(sparameter$,1)

    if prmcode$ = 12628,

    if prmcode$ = 20018, sgroupname = sparameter$ #Group comment <<<<<<<----------- Added this here.................>>>>>>>>>>>>>

    [

    hst_flg = 1

    hststyle = rpar(sparameter$,1)

    ]

    pwrttparam$ #Information from parameters

     

     

    Misc variables

    tcnt : 0 #Count the number of tool changes

    toolcount : 1 #Tool counter for logic control

    toolcountn : 0 #Next tool counter for logic control

    toolcountp : 0 #Previous tool counter for logic control

    tooltotal : 0 #Tool tool count

    nexttool : 0 #Next actual tool

    counter : 0 #Counter

    nstrlen : 0 #Length of string

    stock_typ : 0 #Predator Stock Type

    cyl_typ : 0 #Predator Cyl Stock Type

    z_min$ : 99999 #Min Z

    z_tmin : 99999 #Overall min Z

    z_max$ : -99999 #Max Z

    z_tmax : -99999 #Overall max Z

    sav_mi9 : 0 #Saved mi9 value

    rotretflg : 0 #Flag used for indexing lock code output

    compwarnflg : 0 #Flag for compensation warning output

    sof : 1 #Indicates start of file through toolchange

    header : 1 #Indicates start of file (header) for comment output

    miscvalon : 0 #Flag for warning that misc values are set to post default

    abs2incflg : 0 #Flag for post change from abs to inc output for rot_type = 2

    axissubdir : 0 #Direction of current axis substitution 0 = CCW, 1 = CW

    retractflg : 0 #Flag to indicate retract at null toolchange

    mr1_flg : 0 #Flag to indicate whether look ahead function is active or not

    lim_flg : 0 #Flag to only output limit warning once

    tilt_flg : 0 #Flag to only output tilt limit warning once

    hst_flg : 0 #Flag to output HST comments

    sgroupname : "" #Flag to output groupname comments <<<<<<<<<<<<<<<< Added this here............>>>>>>>>>>>>>>>>>>>>>>

     

     

    # --------------------------------------------------------------------------

    # Start of File and Toolchange Setup

    # --------------------------------------------------------------------------

    psof0$ #Start of file for tool zero

    psof$

    sopen_prn, sgroupname, sclose_prn, e$ <<<<<<<<<<<<<<<<<<<<<<<<Added this here.......................>>>>>>>>>>>>>>>>>>>>>>>

    psof$ #Start of file for non-zero tool number

    ptravel

    pwritbuf5

    pcuttype

  6. Hi,

     

     

    How can you add the toolpath group comments to a MPMaster post? I would like to have it post out what I put in the name for the toolpath group name in the top of the program somewhere.

    Like I have 2ND OP on the screen shot. Would like that to be somewhere on the top.

     

    Right now I have to put in a manual entry to do this. The problem with that is that the manual entry still has the issue with not saving whatever you name it after you edit it every time. This has been this way since I can remember. What I mean by that is try to name the manual entry something then go back and change something in the manual entry and see what happens to what you named it. It will be gone and you will have to rename it every time you change it. This is has been a bug for awhile now.

    post-1869-0-81804300-1377568176_thumb.jpg

    • Like 1
  7. I'm not sure about you guys, but I tend to overlook simple, but critical details when I am programming. Some of my most common oversights are forgetting to turn on the coolant, and making sure that H and D outputs are appropriate for the tool. As a safeguard against my scatter-brained behavior, I have built a safety net into my post that will notify me that I have overlooked something. I will share this safety net for any of you that have an interest.

     

    When posting, as each toolpath operation is processed, the post checks for any common errors that I have designated. If any are found, a popup box appears notifying the toolpath number, tool description and the error encountered.

     

    The core of this feature is the popup box. You will need to add an entire postblock like this:

    ptlchg_errorpop #Pop-up common toolchange errors
     if DepthCuts = 0,
    	 [
    	 if NumEntities = 1, errorcheck = 1
    	 else, errorcheck = 3
    	 ]
     else, errorcheck = 3
     if tloffno$ <> t$ & tloffno$ <> zero, [if mprint(stooldiameteroffserror, 2) = 2, exitpost$] #Diameter
     if tloffno$ = zero, [if mprint(stooldiameteroffszeroerror, 2) = 2, exitpost$] #Zero Diameter
     if tlngno$ <> t$ & tlngno$ <> zero, [if mprint(stoollengthoffserror, 2) = 2, exitpost$] #Length
     if tlngno$ = zero, [if mprint(stoollengthoffszeroerror, 2) = 2, exitpost$] #Length
     if coolant$ = zero, result = mprint(scoolantisoffserror, 1) #No Coolant
    

    The strings that contain the text in the boxes are defined like this:

    # --------------------------------------------------------------------------
    # Error Checks
    # --------------------------------------------------------------------------
    sOpSeqNo	 : "" #Operation manager displayed operation number
    stoollengthoffserror = "Operation " + sOpSeqNo + ": " + "(" + s20001 + ") TOOL LENGTH OFFSET DOES NOT MATCH TOOL NUMBER"
    stoollengthoffszeroerror = "Operation " + sOpSeqNo + ": " + "(" + s20001 + ") TOOL LENGTH OFFSET IS ZERO"
    stooldiameteroffserror = "Operation " + sOpSeqNo + ": " + "(" + s20001 + ") TOOL DIAMETER OFFSET DOES NOT MATCH TOOL NUMBER"
    stooldiameteroffszeroerror = "Operation " + sOpSeqNo + ": " + "(" + s20001 + ") TOOL DIAMETER OFFSET IS ZERO"
    scoolantisoffserror = "Operation " + sOpSeqNo + ": " + "(" + s20001 + ") COOLANT IS TURNED OFF"
    serrordetect = "POTENTIAL OFFSET AND/OR COOLANT ERRORS DETECTED. NOTIFY?"
    s20001 : "" #String for tool description
    s20002 : "" #String for tool description
    
    

     

    And finally, since I have jobs that I intentionally leave the coolant off, I created an escape route from the parade of popups, like this:

    ptlchg_errorcheck #Check for common toolchange errors
     if errorcheck = 0,
     [
     if tloffno$ <> t$ | tlngno$ <> t$ | coolant$ = zero, result = mprint(serrordetect, 2)
     if result = 1, errorcheck = 1
     if result = 2, errorcheck = 2
    ]
     if errorcheck = 1, ptlchg_errorpop
    

    This creates a single popup that notifies me that errors were found. Do I want to see them?

     

    Now, to make this work, you need to:

    1. In the pparameter$ section, add this:

    if prmcode$ = 15084, NumEntities = rpar(sparameter$, 1)
    if prmcode$ = 15211, DepthCuts = rpar(sparameter$, 1)
    if prmcode$ = 15240, sOpSeqNo = sparameter$	 #This is the operation manager operation number
    if prmcode$ = 20001,
     [
     s20001 = sparameter$
     s20002 = sparameter$
     ]
    

    2. In the variable format area, add this:

    fmt	 4 errorcheck #Flag for error notification
    fmt	 4 NumEntities #Flag for Contour Chains
    fmt	 4 DepthCuts #Flag for Depth Cuts
    

     

    3. In the psof$, ptlchg0$, and ptlchg$ sections, add this near the top:

     ptlchg_errorcheck #Check for common toolchange errors
    

     

    Note: Some of the popups have one option, and some have two. On major errors, I have assigned the second button to exit the post.

     

    I have tried to thumbnail an image of a coolant popup, without success. So, I have attached a PDF of the image here:

     

     

    Works great thanks. Is there a way to turn off the coolant reminder?

  8. Hi,

     

     

    Is there a switch in the MPLmaster post for using G41 and G42 with a lathe canned cycle? For some reason it is not posting a G42 or G41 but does post G40.

     

    Also what would be involved to change where the G40 is? I would like to have it on the line below with the Z move

     

    Works fine without using canned cycle.

     

     

    (ROUGH OD)

    G54

    N7 T0707

    G18 G99

    M24

    G97 S200 M03

    G0 X19.5 Z.15

    X19.4 Z.1

    G71 U.5 R0.

    G71 P9 Q11 U.2 W.01 F.01

    N9 G0 X18.748 S200 W0. <---------------------------- Should be a G42 on this line----------------->

    G1 Z0.

    X18.798 Z-.025

    Z-2.

    N11 G40 X19.4

    G0 Z.1 <----------------------------- Would like the G40 on this line------------------------------->

    G28 U0. V0. W0.

    M01

    (TOOL - 9 OFFSET - 9)

    (OD 55 DEG RIGHT INSERT - DNMG-432)

    (MPLMASTER GENERIC 3/4 AXIS LATHE)

    (FINISH OD)

    G54

    N9 T0909

    G18 G99

    G97 S200 M03

    G0 X19.4 Z.1

    G70 P9 Q11

    G0 Z.1

    G28 U0. V0. W0.

    M05

    M30

    %

    post-1869-0-64854200-1377207258_thumb.jpg

    post-1869-0-70233400-1377208104_thumb.jpg

    post-1869-0-41357000-1377208115_thumb.jpg

    post-1869-0-55689800-1377208130_thumb.jpg

  9. Sometimes I will create a surface from a solid face. Then extend the surface edge or extend trimmed edges and create a curve dynamic on the extended surface.

    Then make a new spline by selecting points of all geo I want as one chain. Can be a pain.

     

    That worked great for extending the 3D geo but what about trimming them? I tried a negative number in the field but didn't trim it. I guess the question is how do you trim a surface that cam from a solid not extend it?

     

    Thanks

    post-1869-0-41939300-1373241127_thumb.png

  10. Why not to curve 5axis or swarf to cut the edges on the router just wondering why 3d contour?

     

     

    We are using 5axis curve classic just using the 3D geo for the path. 3D offset contour is what I was using to make the geo edges smaller or bigger. But I like Dan@Vian Ent 's idea and I will try that.

     

     

    Thanks

  11. We do a lot of 3D wireframe work at one of the places I program for. They have a 5-axis router and they will need to add or take some material off the edges of these composite parts . Since it is 3D the edit trim extend usual give me the selected objects do not intersect. What we have been trying is just to contour offset a edge and use xform point to point after we trim the lines close. But this doesn't always work out and we sometimes have to create a line end endpoint even though the geo isn't straight because it is a spline just to be able to close chain. Especially if the geo is really curved and at a weird angle. Is there a trick on doing this? We bring in a solid model and make a wireframe from it. Is this something that would be better editing in the solid?

     

    Thanks

    post-1869-0-90986700-1373227375_thumb.png

    post-1869-0-61845700-1373227386_thumb.png

    post-1869-0-80341400-1373227596_thumb.png

  12. Darin, it is not a matter of making the post to respond to a transform rotate,.... If you are using an axis substitution toolpath you have already introduced rotation into the toolpath by substituting the X or Y axis with rotary output. To get that toolpath to index and cut at the next position you need to use a transform translate. I use between points, the distance you are going to translate is the arc segment between the indexed angles. You would input that value relative to the axis you are substituting.

     

    Ex: I have a pocket tpath substituting the Y axis on a 10" dia, need to index every 30deg, using the between points translation I set the Y axis to move 2.61799"

     

     

    I got it now thanks. So even though you are using transform translate not rotate it reads the axis substitution and makes the correct code.

     

    Thanks

  13. Important things to know about SSD drives. The main one is it will not make any programs run faster. So Mastercam will run the same as regular hard drive. It is all in boot up times. You want faster Mastercam get better (more) processors better (more) ram better video card. I heard X7 has better processing features now that use the new technology.

     

     

     

     

    Cost vs performance.

    As All Have indicated, the SSD is About 40-> 80 Times faster than a HDD.

    However; That said, and SSD will:

    .. Considerably improve boot time - that is going from "start loading OS" -> able to open first program. Also shortens shut down time.

    .. Speed up program load times - How noticeable depends on program.

    .. Will load any files much faster than a HDD, providing the file is on the SSD.

    Will NOT:

    .. Speed up web surfing, downloading files from the web, nor speed up email

    .. Will Not make programs RUN faster. Does not improve FPS in games (Will speed up map loading providing the map is on the SSD.

    .. Will NOT speed up file load times if file is on HDD

  14. I noticed you aren't using "unroll" in your rotary parameters for the Axis Sub Toolpath. Is your geometry drawn flat? If not, you should be using "unroll".

     

    Edit: ok, looks like you are using the flat chain of geometry. You can take that chain and translate copy it on the flat to make multiple cuts around a diameter. You want 12 cuts, so you calculate the circumference as 10.945 x 3.14159265 = 34.3847316. (the more accurate your calculation, the better the result. Go at least 1 more significate digit in precision than your tolerance. So if your machine is accurate to .0001, then make sure your translation distance is 5 or 6 decimal places in accuracy.)

     

    So 34.3847316 / 12 = 2.8653943. When you translate, use that distance, and round to 6 digits. 2.865394 is what I would use.

     

    Hope that helps,

     

    Colin

     

     

    Thanks Colin. Worked great. What is involved in making a post work with transform and axis sub tool paths?

  15. Hi,

     

    Does transform rotate tool path work with a contour operation that has axis substitution? I can't get it to post like I want it. It just seems to post the same B moves for all the transform paths. I am trying to make these cutouts every 30 degs on this cylindrical part on a horizontal machine. The cutouts need to be cut on the 10.945 dia axis not straight through. I have X6 and W7..

     

    This is how it posts.

     

     

    N1 M01 ( 3/16 ENDMILL )

    ( MILLS 1ST 10 MM SLOT WITH 3/16 ENDMILL )

    N140 T01 M06

    N150 G00 G90 G54 X0. Y.8492 B-.314 S4500 M03

    N160 G43 H01 Z5.5725

    N170 G01 Z5.1975 F10.

    N180 G41 D01 Y.7242 F30.

    N190 Y.7149 B-.299

    N200 Y.7066 B-.254

    N210 Y.6999 B-.185

    N220 Y.6957 B-.097

    N230 Y.6942 B0.

    N240 B3.86 F330.71

    N250 Y.8801 F30.

    N260 Y.8804 B-3.86 F330.71

    N270 Y.6942 F30.

    N280 B0. F330.71

    N290 B.314

    N300 Y.6957 B.411 F30.

    N310 Y.6999 B.499

    N320 Y.7066 B.568

    N330 Y.7149 B.613

    N340 Y.7242 B.628

    N350 G40 Y.8492

    N360 Y.8392 B-.314

    N370 G41 D01 Y.7142

    N380 Y.7049 B-.299

    N390 Y.6966 B-.254

    N400 Y.6899 B-.185

    N410 Y.6857 B-.097

    N420 Y.6842 B0.

    N430 B3.916 F330.71

    N440 Y.6848 B3.94 F317.98

    N450 Y.6865 B3.957 F225.02

    N460 Y.6888 B3.965 F95.72

    N470 Y.8854 F30.

    N480 Y.8877 B3.958 F82.73

    N490 Y.8895 B3.94 F222.21

    N500 Y.8901 B3.916 F319.88

    N510 Y.8904 B-3.916 F330.71

    N520 Y.8898 B-3.94 F317.99

    N530 Y.8881 B-3.958 F227.65

    N540 Y.8857 B-3.965 F81.69

    N550 Y.6888 F30.

    N560 Y.6865 B-3.958 F82.73

    N570 Y.6847 B-3.94 F222.21

    N580 Y.6842 B-3.916 F321.08

    N590 B0.

    N600 B.314

    N610 Y.6857 B.411 F30.

    N620 Y.6899 B.499

    N630 Y.6966 B.568

    N640 Y.7049 B.613

    N650 Y.7142 B.628

    N660 G40 Y.8392

    N670 G00 Z5.5725

    ( MILLS 1ST 10 MM SLOT WITH 3/16 ENDMILL )

    N680 G00 G90 G55 B-.314 <------------------------- Shouldn't These B moves should have 30 degs added to them from the transform?------------------------------>

    N690 X0. Y.8492

    N700 Z5.5725

    N710 G01 Z5.1975 F10.

    N720 G41 D01 Y.7242 F30.

    N730 Y.7149 B-.299

    N740 Y.7066 B-.254

    N750 Y.6999 B-.185

    N760 Y.6957 B-.097

    N770 Y.6942 B0.

    N780 B3.86 F330.71

    N790 Y.8801 F30.

    N800 Y.8804 B-3.86 F330.71

    N810 Y.6942 F30.

    N820 B0. F330.71

    N830 B.314

    N840 Y.6957 B.411 F30.

    N850 Y.6999 B.499

    N860 Y.7066 B.568

    N870 Y.7149 B.613

    N880 Y.7242 B.628

    N890 G40 Y.8492

    N900 Y.8392 B-.314

    N910 G41 D01 Y.7142

    N920 Y.7049 B-.299

    N930 Y.6966 B-.254

    N940 Y.6899 B-.185

    N950 Y.6857 B-.097

    N960 Y.6842 B0.

    N970 B3.916 F330.71

    N980 Y.6848 B3.94 F317.98

    N990 Y.6865 B3.957 F225.02

    N1000 Y.6888 B3.965 F95.72

    N1010 Y.8854 F30.

    N1020 Y.8877 B3.958 F82.73

    N1030 Y.8895 B3.94 F222.21

    N1040 Y.8901 B3.916 F319.88

    N1050 Y.8904 B-3.916 F330.71

    N1060 Y.8898 B-3.94 F317.99

    N1070 Y.8881 B-3.958 F227.65

    N1080 Y.8857 B-3.965 F81.69

    N1090 Y.6888 F30.

    N1100 Y.6865 B-3.958 F82.73

    N1110 Y.6847 B-3.94 F222.21

    N1120 Y.6842 B-3.916 F321.08

    N1130 B0.

    N1140 B.314

    N1150 Y.6857 B.411 F30.

    N1160 Y.6899 B.499

    N1170 Y.6966 B.568

    N1180 Y.7049 B.613

    N1190 Y.7142 B.628

    N1200 G40 Y.8392

    N1210 G00 Z5.5725

    post-1869-0-83657100-1372469554_thumb.jpg

    post-1869-0-27402500-1372469565_thumb.jpg

    post-1869-0-51516900-1372469573_thumb.jpg

    post-1869-0-79717100-1372469583_thumb.jpg

    post-1869-0-09749600-1372469592_thumb.jpg

    post-1869-0-69597500-1372469598_thumb.jpg

    post-1869-0-74371800-1372469609_thumb.jpg

  16. no version could ever save complete files with toolpaths back to earlier versions

    X6x32 can save geometry back

    X7 cannot save anything back as a Mastercam file

     

    Great thanks gcode that is what I thought. They really just need to upgrade to X6. Will X2 work with W7 64 bit systems ok?

  17. I have done a search on this but want to make sure I am clear on this. I program for a company that uses X2. Was there any version say X4 or X5 that would be able to save the full Mastercam file to a older version like X2? I was told Mastercam has always only saved the geometry not any operations. Is this correct? Or was there a version that could save all to an older version? I need to know if I should install X2. I have X6 and X7.

     

     

    Thanks

  18. Can you post a pic of the gouge on the part? Is it a little gouge or huge arc-drive-the-wrong-way gouge? What machine control?Sounds like a machine/post issue though. I've wrecked some parts with arcs going the wrong way. Do what Colin says above. Also allow 360 deg arcs.

     

    How big is the gouge? How big is the part? If the gouge is around .005, and your tolerance is set to that, then that's your cause. .005 may be perfectly fine if you've got that much tolerance, or on monster parts. But if not, that could be your cause.

     

    Another GREAT tool for checking code is the full on version of Cimco V6. It's very inexpensive and worth it's weight in gold.

     

    . ....Reseller for Wash?

     

     

    Hi Chris... Thanks for the input.. I am assuming the person meant Oregon reseller but not sure.. It is one of the many place I program for . I hear a lot of feedback from different people so I take a lot of the things I hear with a grain of salt.. I can only go from my experience on the hundred's of machine I have dealt with.. I haven't see these tool paths do this till now.. I am glad I have some great contacts like yourself and others... I have some that actually have You-Ji's running with Mastercams and they don't have these issues... So it is a lot of investigating that I have to do... It might be a simple as getting the control settings right on the machines....

     

    Thanks

  19. From what others in the thread have said, I'm leaning towards the Hybrid arcs being the culprit, not the post itself. Those CD settings look spot on, so your problem is likely not the arc settings in the NC code.

     

    Tolerance also has a lot to do with it. For finishing, I typically go 2:1 ratio, with .0003 total tolerance.

     

    Ok thanks Colin... So I should never use Hybrid? Also should I always have the total tolerance 2:1 even if I am roughing? Could the total tolerance settings have made this gouge?

     

     

    Thanks

  20. ^^^^ Both of these ^^^^

     

    I've used the solids as well, with no problems as far as toolpaths go. Processing or regen time can become a bit to much for my patience though.

     

    I'll agree with tightening up the tolerance settings. I also have resorted to always using the output feed as this, I believe, is what caused a gouge in a program I did some time ago. And yes, it did NOT show in the verify.

     

    I noticed you don't have your "Part Clearance" on at all. I would add some type of clearance and just because I like to be cautious, I'd also raise the "Clearance Plane" setting a bit.

     

    For some reason the part clearance doesn't work with full vertical retract... It is grayed out... I was told to use full vertical retract it is safer...

     

     

    Thanks

  21. The first thing I would check would be the Arc settings in your Control Definition. The only time I've seen issues with gouging in a HST toolpath was due to the control reading a radius value, and swinging the wrong way around the arc.

     

    Are you using IJK (Delta start-to-center) for your arc values, or are you using Radius? If your machine will accept it, please use the IJK option, as this specifies the exact arc centerpoint, and the machine doesn't have to guess.

     

    The other clue here is the old posts as others have mentioned. We made some improvements around X4 or X5 in the posts for Arcs. Specifically, we added some code to force the internal calculations for the Arc centers to use the "Delta" values, even if you are outputting Radius for arcs.

     

    Code:

    # The following four initializations are used for full arc and helix arc output when the CD
    # is set to output R or signed R for arcs
    larctypexz$ : 2	 #Lathe Arc center type XZ plane 1=abs, 2=St-Ctr, 3=Ctr-St, 4=unsigned inc.
    arctype$	 : 2	 #Mill Arc center type XY plane 1=abs, 2=St-Ctr, 3=Ctr-St, 4=unsigned inc.
    arctypexz$ : 2	 #Mill Arc center type XZ plane 1=abs, 2=St-Ctr, 3=Ctr-St, 4=unsigned inc.
    arctypeyz$ : 2	 #Mill Arc center type YZ plane 1=abs, 2=St-Ctr, 3=Ctr-St, 4=unsigned inc.
    

     

    If you don't see those 4 variable initializations in your post, then I would recommend you upgrade to a newer post processor. As a last resort, you can always turn off the arcs completely in the toolpath, and just go point-to-point moves (G1).

     

     

    Thanks Colin again for your help.... Here is the post.. I don't find those exact lines like the one above.. Also a screen shot of the control settings...

     

     

     

     

     

    [post_VERSION] #DO NOT MOVE OR ALTER THIS LINE# V15.00 P2 E1 W15.00 T1337895755 M15.00 I0 O0

    # Post Name : YOU JI

    # Product : LATHE

    # Machine Name : YOU JI

    # Control Name : OI

    # Description : YOU JI C-AXIS POST

    # Mill/Turn : YES

    # 4-axis/Axis subs. : YES

    # 5-axis : NO

    # Subprograms : YES

    # Canned Cycles : YES

    # Executable : MP 10.0

    #

    # WARNING: THIS POST IS GENERIC AND IS INTENDED FOR MODIFICATION TO

    # THE MACHINE TOOL REQUIREMENTS AND PERSONAL PREFERENCE.

    #

    # Associated File List$

    #

    # GENERIC FANUC 4X MT_LATHE.control

    #

    # Associated File List$

    #

    # --------------------------------------------------------------------------

    # Revision log:

    # --------------------------------------------------------------------------

    # Programmers Note:

    # CNC 07/7/04 - Initial post update for Mastercam X

    # DV 05/03/13 - Modified R output for drilling, and Coordinate conversion

    #

    #

    # --------------------------------------------------------------------------

    # Features:

    # --------------------------------------------------------------------------

    ####### MILL/TURN FUNCTIONS SUPPORTED BY THIS POST #######

    #

    # This post supports Generic Fanuc code output for mill/turn lathes.

    # It is designed to support the features of Mastercam X.

    #

    ## NEW FEATURES FOR X

    # - Machine definition, control definition and toolpath group parameter read sections added.

    # - Variable initialization with CD_VAR are read directly from CD. Changing these initial values

    # in the post will not effect output. These values are only processed during the update post routine.

    # - Variable initialization with SET_BY_MD or SET_BY_CD are overwritten in this post by parameter or

    # variable settings from MD or CD.

    # - Enhanced tool information - Added switch for tool comments (see tool_info)

    # - Supports X comments including machine name, group name and group comment output (see pcomment2)

    # - Additional date, time and data path output options (see pheader)

    # - Support for 10 additional canned text options for X

    # - Decimal support for sequence number output (set "Increment sequence number" in CD to a decimal value

    # for output. I.E. "Increment sequence number" = .5, "Start sequence number" = 10 : N10, N10.5, N11, N11.5, etc...)

    # - Switch for output of M00 or M01 at tool change (3 position switch, off, M00, M01 - see prog_stop)

    # - Support for seperate XY, XZ and YZ plane/arc variables (see Arc page in CD)

    # - Support for X style coolant. Allows up to 10 different coolants to be turned on/off before, with, or after like

    # canned text. Coolant output is handled by "coolant" variable and string selector for V9 style coolant,

    # "coolantx" variable and string selector for X style coolant.

    #

    # Following Misc. Integers are used:

    #

    # mi1 - Work coordinate system: (home_type)

    # -1 = Reference return / Tool offset positioning.

    # 0 = G50 with the X and Z home positions.

    # 1 = X and Z home positions.

    # 2 = WCS of G54, G55.... based on Mastercam settings.

    #

    # mi2 - Absolute or Incremental positioning at top level

    # 0 = absolute

    # 1 = incremental

    #

    # mi3 - Select G28 or G30 reference point return:

    # 0 = G28, 1 = G30

    #

    # mi4 - Canned conversion cycle type selection:

    # Mill-

    # Activates milling axis conversation canned cycles (G107 or G112).

     

     

     

     

     

     

    parc #Select the arc output

    #Setup for arctype setting

    if (posttype$ = 2 & (larctypexz$ = one | larctypexz$ = four)) |

    (posttype$ = 1 &(plane$ = zero & (arctype$ = one | arctype$ = four)) | #XY Plane

    (plane$ = one & (arctypeyz$ = one | arctypeyz$ = four)) | #YZ Plane

    (plane$ = two & (arctypexz$ = one | arctypexz$ = four))), #XZ Plane

    [

    result = newfs(two, i$)

    result = newfs(two, j$)

    result = newfs(two, k$)

    result = newfs(two, iout)

    result = newfs(two, jout)

    result = newfs(two, kout)

    ]

    else,

    [

    result = newfs(three, i$)

    result = newfs(three, j$)

    result = newfs(three, k$)

    result = newfs(three, iout)

    result = newfs(three, jout)

    result = newfs(three, kout)

    ]

    if (posttype$ = 2 & (plane$ = 2 & larctypexz$ < five)) |

    (posttype$ = 1 & ((plane$ = 0 & arctype$ < five) |

    (plane$ = 1 & arctypeyz$ < five) |

    (plane$ = 2 & arctypexz$ < five))),

    [

    #Arc output for IJK

    if (posttype$ = 2 & (plane$ = 2 & larctypexz$ = one)) | #XZ plane - Lathe

    (posttype$ = 1 & ((plane$ = zero & arctype$ = one) | #XY Plane - Mill

    (plane$ = one & arctypeyz$ = one) | #YZ Plane - Mill

    (plane$ = two & arctypexz$ = one))), #XZ Plane - Mill

    [

    #Arc output for IJK, absolute

    iout = (iout + dia_shift) * dia_mult

    jout = (jout + y_shift) * y_mult

    kout = (kout + z_shift) * z_mult

    if c_ax_flp, iout = -iout

    ]

    else,

    [

    #Arc output for IJK, start/center

    iout = iout * (dia_mult/abs(dia_mult))

    jout = jout * y_mult

    kout = kout * z_mult

    if c_ax_flp, iout = -iout

    ]

    iout, kout, jout

    !i$, !j$, !k$

    ]

    else,

    [

    #Arc output for R

    if abs(sweep$)<=180 |

    (posttype$ = 2 & (plane$ = 2 & larctypexz$ = five)) | #XZ Plane - Lathe

    (posttype$ = 1 & ((plane$ = 0 & arctype$ = five) | #XY Plane - Mill

    (plane$ = 1 & arctypeyz$ = five) | #YZ Plane - Mill

    (plane$ = 2 & arctypexz$ = five))), result = nwadrs(srad, arcrad$) #XZ Plane - Mill

    else, result = nwadrs(srminus, arcrad$)

    *arcrad$

    ]

    pffr #Output feedrate, force

    if ipr_actv$ = zero, pfr_m

    else, pfr_l

    *feed

    pfr #Output feedrate

    if ipr_actv$ = zero, pfr_m

    else, pfr_l

    `feed

    pfr_m #Format feedrate for mill

    result = nwadrs(strf, feed)

    result = newfs (17, feed)

    pfr_l #Format feedrate for lathe

    if opcode$ = 104,

    post-1869-0-60703200-1371252654_thumb.jpg

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