Sunteți pe pagina 1din 68

ISOIL

I M P I A N T I

VEGA II
ELECTRONIC COUNTER

MODBUS PROTOCOL VERSION “MB–01.01”


FIRMWARE “M6.0 2M” – TWO METERS
CODE : 264/09/EN/00
REVISION : 08/2007

Isoil Impianti S.p.A. - Italy


Sede e stabilimento Uffici Commerciali Sede legale
Head office and factory Sales office Registered office
24061 Albano S.Alessandro (BG) 20092 Cinisello Balsamo (MI) 20124 Milano
74, via Madonna delle Rose 27, via F.lli Gracchi 24, viale Vittorio Veneto
Tel. +39 035 4239.011 Tel. +39 02 66027.1 Capitale soc. int. Sottoscritto 774.000 Euro
Fax +39 035 582078 Fax +39 02 66012456 Codice Fisc. e part. IVA 13066900153
E-mail : albano@isoil-impianti.it E-mail : commerciale@isoil.it C.C.I.A.A. MI - Reg. Impr. 86449/2000
Web : www.isoilmeter.com sales@isoil.it R.E.A. Milano 1612783
INDEX
1 PROTOCOL CHARACTERISTICS........................................................................................................................................................................................ 5
2 GENERAL STRUCTURE OF A MESSAGE ............................................................................................................................................................................. 7
? Device Address .........................................................................................................................................................................................................................7
? Function Code...........................................................................................................................................................................................................................7
? Body of message.......................................................................................................................................................................................................................7
? CRC..........................................................................................................................................................................................................................................8
3 FUNCTIONS CODES .......................................................................................................................................................................................................... 9
? Function 01 “READ COIL STATUS” .............................................................................................................................................................................................9
? Function 02 “READ INPUT STATUS” ......................................................................................................................................................................................... 10
? Function 03 “READ HOLDING REGISTER” ................................................................................................................................................................................. 11
? Function 04 “READ INPUT REGISTER”...................................................................................................................................................................................... 12
? Function 16 (10 Hex) “WRITE MULTIPLE REGISTER” ................................................................................................................................................................ 13
? Reply to a wrong message....................................................................................................................................................................................................... 14
? Flow chart of a management of a loading in automatic mode for meter 1 ................................................................................................................................... 15
4 REGISTERS DEFINITION................................................................................................................................................................................................ 17
? Type of register ...................................................................................................................................................................................................................... 17
? Representation of a FLOAT register .......................................................................................................................................................................................... 17
? Representation of a DOUBLE register ....................................................................................................................................................................................... 17
? Map of address of “COILS STATUS REGISTERS”........................................................................................................................................................................ 18
? Map of address of “INPUTS STATUS REGISTERS” ..................................................................................................................................................................... 20
? Map of address of “INPUT REGISTERS” .................................................................................................................................................................................... 22
? Map of address of “HOLDING REGISTERS” ............................................................................................................................................................................... 50
5 SUB-FUNCTIONS ............................................................................................................................................................................................................ 51
? How use sub-functions ............................................................................................................................................................................................................ 51
? Sub-function 01 “START TRANSACTION” .................................................................................................................................................................................. 52
? Sub-function 02 “PRESET” ....................................................................................................................................................................................................... 55
? Sub-function 03 “MODIFY PRESET” .......................................................................................................................................................................................... 56
? Sub-function 04 “START DELIVERY” ......................................................................................................................................................................................... 57
? Sub-function 05 “STOP DELIVERY”........................................................................................................................................................................................... 58
? Sub-function 06 “TERMINATE BATCH”...................................................................................................................................................................................... 59
? Sub-function 07 “TRANSACTION CLOSING” .............................................................................................................................................................................. 60
? Sub-function 11 (0B Hex) “BATCH DATA STORED”.................................................................................................................................................................... 61
? Sub-function 12 (0C Hex) “TRANSACTION DATA STORED” ........................................................................................................................................................ 62
? Sub-function 13 (0D Hex) “LEAK DATA STORED” ...................................................................................................................................................................... 63
? Sub-function 14 (0E Hex) “ALARM RESET”................................................................................................................................................................................ 64
? Sub-function 15 (0F Hex) “DISABLING METER”......................................................................................................................................................................... 65
6 APPENDIX TABLES ......................................................................................................................................................................................................... 67

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°3 of 68


MODBUS PROTOCOL VERSION “MB 01.01” (INDEX)
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
This page is left blank intentionally.

Page n°4 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01” INDEX)
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
1 PROTOCOL CHARACTERISTICS
ModBusTM protocol is a trademark of “MODICON, Inc.”. To build ModBus protocol in VEGAII these reference documents have been used:
- Modicon ModBusTM Protocol Reference Guide PI-MBUS-300 Rev.B
- Application Protocol Specification V1.1.

Type of protocol: HANDSHAKING (for each query from PC MASTER a reply is sent by VEGAII slave).

Master: A device connected with maximum 31 VEGAIIs on each serial line.

Slave: VEGAII (maximum 31 for each serial line).

Electrical connection:
? RS 232
? RS 485
? RS 422
For electrical connection schemes refer to “INSTALLATION MANUAL”.

Communication characteristics:
VEGAII can communicate from 1200 to 19200 baud.
ModBusTM protocol implemented is RTU type where each character is so defined:

Coding System : 8 binary bit hexadecimal 0….9, A….F


Two hexadecimal char in each 8 bit field of message

Bits per Byte : 1 start bit


8 data bits, first bit is least significant
1 bit for odd/even parity, if no parity is used this bit become a stop bit
1 stop bit

Error check : CRC16 (Cyclical Redundancy Check) 2 bytes

How to set protocol: refer to SETUP MANUAL.

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°5 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
This page is left blank intentionally.

Page n°6 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
2 GENERAL STRUCTURE OF A MESSAGE
Message starts with a silent interval on serial line of at least 3,5 times the time of transmission of a single character.
Characters sent after this silent will be:
- address of SLAVE device (1 byte);
- function code (1byte);
- body of message (n bytes that are different apiece of function);
- CRC of message (2 byte);
Message ends with a silent interval on serial line of at least 3,5 times the time of transmission of a single character (to be practical this interval has to be biggest than
100milliseconds).
Each character sent is in hexadecimal format (0…9,A…F).

BODY OF
START ADDRESS FUNCTION CODE CRC-16 END
MESSAGE
T1-T2-T3-T4 1 BYTE 1 BYTE N BYTES 2 BYTES T1-T2-T3-T4

? Device Address
Serial address of VEGAII can be setted from 01 to 99 decimal (0x01 to 0x63 hexadecimal) and is used by Master to communicate with an electronic counter
SLAVE. Address 00 is reserved.

? Function Code
Function Code specifies which command SLAVE device has to do. In VEGAII are implemented these ModBus function:

CODE FUNCTION DESCRIPTION


01 Read Coil Status Allow to read status of 1 or more output
02 Read Input Status Allow to read status of 1 or more input
03 Read Holding Registers Allow to read if an automation sub function command is accepted or not.
04 Read input Registers Allow to read information about status of VEGAII, delivered quantities, preset, type of loading ecc.
16 Write Multiple Register Allow to send messages to control loading writing sub function in holding registers.

? Body of message
Length of this part of message and meaning of its bytes can vary apiece of “Function” that is used.

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°7 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
? CRC
It’s check sum of message and it’s 2 bytes; first byte contain low part of calculated value, second byte high part.
Next flow-chart shows how to calculate CRC-16.

Start

CRC16 = 0xFFFF

DATUM = First character of message

CRCLO = CRCLO XOR DATUM

N°SHIFT = 0

Right shift of CRC16


(0->CRC16 ->Carry)

YES
Carry == 1?

CRC16 = CRC16 XOR 0xA001


NO

N°SHIFT = N°SHIFT + 1

NO
N°SHIFT == 8?

DATUM = Next character of message


YES

NO
Last character of
message ?

YES

Stop

Page n°8 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
3 FUNCTIONS CODES
In this chapter will be shown messages or function code manage by VEGAII.

? Function 01 “READ COIL STATUS”


This function allows to read status of one or more outputs. Outputs are addressed from 0 so if you want know status of outputs from 1 to 16 of VEGAII with
address 01 you must send:

PC MASTER MESSAGE VEGAII SLAVE MESSAGE


