You are on page 1of 9

Lesson 12: Geometry Offsets

Lesson 12
Geometry Offsets

Most of what you need to know about geometry offsets is presented in Lessons Six and
Seven. There are just a few more points we want to make about this important CNC
feature.

You know from Lessons Six and Seven that current model Fanuc controls are equipped with geometry
offsets. You also know that geometry offsets will be your method of choice for assigning program zero. The
only reason to assign program zero in the program with G50 is if the turning center does not have geometry
offsets – as will be the case with older turning centers (made before about 1987). And of course, if your
machine does not have geometry offsets, you can skip this lesson.
In this lesson, we’re assuming that your turning center has geometry offsets, and that you’re using them to
assign program zero.

Review of reasons for using geometry offsets to assign program zero


Again, there are several advantages to using geometry offsets as compared to assigning program zero within
the program. Here is a quick list of the major advantages shown in Lesson Seven.
?Program zero assignment is separated from the program (improved ease of use)
?Only two values must be entered for each tool (improved ease of use)
?If the control is equipped with the measure function, error prone calculations and offset
entries are eliminated (safety is improved)
?With the feature work shift, redundant Z measurements for cutting tools left in the
turret from job to job can be eliminated (improved efficiency)
?The turret can be in any location at the beginning of the program (improved efficiency
and ease of use)
?The turret can be in any location when re-running tools (improved efficiency and ease
of use)
?For tool changing, the turret can be sent to any safe index point (improved efficiency)

How geometry offsets work


As you know from Lessons Six and Seven, the control must be told the distances in X and Z from the cutting
tool tip while the machine is resting at its zero return position to the program zero point. We call these
distances the program zero assignment values. You know there are several ways to actually determine and enter
these values, and we won’t repeat those presentations from Lessons Six and Seven here.
While it may not be of the utmost importance, you may find it helpful to understand what actually happens
when geometry offsets are used. (Of course, what is of utmost importance is that you know how to use
geometry offsets – as is presented in Lessons Six and Seven.)
You know that each cutting tool will have a different set of program zero assignment values. When geometry
offsets are used, program zero assignment values (one set per tool) are placed in each tool’s geometry offset.
The geometry offset number will match the tool station number, so the program zero assignment values for
tool number six will be placed in geometry offset number six.

TCPO Page 1 Copyright 2012, CNC Concepts, Inc.


Lesson 12: Geometry Offsets

You can get a better understanding of how geometry offsets actually work by looking at the absolute position
display page (not the relative page) right after power up and before a program is executed. While monitoring
this page, send the machine to its zero return position in the X and Z axes.
With the machine is resting at its zero return position right after powering up, most machines will set the
absolute position display page to X00.0000 and Z00.0000. Think about this. The absolute position display
page always shows the machine’s position relative to the program zero point. At this point in time, the control
actually thinks the zero return position is the program zero point!
Whenever a geometry offset is instated (with the first two digits of the T word) the distances from the tool tip
at the zero return position to the program zero point will be transferred to the absolute position display screen
registers. If the machine is not currently at the zero return position in one axis of the other, it will even take
this into consideration when it sets the absolute position display values.
For example, say the current X and Z registers of geometry offset number one are set to:
X-12.2437 Z-11.8476
The machine is currently at the zero return position when the T word T0101 is executed. At this point the
absolute position display registers will show X12.2437 and Z11.8476 (again if the machine is currently at the
zero return position in X and Z – and if the work shift offset is currently zero). The machine now knows how
far it is from the tool tip to the program zero point, and can correctly make the motions commanded by the
program to machine the workpiece.
Again, if the machine is not at the zero return position when a geometry offset is instated, it will consider this
when it sets the absolute position display. For example, say the machine is precisely one inch in each axis
from the zero return position (closer to the workpiece – on the negative side of the zero return position). In
this case, when the T word T0101 is executed, the absolute position displays will show X11.2437 and
Z10.8476. The machine has correctly compensated for the turret’s position, and still knows the correct
distance between the program zero point and the tool tip.
This is why the machines starting position is not critical when geometry offsets are used. The turret can be in
any location and the machine will still correctly determine the cutting tool’s position – and set the absolute
position displays accordingly.
What about work shift? If you’re using geometry offsets in conjunction with the work shift value, the
machine will also consider this when setting the absolute position displays as geometry offsets are instated. In
the scenario just given (machine is one inch from the zero return position), say you have placed a value of 2.5
in the Z register of the work shift offset (this is the distance from the chuck face to the program zero point).
The Z value in the geometry offset now represents the distance from the tool tip at the zero return position
and the chuck face. When the T word T0101 is executed, now the machine will set the absolute position
display to X11.2437 and Z08.3476 (Z value is calculated by taking the 11.8476 geometry offset value minus
the 1.0 distance to Z axis zero return position minus the 2.5 work shift value). Again, the machine will always
be able to determine the distance between the program zero point and the tool tip.

