Tool Offset Variables
Offset Memory Types
Fanuc has three offset memory configurations, set by the machine builder. The type determines how tool length and diameter offsets are stored and which system variable ranges are used.
| Type | Structure | Length Variables | Diameter Variables |
|---|---|---|---|
| A | Combined (single value per tool) | #2001-#2200 (offset) | #2001-#2200 (shared) |
| B | Geometry + Wear separate | Geometry #11001-#11999, Wear #10001-#10999 | Geometry #13001-#13999, Wear #12001-#12999 |
| C | H-code + D-code independent | H-code geometry/wear | D-code geometry/wear |
Most modern machines use Type B (geometry + wear). Type B is the most common and most useful configuration for macro programming.
Tool Length Offset Variables (Type B)
| Variable Range | Function | Example |
|---|---|---|
#10001-#10999 | Tool length WEAR | #10001 = tool 1 length wear |
#11001-#11999 | Tool length GEOMETRY | #11001 = tool 1 length geometry |
Variable number = base + tool number. Reading example: #100=#11001 reads tool 1 length geometry. Writing example: #11005=125.003 sets tool 5 length geometry to 125.003.
Tool Diameter Offset Variables (Type B)
| Variable Range | Function | Example |
|---|---|---|
#12001-#12999 | Tool diameter/radius WEAR | #12001 = tool 1 diameter wear |
#13001-#13999 | Tool diameter/radius GEOMETRY | #13001 = tool 1 diameter geometry |
Same base + tool number pattern as tool length offsets.
Reading and Writing Offsets
Read current tool length: #100=#11001 (tool 1 geometry). Adjust wear: #10001=#10001+0.001 (add 0.001 to tool 1 wear). Use indirect access for the current tool: #100=#[11000+#4120] where #4120 = current T number.
CAUTION: Writing to geometry offsets during a program can cause unexpected tool length compensation changes if G43 is active.
Practical Examples
Tool Breakage Detection
(COMPARE TOOL LENGTH TO EXPECTED)
#100=#[11000+#4120] (CURRENT TOOL GEOMETRY)
IF [ABS[#100-#500] GT 1.0] THEN #3000=200(TOOL LENGTH ERROR)
Automated Wear Update
(MEASURED VALUE IN #500, NOMINAL IN #501)
#100=#500-#501 (DEVIATION)
#[10000+#4120]=#[10000+#4120]+#100 (ADD TO WEAR)
Copy Offsets Between Tools
(COPY TOOL 5 OFFSETS TO TOOL 15)
#11015=#11005 (LENGTH GEOMETRY)
#10015=#10005 (LENGTH WEAR)
#13015=#13005 (DIA GEOMETRY)
#12015=#12005 (DIA WEAR)
See also: Fanuc System Variables for the complete variable reference, and Modal & Position Data for position and work offset variables.
References
- Peter Smid, Fanuc CNC Custom Macros, Industrial Press, 2004.
- Fanuc, Operator’s Manual / Parameter Manual, FANUC Corporation.
Have a question or want to contribute?
Contact us with corrections, additions, or topics you'd like covered.
Get in Touch