iTNC 530 Tables & System Data

The iTNC 530 keeps everything that Fanuc hides behind offset screens and #2000-series variables in plain, editable files: the tool table is a file, the presets are a file, datums are a file — and the control gives your NC program functions to read and write them. This reference maps the table landscape, the FN 26/27/28 functions for your own tables, FN 18: SYSREAD for system data, and FN 16: F-PRINT for formatted output.

The Table Landscape

File type is carried by the extension. The ones a programmer touches:

FileExtensionWhat it holds
Programs
Klartext / DIN-ISO program.H / .IPart programs (smarT.NC adds .HU/.HC/.HP)
Tables
Tool table.TTool geometry & life data. The active one is always TOOL.T in TNC:\; other .T files are archives/test-run tables
Pocket table.TCHMagazine pockets ↔ tools; TOOL_P.TCH in TNC:\, needed for automatic tool change; up to 9999 pockets
Preset table.PRWorkpiece presets in REF (machine) coordinates — PRESET.PR in TNC:\
Datum tables.DDatum shifts in workpiece coordinates, activated per line with Cycle 7
Pallet / point tables.P / .PNTPallet management / machining-position point files
Cutting data.CDTCutting-data tables for automatic speed/feed calculation
Freely definable tables.TABYour own columns and rows — the FN 26/27/28 target
ASCII text (masks, logs).APlain text — FN 16 format masks and log output

TOOL.T key columns: T (number, indexed like 5.2), NAME (32 chars max, capitals), L/R/R2 (length, radius, corner radius for toroid cutters), DL/DR/DR2 (delta/wear values, ±999.9999 mm), LCUTS and ANGLE (tooth length and max plunge angle for Cycles 22/208/25x), TL (tool locked), RT (replacement tool), TIME1/TIME2/CUR.TIME (tool life), DOC, PLC, NMAX, plus the TT measuring columns (CUT, LTOL, RTOL, DIRECT, R-OFFS, L-OFFS, LBREAK, RBREAK). It is editable only in a machine operating mode via the TOOL TABLE soft key.

TOOL_P.TCH key columns: P (pocket), T (tool number), ST (special/oversize tool), F (fixed pocket), L (locked pocket), RSV and LOCKED_ABOVE/BELOW/LEFT/RIGHT for box magazines, PTYP and P1…P5 (machine-builder defined).

PRESET.PR: lives in TNC:\, is editable only in Manual / El. Handwheel modes (read-only in Programming and Editing), stores presets referenced to the machine coordinate system, and carries a basic rotation in its ROT column. Line 0 is write-protected — the TNC parks the most recent manually set datum there. Machine-builder lines can be locked (shown red). Activate a preset from a program with Cycle 247 DATUM SETTING.

Datum tables (.D): workpiece-coordinate shifts, always relative to the current preset. Select the table with SEL TABLE (PGM CALL key → DATUM TABLE soft key) before Cycle 7, then activate a line:

77 CYCL DEF 7.0 DATUM SHIFT
78 CYCL DEF 7.1 #5              ; activate datum line 5 (a Q parameter works too)

Manual notes worth respecting: without SEL TABLE you must give the table status M in the file manager before running; datum-table values act only on absolute coordinates; new lines can be inserted only at the end; and old TNC 4xx datum tables referenced to the machine datum (MP7475 = 1) cannot be used on the iTNC 530. Probing cycles can populate both datum tables and the preset table automatically (parameters Q303/Q305 — see the probing article).

FN 26/27/28 — Freely Definable Tables

Create a .TAB file in the file manager (the TNC offers stored table formats; run COPY SAMPLE FILES first if the pop-up doesn’t appear), then shape it in the structure editor: each row of the editor defines one column via NR, NAME, TYPE (N numeric, C alphanumeric, L long, X date/time), WIDTH, DEC (max 4 decimals), and language dialogs. Limits: 30 columns, 200 characters per row.

