Community
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

LinuxCNC post support for G61 and G64 path blending with tolerance

LinuxCNC post support for G61 and G64 path blending with tolerance

I've been looking at the code generated by post processor supplied for LinuxCNC and I realised that it is not applying any settings for G61 (exact path mode) or G64 (path blending) either in the code preamble or per operation.

 

The default for LinuxCNC in the absence of either of these commands is to use G64 with no tolerance (i.e. no maximum deviation from programmed path), so we can end up with smooth but inaccurate parts unless the preamble is manually entered to the file or the machine defaults have something else specified (which may be inappropriate for the part to be machined).

 

Ideally I'd like to see roughing moves such as the 2D & 3D adaptive machining implement G64 per operation and take the motion blending tolerance from the specified tolerance in the operation. For finishing operation such as contour, then G61 would be used for best accuracy.  Perhaps also, if the tolerance specified is below a certain value, then G64 would be substituted for G61.

 

I managed to edit the post processor to enable the creation of a G64 Px line in the file preamble, but realised that this wasn't good enough if multiple operations were in the file and that my knowledge of Javascript is insufficient to safely proceed.

 

Relevant LinuxCNC documentation:

G61, G61.1 Exact Path Mode

G64 Path Blending

LinuxCNC Trajectory control

 

4 Comments
dgoodell
Community Visitor

I ran my first CNC program using a combination of Fusion 360 and a cheap mill that used LinuxCNC and the deviations from the programmed path caused me a lot of confusion until I figured out about G64 and G61.

 

It would make much more sense to me that the default would be exact path and path blending would be "optional". Making G64 active during "roughing" operations would be ok but Fusion 360 already seems to create fairly smooth paths with things like adaptive clearing.

 

It would be great if it was at least a setting in the post processing screen for linuxCNC so at least we could easily turn it on and off and be aware of it.

RSStephens
Contributor

I needed this functionality, so I ended up making my own post.

 

Its a bit of a mishmash of several other posts I have found over the years and my own code, with support for manual NC and a 20second pause after spindle start (my spindle takes a while to get up to speed).

 

It allows the input of G64 with a P value and Q value when post processing, with preset values (set in post) or custom values added in the post menu.

 

you can also easily add changes in your program between operations by setting G64 via manual NC (setup some templates with these if you want to be really efficient).

Just remember to always set a value or LinuxCNC will use the last value.

 

If there is enough interest I will clean up (I have a lot of unprofessional notes in the code) and try to give credit (where I can remember the original author) where it is due, before posting it here for others.

 

spangled
Explorer

Hi FrustratedToolPaths

 

It's taken me too long to reply to your post, but I'm sure many (myself included) would be very keen to see your post-processor and so would be most grateful if you could share it.

 

The features you have added sound useful and the more knowledge we can all gather and share, the better.

billcainautodesk
Autodesk
 
Hello All,
 
Are these codes only used for milling processes?
 
I'll have a look at adding them to the Generic Post.
 
Thanks
Bill Cain

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

Submit Idea  

Autodesk Design & Make Report