On 16 May 2013 03:19, Chris Morley <chrisinnana...@hotmail.com> wrote: > So either I add code to G10 L10 to redirect if the the lathe switch is active, > or we abandon Fanuc a bit and put the geometry offsets in T01 instead of > T10001 > (so the opposite). > > At this point I really start to wonder how often G10 L10 P10001 is used in > current > lathe Gcode and start to consider other alternatives such as P01 for > geometry, P0101 for wear > etc. - It really makes it easier if the geometry offsets are under the plain > tool number
I have been thinking about this quite a lot (and it is probably worth having a look at the discussion on http://psha.org.ru/irc/%23emc-devel/2013-05-15.html#21:42:42 (though it might be worth donning a thick skin). For the moment, let's forget about lathe-style patches, and see how wear offsets could work in conventional RS274NGC. Also, for the moment, I am going to talk about "primary" and "secondary" offsets. What I think would work would be to add an extra parameter to G43. G43 Hnn Emm would apply the primary offsets of tool nn and the secondary offsets of tool mm G43 Hnn would apply both primary and secondary offsets from tool nn G43 Emm would leave the primary offset unchanged and apply secondary offset mm. (perhaps it should apply the primary offset of the loaded tool?) G43 would apply primary and secondary offsets for the currently loaded tool. If nn or mm are zero (rather than missing) then the relevant offset is zeroed. I am using "E" as it appears to be the most nearly "spare" word available. I was initially thinking about I (but that may be front-angle) and Q (but that is orientation) Curiously the G-code reference page (http://www.linuxcnc.org/docs/html/gcode.html) says that G43,1 takes I and K words, but the docs do not say what for, and I haven't found them used in the code. I don't see any reason why you would need secondary offsets in G43.1. Does anyone else see a need? We also need to consider G10 L1 / L10. There seem to be many ways to do this. Possibly the most future-proof would be G10 L1 Pnn for primary-offset, G10 Pnn L1.1 for secondary (G10 L1.2 for tertiary....) Alternatively, more consistent might be G10 L1 Emm to set secondary offsets and Pnn for primary. I think that with a lathe-mode switch set, you could internally interpret P > 100000 to an E-number instead. (Though I doubt that much _G-Code_ contains G10 L10 P100nn blocks, my impression is that it is an operator-MDI thing.) I think discussing this in the context of existing G-code is clearer than discussing it in the context of any future compatibility-switches. -- atp If you can't fix it, you don't own it. http://www.ifixit.com/Manifesto ------------------------------------------------------------------------------ AlienVault Unified Security Management (USM) platform delivers complete security visibility with the essential security capabilities. Easily and efficiently configure, manage, and operate all of your security controls from a single console and one unified framework. Download a free trial. http://p.sf.net/sfu/alienvault_d2d _______________________________________________ Emc-developers mailing list Emc-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-developers