Smithy CNC Mills User Manual
Page 77

8.3.2 Setting coordinate system values within G-code.
In the general programming chapter we listed a G10
command word. This command can be used to change the
values of the offsets in a coordinate system. (add here)
8.4 G92 Offsets
G92 is the most misunderstood and maligned part of EMC programming. The
way that it works has changed just a bit from the early days to the current
releases. This change has confused many users. It should be thought of as a
temporary offset that is applied to all other
offsets.
In response to criticism of it, Ray Henry studied it by comparing the way the
interpreter authors expected it to work and the way that it worked on his Grizzly
minimill. The following quoted paragraphs are extracted from his paper which is
available in several text formats in the dropbox at [http://www.linuxcnc.org].
8.4.1 The G92 commands
This set of commands include;
G92 This command, when used with axis names, sets
values to offset variables.
G92.1 This command sets zero values to the g92 variables.
G92.2 This command suspends but does not zero out the
g92 variables.
G92.3 This command applies offset values that have
been suspended.
When the commands are used as described above, they will work pretty much
as you would expect.
A user must understand the correct ways that the g92 values work. They are
set based upon the location of each axis when the g92 command is invoked.
The NIST document is clear that, "To make the current point have
the coordinates" x0, y0, and z0 you would use g92 x0 y0 z0. G92 does not work
from absolute machine coordinates. It works from current location.
SmithyCNC Programmer’s Reference Manual: Coordinate System
SmithyCNC Programmer’s Reference Manual: Coordinate System
8-6