Knowledge Base /
Integration Guides
DeltaV Integration with Hardy HI-3030 Weight Controller Using Ethernet/IP
By Geoff Nash
Product: DeltaV Virtual IO Module - VIM2

This technical note details the recommended settings for integrating the Hardy HI-3030 Weight controller using the Generic Device Ethernet/IP driver for the Virtual IO Module.

The Hardy HI-3030 weight controller uses Class1 messaging. An EDS file may be obtained from the HARDY Instruments web site (www.hardyinst.com). Importing this into the VIM_EtipBufferMapping Utility in VimNet Explorer gives the following parameters:

From the HI3000bk.pdf file:

For this purpose output (O) is the VIM, target (T) is the HI-3030.

O->T (connection pt or assembly 150) default size is 16, set to 125, VIM will provide the 32-bit Run/Idle status header.

T->O (connection pt or assembly 100) default size is 20, set to 127, first 32-bits of buffer are the status header, remaining 125 are data.

The data in the input/output buffers are mapped with the Hardy module configuration utility. The exact size of the buffers and the mapping of data in the buffer will therefore depend on this mapping.

EDS file:

$ ControlNet ABS-CNT Electronic Data Sheet

$ Copyright (c)1999,2000 HMS Fieldbus Systems AB

[File]

DescText = "HI-3000 Series";

CreateDate = 06-14-2002;

CreateTime = 11:11:51;

ModDate = 06-14-2002;

ModTime = 15:47:00;

Revision = 1.4;

[Device]

VendCode = 0x0102;

VendName = "Hardy Instruments, Inc.";

ProdType = 12;

ProdTypeStr = "Communication Adapter";

ProdCode = 1;

MajRev = 1;

MinRev = 1;

ProdName = "HI-3000";

Catalog = "HI-3000";

[Device Classification]

Class1 = 1_RSNetWorx_Adapter;

Class2 = ControlNet;

[Port]

Port2 = ControlNet_Redundant,

"Port A",

"20 F0 24 01",

2;

[Params]

Param2 =

0, $ first field shall equal 0

,, $ path size,path

0x0000, $ descriptor

2, $ data type : 16-bit Unsigned Integer

2, $ data size in bytes

"Output Size", $ name

"", $ units

"", $ help string

0,450,16, $ min,max,default data values

0,0,0,0, $ mult,dev,base,offset scaling not used

0,0,0,0, $ mult,dev,base,offset link not used

0; $ decimal places not used

Param3 =

0, $ first field shall equal 0

,, $ path size,path

0x0000, $ descriptor

2, $ data type : 16-bit Unsigned Integer

2, $ data size in bytes

"Input Size", $ name

"", $ units

"", $ help string

8,454,20, $ min,max,default data values

0,0,0,0, $ mult,dev,base,offset scaling not used

0,0,0,0, $ mult,dev,base,offset link not used

0;

[Connection Manager]

Connection1 =

0x04010002, $ trigger & transport

$ 0-15 = supported transport classes (class 1)

$ 16 = cyclic (1 = supported)

$ 17 = change of state (0 = not supported)

$ 18 = on demand (0 = not supported)

$ 19-23 = reserved (must be zero)

$ 24-27 = exclusive owner

$ 28-30 = reserved (must be zero)

$ 31 = client 0 (don't care for classes 0 and 1)

0x44240405, $ point/multicast & priority & realtime format

$ 0 = O=>T fixed (1 = supported)

$ 1 = O=>T variable (0 = not supported)

$ 2 = T=>O fixed (1 = supported)

$ 3 = T=>O variable (0 = not supported)

$ 4-7 = reserved (must be zero)

$ 8-10 = O=>T header (4 byte run/idle)

$ 11 = reserved (must be zero)

$ 12-14 = T=>O header

$ 15 = reserved (must be zero)

$ 16-19 = O=>T point-to-point

$ 20-23 = T=>O multicast

$ 24-27 = O=>T scheduled

$ 28-31 = T=>O scheduled

,Param2,, $ O=>T RPI,Size,Format

,Param3,, $ T=>O RPI,Size,Format

,, $ config part 1 (dynamic assemblies)

,, $ config part 2 (module configuration)

"Discrete Exclusive Owner", $ connection name

"", $ Help string

"20 04 24 01 2C 96 2C 64"; $ exclusive output path

1_PLC5C_RTD_Format1 = 1_PLC5C_1794_Discrete_RTD_Format;