Community
HSM Post Processor Forum
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Can HSMWorks post output no arcs?

4 REPLIES 4
Reply
Message 1 of 5
CFSDesigner
1278 Views, 4 Replies

Can HSMWorks post output no arcs?

Hi,

the machine I am trying to interface with works best when the posted file contains no arcs (G01 only).  Does the post support conversion of arcs to line within tolerance?  If so, how do I do that? 

as an example I want to cut a 5" diameter, but I want the post to output line segments to tolerance to approximate that 5" diameter with G01 line moves only.  Can this be done in this post?

Thank you!
Mike
4 REPLIES 4
Message 2 of 5
skidsolo
in reply to: CFSDesigner

Yes you can, find the function onCircular then add:

linearize(tolerance);
as the only option

if this is the only option you will get linearization to the tolerance specified.

You can send your post to cam.posts@autodesk.com and we will edit the file for you.
Andrew W. Software engineer (CAM Post Processors)
Message 3 of 5
Rob.Lockwood
in reply to: CFSDesigner

Mike Marcott wrote:

Hi,

the machine I am trying to interface with works best when the posted file contains no arcs (G01 only).  Does the post support conversion of arcs to line within tolerance?  If so, how do I do that? 

as an example I want to cut a 5" diameter, but I want the post to output line segments to tolerance to approximate that 5" diameter with G01 line moves only.  Can this be done in this post?

Thank you!
Mike


Yes..

In fact, all of the arc generation code is setup to default to this mode if the arc doesn't fit a few filters. Removing those filters would cause it to linearize all arcs, which it sounds like you're after.

    switch (getCircularPlane()) {
    case PLANE_XY:
      writeBlock(gPlaneModal.format(17), gMotionModal.format(clockwise ? 2 : 3), xOutput.format(x), yOutput.format(y), zOutput.format(z), "R" + rFormat.format(r), feedOutput.format(feed));
      break;
    case PLANE_ZX:
      writeBlock(gPlaneModal.format(18), gMotionModal.format(clockwise ? 2 : 3), xOutput.format(x), yOutput.format(y), zOutput.format(z), "R" + rFormat.format(r), feedOutput.format(feed));
      break;
    case PLANE_YZ:
      writeBlock(gPlaneModal.format(19), gMotionModal.format(clockwise ? 2 : 3), xOutput.format(x), yOutput.format(y), zOutput.format(z), "R" + rFormat.format(r), feedOutput.format(feed));
      break;
    default:
      linearize(getTolerance())
    }


there are typically few nearly identical sections like this one, which cover different arc conditions and arc output types.. but from the code you can see that if the arc falls onto a 2d work plane, then it's output as an arc. If it doesn't, it passes through the filters and reaches the 'linearize' method. Remove the various "case" filters and you should have your desired result.


Rob Lockwood
Maker of all the things.
| Oculus | | Locked Tool | | Instagram |

Message 4 of 5
CFSDesigner
in reply to: CFSDesigner

Rob & Andrew - Thank you for the reply. 

I replaced the entire section as such


function onCircular(clockwise, cx, cy, cz, x, y, z, feed) {
 
      linearize(tolerance);

}


This worked.  Thanks for both your replies!
Message 5 of 5

Mike Marcott wrote:

Rob & Andrew - Thank you for the reply. 

I replaced the entire section as such


function onCircular(clockwise, cx, cy, cz, x, y, z, feed) {
 
      linearize(tolerance);

}


This worked.  Thanks for both your replies!


Mike,

Know that now all arc are linearised to the value on the top of the post.
tolerance = spatial(0.002, MM);

This could cause a lot of little line pieces in the corners which you probably don't want when roughening.
You could use a calculation with the operation tolerance to make sure you're not overdoing the linearisation.
Maybe something like this
if (hasParameter("operation:tolerance")) {  
var linearizeTolerance = getParameter("operation:tolerance")/10; 
}
else{
var linearizeTolerance = tolerance;
}
linearize(linearizeTolerance);

Maybe you could think about it. Not sure if it's completely working you would need to check it.

Laurens Wijnschenk
3DTechDraw

AutoDesk CAM user & Post editor.
René for Legend.


Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report