Disabling G2/G3 arcs

Disabling G2/G3 arcs

Anonymous
Not applicable
5,028 Views
4 Replies
Message 1 of 5

Disabling G2/G3 arcs

Anonymous
Not applicable
Hello, I'm using Fusion 360 CAM which is awesome, and attempting to control a custom CNC machine with an Arduino running Repetier firmware and Repetier host.  However it is getting confused by the G17, G18 and G19 commands that select the xy, xz and yz planes.  Supposedly Repetier can support G2/G3, but I've read it just breaks the arcs into segments anyway (perhaps the arc computations being challenging for an Arduino), and apparently is not capable of understanding what plane is being selected for the arcs. 

So I was hoping there might be some way to disable arc and associated plane selection commands, perhaps by post processor modification?  Attached is a post processor I found that appears to work well for Repetier, except for this issue.  Note that I've disabled Smoothing, but still get arcs in the gcode, such as for the Parallel finishing operation. 

Any help would be highly appreciated!

Jesse
0 Likes
5,029 Views
4 Replies
Replies (4)
Message 2 of 5

Rob_Lockwood
Advisor
Advisor
This probably belongs in the post processor section..

allowedCircularPlanes = undefined; // allow any circular motion

This line, found right near the top of the post, sets which planes arcs can occur on. I forget the syntax, so someone can probably jump in and help.. I believe setting "1" in place of "undefined" will limit planes only to the XY plane, and will output linearized approximations for YZ/XZ arcs. This is probably a better compromise than eliminating them all, and I think it's worth a shot before linearizing them all.


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

0 Likes
Message 3 of 5

Anonymous
Not applicable
That's awesome Rob!  I'll play around with it and report back.
Jesse
0 Likes
Message 4 of 5

Laurens-3DTechDraw
Mentor
Mentor
Rob Lockwood wrote:

This probably belongs in the post processor section..

allowedCircularPlanes = undefined; // allow any circular motion

This line, found right near the top of the post, sets which planes arcs can occur on. I forget the syntax, so someone can probably jump in and help.. I believe setting "1" in place of "undefined" will limit planes only to the XY plane, and will output linearized approximations for YZ/XZ arcs. This is probably a better compromise than eliminating them all, and I think it's worth a shot before linearizing them all.


You are looking for this line I guess:

allowedCircularPlanes =  (1 << PLANE_XY) | (0 << PLANE_ZX) | (0 << PLANE_YZ);

Laurens Wijnschenk
3DTechDraw

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


Message 5 of 5

Anonymous
Not applicable
Yep value of 1 keeps arcs to the XY plane, and appears that value 0 prevents arcs. 
Thanks guys.  Again exciting times!
Jesse 
0 Likes