News CNCnetPDM About us Support  
         
TNC Device Driver | Heidenhain | Support | inventcom
  

TNC DEVICE DRIVER

This highly configurable Heidenhain device driver for CNCnetPDM enables you to acquire and output machine-, process- and quality data from machines with Heidenhain TNC 426, 430, 320, 620, 640 and iTNC 530 controllers, see adapted controllers

You can dynamically define your own set of items (up to 30) that can be enabled and disabled on a per machine basis by an INI file that is automatically created with reasonable default values for each machine configured. This INI file also allows you to define your own names for every tag.

PREREQUISITES | DOWNLOAD DRIVER | LICENSING | SETUP CNCNETPDM | USAGE | ADJUST ITEMS | COMMANDS | TIPS | TROUBLESHOOTING

PREREQUISITES

  • Make sure that you have an Ethernet network connection between your PC and the machine and get data, use our HeidenhainData utility to do so.
  • Please also add an exception for TCP port 19000 in your Firewall.

DOWLOAD DRIVER

TOP

LICENSING

This device driver requires the most recent version of CNCnetPDM and also works with a free license. However, in this mode you only get output for the first item configured in your INI file. With a valid license you are able to output the result of up to 30 functions per reading cycle, see licensing for details.

TOP

SETUP CNCNETPDM

  • Download CNCnetPDM and install it as described in the quick-start-guide.
  • Download the Heidenhain driver, extract all content of heidenhain_dll.zip into the folder where you have CNCnetPDM installed.
  • Edit CNCnetPDM.ini and add a new device as described in the quick start guide point 7. If you already have an entry in section [RS232] for a machine with a Heidenhain controller you can simply copy and paste this line and change its content.
  • Change the line as follows:

CNCnetPDM.ini Heidenhain

FIG 1:    Configure Heidenhain device driver in CNCnetPDM.ini

For machines with Heidenhain controllers the following 3 parameters are important

  1. Right to the IP Address of the controller (here 192.165.1.208) enter number 19000 (=port)
  2. Right to the DNS Hostname of your machine (here AXA1012) enter a unique sequential number (here 1) between 1 and 58 for every Heidenhain controller connected to CNCnetPDM.
  3. Change the driver name to heidenhain.dll TOP

USAGE

  • Start CNCnetPDM, foreground program is sufficient (Start thread)
  • CNCnetPDM automatically copies the original heidenhain.dll and appends the machine number as configured in the INI file, e.g. heidenhain_1001.dll for machine 1001.
  • In addition an INI file with the same name is automatically created by the device driver, e.g. heidenhain_1001.ini for your first machine.
  • Double click CNCnetControl, if your device number is 1001 and the device name is HEIDENHAIN #1 the output should be similar to the one below:

CNCnetControl Heidenhain

FIG 2:    CNCnetControl (Heidenhain)

Here the machine (1) shows up as connected (2) which is good. On the right side (3) you see the acquired data:

  • The line starting with O contains items defined in the INI file of the device that should be output to section 1. If you didn’t change the INI file you get something like the following:

1001 01/17/2018 04:05:54 PM O STATN| 4| STATT| Interrupted| MODEN| 4| MODET| Automatic| PRGSN| 7| PRGST| Idle| OVRFD| 100| OVRSP| 100| OVRRP| 100|  10000000019

Every item has a description followed by its value. All descriptions and values are delimited by pipe ‘|’ symbols. This allows CNCnetPDM to create a database record for every item. TOP

With an unmodified INI file the initial configured items are:

ID

NAME

DESCRIPTION

1

STATN

OEE Device state (numeric)

2

STATT

OEE Device state (text)

3

MODEN

Device mode (number)

4

MODET

Device mode (text)

5

PRGSN

Program state (number)

6

PRGST

Program state (text)

7

PRGMN

Name of the selected program

8

PRGCU

Name of the active program

9

BLKCU

Actual block number

10

ERRCL

Error class (iTNC 530 only)

11

ERRGR

Error group (iTNC 530 only)