The total program zero assignment value


As you now know, the absolute position displays will be correctly updated whenever a T word is executed.
And the machine will take into consideration the geometry offset value for the tool, the work shift value (for
the Z axis), and the machine’s current position. But there’s one more thing that affects the values being placed
in the absolute position displays when a T word is executed – the wear offset values for the tool.
Wear offsets are presented in Lesson Thirteen. For now, we simply want to point out that a wear offset will
also be instated when a T word is executed. The machine will total the geometry offset, the wear offset, the
work shift value, and the machine’s current position relative to the zero return position. It will use the result
(in each axis) as the total offset for the tool. These are the true program zero assignment values for the tool – they are the

TCPO Page 2 Copyright 2012, CNC Concepts, Inc.


Lesson 12: Geometry Offsets

distances from the program zero point to the tool tip (in each axis) at the very moment the T word is
executed. It will place these values on the absolute position display page. Figure 4.4 shows an example.
How total offset (true program zero assignment values) are calculated
Z axis geometry offset value (-12.2874)

Turret is at the zero


Work shift value
return position
(4.5)

Tool 1 Wear offsets for tool one: X: 0.0057 Z: 0.0034

When T0101 is executed:


FANUC 10T

Absolute position display

X11.8519
Program zero
X axis geometry offset value
(-11.8576)
Z07.7840
X geometry offset (-11.8576) plus X wear offset (0.0057) plus machine position for zero return (0.0) equals 11.8519
Z geometry offset (-12.2874) plus Z wear offset (0.0034) minus work shift value (4.5) plus machine position (0.0) equals 7.7840

Figure 4.4 – How total offset is calculated

Admittedly, you don’t have to know how geometry offsets work to use them. But it’s important to know that
nothing magical is happening. Additionally, this presentation should help you understand the function of each
value involved with program zero assignment.

Warning about the machine lock feature:


Though most current turning centers do not have this function, if you own an older Fanuc-controlled turning
center, it might have a feature called machine lock. If it does, you’ll notice and on/off switch on the control
panel named machine lock.
In the on position, machine lock will keep the machine’s axes from moving. It can be used during verification
to allow the control to scan a questionable (new) program for syntax mistakes. With machine lock turned on,
you can run the program and let the control check for syntax mistakes. The control will go through the entire
program, thinking the machine’s axes are moving when in fact, they are not.
While machine lock may be helpful for finding syntax mistakes, it can cause major problems with geometry
offsets. If the program does not leave the turret in exactly the same location it starts from (most turning
center programs do not), the machine lock function will cause the machine to be out of sync. Again, when
machine lock is turned on, the control thinks the axes are moving. It continues to track axis position,
regardless of how the motion is commanded.
If the control is out of sync with the true axis position, the results can be disastrous. In essence, the machine
does not know where the axes are positioned, and after machine lock is turned off, it will not be able to
correctly move them when a program is activated. The result is commonly a crash.
If your machine has the machine lock function, we urge you to always leave it off (don’t use it). If you do
decide to use it for program verification purposes, remember that you must turn the power off in order to
clear the confusion it has caused. After power-up, the machine will be in sync again once you do a zero
return.

TCPO Page 3 Copyright 2012, CNC Concepts, Inc.


Lesson 12: Geometry Offsets

Minimizing program zero assignment effort from job to job


