Use the geometry-table address in the P word: for tool-table position 01, program P10001, not P01. On the Manual Guide 18i turning installation described here, P01 selected the wear entry, while P10001 selected geometry position 01. Build each presetting record as P100__ plus the table position, with the final two digits identifying that position.
Symptom Interpretation
The visible symptom is that a block such as G90 G10 P01 X69.193 Z152.121 R0 Q7 does not load the measured geometry values into the intended table. Instead, the control writes to the wear table, where corrections are expected to be small. Attempts to enter values greater than 10 then fail or are refused on this installation.
The term geometry offset here means the base dimensional data obtained from tool measurement or a tool presetter. A wear offset is a smaller correction applied to compensate for cutting-edge wear, process drift, or a minor dimensional adjustment. Loading presetter dimensions into wear fields is wrong practice because it mixes the measured tool geometry with subsequent process corrections.
| Observed result | Address used | Selected destination | Engineering conclusion |
|---|---|---|---|
| Small corrections appear in the wear table | P01 |
Wear position 01 | The block is valid enough to execute, but its table selector is wrong for geometry data. |
| Values greater than 10 cannot be entered | P01 |
Wear position 01 | The control is applying the permitted range for the selected wear field; reducing the geometry value is not the remedy. |
| Presetter dimensions appear in the geometry table | P10001 |
Geometry position 01 | The geometry address form is correct for this table position. |
Offset-Table Addressing Mechanism
G10 performs programmable data input. The coordinate words carry the values, but the P word determines which offset record receives them. A syntactically accepted block can therefore update the wrong table when its P address points to wear rather than geometry.
For the demonstrated Manual Guide 18i turning configuration, the geometry selector has the form P100__. Replace the final two digits with the position number. Position 01 becomes P10001. The working example is:
G10 P10001 X101.00 Z50.0 R0.2 Q3
The block assigns the supplied X, Z, R, and Q data to geometry position 01. The evidence provides two different records—one containing R0 Q7 and another containing R0.2 Q3—so the presetter export must preserve each tool's intended field values rather than copying the example values to every position.
G90 appears in the unsuccessful test block but not in the working geometry example. That difference does not identify the table; the decisive change is from P01 to P10001. Retain or remove other modal commands only after checking the surrounding NC program and the control's programming manual.
Presetter Record Preparation
Map every presetter record to the intended offset-table position before generating NC code. The position number is a database key, not merely a display label: one incorrect final digit can place valid measurements against the wrong cutting tool.
| Generated field | Required source | Check before output |
|---|---|---|
P100__ |
Assigned geometry-table position | The final two digits match the intended row. |
X |
Presetter data mapped to the control's X geometry field | Sign, units, and axis convention match the target control setup. |
Z |
Presetter data mapped to the control's Z geometry field | Sign, units, and reference convention match the target control setup. |
R |
Tool-specific radius value | The exported value belongs to the same tool record. |
Q |
Tool-specific coded value required by the table | Copy the intended code; do not infer it from geometry position. |
Do not infer unit conversion, diameter-versus-radius interpretation, or sign reversal from the sample numbers. Read those conventions from the presetter export definition and the control's offset display. A correct P address routes the data; it does not correct incorrectly transformed measurement data.
Geometry-Loading Procedure
- Select a test tool and record the current geometry and wear entries for its table position. Use a position whose values can be checked without disturbing production data.
- Assign the presetter record to the same two-digit geometry-table position. For position 01, generate
P10001. - Populate the tool-specific coordinate and auxiliary fields. A demonstrated block is
G10 P10001 X101.00 Z50.0 R0.2 Q3. - Transfer the generated NC program to the control using the site's established program-transfer method.
- Review the complete block on the control before execution. Compare the position suffix and every signed numeric value with the presetter record.
- Execute the test block under controlled conditions, then open the geometry and wear displays before running any cutting cycle.
- After the single-position test passes, generate the remaining records by changing both the table-position suffix and the values associated with each tool.
Verification Checks
-
Check 1: geometry destination. Expect geometry position 01 to contain
X101.00,Z50.0,R0.2, andQ3after executing the demonstrated block. - Check 2: wear isolation. Expect wear position 01 to remain at its recorded pre-test values. Any change there indicates that the executed record still used the wear-address form.
- Check 3: row selection. Expect adjacent geometry positions to remain unchanged. A change in another row indicates an incorrect position suffix or a mismatch between presetter assignment and control-table numbering.
- Check 4: source agreement. Expect every displayed sign and decimal value to match the generated NC record and the presetter export. Routing the block to the correct table does not validate measurement conventions.
Recurring Addressing Pitfalls
Do not treat a wear-range rejection as proof that the measured tool is invalid. When P01 selects the wear table, a large presetter dimension is being checked against the wrong destination. Changing the value until the control accepts it corrupts the intended geometry.
Do not generate every tool with P10001. Only position 01 uses that address. Build the suffix from the assigned table row and validate the generated set for duplicate positions, omitted positions, and off-by-one numbering.
Do not copy R0.2 Q3 or R0 Q7 as universal defaults. Those are tool-record values from separate examples. Each generated block must carry the radius and coded field belonging to that tool.
Do not approve a batch solely because the first geometry row changed. Check that wear remained unchanged, neighboring rows were untouched, and the displayed geometry agrees with the presetter record.
FAQ
Why does FANUC G10 write my tool data into wear offsets?
The P word selects the destination. On this Manual Guide 18i turning configuration, P01 addresses wear position 01; use P10001 for geometry position 01.
Why does G10 reject tool offset values greater than 10?
The block is targeting a wear field whose accepted range is smaller on this installation. Correct the table address to the P100__ geometry form rather than reducing a valid presetter dimension.
How do I verify a G10 geometry-offset transfer?
Execute one test record, then compare the geometry row with the X, Z, R, and Q values in the generated block. As the final verification step, expect the corresponding wear row and both adjacent geometry rows to remain unchanged.