12

ERRTX

Error text (iTNC 530 only)

13

TOOLN

Tool number (iTNC 530 only)

14

TOOLI

Tool index (iTNC 530 only)

15

TOOLA

Tool axis (iTNC 530 only)

16

TOOLL

Tool length (iTNC 530 only)

17

TOOLR

Tool radius (iTNC 530 only)

18

OVRFD

Override feed %

19

OVRSP

Override speed %

20

OVRRP

Override rapid %

21

AXESP

Position of axes

22

PLCB1

A byte value from the PLC

23

PLCW1

A word value from the PLC

24

PLCD1

A dword value from the PLC

25

DATA1

A data value from the tool table (iTNC530 only)

FIG 3:    IDs, names and description of items TOP

ADJUST ITEMS

This device driver enables to dynamically add, group, enable or disable items and change their names. The INI file automatically created by the device driver for every machine contains sections that allow you to control its behavior.

Section [GENERAL] contains information about global parameters used by the driver on startup, please only change the value from iTNC530 = 0 to 1 if you’re using an iTNC530 controller! Commands defines the number of commands you’d like to execute, maximum value = 30.

Items you query are organized in sections e.g. [2]. Every section contains entries where you can define names and parameters for a specific item.

Description of the numeric sections:

Entry

Description

[2]

Section identifier, numbers starting with 2 are queried

Active

If you set this to 0 the command is not executed

Name

A short name (max 5 characters) to describe the item e.g. STATN for status number

Comment

A comment that describes the command (optional)

Command

Command to be executed e.g. cnc_oeestatus for the command group that contains running status. To change a command select an available command group, copy it and paste it into the INI file.

Input parameter 1

For some commands input parameters can be used to set an input parameter (PLC), control output formatting e.g. program name with or without path or a divisor for an output value, see the command description.

Input parameter 2

Necessary for some commands (default -1)

Output item

Most command groups have sub-commands that enable you to define a specific item to be output by the driver e.g. statenumber from cnc_oeestate outputs the device state.

Output section

You can output data to 3 sections that may contain up to 256 characters. 1 goes to section ‘O’, 2 to ‘A’ and 3 to ‘F’. If data in one section exceeds the maximum length you can send items to a different section. Make sure you have entries CollectOrders, CollectFeeder and CollectQuality enabled (=1) in CNCnetPDM.ini.

FIG 4:    Description of a device INI file section

Note:   To change commands, switch items on or off or alter its name while CNCnetPDM is running open the INI file with a text editor such as notepad, make the desired changes and save the file. To apply the changes immediately you can click on the machine in CNCnetControl on the left side followed by clicking buttons ‘Close’ and ‘Open’ above the section ‘Devices’. TOP

COMMANDS

Below you can find commands and output items that can be used with this driver.

  • Important note: Almost all of the items with note ‘iTNC530 only’ can also be output from Heidenhain TNC 426, 430, 320, 620 and 640 controllers by using plcbyte, plcword or plcdword commands. Please contact us in this case for detailed instructions.

COMMAND

OUTPUT ITEM

NOTES

cnc_oeestate

statenumber

Numeric OEE state of the device (2 = producing, 3 = manual, 4 = interrupted, 5 = error)

cnc_oeestate

statetext

State of the device as text (producing, manual, interrupted, error)

cnc_oeestate

modenumber

Numeric running mode of the controller (0 = Manual, 1 = MDI, 2 = Pass Reference, 3 = Single Step, 4 = Automatic, 5 = Undefined)

cnc_oeestate

modetext

Running mode of the controller (text output)

cnc_oeestate

prgstatenumber

NC program state (numeric) (0 = Started, 1 = Stopped, 2 = Finished, 3 = Cancelled, 4 = Interrupted, 5 = Error, 6 = Error Cleared, 7 = Idle, 8 = Undefined)

cnc_oeestate

prgstatetext

NC program state (text)

ncprogram

NameSelectedProgram[1]

Selected program, if you set ‘Input parameter 1’ to 1 only the program name without path is output

