NewsCNCnetPDMAbout usSupport
  

DNC OPTION 18 | HEIDENHAIN

For newer Heidenhain machine controllers ‘DNC Option 18’ can be purchased optionally. Without it most of the high level language commands to communicate with the equipment from a remote PC are not available. However, even in this case CNCnetPDM allows reading and writing of data. This article describes all steps to setup data acquisition without DNC option 18 from Heidenhain iTNC 530, 320, 620, 640 and TNC7 controllers.

CHECK OPTION AVAILABILITY | ADJUST CNCNETPDM (iTNC 530) | ADJUST CNCNETPDM (TNC 320 - TNC7) | DISABLE UNSUPPORTED COMMANDS | TIPS

CHECK OPTION AVAILABILITY

If the DNC option is not activated the controller refuses to output most information related to machine status to remote devices. If you get output like the following with HeidenhainData or CNCnetPDM just outputs OEE status 1 or 5 even if everything is setup correctly you should check availability of the option.

HeidenhainData output without DNC option 18

FIG 1:    HeidenhainData output without DNC option 18 (TNC 640)
  • Note: To review the activation status simply switch the controller to programming mode, press the [MOD] button and enter code-number SIK. If, under SIK Options, HEIDENHAIN DNC is unchecked the option is not activated.

ADJUST CNCNETPDM

With CNCnetPDM the required data can be acquired by reading it directly from the machine’s Programmable Logic Controller (PLC). To do so you have to modify the INI file that is automatically created by CNCnetPDM for the respective machine on first startup e.g. heidenhain_1000.ini for equipment number 1000.

iTNC 530 CONTROLS

This and all older types set PLC marker address values to 0 or 1 according to the actual machining mode (manual, automatic…) and program state (running interrupted…). As the addresses have fixed values it is sufficient to change entry ‘Legacy PLC’ from 0 to 1 in section [GENERAL] of the devices INI file. In addition deactivate commands that are only supported with Option 18.

TNC 320, 620, 640 and TNC7 CONTROLS

Although these models also keep track of machining mode and program state in their PLC their address location can differ even between machines as the machine manufacturer can freely assign them. So knowledge about area and address of the required items is required to get correct output.

  • To inform CNCnetPDM that no DNC option is available change entry ‘No DNC Option’ in section [GENERAL] from 0 to 1, make sure that ‘Legacy PLC’ is set to 0.
  • As these NCK based devices usually store mode and state information in the PLCs Double Word (DWord) area change ‘PLC Marker Command’ from plcmarker to plcdword. Possible commands are plcmarker, plcbyte, plcword and plcdword.

To correctly detect the machine state CNCnetPDM needs to know the numeric PLC addresses of operation modes and program states. As these Computer Numerical Controls (CNC) use symbolic names that point to numeric addresses the next step is to check their actual assignment at the controller.

At the machine’s operator panel switch to mode ‘Programming’ (1), press key [MOD] and enter code number 807667 or the machines PLC password (2).

Access Heidenhain PLC DWORD address area

FIG 2:    Access Heidenhain PLC DWORD address area (TNC 640)

Next, press key below [TABLE] (3) followed by [B/W/D/S] (4). Then, press [DWORD] (5) and [HEX<->DECIMAL] (6). Scroll down to address D4120. Find the following symbolic names and note down their addresses (7). See the tips section for help on searching. The PLC addresses in the following table refer to the ‘Basic PLC program’. Adresses on your controller may differ from these values.

PLC Address

Item

Symbolic Name

4136

OP Manual

APIOMG[0].NN_OMGMANUAL

4144

OP MDI

APIOMG[0].NN_OMGMDI

4140

OP Handwheel

APIOMG[0].NN_OMGHANDWHEEL

4148

OP Automatic single

APIOMG[0].NN_OMGPROGRAMSINGLE

4152

OP Automatic full

APIOMG[0].NN_OMGPROGRAMRUN

4156

OP Traversing

APIOMG[0].NN_OMGREFERENCE

4352

PR Running

APICHN[0].NN_CHNCONTROLINOPERATION

4360

PR Interrupted

APICHN[0].NN_CHNPROGSTOPPED

4304

PR Error active

APICHN[0].NN_CHNERRORWARNING

4308

PR Stopped ext.

APICHN[0].NN_CHNERRORFSTOP

4316

PR Stopped ext.

APICHN[0].NN_CHNERRORNCSTOP

4324

PR Emergency A

APICHN[0].NN_CHNERROREMERGENCYSTOP

4328

PR Emergency B

APICHN[0].NN_CHNERRORLIFTOFF

4332

PR Emergency C

APICHN[0].NN_CHNERRORRESET

4368

PR Finished

APICHN[0].NN_CHNPROGEND