POSITION BYTE FIELD EXAMPLE POSITION BYTE FIELD EXAMPLE
DESCRIPTION DESCRIPTION
MSB ÷ LSB NUMBER FORMAT (HEX) MSB ÷ LSB NUMBER FORMAT (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. 0x01 1 ÷ 1 1 CHAR VEGAII serial address. 0x01
2 ÷ 2 1 CHAR Function code. 0x01 2 ÷ 2 1 CHAR Function code. 0x01
3 ÷ 3 1 CHAR Address of start output (MSB). 0x00 3 ÷ 3 1 CHAR Number of bytes. 0x02
4 ÷ 4 1 CHAR Address of start output (LSB). 0x00 4 ÷ 4 1 CHAR Status of outputs from 8 to 1. 0xAA
5 ÷ 5 1 CHAR Number of outputs (MSB). 0x00 5 ÷ 5 1 CHAR Status of outputs from 16 to 9. 0x55
6 ÷ 6 1 CHAR Number of outputs (LSB). 0x10 6 ÷ 6 1 CHAR CRC 16 of message (LO). 0x07
7 ÷ 7 1 CHAR CRC 16 of message (LO). 0x3D 7 ÷ 7 1 CHAR CRC 16 of message (HI). 0X63
8 ÷ 8 1 CHAR CRC 16 of message (HI). 0xC6

If value of a bit is 1 relative output is ON otherwise is OFF. In the example analyzing message sent by VEGAII value of outputs from 1 to 8 in hexadecimal is 0xAA
and in binary is 10101010, value of outputs from 9 to 16 in hexadecimal is 0x55 and in binary is 01010101; that means that outputs 2, 4, 6, 8, 9, 11, 13, 15 are
ON and others are OFF.

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°9 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
? Function 02 “READ INPUT STATUS”
This function allows to read status of one or more inputs. Inputs are addressed from 0 so if you want know status of inputs from 11 to 20 of VEGAII with address
01 you must send:

PC MASTER MESSAGE VEGAII SLAVE MESSAGE


POSITION BYTE FIELD EXAMPLE POSITION BYTE FIELD EXAMPLE
DESCRIPTION DESCRIPTION
MSB ÷ LSB NUMBER FORMAT (HEX) MSB ÷ LSB NUMBER FORMAT (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. 0x01 1 ÷ 1 1 CHAR VEGAII serial address. 0x01
2 ÷ 2 1 CHAR Function code. 0x02 2 ÷ 2 1 CHAR Function code. 0x02
3 ÷ 3 1 CHAR Address of start input (MSB). 0x00 3 ÷ 3 1 CHAR Number of bytes. 0x02
4 ÷ 4 1 CHAR Address of start input (LSB). 0x0A 4 ÷ 4 1 CHAR Status of inputs from 18 to 11. 0xAA
5 ÷ 5 1 CHAR Number of inputs (MSB). 0x00 5 ÷ 5 1 CHAR Status of inputs from 20 to 19. 0x02
6 ÷ 6 1 CHAR Number of inputs (LSB). 0x0A 6 ÷ 6 1 CHAR CRC 16 of message (LO). 0x46
7 ÷ 7 1 CHAR CRC 16 of message (LO). 0xD8 7 ÷ 7 1 CHAR CRC 16 of message (HI). 0xD9
8 ÷ 8 1 CHAR CRC 16 of message (HI). 0x0F

If value of a bit is 1 relative input is CLOSED otherwise is OPENED. In the example analyzing message sent by VEGAII value of inputs from 11 to 18 in
hexadecimal is 0xAA and in binary is 10101010, value of inputs from 19 to 20 in hexadecimal is 0x02 and in binary is 00000010; that means that inputs 12, 14, 16,
18, 20 are CLOSED and others are OPENED.

Page n°10 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
? Function 03 “READ HOLDING REGISTER”
This function allows to read values of holding registers (read/write registers). In VEGAII this message is used to verify if an automation sub function is accepted or
not. As before registers are addressed from 0 so to read register 40065 where is contained value of automation command you must send:

PC MASTER MESSAGE VEGAII SLAVE MESSAGE


POSITION BYTE FIELD EXAMPLE POSITION BYTE FIELD EXAMPLE
DESCRIPTION DESCRIPTION
MSB ÷ LSB NUMBER FORMAT (HEX) MSB ÷ LSB NUMBER FORMAT (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. 0x01 1 ÷ 1 1 CHAR VEGAII serial address. 0x01
2 ÷ 2 1 CHAR Function code. 0x03 2 ÷ 2 1 CHAR Function code. 0x03
3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00 3 ÷ 3 1 CHAR Number of bytes. 0x02
4 ÷ 4 1 CHAR Address of starting register (LSB). 0x40 4 ÷ 4 1 CHAR Value of register (MSB) 0x00
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 5 ÷ 5 1 CHAR Value of register (LSB) 0x00
6 ÷ 6 1 CHAR Number of registers (LSB). 0x01 6 ÷ 6 1 CHAR CRC 16 of message (LO). 0xB8
7 ÷ 7 1 CHAR CRC 16 of message (LO). 0x85 7 ÷ 7 1 CHAR CRC 16 of message (HI). 0x44
8 ÷ 8 1 CHAR CRC 16 of message (HI). 0xDE

Value of register required is 0x0000 that means that automation command sent by sub-function has been accepted (se “SUB-FUNCTION ANSWER CODE TABLE”).

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°11 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
? Function 04 “READ INPUT REGISTER”
This function allows to read values of input registers (read registers) where are contained information about status of VEGAII, delivery, loading, preset, ecc.
Registers are addressed from 0. Suppose to acquire value of gross volume of product 1 during a delivery (register 30243). Message that you must send is:

PC MASTER MESSAGE VEGAII SLAVE MESSAGE


POSITION BYTE FIELD EXAMPLE POSITION BYTE FIELD EXAMPLE
DESCRIPTION DESCRIPTION
MSB ÷ LSB NUMBER FORMAT (HEX) MSB ÷ LSB NUMBER FORMAT (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. 0x01 1 ÷ 1 1 CHAR VEGAII serial address. 0x01
2 ÷ 2 1 CHAR Function code. 0x04 2 ÷ 2 1 CHAR Function code. 0x04
Address of starting register
3 ÷ 3 1 CHAR 0x00 3 ÷ 3 1 CHAR Number of bytes. 0x08
(MSB).
Address of starting register
4 ÷ 4 1 CHAR 0xF2 4 ÷ 4 1 CHAR Value of register (MSB) 0x40
(LSB).
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 5 ÷ 5 1 CHAR Value of register 0x8F
6 ÷ 6 1 CHAR Number of registers (LSB). 0x04 6 ÷ 6 1 CHAR Value of register 0x40
7 ÷ 7 1 CHAR CRC 16 of message (LO). 0x50 7 ÷ 7 1 CHAR Value of register 0x00
8 ÷ 8 1 CHAR CRC 16 of message (HI). 0x3A 8 ÷ 8 1 CHAR Value of register 0x00
9 ÷ 9 1 CHAR Value of register 0x00
10 ÷ 10 1 CHAR Value of register 0x00
11 ÷ 11 1 CHAR Value of register (LSB) 0x00
12 ÷ 12 1 CHAR CRC 16 of message (LO). 0x50
13 ÷ 13 1 CHAR CRC 16 of message (HI). 0x35

Value of double register is 0x408F400000000000 this is equal to 1000.

Page n°12 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
? Function 16 (10 Hex) “WRITE MULTIPLE REGISTER”
By this function is possible to write more holding register with the same message. It must be used to send command that allow to control a loading in remote
mode.
Suppose to send a Stop command to VEGAII during a delivery:

PC MASTER MESSAGE VEGAII SLAVE MESSAGE


POSITION BYTE FIELD EXAMPLE POSITION BYTE FIELD EXAMPLE
DESCRIPTION DESCRIPTION
MSB ÷ LSB NUMBER FORMAT (HEX) MSB ÷ LSB NUMBER FORMAT (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. 0x01 1 ÷ 1 1 CHAR VEGAII serial address. 0x01
2 ÷ 2 1 CHAR Function code. 0x10 2 ÷ 2 1 CHAR Function code. 0x10
3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00 3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00
4 ÷ 4 1 CHAR Address of starting register (LSB). 0x00 4 ÷ 4 1 CHAR Address of starting register (LSB). 0x00
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 5 ÷ 5 1 CHAR Number of registers (MSB). 0x00
6 ÷ 6 1 CHAR Number of registers (LSB). 0x02 6 ÷ 6 1 CHAR Number of registers (LSB). 0x02
7 ÷ 7 1 CHAR Number of bytes 0x04 7 ÷ 7 1 CHAR CRC 16 of message (LO). 0x41
8 ÷ 8 1 CHAR Meter selected 0x31 8 ÷ 8 1 CHAR CRC 16 of message (HI). 0xC8
9 ÷ 9 1 CHAR Product selected 0x30
10 ÷ 10 1 CHAR Sub-function code 0x05
11 ÷ 11 1 CHAR Stop delivery 0x31
12 ÷ 12 1 CHAR CRC 16 of message (LO). 0x3F
13 ÷ 13 1 CHAR CRC 16 of message (HI). 0xD8

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°13 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
? Reply to a wrong message
At the end of message VEGAII does this type of controls:
Address: verifies if message is addressed to it or to another VEGAII, if it isn’t, no answer will send.
Chksum of message: check of CRC calculated with CRC received.
Code of function: verifies that function exists.
Address of register: verifies that address or register exists.
Value of register: check if value that you want write in register is valid.
Specific control: when it’s received massage of “WRITE MULTIPLE REGISTER” for automation command VEGAII checks that command can be done in
that moment.

If something of received message is wrong VEGAII send a message with specified type of error.
In the next example PC MASTER requires status of 16 outputs starting from output 0x32 (50) that doesn’t exist (VEGAII manages only 32 outputs).

PC MASTER MESSAGE VEGAII SLAVE MESSAGE


POSITION BYTE FIELD EXAMPLE POSITION BYTE FIELD EXAMPLE
DESCRIPTION DESCRIPTION
MSB ÷ LSB NUMBER FORMAT (HEX) MSB ÷ LSB NUMBER FORMAT (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. 0x01 1 ÷ 1 1 CHAR VEGAII serial address. 0x01
2 ÷ 2 1 CHAR Function code. 0x01 2 ÷ 2 1 CHAR Function code. 0x81
3 ÷ 3 1 CHAR Address of start output (MSB). 0x00 3 ÷ 3 1 CHAR Exception code. 0x02
4 ÷ 4 1 CHAR Address of start output (LSB). 0x32 4 ÷ 4 1 CHAR CRC 16 of message (LO). 0xC1
5 ÷ 5 1 CHAR Number of outputs (MSB). 0x00 5 ÷ 5 1 CHAR CRC 16 of message (HI). 0x91
6 ÷ 6 1 CHAR Number of outputs (LSB). 0x10
7 ÷ 7 1 CHAR CRC 16 of message (LO). 0x9C
8 ÷ 8 1 CHAR CRC 16 of message (HI). 0x09

When there is an error on message received VEGAII answers adding 0x80 at the value of field “function code” and then put in the field “Exception code” why
message is not valid. Here you can find exception code:

CODE NAME DESCRIPTION


01 ILLEGAL FUNCTION The function code received in the query doesn’t exist or is not managed by VEGAII.
02 ILLEGAL DATA ADDRESS Address of register is not valid.
03 ILLEGAL DATA VALUE A value contained in the query data field is not valid.

When you send command of automation by function 16 (WRITE MULTIPLE REGISTER) if message is right but is not compatible with status of VEGAII, electronic
counter answers as message is valid but inserts in the register 40065 (Result of sub-function) why command is not accepted. (see “SUB-FUNCTION REPLY CODE
TABLE”).

Page n°14 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
? Flow chart of a management of a loading in automatic mode for meter 1

START
1 4
2

5
3

FUNCTION 16 FUNCTION 16
FUNCTION 01 FUNCTION 04
SUB-FUNCTION 02 PRESET SUB-FUNCTION 07 "TRANSACTION CLOSING"
"READ COILS STATUS" "READ INPUT REGISTER" 30203
TO UPGRADE SYNOPTIC "STATUS OF BATCH"

FUNCTION 03
FUNCTION 03
"READ HOLDING REGISTERS" 40065
"READ HOLDING REGISTERS" 40065
"RESULT OF SUB-FUNCTION"
FUNCTION 02 "RESULT OF SUB-FUNCTION"
"READ INPUTS STATUS" NO STATUS OF BATCH =3?
TO UPGRADE SYNOPTIC (DATA AVAILABLE TO BE
STORED)
NO REGISTER NO
REGISTER
40065=0? 40065=0?
YES
FUNCTION 04
"READ INPUT REGISTERS" YES
YES
TO UPGRADE SYNOPTIC FUNCTION 04
"READ INPUT REGISTERS" FROM 30750
"DATA OF LAST BATCH" FUNCTION 04
FUNCTION 04 READ INPUT REGISTER 30189
"READ INPUT REGISTER" 30201 "STATUS OF TRANSACTION"
"REQUEST OF START"
NO DO YOU W ANT FUNCTION 16
START A NEW SUB-FUNCTION 11
TRANSACTION? "BATCH DATA STORED"
NO
REQUEST OF NO STATUS OF
START=1?
TRANSACTION=3?
YES FUNCTION 03 (DATA AVAILABLE TO
"READ HOLDING REGISTERS" 40065 BE STORED)
FUNCTION 16 YES "RESULT OF SUB-FUNCTION"
SUB-FUNCTION 01 "START TRANSACTION"
FUNCTION 16 YES
SUB-FUNCTION 04 "START DELIVERY"
NO
FUNCTION 03
"READ HOLDING REGISTERS" 40065 FUNCTION 04
REGISTER "READ INPUT REGISTERS" FROM 31151
"RESULT OF SUB-FUNCTION" FUNCTION 03 40065=0? "DATA OF LAST TRANSACTION"
"READ HOLDING REGISTERS" 40065
"RESULT OF SUB-FUNCTION"
YES
FUNCTION 16
NO YES SUB-FUNCTION 12
REGISTER
1 "TRANSACTION DATA STORED"
40065=0?
NO YES YES NO
REGISTER NEW
2 3 4
40065=0? PRESET?

FUNCTION 03
"READ HOLDING REGISTERS" 40065
"RESULT OF SUB-FUNCTION"

NO YES
REGISTER
40065=0? 5

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°15 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
This page is left blank intentionally.

Page n°16 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
4 REGISTERS DEFINITION

? Type of register
In the following table are shown type of data used in the registers tables.

FORMAT OF DATA LENGTH in BIT NUMBER OF REGISTER NEEDED


BIT 1 1
CHAR 8 1
SHORT 16 1
INTEGER 32 2
FLOAT 32 2
DOUBLE 64 4
STRING 8 * (N° characters) VARIABLE

? Representation of a FLOAT register


A float number is 4 bytes (32 bits). Its representation is:
Byte 4 Byte 3 Byte 2 Byte 1
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
SIGN EXPONENT MANTISSA
Where:
- bit 31 is SIGN of number (0 = positive (+1), 1 = negative (-1))
- bits from 30 to 23 are EXPONENT and must be considered as an unique number of 8 bits ( ex. 01111111 = 127)
- bits from 23 to 0 are MANTISSA and must be use in this mode MANTISSA = 1 + (Bit22*2-1) + (Bit21*2-2) + (Bit20*(2-3))……… + (Bit0*(2-23)
Value of datum has to be calculated in this mode:
Number = SIGN * 2(EXPONENT – 127) * MANTISSA

? Representation of a DOUBLE register


A float number is 8 bytes (64 bits). Its representation is:
Byte 8 Byte 7 Byte 6 Byte 5 Byte 4 Byte 3 Byte 2 Byte 1
63 62 ….. 56 55 ….. 52 ….. 48 47 ….. 40 39 ………… 32 31 ………….. 24 23 …………… 16 15 ………….. 8 7 …………… 0
SIGN EXPONENT MANTISSA
Where:
- bit 63 is SIGN of number (0 = positive (+1), 1 = negative (-1))
- bits from 62 to 52 are EXPONENT and must be considered as an unique number of 11 bits ( ex. 01001101101 = 621)
- bits from 51 to 0 are MANTISSA and must be use in this mode MANTISSA = 1 + (Bit51*2-1) + (Bit50*2-2) + (Bit49*(2-3))……… + (Bit0*(2-53)
Value of datum has to be calculated in this mode:
Number = SIGN * 2(EXPONENT – 1023) * MANTISSA

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°17 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
? Map of address of “COILS STATUS REGISTERS”

ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
0 = OFF
0000 00001 BIT Status of output 1
1 = ON
0 = OFF
0001 00002 BIT Status of output 2
1 = ON
0 = OFF
0002 00003 BIT Status of output 3
1 = ON
0 = OFF
0003 00004 BIT Status of output 4
1 = ON
0 = OFF
0004 00005 BIT Status of output 5
1 = ON
0 = OFF
0005 00006 BIT Status of output 6
1 = ON
0 = OFF
0006 00007 BIT Status of output 7
1 = ON
0 = OFF
0007 00008 BIT Status of output 8
1 = ON
0 = OFF
0008 00009 BIT Status of output 9
1 = ON
0 = OFF
0009 00010 BIT Status of output 10
1 = ON
0 = OFF
000A 00011 BIT Status of output 11
1 = ON
0 = OFF
000B 00012 BIT Status of output 12
1 = ON
0 = OFF
000C 00013 BIT Status of output 13
1 = ON
0 = OFF
000D 00014 BIT Status of output 14
1 = ON
0 = OFF
000E 00015 BIT Status of output 15
1 = ON
0 = OFF
000F 00016 BIT Status of output 16
1 = ON

Page n°18 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
0 = OFF
0010 00017 BIT Status of output 17
1 = ON
0 = OFF
0011 00018 BIT Status of output 18
1 = ON
0 = OFF
0012 00019 BIT Status of output 19
1 = ON
0 = OFF
0013 00020 BIT Status of output 20
1 = ON
0 = OFF
0014 00021 BIT Status of output 21
1 = ON
0 = OFF
0015 00022 BIT Status of output 22
1 = ON
0 = OFF
0016 00023 BIT Status of output 23
1 = ON
0 = OFF
0017 00024 BIT Status of output 24
1 = ON
0 = OFF
0018 00025 BIT Status of output 25
1 = ON
0 = OFF
0019 00026 BIT Status of output 26
1 = ON
0 = OFF
001A 00027 BIT Status of output 27
1 = ON
0 = OFF
001B 00028 BIT Status of output 28
1 = ON
0 = OFF
001C 00029 BIT Status of output 29
1 = ON
0 = OFF
001D 00030 BIT Status of output 30
1 = ON
0 = OFF
001E 00031 BIT Status of output 31
1 = ON
0 = OFF
001F 00032 BIT Status of output 32
1 = ON

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°19 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
? Map of address of “INPUTS STATUS REGISTERS”

ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
0 = OPENED
0000 10001 BIT Status of input 1
1 = CLOSED
0 = OPENED
0001 10002 BIT Status of input 2
1 = CLOSED
0 = OPENED
0002 10003 BIT Status of input 3
1 = CLOSED
0 = OPENED
0003 10004 BIT Status of input 4
1 = CLOSED
0 = OPENED
0004 10005 BIT Status of input 5
1 = CLOSED
0 = OPENED
0005 10006 BIT Status of input 6
1 = CLOSED
0 = OPENED
0006 10007 BIT Status of input 7
1 = CLOSED
0 = OPENED
0007 10008 BIT Status of input 8
1 = CLOSED
0 = OPENED
0008 10009 BIT Status of input 9
1 = CLOSED
0 = OPENED
0009 10010 BIT Status of input 10
1 = CLOSED
0 = OPENED
000A 10011 BIT Status of input 11
1 = CLOSED
0 = OPENED
000B 10012 BIT Status of input 12
1 = CLOSED
0 = OPENED
000C 10013 BIT Status of input 13
1 = CLOSED
0 = OPENED
000D 10014 BIT Status of input 14
1 = CLOSED
0 = OPENED
000E 10015 BIT Status of input 15
1 = CLOSED
0 = OPENED
000F 10016 BIT Status of input 16
1 = CLOSED

Page n°20 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
0 = OPENED
0010 10017 BIT Status of input 17
1 = CLOSED
0 = OPENED
0011 10018 BIT Status of input 18
1 = CLOSED
0 = OPENED
0012 10019 BIT Status of input 19
1 = CLOSED
0 = OPENED
0013 10020 BIT Status of input 20
1 = CLOSED
0 = OPENED
0014 10021 BIT Status of input 21
1 = CLOSED
0 = OPENED
0015 10022 BIT Status of input 22
1 = CLOSED
0 = OPENED
0016 10023 BIT Status of input 23
1 = CLOSED
0 = OPENED
0017 10024 BIT Status of input 24
1 = CLOSED
0 = OPENED
0018 10025 BIT Status of input 25
1 = CLOSED
0 = OPENED
0019 10026 BIT Status of input 26
1 = CLOSED
0 = OPENED
001A 10027 BIT Status of input 27
1 = CLOSED
0 = OPENED
001B 10028 BIT Status of input 28
1 = CLOSED
0 = OPENED
001C 10029 BIT Status of input 29
1 = CLOSED
0 = OPENED
001D 10030 BIT Status of input 30
1 = CLOSED
0 = OPENED
001E 10031 BIT Status of input 31
1 = CLOSED
0 = OPENED
001F 10032 BIT Status of input 32
1 = CLOSED

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°21 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
? Map of address of “INPUT REGISTERS”

ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
STRING
0000 30001 Firmware version. Alphanumerical code.
(6 Registers)
STRING
0006 30007 ModBus protocol version. Alphanumerical code.
(4 Registers)
CHAR 0 = Weight and Measure switch not present
000A 30011 Status of Weight and Measure switch.
(1 Register) 1 = Weight and Measure switch present
CHAR 0 = Power supply not present
000B 30012 Status of power supply
(1 Register) 1 = Power supply present
0 = Not present
CHAR 1 = On charge
000C 30013 Status of battery
(1 Register) 2 = Present
3 = Not charge
CHAR 0 = Local
000D 30014 Local / Remote mode.
(1 Register) 1 = Remote
0= Working mode
CHAR
000E 30015 Operative mode 1= Request programming entry
(1 Register)
2= Programming mode
CHAR 0 = No new parameter’s log.
000F 30016 Status of Logs parameters.
(1 Register) 1 = New parameter’s log.
INT
0010 30017 Total transactions of system. 0 ÷ 999999
(2 Registers)
INT
0012 30019 Total batches of system. 0 ÷ 9999999
(2 Registers)
0 = Printer ON LINE
1 = No paper
CHAR
0014 30021 Status of local printing. 2 = Printer OFF LINE
(1 Register)
3 = Printer BUSY
4 = Printing in progress

Page n°22 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
0 = Non used
CHAR
0015 30022 Type of input 1 1 = Permissive
(1 Register)
2 = Signal
0= Meter 1 & 2
0016 30023 (1 Register) Meter owner of input 1. 1= Meter 1
2= Meter 2
CHAR
0017 30024 Code of name of input 1 See PROGRAMMING PARAMETERS MANUAL.
(1 Register)
CHAR Logic of input 1. 0 = Ok if opened
0018 30025
(1 Register) This register is important only if input is a permissive. 1 = Ok if closed
4 previous registers will be the same for inputs from 2 to 32 of VEGAII.
(124 Registers)
If I/O digital board will be not present for inputs from 17 to 32 will be inserted blank (0x20).
CHAR
0095 30150 Code of output 1 See PROGRAMMING PARAMETERS MANUAL.
(1 Register)
Previous register will be the same for outputs from 2 to 32 of VEGAII.
(31 Registers)
If I/O digital board will be not present for outputs from 17 to 32 will be inserted blank (0x20).
CHAR
00B5 30182 Code of system alarm.
(1 Register)
CHAR
00B6 30183 Code of alarm of meter 1. See PROGRAMMING PARAMETERS MANUAL.
(1 Register)
CHAR
00B7 30184 Code of alarm of meter 2.
(1 Register)
STRING
00B8 30185 R.C.E. code of meter 1. ( Code sent by PC MASTER to VEGAII in order to detect a transaction). Alphanumerical code.
(5 Registers)
0 = No transaction in progress
CHAR 1 = Transaction in progress
00BD 30190 Status of Transaction of meter 1.
(1 Register) 2 = Meter not used for transaction in progress
3 = Data available to be stored
CHAR 0 = Bottom loading
00BE 30191 Type of loading in use of meter 1.
(1 Register) 1 = Top loading
CHAR 0 = ATB
00BF 30192 Type of preset in use of meter 1.
(1 Register) 1 = ATK
CHAR
00C0 30193 Code of method of compensation of meter 1. It depends on method of compensation.
(1 Register)
DOUBLE Temperature of compensation of meter 1. -40.0 ÷ 200.0 °C
00C1 30194
(4 Registers) This register is important only for method of compensation ALFA TbX°C. -40.0 ÷ 392.0 °F

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°23 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
INTEGER
00C5 30198 Number of transaction of meter 1. 0 ÷ 99999
(2 Registers)
INTEGER
00C7 30200 Number of batch of meter 1. 0 ÷ 999999
(2 Registers)
CHAR 0 = No request
00C9 30202 Request of start delivery of meter 1.
(1 Register) 1 = Request present
CHAR 0 = Not active
00CA 30203 Remote stop of meter 1.
(1 Register) 1 = Active
0 = No batch in progress
CHAR 1 = Batch in progress
00CB 30204 Status of batch of meter 1.
(1 Register) 2 = Batch stopped
3 = Data available to be stored
CHAR 0 = No flow
00CC 30205 Flow of product of meter 1.
(1 Register) 1 = Flow in progress
0 = No stop
1 = Stop by operator
2 = Stop for faulting of power supply
CHAR
00CD 30206 Stop of batch of meter 1. 4 = Stop by permissive absence
(1 Register)
5 = Stop by system alarm
6 = Stop by meter alarm
7 = Stop by weight & measure switch absence
This register will contain:
- Code of alarm that caused stop if value of
register 30206 is 5 or 6;
CHAR
00CE 30207 Code of alarm or permissive that generates stop of meter 1. - Number of input setted as permissive that
(1 Register)
caused stop if value of register 30206 is 4.
See PROGRAMMING PARAMETERS MANUAL to know
list of alarm or permissives.

Page n°24 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
STRING
00CF 30208 Unit of measurement of volume of meter 1.
(4 Registers)
STRING
00D3 30212 Unit of measurement of weight of meter 1.
(1 Register)
STRING
00D4 30213 Unit of measurement of temperature of meter 1.
(1 Register)
Alphanumerical code.
STRING
00D5 30214 Unit of measurement of flow rate of meter 1.
(2 Registers)
STRING
00D7 30216 Unit of measurement of density used to calculate net volume of meter 1.
(3 Registers)
STRING
00DA 30219 Unit of measurement of density used to calculate weight of meter 1.
(3 Registers)
1 = Product 1
CHAR
00DD 30222 Number of product delivered of meter 1. 2 = Product 2
(1 Register)
3 = Product 3
STRING
00DE 30223 Name of product delivered of meter 1. Alphanumerical code.
(4 Registers)
DOUBLE
00E2 30227 Preset of meter 1. 0 ÷ 999999
(4 Registers)

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°25 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
DOUBLE
00E6 30231 Total of Gross Volume of Product 1 of meter 1.
(4 Registers)
DOUBLE
00EA 30235 Total of Net Volume of Product 1 of meter 1. 0 ÷ 99999999
(4 Registers)
DOUBLE
00EE 30239 Total of Weight of Product 1 of meter 1.
(4 Registers)
DOUBLE
00F2 30243 Gross Volume of Product 1 delivered of meter 1.
(4 Registers)
DOUBLE
00F6 30247 Net Volume of Product 1 delivered of meter 1. 0 ÷ 999999999
(4 Registers)
DOUBLE
00FA 30251 Weight of Product 1 delivered of meter 1.
(4 Registers)
DOUBLE
00FE 30255 Density or alpha used to calculate Net Volume of Product 1 of meter 1.
(4 Registers)
It depends on method of compensation.
DOUBLE
0102 30259 Density used to calculate Weight of Product 1 of meter 1.
(4 Registers)
DOUBLE
0106 30263 Total of Gross Volume of Product 2 of meter 1.
(4 Registers)
DOUBLE
010A 30267 Total of Net Volume of Product 2 of meter 1. 0 ÷ 99999999
(4 Registers)
DOUBLE
010E 30271 Total of Weight of Product 2 of meter 1.
(4 Registers)
DOUBLE
0112 30275 Gross Volume of Product 2 delivered of meter 1.
(4 Registers)
DOUBLE
0116 30279 Net Volume of Product 2 delivered of meter 1. 0 ÷ 999999999
(4 Registers)
DOUBLE
011A 30283 Weight of Product 2 delivered of meter 1.
(4 Registers)
DOUBLE
011E 30287 Density or alpha used to calculate Net Volume of Product 2 of meter 1.
(4 Registers)
It depends on method of compensation.
DOUBLE
0122 30291 Density used to calculate Weight of Product 2 of meter 1.
(4 Registers)

Page n°26 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
DOUBLE
0126 30295 Total of Gross Volume of Product 3 of meter 1.
(4 Registers)
DOUBLE
012A 30299 Total of Net Volume of Product 3 of meter 1. 0 ÷ 99999999
(4 Registers)
DOUBLE
012E 30303 Total of Weight of Product 3 of meter 1.
(4 Registers)
DOUBLE
0132 30307 Gross Volume of Product 3 delivered of meter 1.
(4 Registers)
DOUBLE
0136 30311 Net Volume of Product 3 delivered of meter 1. 0 ÷ 999999999
(4 Registers)
DOUBLE
013A 30315 Weight of Product 3 delivered of meter 1.
(4 Registers)
DOUBLE
013E 30319 Density or alpha used to calculate Net Volume of Product 3 of meter 1.
(4 Registers)
It depends on method of compensation.
DOUBLE
0142 30323 Density used to calculate Weight of Product 3 of meter 1.
(4 Registers)
DOUBLE
0146 30327 Flow rate of meter 1.
(4 Registers)
FLOAT
014A 30331 Average flow rate of batch of meter 1. 0 ÷ 999999
(2 Registers)
FLOAT
014C 30333 Average flow rate of transaction of meter 1.
(2 Registers)
DOUBLE
014E 30335 Temperature of selected product of meter 1.
(4 Registers)
FLOAT -40.0 ÷ 200.0 °C
0152 30339 Average temperature of batch of meter 1.
(2 Registers) -40.0 ÷ 392.0 °F
FLOAT
0154 30341 Average temperature of transaction of meter 1.
(2 Registers)
CHAR 0 = No leak to store
0156 30343 Request to store data of a leak of meter 1.
(1 Register) 1 = Data available to be stored.
STRING PIN-CODE of meter 1.
0157 30344 Alphanumerical code.
(6 Registers) If management of PIN CODE is not enable this register is not important.

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°27 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
CHAR 0= Meter enable
015D 30350 Meter disablement situation of meter 1.
(1 Register) 1= Meter disable
CHAR 0= Valve closed
015E 30351 Preset valve situation of bottom loading of meter 1.
(1 Register) 1= Low Flow
2= High flow
CHAR
015F 30352 Preset valve situation of top loading of meter 1. 3= Closing
(1 Register)
4= Final adjustment
0= No one
1= Recipe 1
CHAR
0160 30353 Selected recipe of meter 1. 2= Recipe 2
(1 Register)
3= Recipe 3
4= Recipe 4
STRING
0161 30354 Name of selected Recipe of meter 1. Alphanumerical code.
(5 Registers)
CHAR 0= Preset closed normally
0166 30359 Preset closed for max weight reached of meter 1.
(1 Register) 1= Preset closed for max weight reaching.
CHAR 0= Meter not ready
0167 30360 Meter ready for a new preset of meter 1.
(1 Register) 1= Meter ready
0168 30361 (140 Registers) RESERVED

Page n°28 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
STRING
01F4 30501 R.C.E. code of meter 2. ( Code sent by PC MASTER to VEGAII in order to detect a transaction). Alphanumerical code.
(5 Registers)
0 = No transaction in progress
CHAR 1 = Transaction in progress
01F9 30506 Status of Transaction of meter 2.
(1 Register) 2 = Meter not used for transaction in progress
3 = Data available to be stored
CHAR 0 = Bottom loading
01FA 30507 Type of loading in use of meter 2.
(1 Register) 1 = Top loading
CHAR 0 = ATB
01FB 30508 Type of preset in use of meter 2.
(1 Register) 1 = ATK
CHAR
01FC 30509 Code of method of compensation of meter 2. See PROGRAMMING PARAMETERS MANUAL.
(1 Register)
DOUBLE Temperature of compensation of meter 2. -40.0 ÷ 200.0 °C
01FD 30510
(4 Registers) This register is important only for method of compensation ALFA TbX°C. -40.0 ÷ 392.0 °F
INTEGER
0201 30514 Number of transaction of meter 2. 0 ÷ 99999
(2 Registers)
INTEGER
0203 30516 Number of batch of meter 2. 0 ÷ 999999
(2 Registers)
CHAR 0 = No request
0205 30518 Request of start delivery of meter 2.
(1 Register) 1 = Request present
CHAR 0 = Not active
0206 30519 Remote stop of meter 2.
(1 Register) 1 = Active
0 = No batch in progress
CHAR 1 = Batch in progress
0207 30520 Status of batch of meter 2.
(1 Register) 2 = Batch stopped
3 = Data available to be stored
CHAR 0 = No flow
0208 30521 Flow of product of meter 2.
(1 Register) 1 = Flow in progress
0 = No stop
1 = Stop by operator
2 = Stop for faulting of power supply
CHAR 4 = Stop by permissive absence
0209 30522 Stop of batch of meter 2.
(1 Register) 5 = Stop by system alarm
6 = Stop by meter alarm
7 = Stop by weight & measure switch absence
8 = Remote to local commutation

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°29 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
This register will contain:
- Code of alarm that caused stop if value of
register 30522 is 5 or 6;
CHAR
020A 30523 Code of alarm or permissive that generates stop of meter 2. - Number of input setted as permissive that
(1 Register)
caused stop if value of register 30522 is 4.
See PROGRAMMING PARAMETERS MANUAL to know
list of alarm or permissives.
STRING
020B 30524 Unit of measurement of volume of meter 2.
(4 Registers)
STRING
020F 30528 Unit of measurement of weight of meter 2.
(1 Register)
STRING
0210 30529 Unit of measurement of temperature of meter 2.
(1 Register)
Alphanumerical code.
STRING
0211 30530 Unit of measurement of flow rate of meter 2.
(2 Registers)
STRING
0213 30532 Unit of measurement of density used to calculate net volume of meter 2.
(3 Registers)
STRING
0216 30535 Unit of measurement of density used to calculate weight of meter 2.
(3 Registers)
1 = Product 1
CHAR
0219 30538 Number of product delivered of meter 2. 2 = Product 2
(1 Register)
3 = Product 3
STRING
021A 30539 Name of product delivered of meter 2. Alphanumerical code.
(4 Registers)
DOUBLE
021E 30543 Preset of meter 2. 0 ÷ 999999
(4 Registers)

Page n°30 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
DOUBLE
0222 30547 Total of Gross Volume of Product 1 of meter 2.
(4 Registers)
DOUBLE
0226 30551 Total of Net Volume of Product 1 of meter 2. 0 ÷ 99999999
(4 Registers)
DOUBLE
022A 30555 Total of Weight of Product 1 of meter 2.
(4 Registers)
DOUBLE
022E 30559 Gross Volume of Product 1 delivered of meter 2.
(4 Registers)
DOUBLE
0232 30563 Net Volume of Product 1 delivered of meter 2. 0 ÷ 999999999
(4 Registers)
DOUBLE
0236 30567 Weight of Product 1 delivered of meter 2.
(4 Registers)
DOUBLE
023A 30571 Density or alpha used to calculate Net Volume of Product 1 of meter 2.
(4 Registers)
It depends on method of compensation.
DOUBLE
023E 30575 Density used to calculate Weight of Product 1 of meter 2.
(4 Registers)
DOUBLE
0242 30579 Total of Gross Volume of Product 2 of meter 2.
(4 Registers)
DOUBLE
0246 30583 Total of Net Volume of Product 2 of meter 2. 0 ÷ 99999999
(4 Registers)
DOUBLE
024A 30587 Total of Weight of Product 2 of meter 2.
(4 Registers)
DOUBLE
024E 30591 Gross Volume of Product 2 delivered of meter 2.
(4 Registers)
DOUBLE
0252 30595 Net Volume of Product 2 delivered of meter 2. 0 ÷ 999999999
(4 Registers)
DOUBLE
0256 30599 Weight of Product 2 delivered of meter 2.
(4 Registers)
DOUBLE
025A 30603 Density or alpha used to calculate Net Volume of Product 2 of meter 2.
(4 Registers)
It depends on method of compensation.
DOUBLE
025E 30607 Density used to calculate Weight of Product 2 of meter 2.
(4 Registers)

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°31 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
DOUBLE
0262 30611 Total of Gross Volume of Product 3 of meter 2.
(4 Registers)
DOUBLE
0266 30615 Total of Net Volume of Product 3 of meter 2. 0 ÷ 99999999
(4 Registers)
DOUBLE
026A 30619 Total of Weight of Product 3 of meter 2.
(4 Registers)
DOUBLE
026E 30623 Gross Volume of Product 3 delivered of meter 2.
(4 Registers)
DOUBLE
0272 30627 Net Volume of Product 3 delivered of meter 2. 0 ÷ 999999999
(4 Registers)
DOUBLE
0276 30631 Weight of Product 3 delivered of meter 2.
(4 Registers)
DOUBLE
027A 30635 Density or alpha used to calculate Net Volume of Product 3 of meter 2.
(4 Registers)
It depends on method of compensation.
DOUBLE
027E 30639 Density used to calculate Weight of Product 3 of meter 2.
(4 Registers)
DOUBLE
0282 30643 Flow rate of meter 2.
(4 Registers)
FLOAT
0286 30647 Average flow rate of batch of meter 2. 0 ÷ 999999
(2 Registers)
FLOAT
0288 30649 Average flow rate of transaction of meter 2.
(2 Registers)
DOUBLE
028A 30651 Temperature of selected product of meter 2.
(4 Registers)
FLOAT -40.0 ÷ 200.0 °C
028E 30655 Average temperature of batch of meter 2.
(2 Registers) -40.0 ÷ 392.0 °F
FLOAT
0290 30657 Average temperature of transaction of meter 2.
(2 Registers)
CHAR 0 = No leak to store
0292 30659 Request to store data of a leak of meter 2.
(1 Register) 1 = Data available to be stored.
STRING PIN-CODE of meter 2.
0293 30660 Alphanumerical code.
(6 Registers) If management of PIN CODE is not enable this register is not important.

Page n°32 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
CHAR 0= Meter enable
0299 30666 Meter disablement situation of meter 2.
(1 Register) 1= Meter disable
CHAR 0= Valve closed
029A 30667 Preset valve situation of bottom loading of meter 2.
(1 Register) 1= Low Flow
2= High flow
CHAR
029B 30668 Preset valve situation of top loading of meter 2. 3= Closing
(1 Register)
4= Final adjustment
5= No one
6= Recipe 1
CHAR
029C 30669 Selected recipe of meter 2. 7= Recipe 2
(1 Register)
8= Recipe 3
9= Recipe 4
STRING
029D 30670 Name of selected Recipe of meter 2. Alphanumerical code.
(5 Registers)
CHAR 0= Preset closed normally
02A2 30675 Preset closed for max weight reached of meter 2.
(1 Register) 1= Preset closed for max weight reaching.
CHAR 0= Meter not ready
02A3 30676 Meter ready for a new preset of meter 2.
(1 Register) 1= Meter ready
02A4 30677 (140 Registers) RESERVED

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°33 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
DATA OF LAST BATCH OF METER 1
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
INTEGER
02EE 30751 Number of batch of meter 1. 0 ÷ 999999
(2 Registers)
STRING
02F0 30753 Date of start of batch of meter 1. DD/MM/YY
(4 Registers)
STRING
02F4 30757 Hour of start of batch of meter 1. HH:MM:SS
(4 Registers)
STRING
02F8 30761 Date of end of batch of meter 1. DD/MM/YY
(4 Registers)
STRING
02FC 30765 Hour of end of batch of meter 1. HH:MM:SS
(4 Registers)
STRING
0300 30769 Unit of measurement of Volume of meter 1.
(4 Registers)
STRING
0304 30773 Unit of measurement of Weight of meter 1.
(1 Register)
STRING
0305 30774 Unit of measurement of Temperature of meter 1.
(1 Register)
Alphanumerical code.
STRING
0306 30775 Unit of measurement of Flow Rate of meter 1.
(2 Registers)
STRING
0308 30777 Unit of measurement of density used to calculate Net Volume of meter 1.
(3 Registers)
STRING
030B 30780 Unit of measurement of density used to calculate Weight of meter 1.
(3 Registers)
CHAR
030E 30783 Method of compensation of meter 1. It depends on method of compensation.
(1 Register)
1 = Product1
CHAR
030F 30784 Delivered product of meter 1. 2 = Product 2
(1 Register)
3 = Product 3
STRING
0310 30785 Name of delivered product of meter 1. Alphanumerical code.
(4 Registers)
DOUBLE
0314 30789 Presetted quantity of delivered product of meter 1.
(4 Registers)
0 ÷ 999999
FLOAT
0318 30793 Flow rate of delivered product of meter 1.
(2 Registers)

Page n°34 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
DATA OF LAST BATCH OF METER 1
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
DOUBLE Average temperature of delivered product of meter 1. -40.0 ÷ 200.0 °C
031A 30795
(4 Registers) N.B. Value of this register will be –100 until average temperature is not calculated. -40.0 ÷ 392.0 °F
DOUBLE
031C 30797 Totals of Gross Volume of delivered product at the start of batch of meter 1.
(4 Registers)
DOUBLE
0320 30801 Totals of Net Volume of delivered product at the start of batch of meter 1.
(4 Registers)
DOUBLE
0324 30805 Totals of Weight of delivered product at the start of batch of meter 1.
(4 Registers)
0 ÷ 99999999
DOUBLE
0328 30809 Totals of Gross Volume of delivered product at the end of batch of meter 1.
(4 Registers)
DOUBLE
032C 30813 Totals of Net Volume of delivered product at the end of batch of meter 1.
(4 Registers)
DOUBLE
0330 30817 Totals of Weight of delivered product at the end of batch of meter 1.
(4 Registers)
DOUBLE
0334 30821 Gross volume delivered of meter 1.
(4 Registers)
DOUBLE
0338 30825 Net volume delivered of meter 1. 0 ÷ 999999999
(4 Registers)
DOUBLE
033C 30829 Weight delivered of meter 1.
(4 Registers)
DOUBLE
0340 30833 Density or alpha used to calculate Net Volume of meter 1.
(4 Registers)
It depends on method of compensation.
CHAR
0344 30837 Density used to calculate Weight of meter 1.
(1 Register)
0 = Additivation deisabled
Recipe selected of meter 1.
1 = Recipe 1
STRING If additivation is not managed or MBS is managed by serial line communication these byte will be
0348 30841 2 = Recipe 2
(5 Registers) blanks. (0x20)
3 = Recipe 3
4 = Recipe 4
STRING
0349 30842 Name of selected recipe of meter 1. Alphanumerical code.
(5 Registers)
034E 30847 (104 Registers) RESERVED

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°35 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
DATA OF LAST BATCH OF METER 2
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
INTEGER
03B6 30951 Number of batch of meter 2. 0 ÷ 999999
(2 Registers)
STRING
03B8 30953 Date of start of batch of meter 2. DD/MM/YY
(4 Registers)
STRING
03BC 30957 Hour of start of batch of meter 2. HH:MM:SS
(4 Registers)
STRING
03C0 30961 Date of end of batch of meter 2. DD/MM/YY
(4 Registers)
STRING
03C4 30965 Hour of end of batch of meter 2. HH:MM:SS
(4 Registers)
STRING
03C8 30969 Unit of measurement of Volume of meter 2.
(4 Registers)
STRING
03CC 30973 Unit of measurement of Weight of meter 2.
(1 Register)
STRING
03CD 30974 Unit of measurement of Temperature of meter 2.
(1 Register)
Alphanumerical code.
STRING
03CE 30975 Unit of measurement of Flow Rate of meter 2.
(2 Registers)
STRING
03D0 30977 Unit of measurement of density used to calculate Net Volume of meter 2.
(3 Registers)
STRING
03D3 30980 Unit of measurement of density used to calculate Weight of meter 2.
(3 Registers)
CHAR
03D6 30983 Method of compensation of meter 2. It depends on method of compensation.
(1 Register)
1 = Product1
CHAR
03D7 30984 Delivered product of meter 2. 2 = Product 2
(1 Register)
3 = Product 3
STRING
03D8 30985 Name of delivered product of meter 2. Alphanumerical code.
(4 Registers)
DOUBLE
03DC 30989 Presetted quantity of delivered product of meter 2.
(4 Registers)
0 ÷ 999999
FLOAT
03E0 30993 Flow rate of delivered product of meter 2.
(2 Registers)

Page n°36 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
DATA OF LAST BATCH OF METER 2
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
DOUBLE Average temperature of delivered product of meter 2. -40.0 ÷ 200.0
03E2 30995
(4 Registers) N.B. Value of this register will be –100 until average temperature is not calculated. -40.0 ÷ 392.0
DOUBLE
03E4 30997 Totals of Gross Volume of delivered product at the start of batch of meter 2.
(4 Registers)
DOUBLE
03E8 31001 Totals of Net Volume of delivered product at the start of batch of meter 2.
(4 Registers)
DOUBLE
03EC 31005 Totals of Weight of delivered product at the start of batch of meter 2.
(4 Registers)
0 ÷ 99999999
DOUBLE
03F0 31009 Totals of Gross Volume of delivered product at the end of batch of meter 2.
(4 Registers)
DOUBLE
03F4 31013 Totals of Net Volume of delivered product at the end of batch of meter 2.
(4 Registers)
DOUBLE
03F8 31017 Totals of Weight of delivered product at the end of batch of meter 2.
(4 Registers)
DOUBLE
03FC 31021 Gross volume delivered of meter 2.
(4 Registers)
DOUBLE
0400 31025 Net volume delivered of meter 2. 0 ÷ 999999999
(4 Registers)
DOUBLE
0404 31029 Weight delivered of meter 2.
(4 Registers)
DOUBLE
0408 31033 Density or alpha used to calculate Net Volume of meter 2.
(4 Registers)
It depends on method of compensation.
CHAR
040C 31037 Density used to calculate Weight of meter 2.
(1 Register)
0 = Additivation deisabled
Recipe selected of meter 2.
1 = Recipe 1
STRING If additivation is not managed or MBS is managed by serial line communication these byte will be
0410 31041 2 = Recipe 2
(5 Registers) blanks. (0x20)
3 = Recipe 3
4 = Recipe 4
STRING
0411 31042 Name of selected recipe of meter 2. Alphanumerical code.
(5 Registers)
0416 31047 (104 Registers) RESERVED

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°37 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
DATA OF LAST TRANSACTION OF METER 1
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
INTEGER
047E 31151 Number of transaction of meter 1. 0 ÷ 99999
(2 Registers)
STRING
0480 31153 Date of start of transaction of meter 1. DD/MM/YY
(4 Registers)
STRING
0484 31157 Hour of start of transaction of meter 1. HH:MM:SS
(4 Registers)
STRING
0488 31161 Date of end of transaction of meter 1. DD/MM/YY
(4 Registers)
STRING
048C 31165 Hour of end of transaction of meter 1. HH:MM:SS
(4 Registers)
STRING
0490 31169 Unit of measurement of Volume of meter 1.
(4 Registers)
STRING
0494 31173 Unit of measurement of Weight of meter 1.
(1 Register)
STRING
0495 31174 Unit of measurement of Temperature of meter 1.
(1 Register)
Alphanumerical code.
STRING
0496 31175 Unit of measurement of Flow Rate of meter 1.
(2 Registers)
STRING
0498 31177 Unit of measurement of density used to calculate Net Volume of meter 1.
(3 Registers)
STRING
049B 31180 Unit of measurement of density used to calculate Weight of meter 1.
(3 Registers)
CHAR
049E 31183 Method of compensation of meter 1. It depends on method of compensation.
(1 Register)
STRING
049F 31184 Name of product 1 of meter 1. Alphanumerical code.
(4 Registers)
CHAR 0 = Product not enabled
04A3 31188 Enabling of product 1 of meter 1.
(1 Register) 1 = Product enabled
DOUBLE
04A4 31189 Presetted quantity of product 1 of meter 1. 0 ÷ 999999
(4 Registers)

Page n°38 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
DATA OF LAST TRANSACTION OF METER 1
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
FLOAT
04A8 31193 Average flow rate of product 1 of meter 1. 0 ÷ 999999
(2 Registers)
FLOAT Average temperature of product 1 of meter 1. -40.0 ÷ 200.0 °C
04AA 31195
(2 Registers) N.B. Value of this register will be –100 until average temperature is not calculated. -40.0 ÷ 392.0 °F
DOUBLE
04AC 31197 Totals of Gross Volume of product 1 at the start of batch of meter 1.
(4 Registers)
DOUBLE
04B0 31201 Totals of Net Volume of product 1 at the start of batch of meter 1.
(4 Registers)
DOUBLE
04B4 31205 Totals of Weight of product 1 at the start of batch of meter 1.
(4 Registers)
0 ÷ 99999999
DOUBLE
04B8 31209 Totals of Gross Volume of product 1 at the end of batch of meter 1.
(4 Registers)
DOUBLE
04BC 31213 Totals of Net Volume of product 1 at the end of batch of meter 1.
(4 Registers)
DOUBLE
04C0 31217 Totals of Weight of product 1 at the end of batch of meter 1.
(4 Registers)
DOUBLE
04C4 31221 Gross volume of product 1 delivered of meter 1.
(4 Registers)
DOUBLE
04C8 31225 Net volume of product 1 delivered of meter 1. 0 ÷ 999999999
(4 Registers)
DOUBLE
04CC 31229 Weight of product 1 delivered of meter 1.
(4 Registers)
DOUBLE
04D0 31233 Density or alpha used to calculate Net Volume of product 1 of meter 1.
(4 Registers)
It depends on method of compensation.
DOUBLE
04D4 31237 Density used to calculate Weight of product 1 of meter 1.
(4 Registers)
04D8 31241 (60 Registers) RESERVED

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°39 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
DATA OF LAST TRANSACTION OF METER 1
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
STRING
0514 31301 Name of product 2 of meter 1. Alphanumerical code.
(4 Registers)
CHAR 0 = Product not enabled
0518 31305 Enabling of product 2 of meter 1.
(1 Register) 1 = Product enabled
DOUBLE
0519 31306 Presetted quantity of product 2 of meter 1.
(4 Registers)
0 ÷ 999999
FLOAT
051D 31310 Average flow rate of product 2 of meter 1.
(2 Registers)
FLOAT Average temperature of product 2 of meter 1. -40.0 ÷ 200.0 °C
051F 31312
(2 Registers) N.B. Value of this register will be –100 until average temperature is not calculated. -40.0 ÷ 392.0 °F
DOUBLE
0521 31314 Totals of Gross Volume of product 2 at the start of batch of meter 1.
(4 Registers)
DOUBLE
0525 31318 Totals of Net Volume of product 2 at the start of batch of meter 1.
(4 Registers)
DOUBLE
0529 31322 Totals of Weight of product 2 at the start of batch of meter 1.
(4 Registers)
0 ÷ 99999999
DOUBLE
052D 31326 Totals of Gross Volume of product 2 at the end of batch of meter 1.
(4 Registers)
DOUBLE
0531 31330 Totals of Net Volume of product 2 at the end of batch of meter 1.
(4 Registers)
DOUBLE
0535 31334 Totals of Weight of product 2 at the end of batch of meter 1.
(4 Registers)
DOUBLE
0539 31338 Gross volume of product 2 delivered of meter 1.
(4 Registers)
DOUBLE
053D 31342 Net volume of product 2 delivered of meter 1. 0 ÷ 999999999
(4 Registers)
DOUBLE
0541 31346 Weight of product 2 delivered of meter 1.
(4 Registers)
DOUBLE
0545 31350 Density or alpha used to calculate Net Volume of product 2 of meter 1.
(4 Registers)
It depends on method of compensation.
DOUBLE
0549 31354 Density used to calculate Weight of product 2 of meter 1.
(4 Registers)
054D 31358 (43 Registers) RESERVED

Page n°40 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
DATA OF LAST TRANSACTION OF METER 1
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
STRING
0578 31401 Name of product 3 of meter 1. Alphanumerical code.
(4 Registers)
CHAR 0 = Product not enabled
057C 31405 Enabling of product 3 of meter 1.
(1 Register) 1 = Product enabled
DOUBLE
057D 31406 Presetted quantity of product 3 of meter 1. 0 ÷ 999999
(4 Registers)
FLOAT
0581 31410 Average flow rate of product 3 of meter 1. 0 ÷ 999999
(2 Registers)
FLOAT Average temperature of product 3 of meter 1. -40.0 ÷ 200.0 °C
0583 31412
(2 Registers) N.B. Value of this register will be –100 until average temperature is not calculated. -40.0 ÷ 392.0 °F
DOUBLE
0585 31414 Totals of Gross Volume of product 3 at the start of batch of meter 1.
(4 Registers)
DOUBLE
0589 31418 Totals of Net Volume of product 3 at the start of batch of meter 1.
(4 Registers)
DOUBLE
058D 31422 Totals of Weight of product 3 at the start of batch of meter 1.
(4 Registers)
0 ÷ 99999999
DOUBLE
0591 31426 Totals of Gross Volume of product 3 at the end of batch of meter 1.
(4 Registers)
DOUBLE
0595 31430 Totals of Net Volume of product 3 at the end of batch of meter 1.
(4 Registers)
DOUBLE
0599 31434 Totals of Weight of product 3 at the end of batch of meter 1.
(4 Registers)
DOUBLE
059D 31438 Gross volume of product 3 delivered of meter 1.
(4 Registers)
DOUBLE
05A1 31442 Net volume of product 3 delivered of meter 1. 0 ÷ 999999999
(4 Registers)
DOUBLE
05A5 31446 Weight of product 3 delivered of meter 1.
(4 Registers)
DOUBLE
05A9 31450 Density or alpha used to calculate Net Volume of product 3 of meter 1.
(4 Registers)
It depends on method of compensation.
DOUBLE
05AD 31454 Density used to calculate Weight of product 3 of meter 1.
(4 Registers)
05B1 31458 (93 Registers) RESERVED

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°41 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
DATA OF LAST TRANSACTION OF METER 2
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
INTEGER
060E 31551 Number of transaction of meter 2. 0 ÷ 99999
(2 Registers)
STRING
0610 31553 Date of start of transaction of meter 2. DD/MM/YY
(4 Registers)
STRING
0614 31557 Hour of start of transaction of meter 2. HH:MM:SS
(4 Registers)
STRING
0618 31561 Date of end of transaction of meter 2. DD/MM/YY
(4 Registers)
STRING
061C 31565 Hour of end of transaction of meter 2. HH:MM:SS
(4 Registers)
STRING
0620 31569 Unit of measurement of Volume of meter 2.
(4 Registers)
STRING
0624 31573 Unit of measurement of Weight of meter 2.
(1 Register)
STRING
0625 31574 Unit of measurement of Temperature of meter 2.
(1 Register)
Alphanumerical code.
STRING
0626 31575 Unit of measurement of Flow Rate of meter 2.
(2 Registers)
STRING
0628 31577 Unit of measurement of density used to calculate Net Volume of meter 2.
(3 Registers)
STRING
062B 31580 Unit of measurement of density used to calculate Weight of meter 2.
(3 Registers)
CHAR
062E 31583 Method of compensation of meter 2. It depends on method of compensation.
(1 Register)
STRING
062F 31584 Name of product 1 of meter 2. Alphanumerical code.
(4 Registers)
CHAR 0 = Product not enabled
0633 31588 Enabling of product 1 of meter 2.
(1 Register) 1 = Product enabled
DOUBLE
0634 31589 Presetted quantity of product 1 of meter 2. 0 ÷ 999999
(4 Registers)

Page n°42 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
DATA OF LAST TRANSACTION OF METER 2
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
FLOAT
063A 31595 Average flow rate of product 1 of meter 2. 0 ÷ 999999
(2 Registers)
FLOAT Average temperature of product 1 of meter 2. -40.0 ÷ 200.0 °C
063C 31597
(2 Registers) N.B. Value of this register will be –100 until average temperature is not calculated. -40.0 ÷ 392.0 °F
DOUBLE
0640 31601 Totals of Gross Volume of product 1 at the start of batch of meter 2.
(4 Registers)
DOUBLE
0644 31605 Totals of Net Volume of product 1 at the start of batch of meter 2.
(4 Registers)
DOUBLE
0648 31609 Totals of Weight of product 1 at the start of batch of meter 2.
(4 Registers)
0 ÷ 99999999
DOUBLE
064C 31613 Totals of Gross Volume of product 1 at the end of batch of meter 2.
(4 Registers)
DOUBLE
0650 31617 Totals of Net Volume of product 1 at the end of batch of meter 2.
(4 Registers)
DOUBLE
0654 31621 Totals of Weight of product 1 at the end of batch of meter 2.
(4 Registers)
DOUBLE
0658 31625 Gross volume of product 1 delivered of meter 2.
(4 Registers)
DOUBLE
065C 31629 Net volume of product 1 delivered of meter 2. 0 ÷ 999999999
(4 Registers)
DOUBLE
0660 31633 Weight of product 1 delivered of meter 2.
(4 Registers)
DOUBLE
0664 31637 Density or alpha used to calculate Net Volume of product 1 of meter 2.
(4 Registers)
It depends on method of compensation.
DOUBLE
0668 31641 Density used to calculate Weight of product 1 of meter 2.
(4 Registers)
063A 31595 (60 Registers) RESERVED

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°43 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
DATA OF LAST TRANSACTION OF METER 2
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
STRING
06A4 31701 Name of product 2 of meter 2. Alphanumerical code.
(4 Registers)
CHAR 0 = Product not enabled
06A8 31705 Enabling of product 2 of meter 2.
(1 Register) 1 = Product enabled
DOUBLE
06A9 31706 Presetted quantity of product 2 of meter 2.
(4 Registers)
0 ÷ 999999
FLOAT
06AD 31710 Average flow rate of product 2 of meter 2.
(2 Registers)
FLOAT Average temperature of product 2 of meter 2. -40.0 ÷ 200.0 °C
06AF 31712
(2 Registers) N.B. Value of this register will be –100 until average temperature is not calculated. -40.0 ÷ 392.0 °F
DOUBLE
06B1 31714 Totals of Gross Volume of product 2 at the start of batch of meter 2.
(4 Registers)
DOUBLE
06B5 31718 Totals of Net Volume of product 2 at the start of batch of meter 2.
(4 Registers)
DOUBLE
06B9 31722 Totals of Weight of product 2 at the start of batch of meter 2.
(4 Registers)
0 ÷ 99999999
DOUBLE
06BD 31726 Totals of Gross Volume of product 2 at the end of batch of meter 2.
(4 Registers)
DOUBLE
06C1 31730 Totals of Net Volume of product 2 at the end of batch of meter 2.
(4 Registers)
DOUBLE
06C5 31734 Totals of Weight of product 2 at the end of batch of meter 2.
(4 Registers)
DOUBLE
06C9 31738 Gross volume of product 2 delivered of meter 2.
(4 Registers)
DOUBLE
06CD 31742 Net volume of product 2 delivered of meter 2. 0 ÷ 999999999
(4 Registers)
DOUBLE
06D1 31746 Weight of product 2 delivered of meter 2.
(4 Registers)
DOUBLE
06D5 31750 Density or alpha used to calculate Net Volume of product 2 of meter 2.
(4 Registers)
It depends on method of compensation.
DOUBLE
06D9 31754 Density used to calculate Weight of product 2 of meter 2.
(4 Registers)
06DD 31758 (43 Registers) RESERVED

Page n°44 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
DATA OF LAST TRANSACTION OF METER 2
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
STRING
0708 31801 Name of product 3 of meter 2. Alphanumerical code.
(4 Registers)
CHAR 0 = Product not enabled
070C 31805 Enabling of product 3 of meter 2.
(1 Register) 1 = Product enabled
DOUBLE
070D 31806 Presetted quantity of product 3 of meter 2.
(4 Registers)
0 ÷ 999999
FLOAT
0711 31810 Average flow rate of product 3 of meter 2.
(2 Registers)
FLOAT Average temperature of product 3 of meter 2. -40.0 ÷ 200.0 °C
0713 31812
(2 Registers) N.B. Value of this register will be –100 until average temperature is not calculated. -40.0 ÷ 392.0 °F
DOUBLE
0715 31814 Totals of Gross Volume of product 3 at the start of batch of meter 2.
(4 Registers)
DOUBLE
0719 31818 Totals of Net Volume of product 3 at the start of batch of meter 2.
(4 Registers)
DOUBLE
071D 31822 Totals of Weight of product 3 at the start of batch of meter 2.
(4 Registers)
0 ÷ 99999999
DOUBLE
0721 31826 Totals of Gross Volume of product 3 at the end of batch of meter 2.
(4 Registers)
DOUBLE
0725 31830 Totals of Net Volume of product 3 at the end of batch of meter 2.
(4 Registers)
DOUBLE
0729 31834 Totals of Weight of product 3 at the end of batch of meter 2.
(4 Registers)
DOUBLE
072D 31838 Gross volume of product 3 delivered of meter 2.
(4 Registers)
DOUBLE
0731 31842 Net volume of product 3 delivered of meter 2. 0 ÷ 999999999
(4 Registers)
DOUBLE
0735 31846 Weight of product 3 delivered of meter 2.
(4 Registers)
DOUBLE
0739 31850 Density or alpha used to calculate Net Volume of product 3 of meter 2.
(4 Registers)
It depends on method of compensation.
DOUBLE
073D 31854 Density used to calculate Weight of product 3 of meter 2.
(4 Registers)
0741 31858 (85 Registers) RESERVED

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°45 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
DATA OF LAST LEAK OF METER 1
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
STRING
079E 31951 Date of end of leak of meter 1. DD/MM/YY
(4 Registers)
STRING
07A2 31955 Hour of end of leak of meter 1. HH:MM:SS
(4 Registers)
STRING
07A6 31959 Unit of measurement of Volume of meter 1.
(4 Registers)
STRING
07AA 31963 Unit of measurement of Weight of meter 1.
(1 Register)
STRING
07AB 31964 Unit of measurement of Temperature of meter 1.
(1 Register)
Alphanumerical code.
STRING
07AC 31965 Unit of measurement of Flow Rate of meter 1.
(2 Registers)
STRING
07AE 31967 Unit of measurement of density used to calculate Net Volume of meter 1.
(3 Registers)
STRING
07B1 31970 Unit of measurement of density used to calculate Weight of meter 1.
(3 Registers)
CHAR
07B4 31973 Method of compensation of meter 1. It depends on method of compensation.
(1 Register)
1 = Product 1
CHAR
07B5 31974 Number of Selected product of meter 1. 2 = Product 2
(1 Register)
3 = Product 3
STRING
07B6 31975 Name of product of meter 1. Alphanumerical code.
(4 Registers)
FLOAT
07BA 31979 Average flow rate of product of meter 1. 000000 ÷ 999999
(2 Registers)
FLOAT Average temperature of product of meter 1. -40.0 ÷ 200.0 °C
07BC 31981
(2 Registers) N.B. Value of this register will be –100 until average temperature is not calculated. -40.0 ÷ 392.0 °F

Page n°46 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
DATA OF LAST LEAK OF METER 1
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
DOUBLE
07BE 31983 Totals of Gross Volume of delivered product at the start of leak of meter 1.
(4 Registers)
DOUBLE
07C2 31987 Totals of Net Volume of delivered product at the start of leak of meter 1.
(4 Registers)
DOUBLE
07C6 31991 Totals of Weight of delivered product at the start of leak of meter 1.
(4 Registers)
00000000 ÷ 99999999
DOUBLE
07CA 31995 Totals of Gross Volume of delivered product at the end of leak of meter 1.
(4 Registers)
DOUBLE
07CE 31999 Totals of Net Volume of delivered product at the end of leak of meter 1.
(4 Registers)
DOUBLE
07D2 32003 Totals of Weight of delivered product at the end of leak of meter 1.
(4 Registers)
DOUBLE
07D6 32007 Gross volume delivered of meter 1.
(4 Registers)
DOUBLE
07DA 32011 Net volume delivered of meter 1. 0 ÷ 999999999
(4 Registers)
DOUBLE
07DE 32015 Weight delivered of meter 1.
(4 Registers)
DOUBLE
07E2 32019 Density or alpha used to calculate Net Volume of meter 1.
(4 Registers)
It depends on method of compensation.
DOUBLE
07E6 32023 Density used to calculate Weight of meter 1.
(4 Registers)
07EA 32027 (74 Registers) RESERVED

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°47 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
DATA OF LAST LEAK OF METER 2
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
STRING
0834 32101 Date of end of leak of meter 1. DD/MM/YY
(4 Registers)
STRING
0838 32105 Hour of end of leak of meter 1. HH:MM:SS
(4 Registers)
STRING
083C 32109 Unit of measurement of Volume of meter 1.
(4 Registers)
STRING
0840 32113 Unit of measurement of Weight of meter 1.
(1 Register)
STRING
0841 32114 Unit of measurement of Temperature of meter 1.
(1 Register)
Alphanumerical code.
STRING
0842 32115 Unit of measurement of Flow Rate of meter 1.
(2 Registers)
STRING
0844 32117 Unit of measurement of density used to calculate Net Volume of meter 1.
(3 Registers)
STRING
0847 32120 Unit of measurement of density used to calculate Weight of meter 1.
(3 Registers)
CHAR
084A 32123 Method of compensation of meter 1. It depends on method of compensation.
(1 Register)
1 = Product 1
CHAR
084B 32124 Number of Selected product of meter 1. 2 = Product 2
(1 Register)
3 = Product 3
STRING
084C 32125 Name of product of meter 1. Alphanumerical code.
(4 Registers)
FLOAT
0850 32129 Average flow rate of product of meter 1. 000000 ÷ 999999
(2 Registers)
FLOAT Average temperature of product of meter 1. -40.0 ÷ 200.0 °C
0852 32131
(2 Registers) N.B. Value of this register will be –100 until average temperature is not calculated. -40.0 ÷ 392.0 °F

Page n°48 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
DATA OF LAST LEAK OF METER 2
ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
DOUBLE
0854 32133 Totals of Gross Volume of delivered product at the start of leak of meter 1.
(4 Registers)
DOUBLE
0858 32137 Totals of Net Volume of delivered product at the start of leak of meter 1.
(4 Registers)
DOUBLE
085C 32141 Totals of Weight of delivered product at the start of leak of meter 1.
(4 Registers)
00000000 ÷ 99999999
DOUBLE
0860 32145 Totals of Gross Volume of delivered product at the end of leak of meter 1.
(4 Registers)
DOUBLE
0864 32149 Totals of Net Volume of delivered product at the end of leak of meter 1.
(4 Registers)
DOUBLE
0868 32153 Totals of Weight of delivered product at the end of leak of meter 1.
(4 Registers)
DOUBLE
086C 32157 Gross volume delivered of meter 1.
(4 Registers)
DOUBLE
0870 32161 Net volume delivered of meter 1. 0 ÷ 999999999
(4 Registers)
DOUBLE
0874 32165 Weight delivered of meter 1.
(4 Registers)
DOUBLE
0878 32169 Density or alpha used to calculate Net Volume of meter 1.
(4 Registers)
It depends on method of compensation.
DOUBLE
087C 32173 Density used to calculate Weight of meter 1.
(4 Registers)
0880 32177 (74 Registers) RESERVED

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°49 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
? Map of address of “HOLDING REGISTERS”

ADDRESS REGISTER
(HEX) (DECIMAL)
DATA FORMAT DESCRIPTION VALUES
0000 40001 (64 registers) Register reserved for sub-function. Values are different for each sub-function.
Result of an execution of a sub-function. Values are written in “SUB-FUNCTION REPLY CODE
CHAR
0040 40065 Value of this register normally is 0xFF. It changes when a sub-function is executed. Code of result TABLE”.
(1 register)
will be present until first reading of register. ************* READ ONLY ************

Page n°50 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
5 SUB-FUNCTIONS
In this section will be described structure of sub-functions.
This messages, not standard in ModBus protocol, must be used to manage remote automation of a loading.

? How use sub-functions


To use sub-function you must follow these steps:
- Send a message of write of “HOLDING REGISTER” (function code 16: WRITE MULTIPLE REGISTERS) starting from address 0000 with different values of
registers for each sub-function.
- Verify result of execution of sub-function reading register 40064. If value is different of 0xFF you have code of reply.

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°51 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
? Sub-function 01 “START TRANSACTION”

Used for : enabling a meter for a new transaction specifying characteristics loading.
Reset displayed quantities.

POSITION BYTE DATA EXAMPLE


MSB ÷ LSB NUMBER FORMAT
DESCRIPTION VALUES
(HEX)
1 ÷ 1 1 CHAR VEGAII serial address. Parameter 2.7.3 ( 01 ÷ FF ) 0x01
2 ÷ 2 1 CHAR Function code (WRITE MULTIPLE REGISTER) 0x10 0x10
3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00 0x00
4 ÷ 4 1 CHAR Address of starting register (LSB). 0x00 0x00
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 0x00
6 ÷ 6 1 CHAR Number of registers (LSB). 0x23 0x23
7 ÷ 7 1 CHAR Number of bytes. 0x46 0x46
0x31 = Meter 1
8 ÷ 8 1 CHAR Meter addressed. 0x31
0x32 = Meter 2
9 ÷ 9 1 CHAR Product addressed. 0x30 0x30
10 ÷ 10 1 CHAR Sub-function code. 0x01 0x01
“CARICO1234 “
0x43 0x41
0x52 0x49
11 ÷ 20 10 STRING R.C.E. code ( Code sent by PC MASTER to VEGAII in order to detect a transaction). Alphanumerical code.
0x43 0x4F
0x31 0x32
0x33 0x34
0x30 = Disabling
21 ÷ 21 1 CHAR Enabling Product 1. 0x31
0x31 = Enabling
0,001000
0x3F 0x50
22 ÷ 29 8 DOUBLE Density or alpha used to calculate Net Volume of Product 1. It depends on method of compensation. 0x62 0x4D
0xD2 0xF1
0xA9 0xFC
820.1
0x40 0x89
30 ÷ 37 8 DOUBLE Density used to calculate Weight of Product 1. It depends on method of compensation. 0xA0 0xCC
0xCC 0xCC
0xCC 0xCD

Page n°52 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
POSITION BYTE DATA EXAMPLE
NUMBER FORMAT
DESCRIPTION VALUES
MSB ÷ LSB (HEX)
0x30 = Disabling
38 ÷ 38 1 CHAR Enabling Product 2. 0x31
0x31 = Enabling
0,001000
0x3F 0x50
39 ÷ 46 8 DOUBLE Density or alpha used to calculate Net Volume of Product 2. It depends on method of compensation. 0x62 0x4D
0xD2 0xF1
0xA9 0xFC
820,1
0x40 0x89
47 ÷ 54 8 DOUBLE Density used to calculate Weight of Product 2. It depends on method of compensation. 0xA0 0xCC
0xCC 0xCC
0xCC 0xCD
0x30 = Disabling
55 ÷ 55 1 CHAR Enabling Product 3. 0x31
0x31 = Enabling
0,001000
0x3F 0x50
56 ÷ 63 8 DOUBLE Density or alpha used to calculate Net Volume of Product 3. It depends on method of compensation. 0x62 0x4D
0xD2 0xF1
0xA9 0xFC
820.1
0x40 0x89
64 ÷ 71 8 DOUBLE Density used to calculate Weight of Product 3. It depends on method of compensation. 0xA0 0xCC
0xCC 0xCC
0xCC 0xCD

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°53 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
POSITION BYTE DATA EXAMPLE
NUMBER FORMAT
DESCRIPTION VALUES
MSB ÷ LSB (HEX)
Operation mode. 0x30 = Semiautomatic
72 ÷ 72 1 CHAR In semiautomatic mode you mustn’t send message 02 or 03 because product and preset are 0x31 = Automatic 0x31
setted by operator on VEGAII. 0x32 = Not used
0x30 = Bottom loading
73 ÷ 73 1 CHAR Loading selection 0x31 = Top loading 0x30
0x32 = By loading selector
0x30 = ATB
74 ÷ 74 1 CHAR Preset selection. 0x31 = ATK 0x30
0x32 = By preset selector
0x30 = Overfilling managed
75 ÷ 75 1 CHAR Bypass overfilling. 0x30
0x31 = Overfilling bypassed
Control of PIN CODE. 0x30 = PIN CODE not valid
76 ÷ 76 1 CHAR 0x31
If management of pin code is not enabled this field is not important. 0x31 = PIN CODE valid
Management of start request
If this byte is setted to 0x31 sub-function 04 “START DELIVERY” has to be sent after a
0x30 = Disabled
77 ÷ 77 1 CHAR request of start by operator on VEGAII. 0x31
0x31 = Enabled
If position 73 (LOADING SELECTION) is setted to 2 and the loading type will set to TOP this
will not considered.
78 ÷ 78 1 CHAR CRC 16 of message (LO). 0x11
Value calculated as shown at page 9.
79 ÷ 79 1 CHAR CRC 16 of message (HI). 0xFD

Page n°54 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
? Sub-function 02 “PRESET”

Used for : set a new preset for batch.


This message can be sent after a sub-function 01 valid.
After this message VEGAII goes in “wait start phase”.

POSITION BYTE DATA EXAMPLE


NUMBER FORMAT DESCRIPTION VALUES
MSB ÷ LSB (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. Parameter 2.7.3 ( 01 ÷ FF ) 0x01
2 ÷ 2 1 CHAR Function code (WRITE MULTIPLE REGISTER) 0x10 0x10
3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00 0x00
4 ÷ 4 1 CHAR Address of starting register (LSB). 0x00 0x00
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 0x00
6 ÷ 6 1 CHAR Number of registers (LSB). 0x06 0x0A
7 ÷ 7 1 CHAR Number of bytes. 0x0B 0x14
0x31 = Meter 1
8 ÷ 8 1 CHAR Meter addressed. 0x31
0x32 = Meter 2
0x31 = Product 1
9 ÷ 9 1 CHAR Product addressed. 0x32 = Product 2 0x31
0x33 = Product 3
10 ÷ 10 1 CHAR Sub-function code. 0x02 0x02
2000
0x40 0x9F
11 ÷ 18 8 DOUBLE Preset. 000000 ÷ 999999 0x40 0x00
0x00 0x00
0x00 0x00
Max weight.
1500
This field ha sto be filled if VEGAII has to close the batch at reaching:
0x40 0x97
- the volume setted in the last field.
19 ÷ 26 8 DOUBLE 000000 ÷ 999999 0x70 0x00
- The weight setted in this field.
0x00 0x00
This field has processed if the unit of measurement of preset is a volume.
0x00 0x00
To no use this feature fill the field with 0x20 (blanks).
27 ÷ 27 1 CHAR Reserved 0x00 0x00
28 ÷ 28 1 CHAR CRC 16 of message (LO). Value calculated as shown at page 9. 0x8B
29 ÷ 29 1 CHAR CRC 16 of message (HI). 0x69

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°55 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
? Sub-function 03 “MODIFY PRESET”

Used for : modify of preset during a batch.


This message can be sent during a batch with delivery stopped for set a new preset major or equal than quantity delivered.
After this message VEGAII is in “stop delivery phase”.

POSITION BYTE DATA EXAMPLE


NUMBER FORMAT DESCRIPTION VALUES
MSB ÷ LSB (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. Parameter 2.7.3 ( 01 ÷ FF ) 0x01
2 ÷ 2 1 CHAR Function code (WRITE MULTIPLE REGISTER) 0x10 0x10
3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00 0x00
4 ÷ 4 1 CHAR Address of starting register (LSB). 0x00 0x00
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 0x00
6 ÷ 6 1 CHAR Number of registers (LSB). 0x06 0x0A
7 ÷ 7 1 CHAR Number of bytes. 0x0B 0x14
0x31 = Meter 1
8 ÷ 8 1 CHAR Meter addressed. 0x31
0x32 = Meter 2
0x31 = Product 1
9 ÷ 9 1 CHAR Product addressed. 0x32 = Product 2 0x31
0x33 = Product 3
10 ÷ 10 1 CHAR Sub-function code. 0x03 0x03
2000
0x40 0x9F
11 ÷ 18 8 DOUBLE Preset. 000000 ÷ 999999 0x40 0x00
0x00 0x00
0x00 0x00
Max weight.
1500
This field ha sto be filled if VEGAII has to close the batch at reaching:
0x40 0x97
- the volume setted in the last field.
19 ÷ 26 8 DOUBLE 000000 ÷ 999999 0x70 0x00
- The weight setted in this field.
0x00 0x00
This field has processed if the unit of measurement of preset is a volume.
0x00 0x00
To no use this feature fill the field with 0x20 (blanks).
27 ÷ 27 1 CHAR Reserved 0x00 0x00
28 ÷ 28 1 CHAR CRC 16 of message (LO). 0xDA
Value calculated as shown at page 9.
29 ÷ 29 1 CHAR CRC 16 of message (HI). 0x95

Page n°56 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
? Sub-function 04 “START DELIVERY”

Used for : starting delivery of product.


This message has to be sent when meter is in “wait start delivery”.
If byte 77 of sub-function 01 is setted to 0x31 this message has to be sent after a request of start by operator (register 30201).

POSIZIONE NUMERO FORMATO ESEMPIO


BYTE CAMPO DESCRIZIONE CAMPO VALORI ASSOCIABILI
MSB ÷ LSB (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. Parameter 2.7.3 ( 01 ÷ FF ) 0x01
2 ÷ 2 1 CHAR Function code (WRITE MULTIPLE REGISTER) 0x10 0x10
3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00 0x00
4 ÷ 4 1 CHAR Address of starting register (LSB). 0x00 0x00
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 0x00
6 ÷ 6 1 CHAR Number of registers (LSB). 0x07 0x07
7 ÷ 7 1 CHAR Number of bytes. 0x1E 0x0E
0x31 = Meter 1
8 ÷ 8 1 CHAR Meter addressed. 0x31
0x32 = Meter 2
9 ÷ 9 1 CHAR Product addressed. 0x30 0x30
10 ÷ 10 1 CHAR Sub-function code. 0x04 0x04
“CARICO1234 “
0x43 0x41
0x52 0x49
11 ÷ 20 10 STRING R.C.E. code ( Code sent by PC MASTER to VEGAII in order to detect a transaction). Alphanumerical code.
0x43 0x4F
0x31 0x32
0x33 0x34
0x30 = Additivation not enabled
Enabling additivation.
0x31 = Recipe 1
If additivation is not managed or MBS is managed by serial line communication this byte will
21 ÷ 21 1 CHAR 0x32 = Recipe 2 0x30
not considered.
0x33 = Recipe 3
0x34 = Recipe 4
22 ÷ 22 1 CHAR CRC 16 of message (LO). 0x44
Value calculated as shown at page 9.
23 ÷ 23 1 CHAR CRC 16 of message (HI). 0x50

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°57 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
? Sub-function 05 “STOP DELIVERY”

Used for : - go out from a remote stop condition;


- go in remote stop condition;
- clear a request of start.
This message can be sent during a delivery or in “wait start phase”.

POSITION BYTE DATA EXAMPLE


NUMBER FORMAT
DESCRIPTION VALUES
MSB ÷ LSB (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. Parameter 2.7.3 ( 01 ÷ FF ) 0x01
2 ÷ 2 1 CHAR Function code (WRITE MULTIPLE REGISTER) 0x10 0x10
3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00 0x00
4 ÷ 4 1 CHAR Address of starting register (LSB). 0x00 0x00
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 0x00
6 ÷ 6 1 CHAR Number of registers (LSB). 0x02 0x02
7 ÷ 7 1 CHAR Number of bytes. 0x04 0x04
0x31 = Meter 1
8 ÷ 8 1 CHAR Meter addressed. 0x31
0x32 = Meter 2
9 ÷ 9 1 CHAR Product addressed. 0x30 0x30
10 ÷ 10 1 CHAR Sub-function code. 0x05 0x05
0x30 = go out from remote stop mode
11 ÷ 11 1 CHAR Remote stop. 0x31 = go in remote stop mode 0x31
0x32 = Reset request of start
12 ÷ 12 1 CHAR CRC 16 of message (LO). 0x3F
Value calculated as shown at page 9.
13 ÷ 13 1 CHAR CRC 16 of message (HI). 0xD8

Page n°58 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
? Sub-function 06 “TERMINATE BATCH”

Used for : terminate batch before reach presetted quantity.


This message can be sent during a stop delivery.

POSITION BYTE DATA EXAMPLE


NUMBER FORMAT
DESCRIPTION VALUES
MSB ÷ LSB (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. Parameter 2.7.3 ( 01 ÷ FF ) 0x01
2 ÷ 2 1 CHAR Function code (WRITE MULTIPLE REGISTER) 0x10 0x10
3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00 0x00
4 ÷ 4 1 CHAR Address of starting register (LSB). 0x00 0x00
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 0x00
6 ÷ 6 1 CHAR Number of registers (LSB). 0x02 0x02
7 ÷ 7 1 CHAR Number of bytes. 0x04 0x04
0x31 = Meter 1
8 ÷ 8 1 CHAR Meter addressed. 0x31
0x32 = Meter 2
9 ÷ 9 1 CHAR Product addressed. 0x30 0x30
10 ÷ 10 1 CHAR Sub-function code. 0x06 0x06
11 ÷ 11 1 CHAR Reserved. 0x00 0x00
12 ÷ 12 1 CHAR CRC 16 of message (LO). 0xFE
Value calculated as shown at page 9.
13 ÷ 13 1 CHAR CRC 16 of message (HI). 0xFC

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°59 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
? Sub-function 07 “TRANSACTION CLOSING”

Used for : close transaction in progress.


This message can be sent during a transaction with no batch in progress.

POSITION BYTE DATA EXAMPLE


NUMBER FORMAT
DESCRIPTION VALUES
MSB ÷ LSB (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. Parameter 2.7.3 ( 01 ÷ FF ) 0x01
2 ÷ 2 1 CHAR Function code (WRITE MULTIPLE REGISTER) 0x10 0x10
3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00 0x00
4 ÷ 4 1 CHAR Address of starting register (LSB). 0x00 0x00
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 0x00
6 ÷ 6 1 CHAR Number of registers (LSB). 0x02 0x02
7 ÷ 7 1 CHAR Number of bytes. 0x04 0x04
0x31 = Meter 1
8 ÷ 8 1 CHAR Meter addressed. 0x31
0x32 = Meter 2
9 ÷ 9 1 CHAR Product addressed. 0x30 0x30
10 ÷ 10 1 CHAR Sub-function code. 0x07 0x07
11 ÷ 11 1 CHAR Reserved. 0x00 0x00
12 ÷ 12 1 CHAR CRC 16 of message (LO). 0xFF
Value calculated as shown at page 9.
13 ÷ 13 1 CHAR CRC 16 of message (HI). 0x6C

Page n°60 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
? Sub-function 11 (0B Hex) “BATCH DATA STORED”

Used for : confirm that data of last batch are stored by PC MASTER.
Reset register 30203 “Status of batch”.

POSITION BYTE DATA EXAMPLE


NUMBER FORMAT DESCRIPTION VALUES
MSB ÷ LSB (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. Parameter 2.7.3 ( 01 ÷ FF ) 0x01
2 ÷ 2 1 CHAR Function code (WRITE MULTIPLE REGISTER) 0x10 0x10
3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00 0x00
4 ÷ 4 1 CHAR Address of starting register (LSB). 0x00 0x00
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 0x00
6 ÷ 6 1 CHAR Number of registers (LSB). 0x02 0x02
7 ÷ 7 1 CHAR Number of bytes. 0x04 0x04
0x31 = Meter 1
8 ÷ 8 1 CHAR Meter addressed. 0x31
0x32 = Meter 2
9 ÷ 9 1 CHAR Product addressed. 0x30 0x30
10 ÷ 10 1 CHAR Sub-function code. 0x0B 0x0B
11 ÷ 11 1 CHAR Reserved. 0x00 0x00
12 ÷ 12 1 CHAR CRC 16 of message (LO). 0xFA
Value calculated as shown at page 9.
13 ÷ 13 1 CHAR CRC 16 of message (HI). 0x6C

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°61 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
? Sub-function 12 (0C Hex) “TRANSACTION DATA STORED”

Used for : confirm that data of last transaction are stored by PC MASTER.
Reset register 30189 “Status of transaction”.

POSITION BYTE DATA EXAMPLE


NUMBER FORMAT
DESCRIPTION VALUES
MSB ÷ LSB (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. Parameter 2.7.3 ( 01 ÷ FF ) 0x01
2 ÷ 2 1 CHAR Function code (WRITE MULTIPLE REGISTER) 0x10 0x10
3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00 0x00
4 ÷ 4 1 CHAR Address of starting register (LSB). 0x00 0x00
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 0x00
6 ÷ 6 1 CHAR Number of registers (LSB). 0x02 0x02
7 ÷ 7 1 CHAR Number of bytes. 0x04 0x04
0x31 = Meter 1
8 ÷ 8 1 CHAR Meter addressed. 0x31
0x32 = Meter 2
9 ÷ 9 1 CHAR Product addressed. 0x30 0x30
10 ÷ 10 1 CHAR Sub-function code. 0x0C 0x0C
11 ÷ 11 1 CHAR Reserved. 0x00 0x00
12 ÷ 12 1 CHAR CRC 16 of message (LO). 0xF8
Value calculated as shown at page 9.
13 ÷ 13 1 CHAR CRC 16 of message (HI). 0x5C

Page n°62 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
? Sub-function 13 (0D Hex) “LEAK DATA STORED”

Used for : confirm that data of last leak are stored by PC MASTER.
Reset register 30342 “Request to store data of a leak”.

POSITION BYTE DATA EXAMPLE


NUMBER FORMAT
DESCRIPTION VALUES
MSB ÷ LSB (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. Parameter 2.7.3 ( 01 ÷ FF ) 0x01
2 ÷ 2 1 CHAR Function code (WRITE MULTIPLE REGISTER) 0x10 0x10
3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00 0x00
4 ÷ 4 1 CHAR Address of starting register (LSB). 0x00 0x00
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 0x00
6 ÷ 6 1 CHAR Number of registers (LSB). 0x02 0x02
7 ÷ 7 1 CHAR Number of bytes. 0x04 0x04
0x31 = Meter 1
8 ÷ 8 1 CHAR Meter addressed. 0x31
0x32 = Meter 2
9 ÷ 9 1 CHAR Product addressed. 0x30 0x30
10 ÷ 10 1 CHAR Sub-function code. 0x0D 0x0D
11 ÷ 11 1 CHAR Reserved. 0x00 0x00
12 ÷ 12 1 CHAR CRC 16 of message (LO). 0xF9
Value calculated as shown at page 9.
13 ÷ 13 1 CHAR CRC 16 of message (HI). 0xCC

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°63 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
? Sub-function 14 (0E Hex) “ALARM RESET”

Used for : reset an alarm.


This message can be sent when an alarm is present.

POSITION BYTE DATA EXAMPLE


NUMBER FORMAT
DESCRIPTION VALUES
MSB ÷ LSB (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. Parameter 2.7.3 ( 01 ÷ FF ) 0x01
2 ÷ 2 1 CHAR Function code (WRITE MULTIPLE REGISTER) 0x10 0x10
3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00 0x00
4 ÷ 4 1 CHAR Address of starting register (LSB). 0x00 0x00
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 0x00
6 ÷ 6 1 CHAR Number of registers (LSB). 0x02 0x02
7 ÷ 7 1 CHAR Number of bytes. 0x04 0x04
0x30 = System alarm reset
8 ÷ 8 1 CHAR Meter addressed. 0x31 = Meter 1 alarm reset 0x31
0x32 = Meter 2 alarm reset
9 ÷ 9 1 CHAR Product addressed. 0x30 0x30
10 ÷ 10 1 CHAR Sub-function code. 0x0E 0x0E
11 ÷ 11 1 CHAR Reserved. 0x00 0x00
12 ÷ 12 1 CHAR CRC 16 of message (LO). 0xF9
Value calculated as shown at page 9.
13 ÷ 13 1 CHAR CRC 16 of message (HI). 0x3C

Page n°64 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
? Sub-function 15 (0F Hex) “DISABLING METER”

Used for : disabling meter addressed.


This message can be sent when no transaction, or batch are in progress.

POSITION BYTE DATA EXAMPLE


NUMBER FORMAT
DESCRIPTION VALUES
MSB ÷ LSB (HEX)
1 ÷ 1 1 CHAR VEGAII serial address. Parameter 2.7.3 ( 01 ÷ FF ) 0x01
2 ÷ 2 1 CHAR Function code (WRITE MULTIPLE REGISTER) 0x10 0x10
3 ÷ 3 1 CHAR Address of starting register (MSB). 0x00 0x00
4 ÷ 4 1 CHAR Address of starting register (LSB). 0x00 0x00
5 ÷ 5 1 CHAR Number of registers (MSB). 0x00 0x00
6 ÷ 6 1 CHAR Number of registers (LSB). 0x02 0x02
7 ÷ 7 1 CHAR Number of bytes. 0x04 0x04
0x31 = Meter 1
8 ÷ 8 1 CHAR Meter addressed. 0x31
0x32 = Meter 2
9 ÷ 9 1 CHAR Product addressed. 0x30 0x30
10 ÷ 10 1 CHAR Sub-function code. 0x0F 0x0F
0x30 = Disable meter
11 ÷ 11 1 CHAR Enabling meter. 0x30
0x31 = Enable meter
12 ÷ 12 1 CHAR CRC 16 of message (LO). 0xF8
Value calculated as shown at page 9.
13 ÷ 13 1 CHAR CRC 16 of message (HI). 0xB8

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°65 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
This page is left blank intentionally.

Page n°66 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law
6 APPENDIX TABLES

SUB-FUNCTION REPLY CODE TABLE


USED BY MESSAGES
CODE DESCRIPTION
01 02 03 04 05 06 07 11 12 13 14 15
00 Command accepted. ? ? ? ? ? ? ? ? ? ? ? ?
01 Sub-function not present.
02 Wrong length of sub-function. ? ? ? ? ? ? ? ? ? ? ? ?
03 Wrong checksum of message. ? ? ? ? ? ? ? ? ? ? ? ?
04 Message not valid for system. ? ? ? ? ? ? ? ? ? ?
05 Message not valid for meter. ? ? ?
06 Message not valid for product. ? ? ? ? ? ? ? ? ? ?
07 Wrong number of Meter. ? ? ? ? ? ? ? ? ? ? ? ?
08 Wrong number of Product. ? ? ? ? ? ? ? ? ? ? ? ?
09 Impossible to send a message for product without specify Meter. ? ? ? ? ? ? ? ? ? ? ? ?
10 VEGAII in local mode. ? ? ? ? ? ? ? ? ? ? ? ?
11 Meter disabled. ? ? ? ? ? ?
12 Meter non used for transaction in progress. ? ? ?
13 VEGAII in access mode. ? ? ? ? ? ? ? ? ? ? ? ?
14 Transaction in progress ? ?
15 No transaction in progress. ?
16 Batch in progress. ? ? ? ?
17 No batch in progress. ?
18 Delivery in progress for the Meter. ? ? ? ?
19 Flow in progress. ? ? ? ? ? ? ?
20 Meter in remote stop. ? ? ? ? ?
21 Meter enabled only for bottom loading. ?
22 Meter enabled only for top loading. ?
23 Meter enabled only for ATK preset. ?
24 Meter enabled only for ATB preset. ?
25 Preset management not enabled. ? ? ? ? ? ? ? ? ? ? ? ?
26 VEGAII in PINCODE entering state ?
27 Leak in progress ? ? ?

COPYRIGHT: ISOIL IMPIANTI S.p.A. Page n°67 of 68


MODBUS PROTOCOL VERSION “MB 01.01”
Reproduction of this document in any form is strictly prohibited by law Code 264/09/EN/00 dated 08/2007
SUB-FUNCTION REPLY CODE TABLE
USED BY MESSAGES
CODE DESCRIPTION
01 02 03 04 05 06 07 11 12 13 14 15
30 Request of start present. ? ?
31 No request of start present. ? ?
32 Request of store data of batch present. ? ? ? ? ?
33 Request of store data of transaction present. ? ? ?
34 No request of store data of batch present. ?
35 No request of store data of transaction present. ?
36 No request of store data of leak present ?
37 Data not available.
40 System alarm present. ?
41 Meter alarm present. ?
42 No system alarm present ?
43 No meter alarm present. ?
44 System permissive not present. ?
45 Meter permissive not present. ?
50 No preset quantity. ?
51 Preset out of range. ? ?
52 New preset minus or equal to delivered quantity. ?
53 Wrong product for new preset. ?
54 Product not enabled for transaction in progress. ? ?
55 Density or alpha out of range. ?
56 Density to calculate weight out of range. ?
57 Transaction is enabled for semiautomatic mode. ? ?
70 Wrong Number of recipe. ?
72 Unauthorized to change selected recipe during a batch ?
90 Command not authorized for the management of the automation. ? ? ? ? ? ? ? ? ? ? ? ?
92 Message not accepted because power supply voltage not enough. ? ? ?

Page n°68 of 68 COPYRIGHT: ISOIL IMPIANTI S.p.A.


MODBUS PROTOCOL VERSION “MB 01.01”
Code 264/09/EN/00 dated 08/2007 Reproduction of this document in any form is strictly prohibited by law

S-ar putea să vă placă și