ncprogram

NameSelectedProgram[2]

Active (running) program, if you set ‘Input parameter 1’ to 1 only the program name without path is output

ncprogram

NameActiveProgram

Active (running) program, same as above, works on some older controllers

ncprogram

BlockNr

Actual program block executed

error

ErrorClass

Error class if any (iTNC530 only)

error

ErrorGroup

Error group if any (iTNC530 only)

error

ErrorNumber

Error number if any (iTNC530 only)

error

ErrorText

Error text if any (iTNC530 only)

tool

ToolNr

Tool number (iTNC530 only)

tool

ToolIndex

Tool index (iTNC530 only)

tool

ToolAxis

Tool axis (iTNC530 only)

tool

ToolLen

Tool length (iTNC530 only)

tool

ToolRad

Tool radius (iTNC530 only)

override

Feed

Feed override (percent)

override

Speed

Speed override (percent)

override

Rapid

Rapid override (percent)

axes

 

No output item has to be specified. By setting ‘Input parameter 1’ to a positive value you can limit the number of axes that should be output (e.g. 3)

plcbyte

 

No output item has to be specified. ‘Input parameter 1’ defines the PLC address. ‘Input parameter 2’ can be used if the output value has to be divided, use 1 for no division, do not use 0 or -1!

plcword

 

‘Input parameter 1’ = PLC address.
‘Input parameter 2’ = Divisor

plcdword

 

‘Input parameter 1’ = PLC address.
‘Input parameter 2’ = Divisor

data

\\TABLE\\TOOL\\T\\1\\DOC

Output item = item to be queried (iTNC 530 only). In this example a value from the tool table is read.

FIG 5:    Description of available command groups and output items TOP

TIPS

To quickly test and build a working INI file for your controller you can use our tool devicedrivertester. If used with this driver the program creates INI file heidenhain.ini. To use this file for CNCnetPDM you can simply append an underscore and the machine number e.g. heidenhain_1001.ini for device number 1001.

If you want to add additional items (up to 30 in total) first adjust the number of commands in section [GENERAL]. Then, copy and paste the last numeric section and adjust the section number and its content. TOP

TROUBLESHOOTING

The device driver writes a log file entry for any communication issue to the log file of the device. The file can be found in subdirectory \log of your CNCnetPDM program folder. The file format for the log file is log_ + device number + _ + date.txt. Please check this file first if you observe an issue.

If the machine shows a red icon, state disconnected and you get just output E = 0 the machine is not reachable at all. This has nothing to do with the device driver, it’s a network issue, DNS Hostname or IP Address is wrong.

If the machine shows a green icon, state connected but you just get output E = 1 the machine is reachable but the controller does not respond to commands, check your controller setup and the parameters used in CNCnetPDM.ini (esp. port number).Please use the tool HeidenhainData to check if the machine replies to commands.

If you do get numeric device states but not any of the preconfigured items please make sure that entries CollectOrders, CollectQuality and CollectFeeder are set to 1 in section [General] of CNCnetPDM.ini.

If specific items are not acquired check first with HeidenhainData that you get output. Also make sure that the numeric section of the item in the device drivers INI file is activated and has an entry for ‘Name’, inactive or items with empty names are not acquired. Also check that you didn’t misspell entries for command and output item in your device driver INI file. TOP

Support | Heidenhain | Overview
For Heidenhain TNC and iTNC controllers CNCnetPDM enables you to acquire and monitor machine-, process- and quality-data and integrate it seamlessly with your business... [read more]
Overview
Support | Heidenhain | Release Notes
HEIDENHAIN (3/20/2018) Updated tools for machine data acquisition and Heidenhain device drivers are available. In addition the programs now support the... [read more]
Release Notes
Support | Heidenhain | TNC Machine Data
For Heidenhain TNC and iTNC controllers CNCnetPDM enables you to acquire and monitor machine-, process- and quality-data. Seamless integration of the data with your business... [read more]
TNC Machine Data
Modified: 2018-03-26