Figure 4.5 shows (once again) our recommended method of program zero assignment when geometry offsets
are used. Remember, this method can be used regardless of whether or not your machine has a tool touch off
probe – and regardless of whether or not it has the measure function. It does require, of course, that your
machine has the work shift offset.
Program zero assignment values using geometry offsets & work shift

Z axis geometry offset value


FAN U C 10T
O N G P A 7 8 9 RESET

POWER
ON X U
Y V
Z W Q B 4 5 6 START

X00.0000 I J K R C Sp
1 2 3

Work shift value OFF


Z00.0000
F
M
E

PAGE
D
S]
?
H
T
CURSOR
@

(
L
EO
@

)
#
/ *
,
-
+
0
= CAN
CALC

I N P U T

S H I F T NC/PC

AUX

CYCLE FEED
MDI JOG
START HOLD ON

AUTO HANDLE
OFF
DRY SINGLE MACHINE OPTIONAL BLOCK
EDIT ZERO RUN BLOCK LOCK STOP DELETE
MODE RETURN ON ORIGIN
OFF
100%
25% 50%
X Z
X+ 10% 100%
MEMORY X10
X1 X100
Z Z+ PROTECT X Z
-
0% 200% 9 10 11
X- 8 12
RAPID 7
FEEDRATE 6
JOYSTICK OVERRIDE
OVERRIDE 5
4 0
3
EMERGENCY
STOP ON OFF 2
SLOW FAST 1 TURRET INDEX
SPINDLE

100%
100%
0 130
0% 130
OD ID

SPINDLE LOAD AXIS LOAD

X Z
CLAMP
DIRECTION

Program zero

X axis geometry offset value


CHUCK TAILSTOCK

Figure 4.5 – Program zero assignment values when our recommended method is used

Many of the cutting tools used in turning centers are used from job to job. Indeed, some tools remain in the
turret on a permanent basis. Consider, for example, a rough turning tool. In many companies, all jobs require
a rough turning operation. The same is often true for a finish turning tool. And if your company performs
threading operations on a regular basis, a threading tool will be often needed.
For internal work, a drill is required – unless the raw material comes in the form of tubing. While the size of
the drill will vary from job to job, most companies will dedicate a turret station to hold the drill. The same
goes for rough boring and finish boring tools. While boring bar sizes will often change from job to job, turret
stations are dedicated to rough and finish boring bars.
For this reason, programmers often come up with a series of standard tool stations in the turret. Here is an
example:
?Station one: Rough turning and facing tool (80 degree diamond shaped insert)
?Station two: Finish turning and facing tool (55 degree diamond shaped insert)
?Station three: Threading tool (Insert may change from job to job based upon thread
pitch)
?Station four: Grooving tool (Insert will change from job to job based upon groove
width)
?Station six: Drill (Drill size will change from job to job based upon hole size)
?Station eight: Rough boring bar (boring bar size will change from job to job)
?Station ten: Finish boring bar (boring bar size will change from job to job)
The goal, of course, is to minimize the work that must be done between jobs during setup. The physical tasks
related to placing tools into the turret can be dramatically minimized. But so can many of the tasks related to

TCPO Page 4 Copyright 2012, CNC Concepts, Inc.


Lesson 12: Geometry Offsets