FIG 3:    PLC Addresses, items and symbolic names

Next, adjust section [MARKERS] in the device INI file and change the numeric values of the OP and PR items according to their assignment at your control e.g.:

[MARKERS]
PLC Marker Command = plcdword
OP Manual = 4136
OP MDI = 4144
OP Handwheel = 4140
OP Automatic single = 4148
OP Automatic full = 4152
OP Traversing = 4156
PR Running = 4352
PR Interrupted = 4360
PR Error active = 4304
PR Stopped extern = 4308
PR Stopped intern = 4316
PR Emergency A = 4324
PR Emergency B = 4328
PR Emergency C = 4332
PR Finished = 4368

FIG 4:    INI Marker section for TNC 640 (Basic PLC program)

DISABLE UNSUPPORTED COMMANDS

For controls without DNC option 18 you have to disable output from all numeric sections [1] - [35] that contain one of the following commands by setting ‘Active’ to 0.

Unsupported Command

ncprogram

error

tool

override

axes

cutter

data

FIG 5:    Commands not supported without DNC option 18

TIPS

  • Use HeidenhainPLC to check if the PLC address output values change according to the machines mode and program state. DWord values change from 0 to +255 if a marker gets activated.

  • At the PLC symbolic names are organized in groups:
    General data APIGEN
    Operating modes APIOMG[OMG_COUNT]
    Machining channels APICHN[CHANNEL_COUNT]
    Axes APIAXIS[AXIS_COUNT]
    Spindles APISPIN[SPINDLE_COUNT]

    To search for a specific symbolic name just scroll down in the selected PLC area until you find an item that starts with the group of the desired symbolic name. The groups usually start above address 4000. Then, navigate through the entries until you find the required name.

  • Most output of commands that are not supported without DNC option 18 can also be read from the machine’s PLC by using commands plcmarker, plcbyte, plcword, plcdword or parameter. Examples (DWord values):
    SPINDLE[0].DG_RPM = Spindle Speed
    APICHN[0].NN_CHNPROGFEEDMINUTE = Programmed Feed
    APICHN[0].NN_CHNCONTOURFEED = Feed Rate
    APICHN[0].NN_CHNAFCSPINDLELOAD = Spindle Load
    < Global >\NN_DG_TOOL_NUMBER = Actual Tool Number

    For details review the technical documentation of the machine or ask your machine manufacturer.

  • On NCK based controllers (TNC320, TNC 620, TNC640 and TNC7) the assignment of numeric values to symbolic names can also be found out by creating a service file. To do so either press [ERR] + 'Create Service File' at the controller or, in TNCRemo, select 'Extras' + 'Create Service File'. The controller then locally stores a zipped service archive in a selected folder. If you open the archive with TNCRemo you can find file PlcDataMarker.txt in folder \SYS_\runtime\ that contains the required information.

Privacy notice

This website uses cookies. By continuing to use it you agree to our privacy policy. 

https://www.inventcom.net/support/heidenhain/dnc-option-18

Support | Heidenhain | Overview

For machines with Heidenhain TNC/iTNC controllers CNCnetPDM enables you to acquire and monitor machine-, process-, part-counter and quality-data and integrate it seamlessly with... [read more]
Support | Heidenhain | Overview

Support | Heidenhain | Release Notes

(11/19/2023) We released an updated version of our CNCnetPDM IIoT Adapter for machines with Heidenhain controllers that adds new features and enhances compatibility with MS... [read more]
Support | Heidenhain | Release Notes

Support | Heidenhain | TNC Machine Data

For machines with Heidenhain TNC and iTNC controllers CNCnetPDM enables to acquire, monitor and write machine-, process- and quality-data in near real time. Seamless integration... [read more]
Support | Heidenhain | TNC Machine Data

Support | Heidenhain | Machine Monitoring

This highly configurable Heidenhain device driver for CNCnetPDM enables you to monitor machine-, process- and quality data from machines with Heidenhain TNC 426, 430, 320, 620,... [read more]
Support | Heidenhain | Machine Monitoring

Support | Heidenhain | Read TNC PLC Data

For machines with Heidenhain TNC and iTNC controllers this program enables to read and output PLC (Programmable Logic Controller) data from an external PC connected to the... [read more]
Support | Heidenhain | Read TNC PLC Data

Support | Heidenhain | Write TNC PLC Data

This utility program for machines with Heidenhain TNC and iTNC controllers allows writing and reading of PLC data and machine parameters from an external PC connected to the... [read more]
Support | Heidenhain | Write TNC PLC Data

Support | Heidenhain | Read Part Counters

For any kind of performance-, OEE- or cycle-related analysis of machine data information about the number of produced workpieces is required. For machines equipped with... [read more]
Support | Heidenhain | Read Part Counters
Modified: 2023-11-28