Kenneth Lerman wrote: > I never use offsets; I use arithmetic by passing the corner as an > argument. Well, I have a C program that generates the G-code for these patterns, and I didn't want to enter all the values to that program 24 times, interactively. Too easy to make a typing mistake. I think my main problem was using G92 Xnnn Ynnn without specifying Z. But, I'm still puzzled why the Z coordinate was shifted in the G54 work offset system. I can now see why the Z in the G55 system could be shifted, as I never set it to a known value.
So, does a G92 affect all work offset systems, or just the one in force at the time a G92 is given? Anyway, it seems the G10 L20 is a much better way to do things, and I'm pretty sure it only affects the currently selected work offset. But, when switching from G54 to G55, you MUST make sure that the offset of all axes are specified, otherwise whatever was last left in that work offset for the non-specified axis remains. I discovered that last night, but it took until this morning to understand WHY. Once I have the scheme for doing this, I will be able to use it again. I could have changed the subroutine to add the passed arguments to every coordinate, but that would have looked a bit messy. This way, I can have one C program that writes absolute coords for a one-off pattern, and then by just adding a couple lines at the top and bottom, turn it into a subroutine for multiple patterns like this. Thanks, Jon ------------------------------------------------------------------------------ _______________________________________________ Emc-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-developers