program zero assignment – as well as the tasks related to trial machining and sizing as the first workpiece in
the new job is machined.
As a simple example, consider this scenario. Say two jobs run consecutively that require a rough turning tool,
a finish turning tool, and a threading tool (stations 1, 2, and 3 above). When setting up the first job, the three
tools must be loaded into the turret (if they’re not already in place). Program zero assignment values must be
measured and entered. We’ll say the work shift value is being used, so it must also be measured and entered.
When the setup person runs the fist workpiece, they’ll size in all dimensions – making adjustments as
necessary. The rest of workpieces are then run.
When the first job is completed, the second job must be run. Though it may be of a totally different
configuration, it requires the same three tools. In this scenario, there won’t be much work for the setup
person to do – at least related to cutting tools and program zero assignment. Since all three tools are currently
in the turret and in the correct turret stations, there will be no need to remove or mount cutting tools. And
since chuck face is the point of reference for geometry offsets, and since the chuck face position doesn’t
change from job to job, the geometry offsets need not be measured. Only one value – the work shift value –
must be measured and entered – assuming the workpiece in the second job is not of the same length as the
workpiece in the first job.
And our point is: If a cutting tool is machining properly in one job, it will continue to do so in the next job. As long as you use
our recommended method of program zero assignment (working from the chuck face with geometry offsets and using the work shift
value), any tool used in the previous job will remain properly set for the next job.
In our given scenario, even the sizes machined by each tool will come out correctly in the second job. If tools
were machining surfaces within tolerance bands in the first job, they will continue to do so in the second job.
There is an exception to this statement having to do with workpiece material. If workpiece material changes
dramatically (consider machining tool steel in one job and machining aluminum in the next), there will be a
difference in tool pressure. This variation may cause the need to trial machine for finishing operations in the
new job. But by the way, this dramatic difference in workpiece material will probably require a different insert
grade to be used from one job to the next. In effect, the same tool is not being used from job to job.

So when do you clear geometry offsets?


This brings up a good point about clearing (setting to zero) geometry offset values. For as long as a cutting
tool remains in the turret, the related program zero assignment values will be correct. Even if a cutting tool is
not needed in a given job (and as long as the turret station is not needed), its related program zero assignment
will remain intact as the job is run.
Some setup people begin their setups by clearing all offsets. This can be a dreadful (time wasting) mistake –
requiring duplicated effort during every setup.
We recommend that you get in the habit of clearing offsets for a tool (geometry and wear) as you remove the tool
from the turret. With this technique, you can rest assured that the program zero assignment values are correct
for any cutting tool that is currently in the turret (even for tools not used in every setup).

Key points for Lesson Twelve:


?Geometry offsets should be your method-of-choice for program zero assignment.
?The machine will total the geometry offset, wear offset, work shift value, and the machine’s position
relative to the zero return position and use the result as the total offset. It will place these values on
the absolute position display page. These are the true program zero assignment values – the
distances from the program zero point to the tool tip in each axis.
?With our recommended method of program zero assignment, program zero assignment values will
remain correct from job to job.
?Program zero assignment must only be done for new tools placed in the turret during setup.

TCPO Page 5 Copyright 2012, CNC Concepts, Inc.


Lesson 12: Geometry Offsets

?The work shift value must be measured and entered for each job.
?Get in the habit of clearing offsets (geometry and wear) for a tool as you remove the tool from the
turret.

TCPO Page 6 Copyright 2012, CNC Concepts, Inc.


Lesson 12: Geometry Offsets

Work on a multi-tool program


Drawing: Instructions: This is the exercise from Lesson Nine. In it, you used our
1.5 0.125 chamfer
recommended process to plan tool paths and calculate coordinates needed
in the program. The process, tool paths, and coordinates are shown below.
Use them to fill in the blanks for the program that follows.

Process:
3.0 Tool one: Rough face leaving 0.005 for finishing. Rough turn 0.125 chamfer
0.0625 and 2.5 diameter (one pass) leaving 0.080 on the 2.5 diameter and
chamfer 2.5 0.005 on the 1.5 face for finishing (Feed: 0.012 ipr, Speed: 500 sfm)
Tool two: Drill (1.0 diameter drill) through the workpiece (Feed: 0.008 ipr,
1.0 Speed: 1,150 rpm)
1.5 Tool three: Rough bore 0.0625 chamfer and 1.5 diameter (one pass), leaving
0.040 on the diameter and 0.005 on the 1.875 face (Feed: 0.007 ipr,
Speed: 400 sfm)
Tool four: Finish bore 0.0625 chamfer and 1.5 diameter to size (Feed: 0.005
ipr, Speed: 500 sfm)
Tool five: Finish turn 0.125 chamfer and 2.5 diameter to size (Feed: 0.005 ipr,
1.875 Speed: 500 sfm)
2.375

Tool paths:
Tool one: Rough face & turn Tool two: Drill 1.0 hole Tool three: Rough bore
8 0.04 1
6
7
5 4
12 11
14
13
0.02
15 16
2 3 10 9