FunctionExample (verbatim from the manual)Notes
FN 26: TABOPEN56 FN 26: TABOPEN TNC:\DIR1\TAB1.TABOnly one table open per NC program; a new TABOPEN closes the last one; extension must be .TAB
FN 27: TABWRITE56 FN 27: TABWRITE 5/"RADIUS,DEPTH,D" = Q5Writes line 5, columns RADIUS/DEPTH/D from successive Q parameters Q5, Q6, Q7; up to 8 columns per block; numeric fields only
FN 28: TABREAD56 FN 28: TABREAD Q10 = 6/"RADIUS,DEPTH,D"Reads line 6 into Q10, Q11, Q12; up to 8 columns; numeric fields only
53 FN0: Q5 = 3.75                            ; radius
54 FN0: Q6 = -5                              ; depth
55 FN0: Q7 = 7.5                             ; D
56 FN 27: TABWRITE 5/"RADIUS,DEPTH,D" = Q5   ; write all three to line 5

Test-run gotcha: FN 27 also writes during Test Run by default. Guard with a mode check — FN 18 ID990 NR2 IDX16 returns 0 in Test Run and 1 in a Program Run mode, so you can jump around the write.

FN 18: SYSREAD — Reading System Data

One block reads any exposed control datum into a Q parameter. The address is a group ID, a number NR within the group, and (where needed) an index IDX:

55 FN 18: SYSREAD Q25 = ID210 NR4 IDX3   ; active scaling factor, Z axis

32 FN 20: WAIT FOR SYNC                  ; stop look-ahead first...
33 FN 18: SYSREAD Q1 = ID270 NR1 IDX1    ; ...then read real-time X position

Because the TNC pre-calculates blocks, pair position reads with FN 20: WAIT FOR SYNC as shown, or the value may be stale. The most useful groups on the iTNC 530:

IDGroupHighlights (NR / IDX)
Program & machine state
10Program informationNR1 mm/inch condition, NR3 number of the active fixed cycle, NR4 number of the active machining cycle (cycles > 200)
20Machine statusNR1 active tool number, NR2 prepared tool, NR3 tool axis (0=X…2=Z), NR4 programmed rpm, NR5 spindle state (−1 undef, 0 M3, 1 M4, 2/3 M5), NR8 coolant, NR9 active feed rate
30Cycle parametersNR1 set-up clearance, NR2 drilling/milling depth, NR3 plunging depth, NR13 thread pitch (Cyc 17/18), NR14 finishing allowance — of the active fixed cycle
Tool & magazine data
50Tool table dataIDX = tool number (no IDX = active tool). NR1 L, NR2 R, NR3 R2, NR4 DL, NR5 DR, NR7 tool locked, NR8 replacement tool, NR11 CUR.TIME, NR13 LCUTS, NR14 ANGLE, NR15–22 TT data (CUT, LTOL, RTOL…), NR28 maximum speed NMAX
51 / 52Pocket table / tool pocketID51: IDX = pocket → NR1 tool number, NR2 special tool, NR3 fixed, NR4 locked. ID52: IDX = tool → NR1 pocket number P
56File informationNR1 lines in TOOL.T, NR2 lines in the active datum table
Transformations & positions
200Active tool compensationNR1 radius incl. deltas, NR2 length incl. deltas
210Active transformationsNR1 basic rotation (Manual mode), NR2 programmed rotation (Cycle 10), NR3 mirrored axes (bit-coded), NR4/IDX scaling per axis, NR5/IDX 3-D ROT, NR6/NR7 tilted-plane active in run/manual
220Active datum shiftNR2/IDX 1–9: shift value per axis
230Traverse rangeNR2/NR3 per axis: negative/positive software limit switches
240 / 270Nominal position REF / active systemNR1/IDX 1–9: nominal position per axis
280 / 310M128 / M116, M144 statusWhether the function is active (0 = inactive)
Time, probes, datums, mode
320 / 321System timeID320 NR1: seconds since 1970-01-01; ID321 via SYSSTR as formatted text
350Touch probe dataTS: NR10 probe axis, NR11 effective ball radius, NR12 effective length, NR14 center offset, NR15 offset direction. TT: NR20/IDX 1–3 center in REF, NR21 contact radius
360Last touch pointNR1/IDX axis: last TCH PROBE 0 or manual-mode touch point (active system); NR2 in REF
500505Datum & preset tablesID500/501 datum-table line (active system / REF) — NR = datum number, IDX = axis; ID502/503 preset table (with / without kinematics); ID504 basic rotation from ROT column; ID505 = 0 means no datum table active
510Pallet table dataNR1 active line, NR2 pallet number
990Operating stateNR2 IDX16: 0 = Test Run, 1 = Program Run (the FN 27 guard); NR6 selects probe input X12/X13 via FN 17: SYSWRITE (OEM territory)
1010Machine parameter existsNR = MP number, IDX = MP index; 0 if the MP does not exist

