Systematics and Configuration

SUMMARY

CONTENTS

  1. Systematics of data export by TCP/IP
  2. Telegram structure
  3. Datalink4TcpIp.ini

Systematics of data export by TCP/IP

ALPHA-VISION®Datalink4TcpIp acts as TCP/IP server:

The requested data is given in section [AciData] of Datalink4TcpIp.ini.
It contains a listing of PointIds, for which ALPHA-VISION®Datalink4TcpIp transmitts the values.

The size of each TCP/IP telegram may be set in section [Connection] of Datalink4TcpIp.ini. If no size is given, the telegram size is adjusted to 1460 bytes.
In case the requested data exceeds the telegram size, ALPHA-VISION®Datalink4TcpIp depacketizes the data in blocks to fit the telegram size (see chapter telegram structure).

Telegram structure

Byte Type Length (in bytes) Description
0 long
(Big Endian)
4 Header: Telegram ID, first ID is 0
Note:
telegram ID is reset with every new connection
4 long
(Big Endian)
4 Header: Block ID, first ID of each data cycle is 0
8 char 14 1. Object: PointId
If the PointId is shorter than 14 characters, the remaining characters are filled with blanks (0x20)
Note:
If the PointId exceeds 14 characters, it is cut off
22 char 9 1. Object: Value
This is always a character representation of a float value, if necessary filled with leading and trailing zeros to represent 9 characters
Note:
If the float value exceeds the representable limits of 9999999.9 or -999999.9, only asterisks will be displayed (**.******)
31 char 1 1. Object: Delimiter
',' (0x2C)
32 char 14 2. Object: PointId
46 char 9 2. Object: Value
55 char 1 2. Object: Delimiter
... ... ... ...

INI-FILES

Datalink4TcpIp.ini

Section [Connection]

Entry Type Description / Example Default
HostIpAdr string
Ip adress of TCP/IP server
Example
					[Connection]
					HostIpAdr=192.168.0.208
					
Port integer
Port for TCP/IP connection
Example
					[Connection]
					Port=2100
					
SendCycle integer
Interval (in seconds) between each cyclic data transfer, measured from last block of the present data transfer to the first block of the following data transfer. If a send cycle less than 2 seconds is required, best set SendCycle to 0 (= send always) and CheckCycle (see below) to the requested interval time.
Example
					[Connection]
					SendCycle=20
					
SendSnooze integer
Interval (in milliseconds) between the sending of each block within one cyclic data transfer.
Example
					[Connection]
					SendSnooze=10
					
0
SendBuffer integer
Size of send buffer (=telegram size) in bytes
Example
					[Connection]
					SendBuffer=512
					
1460
CheckCycle integer
Interval (in milliseconds) between the SendCycle checks.
Example
					[Connection]
					CheckCycle=500
					
1000

Section [AciData]

Entry Type Description / Example Default
Obj.<nnnn> string
PointId entries
Each entry contains any number of PointIds (up to max. string length). The PointIds must be separated by ' ' and/or ',' and/or ';'
Example
					[AciData]
					Obj.0000=AMS_S71_AZG001,AMS_S71_HW1_ANA2_0001 AMS_S71_INT32_ANA1_000;AMS_S71_INT16_ANA1_000,
					Obj.0001=BMS_S71_A1_1
					Obj.0002=BMS_S71_A1_0, BMS_S71_A1_2