Coordinate sheet:
Tool four: Finish bore Tool five: Finish face & turn
30
1: X3.2 Z0.005 25: X1.3 Z0.1
2: X-0.062 Z0.005 26: X2.25 Z0.1
28 23
3: X-0.062 Z0.1 27: X2.25 Z0
29
27 26 4: X2.33 Z0.1 28: X2.5 Z-0.125
18 17 5: X2.33 Z0.005 29: X2.5 Z-1.5
20
19 6: X2.58 Z-0.12 30: X3.2 Z-1.5
24 25
22 7: 2.58 Z-1.495
21 8: 3.2 Z-1.495
9: X0 Z0.1
10: X0 Z-2.705
11: X1.585 Z0.1
O0002 (Program number) 12: X1.585 Z0.005
13: X1.46 Z-0.0575
(ROUGH FACE AND TURN) 14: X1.46 Z-1.87
N005 T0101 M41 (Index turret, select low spindle range) 15: X0.95 Z-1.87
16: X0.95 Z0.1
N010 ____ _______ ____ (Start spindle fwd at 500 sfm) 17: X1.625 Z0.1
N015 ____ _______ _______ M08 (Rapid to point 1, turn on coolant) 18: X1.625 Z0
19: X1.5 Z-0.0625
N020 G99 ____ _______ _______ (Face to point 2 at 0.012 ipr) 20: X1.5 Z-1.875
N025 ____ _______ (Rapid away to point 3) 21: X0.95 Z-1.875
22: X0.95 Z0.1
N030 _______ (Rapid up to point 4) 23: X2.7 Z0
N035 ____ _______ (Feed up to point 5) 24: X1.3 Z0

N040 _______ _______ (Chamfer to point 6)


N045 ________ (Turn 2.5 diameter to point 7)
N050 ________ (Feed up face and off part to point 8)

Answer program is on the next page.

TCPO Page 7 Copyright 2012, CNC Concepts, Inc.


Lesson 12: Geometry Offsets

Work on a multi-tool program (continued)


N055 G00 X8.0 Z7.0 (Rapid to tool change position)
N060 M01 (Optional stop)
(DRILL 1.0” HOLE)
N065 T0202 M41 (Index turret, select low spindle range)
N070 ____ _______ ____ (Start spindle at 1,150 rpm)
N075 ____ _______ _______ M08 (Rapid to point 9, turn on coolant)
N080 ____ _______ _______ (Feed to point 10 at 0.008 ipr)
N085 ____ _______ (Rapid back to point 9)
N090 X8.0 Z7.0 (Rapid to tool change position)
N095 M01 (Optional stop)
(ROUGH BORE)
N100 T0303 M41 (Index turret, select low spindle range)
N103 ____ _______ ____ (Start spindle at 400 sfm)
N105 ____ _______ _______ M08 (Rapid to point 11, start coolant)
N110 ____ _______ _______ (Feed to point 12 at 0.007 ipr)
N115 _______ _______ (Chamfer to point 13)
N120 _______ (Rough bore 1.5 to point 14)
N125 _______ (Feed down face to point 15)
N130 ____ _______ (Rapid to point 16)
N135 X8.0 Z7.0 (Rapid to tool change position)
N140 M01 (Optional stop)
(FINISH BORE)
N145 T0404 M42 (Index turret, select high spindle range)
N150 ____ _______ _____ (Start spindle at 500 sfm)
N155 ____ _______ _______ M08 (Rapid to point 17, turn on coolant)
N160 ____ _______ _______ (Feed to point 18 at 0.005 ipr)
N165 _______ _______ (Chamfer to point 19)
N170 _______ (Bore 1.5 to point 20)
N175 _______ (Feed down face to point 21) N235 _______ (Turn 2.5 to point 29)
N180 ____ _______ (Rapid to point 22) N240 _______ (Feed up face to point 30)
N185 X8.0 Z7.0 (Rapid to tool change position) N245 G00 X8.0 Z7.0 (Rapid to tool change position)
N190 M01 (Optional stop) N250 M30 (End of program)

(FINISH FACE AND TURN)


