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:

Post setting for shutting off arcs


dan.w
 Share

Recommended Posts

Hi,

 

I'm trying to program a lathe using G7.1 - cylindrical interpolation and I"m having a couple of problems related to this machine's physical control.  For some reason it won't accept a G2 or a G3.  I've already gone through the plane descriptions and I am waiting for the machine manufacturer to get me an answer if these commands work.

 

In the meantime - I'm going forward and programming some of the parts without arcs.  

 

I would prefer to leave the control configured to output arcs during any milling and shut it off when going into G7.1  My question is - Is there a post variable corresponding to arcs are unsupported or no arcs?  

 

Somewhat related - from what I saw Mastercam always outputs interpolation and the post linearizes these moves? I had always assumed that changing this in the control def would change the nci output.

 

Thanks in advance,

Dan

Link to comment
Share on other sites

Linearization of the tool path is "path" specific, and also depends somewhat on the "input" geometry. If you give the path (Contour for example) a set of lines and arcs, the NCI will be output as lines and arcs, according to the "break arc" settings in the Control Definition. Even if you turn off "Arc" output in the CD, I believe many of the paths in Mastercam will still write arcs to the NCI file.

 

In the post, the "global" variable for controlling Linearization of Arcs is 'linarc$'. Setting 'linarc$' to any non-zero value will cause MP Engine to linearize the arc, according to the value of 'chord_tol$'. (You can set the value of 'chord_tol$' in the post, prior to reading a NCI code 2/3, it will use that chordal tolerance value to control the number of points you get out of your "broken" arc.

Link to comment
Share on other sites
  • 3 months later...

How was this done in older versions?  I was hired by a company that uses X4 to help get the arcs output by a normal 2D Contour to be output as lines for their high speed control.  I tried the linearc$ parameter but it didn't recognize it.  Is there another way to skin this old cat?

Link to comment
Share on other sites

Did you spell it correctly? -->   linarc$

 

If you put the "e" in the variable name, it won't work...

 

Also, try going into the Control Definition they are using, and just turn "off" the support for Arcs. See if that gives you what you want.

 

If changing the output in the Control Definition does not work, find the 'pmotion_su' post block:

	  
pmotion_su      #Motion Setup (Set brklinestype & linarc)
      brklinestype$ = zero
      linarc$ = zero
      if rot_on_x,
        [
        if cuttype = one,  #Axis Substitution 
          [
          linarc$ = one  #Linearize all arcs
          if rev_brkflag,  #Break rotation flag (set in pcoutrev)
            [
            brklinestype$ = 11  #Break all lines, use brklineslen$ for segment length
            #brklineslen$ = pi$ * rotdia$        #Break every 360 degrees
            brklineslen$ = pi$ * rotdia$ / four  #Break every 90 degrees
            rev_brkflag = zero  #Reset flag
            ]
          ]
        if cuttype = two, #Polar
          [
          #linarc$ = one
		  #DO NOT LINEARIZE ARCS, OTHERWISE YOU'LL GET OUTPUT ABOUT EVERY 1 DEGREE ON THE C AXIS ROTARY!!!
          rev_brkflag = zero  #Reset flag
          ]
        ]

And change the 'linarc$ = zero' to 'linarc$ = one'

	  
pmotion_su      #Motion Setup (Set brklinestype & linarc)
      brklinestype$ = zero
      linarc$ = one #FORCE ALL ARCS TO BE LINEARIZED!
      if rot_on_x,
        [
        if cuttype = one,  #Axis Substitution 
          [
          linarc$ = one  #Linearize all arcs
          if rev_brkflag,  #Break rotation flag (set in pcoutrev)
            [
            brklinestype$ = 11  #Break all lines, use brklineslen$ for segment length
            #brklineslen$ = pi$ * rotdia$        #Break every 360 degrees
            brklineslen$ = pi$ * rotdia$ / four  #Break every 90 degrees
            rev_brkflag = zero  #Reset flag
            ]
          ]
        if cuttype = two, #Polar
          [
          #linarc$ = one
		  #DO NOT LINEARIZE ARCS, OTHERWISE YOU'LL GET OUTPUT ABOUT EVERY 1 DEGREE ON THE C AXIS ROTARY!!!
          rev_brkflag = zero  #Reset flag
          ]
        ]
Link to comment
Share on other sites

I did have it spelled correctly (copied and pasted from an X9 post).  The post being used doesn't have that pmotion_su variable.  I would like to make this something that can be turned on and off using an misc integer variable (which my current Roeders post uses).  If I can find the proper variable name I can make the mod to the post.

 

Thanks for the help!

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