On Thu, 15 Apr 2021 at 05:49, Stuart Stevenson <[email protected]> wrote:
> My current attention to the project is driven by my desire to have 5 axis > cutter diameter compensation in LinuxCNC. I think that there is an argument that this is better done in the CAM as it has a much better idea where the material is, and can handle non-cylindrical cutters. Not that I am against the idea of it being doable in the controller, I just think that it won't see much use. > Circular interpolation is also an area to be simplified. G17, G18 and G19 > can be eliminated. They would have to stay so legacy programs would still > function. I would implement G02/G03 as follows: > G02/G03 X Y Z I J K F would circle the tool around a vector perpendicular > to a plane described by the IJ values combined with the XY start point It might be simpler to just define the centre point with IJK and eliminate the explicit plane entirely. I think that start, centre and end defines a circular arc in 3D space completely?) The interpreter could learn to use the new-style arc whenever it sees all three of IJK. Or, alternatively, we could use the currently unused G16 code to mean "arbitrary planes" (G16 means "Polar coordinates" in Fanuc, but LinuxCNC uses @ and ^ for that. If clashing with Fanuc is a problem then G19.9 could be used.) I think that I prefer an INI entry in [TRAJ] that turns accepting all of IJK in an M2 / M3 on and off. Note that there is already an old branch that attempted arbittrary arcs https://github.com/LinuxCNC/linuxcnc/tree/arbitrary-arc You can see the chages here: https://github.com/LinuxCNC/linuxcnc/commit/0fc41d50c1bce2bdecc8a90e6e5057af5153d66f This used a "magic comment" to define the curve, but it can be seen that it is pretty much the same input data as suggested above. -- atp "A motorcycle is a bicycle with a pandemonium attachment and is designed for the especial use of mechanical geniuses, daredevils and lunatics." — George Fitch, Atlanta Constitution Newspaper, 1912 _______________________________________________ Emc-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-developers