N195 T0505 M42 (Index turret, select high spindle range)
N200 ____ _______ ____ (Start spindle at 500 sfm)
N205 ____ _______ _______ M08 (Rapid to point 23, turn on coolant)
N210 ____ _______ _______ (Face to point 24 at 0.005 ipr)
N215 ____ _______ (Rapid to point 25)
N220 _______ (Rapid to point 26)
N225 ____ _______ (Feed to point 27)
N230 _______ _______ (Chamfer to point 28)

Answer program is on the next page.

TCPO Page 8 Copyright 2012, CNC Concepts, Inc.


Lesson 12: Geometry Offsets

Answer program
O0002 (Program number) (FINISH BORE)
(ROUGH FACE AND TURN) N145 T0404 M42 (Index turret, select high spindle range)
N005 T0101 M41 (Index turret, select low spindle range) N150 G96 S500 M03 (Start spindle at 500 sfm)
N010 G96 S500 M03 (Start spindle fwd at 500 sfm) N155 G00 X1.625 Z0.1 M08 (Rapid to point 17, turn on coolant)
N015 G00 X3.2 Z0.005 M08 (Rapid to point 1, turn on coolant) N160 G01 Z0 F0.005 (Feed to point 18 at 0.005 ipr)
N020 G99 G01 X-0.062 F0.012 (Face to point 2 at 0.012 ipr) N165 X1.5 Z-0.0625 (Chamfer to point 19)
N025 G00 Z0.1 (Rapid away to point 3) N170 Z-1.875 (Bore 1.5 to point 20)
N030 X2.33 (Rapid up to point 4) N175 X0.95 (Feed down face to point 21)
N035 G01 Z0 (Feed up to point 5) N180 G00 Z0.1 (Rapid to point 22)
N040 X2.58 Z-0.12 (Chamfer to point 6) N185 X8.0 Z7.0 (Rapid to tool change position)
N045 Z-1.495 (Turn 2.5 diameter to point 7) N190 M01 (Optional stop)
N050 X3.2 (Feed up face and off part to point 8) (FINISH FACE AND TURN)
N055 G00 X8.0 Z7.0 (Rapid to tool change position) N195 T0505 M42 (Index turret, select high spindle range)
N060 M01 (Optional stop) N200 G96 S500 M03 (Start spindle at 500 sfm)
(DRILL 1.0” HOLE) N205 G00 X2.7 Z0 M08 (Rapid to point 23, turn on coolant)
N065 T0202 M41 (Index turret, select low spindle range) N210 G01 X1.3 F0.005(Face to point 24 at 0.005 ipr)
N070 G97 S1150 M03 (Start spindle at 1,150 rpm) N215 G00 Z0.1 (Rapid to point 25)
N075 G00 X0 Z0.1 M08 (Rapid to point 9, turn on coolant) N220 X2.25 (Rapid to point 26)
N080 G01 Z-2.705 F0.008 (Feed to point 10 at 0.008 ipr) N225 G01 Z0 (Feed to point 27)
N085 G00 Z0.1 (Rapid back to point 9) N230 X2.5 Z-0.125 (Chamfer to point 28)
N090 X8.0 Z7.0 (Rapid to tool change position) N235 Z-1.5 (Turn 2.5 to point 29)
N095 M01 (Optional stop) N240 X3.2 (Feed up face to point 30)
(ROUGH BORE) N245 G00 X8.0 Z7.0 (Rapid to tool change position)
N100 T0303 M41 (Index turret, select low spindle range) N250 M30 (End of program)
N103 G96 S400 M03 (Start spindle at 400 sfm)
N105 G00 X1.585 Z0.1 M08 (Rapid to point 11, start coolant)
N110 G01 Z0 F0.007 (Feed to point 12 at 0.007 ipr)
N115 X1.46 Z-0.0575 (Chamfer to point 13)
N120 Z-1.87 (Rough bore 1.5 to point 14)
N125 X0.95 (Feed down face to point 15)
N130 G00 Z0.1 (Rapid to point 16)
N135 X8.0 Z7.0 (Rapid to tool change position)
N140 M01 (Optional stop)

TCPO Page 9 Copyright 2012, CNC Concepts, Inc.

You might also like