Co-ordinate System Group, G90 and G91
The coordinate data can be input into the program either in the absolute or in the incremental system. The absolute coordinate system is indicated by the preparatory function G90. In absolute system, the dimensions are given with respect to a common datum established by the programmer. Refer to Figure 5, where the point O is the datum with OX being the X-axis and OY the Y-axis.
Figure 5 : Absolute (G90) and Incremental (G91) Systems
Suppose the route to be 0-A-B-C-D in absolute programming system, then the programming will be as follows :
N010 G90 G01 X5.0 Y15.0 F200; Point A
N015 X15.0 Y20.0; Point B.
N020 X25.0 Y15.0; Point C
N030 X35.0 Y10.0; Point D
G90 code is modal and will remain in force till it is cancelled by another code from the same group, i.e. G91 for incremental programming.
When the order of movement changes, the actual programming of the coordinates is not affected in the absolute programming mode. Suppose the route to be 0-A-C-B then the following programming will be used :
N010 G90 G01 X5.0 Y15.0 F200; Point A
N015 X25.0 Y15.0; Point C
N020 X15.0 Y20.0; Point B.
In the case of incremental programming, the G-code used is G91. In the incremental programming, the actual distance moved by the tool from the current position is programmed. Unlike as with G90, the programmed data changes only if the route of the move is altered. Referring back to Figure 4.5, the program for route 0-A-B-C would be
N010 G91 G01 X5.0 Y15.0 F200; Point A
N015 X10.0 Y5.0; Point B.
N020 X10.0 Y-5.0; Point C
When route is changed to 0-A-C-B, then the program will have to be rewritten as follows:
N010 G91 G01 X5.0 Y15.0 F200; Point A
N015 X20.0; Point C
N020 X-10.0 Y5.0; Point B.
While writing NC program in incremental mode, care has to be taken to designate the actual movement of the tool in the positive or negative axis direction. This is true even when the movement of the tool is in the first quadrant as in Figure 5, still some of the movements have been identified as negative because the tool is moving in the negative axis direction. Thus, more care is needed in incremental programming. It is generally suggested that a fresh programmer may stick to programming in absolute system in the beginning. This will help in reducing the possible mistakes in specifying the coordinates. Any error in coordinates in absolute programming will result in only an error in that block, while in the case of incremental programming the error will continue further down in all subsequent blocks.
With experience the programmer may find that the incremental programming requires less calculations in arriving at the programming dimensions, while for absolute programming a number of dimensions need to be recalculated from the chosen datum, if the part drawing is not properly dimensioned. It is possible to write in a given program, both absolute and incremental systems. However, care has to be exercised by the programmer to arrive at the coordinate dimensions according to the chosen dimensional system.