FN 16: F-PRINT — Formatted Output

FN 16 merges a mask file (a .A text file you write once) with live Q values and sends the result to a file, a printer/interface, or the screen. Mask syntax:

ElementMeaning
"…"Output format for text and variables between the quotes
%9.3LFQ-parameter format: 9 characters total incl. decimal point, 3 decimals, Long Float
%SFormat for a text variable (QS parameter)
, / ;Separator between format and parameter / end-of-block character
DAY, MONTH, YEAR4, HOUR, MIN, SECBuilt-in date/time variables
CALL_PATHPath of the NC program containing the FN 16 call
M_CLOSECloses the file being written — end your mask with it
ALL_DISPLAY / MM_DISPLAY / INCH_DISPLAYUnit handling for output values relative to the MOD setting
L_ENGLISH, L_GERMAN, …Emit a line only in the matching conversational language

Example mask (from the manual) and the program-side call:

; MASK1.A - format file
"MEASURING LOG OF IMPELLER CENTER OF GRAVITY";
"DATE: %2d-%2d-%4d",DAY,MONTH,YEAR4;
"TIME: %2d:%2d:%2d",HOUR,MIN,SEC;
"X1 = %9.3LF", Q31;
"Y1 = %9.3LF", Q32;
"Z1 = %9.3LF", Q33;
M_CLOSE;

; In the NC program - mask file / target:
96 FN 16: F-PRINT TNC:\MASK\MASK1.A/RS232:\PROT1.A   ; out the serial interface
96 FN 16: F-PRINT TNC:\MASK\MASK1.A/SCREEN:          ; pop-up window on screen
96 FN 16: F-PRINT TNC:\MASK\MASK1.A/SCLR:            ; clear the pop-up window

Target a full path (e.g. TNC:\PROT1.TXT) to log on the control’s disk. Relative paths resolve to the directory of the calling program. SCREEN: output is how you show free-form operator messages from a macro — the counterpart to Fanuc #3006.

FN 19 & Datum Shifts from Macros

FN 19: PLC pushes up to two values to the PLC (56 FN 19: PLC=+10/+Q3, increments of 0.1 μm or 0.0001°) — the manual restricts it to use agreed with the machine tool builder, so treat it as OEM plumbing, not a portable macro tool. For shifting work offsets from a program, the portable patterns on this control are: write the shift into a datum-table line (FN 27 works on .TAB only — datum tables are maintained via the editor or probing cycles) and activate it with SEL TABLE + Cycle 7, program Cycle 7 values directly from Q parameters, or let a 4xx probing cycle write the preset/datum table for you (Q303/Q305 — see the probing article).

References

  • HEIDENHAIN, iTNC 530 Conversational Programming User's Manual, NC software 606 42x-04, 737759-24.
  • HEIDENHAIN, iTNC 530 Cycle Programming User's Manual, NC software 606 42x-04, 670388-25.

Have a question or want to contribute?

Contact us with corrections, additions, or topics you'd like covered.

Get in Touch