Appendix A: Data Types - Metasys - LIT-12011931 - MS-KNXN89-0 - MS-MBUSN89-0 - MS-MODBUSN89-0 - MS-NIE2910-0 - MS-NIE2916-0 - MS-NIE2920-0 - MS-NIE2926-0 - MS-NIE2960-0 - MS-NIE2966-0 - MS-NIE3910-2 - MS-NIE3920-2 - MS-NIE4910-2 - MS-NIE4920-2 - MS-NIE5920-2 - MS-NIE5960-2 - MS-NIE89SW-0 - MS-NIE89SW-6 - TL-NIE-DVD - Bulb controller - VMD Generator Express - 10

VMD Generator Express Application Note

Product
Building Automation Systems > Building Automation Systems > VMD Generator Express
Document type
Application Note
Document number
LIT-12011931
Version
10
Revision date
01/06/2017

Data must be interpreted and converted according to the specific use of the device. Table 1 lists all supported data types that can be used by VMD Generator Express for reading a register from Modbus. The value of a coil is never converted; it is always 0 or 1.

Table 1. Data Type
Name Description Examples
Field Value (Hex) Treated Value (Hex) Final Value (Decimal)

SIGN16

Value with sign on 16 bits

(-32768 to 32767)

FB2E

FB2E

-1234

UNSIGN16

Value without sign on 16 bits

(0 to 65535)

FB2E

FB2E

64302

BIT n

Extract the single bit (n from 0 to 15) from the register

1234

1234

1001000110100 (BIT 2)

1

x BITS n-m

Extract the bits group (n from 0) from the register

1234

1234

1001000110100 (2 BITS 3-4)

2

HIGH BYTE

Extract the high part from the register (0 to 255)

F1F5

F1

241

LOW BYTE

Extract the low part from the register (0 to 255)

F1F5

F5

245

SIGN

HIGH BYTE

Extract the high part from the register (-127 to 127)

F1F5

F1

-15

SIGN

LOW BYTE

Extract the low part from the register (-127 to 127)

F1F5

F5

-11

SIGN32

Value with sign on 32 bits

(-2147483648 to 2147483647)

FFA39EB2

FFA39EB2

-6054222

UNSIGN32

Value without sign on 32 bits

(0 to 4294967295)

FFA39EB2

FFA39EB2

4288913074

SIGN32 WORD SWAP

Value with sign on 32 bits, inverting the words

(-2147483648 to 2147483647)

FFA39EB2

9EB2FFA3

-1632436317

UNSIGN32 WORD SWAP

Value without sign on 32 bits, inverting the words

(0 to 4294967295)

FFA39EB2

9EB2FFA3

2662530979

SIGN32

BYTE SWAP

Value with sign on 32 bits, inverting bytes in words

(-2147483648 to 2147483647)

FFA39EB2

A3FFB29E

-1543523682

UNSIGN32 BYTE SWAP

Value without sign on 32 bits, inverting bytes in words

(0 to 4294967295)

FFA39EB2

A3FFB29E

2751443614

SIGN32

ALL SWAP

Value with sign on 32 bits, inverting all bytes

(-2147483648 to 2147483647)

FFA39EB2

B29EA3FF

-1298226177

UNSIGN32 ALL SWAP

Value without sign on 32 bits, inverting all bytes

(0 to 4294967295)

FFA39EB2

B29EA3FF

2996741119

FLOAT

Value floating point on 32 bits

(-3.4028E+38 to 3.4028E+38)

FF439EB2

FF439EB2

-2.6002E+38

FLOAT

WORD SWAP

Value floating point on 32 bits, inverting the words

(-3.4028E+38 to 3.4028E+38)

FF439EB2

9EB2FF43

-1.895E-20

FLOAT

BYTE SWAP

Value floating point on 32 bits, inverting bytes in words

(-3.4028E+38 to 3.4028E+38)

FF439EB2

43FFB29E

5.114E2

FLOAT

ALL SWAP

Value floating point on 32 bits, inverting words and bytes in words

(-3.4028E+38 to 3.4028E+38)

FF439EB2

B29E43FF

-1.842E-8

DOUBLE (*)

Value floating point on 64 bits

(-1.7977E+308 to 1.7977E+308)

12345678

9ABCDEF0

12345678

9ABCDEF0

3.5127E-303

DOUBLE WORD SWAP (*)

Value floating point on 64 bits inverting the words

(-1.7977E+308 to 1.7977E+308)

12345678

9ABCDEF0

DEF09ABC56781234

-2.1231E149

SIGN64 (*)

Value with sign on 64 bits

(-9223372036854775808 to 9223372036854775807)

12345678

9ABCDEF0

12345678

9ABCDEF0

1311768467463790320

SIGN64 WORD SWAP (*)

Value with sign on 64 bits inverting the words

(-9223372036854775808 to 9223372036854775807)

12345678

9ABCDEF0

DEF09ABC56781234

-2382234069183753676

UNSIGN64 (*)

Value without sign on 64 bits

(0 to 18446744073709551615)

12345678

9ABCDEF0

12345678

9ABCDEF0

1311768467463790320

UNSIGN64 WORD SWAP (*)

Value without sign on 64 bits inverting the words

(0 to 18446744073709551615)

12345678

9ABCDEF0

DEF09ABC56781234

16064510004525797940

MOD10_64 (*)

Module 10 calculation using 4 words with the order W1, W2, W3, W4.

The single words are considered SIGN16 when used in the calculation.

12345678

9ABCDEF0

12345678

9ABCDEF0

4660 / 22136 / -21555 / -8464

(4660*10^3)

+

(22136*10^2)

+

(-21555*10)

+

(-8464)

MOD10_64 WORD SWAP (*)

Module 10 calculation using 4 words with the order W4, W3, W2, W1.

The single words are considered SIGN16 when used in the calculation.

12345678

9ABCDEF0

DEF09ABC 56781234

-8464 / -21555 / 22136 /

4660

(-8464*10^3)

+

(-21555*10^2)

+

(22136*10)

+

(4660)

MOD1K_64 (*)

Module 1000 calculation using 4 words with the order W1, W2, W3, W4.

The single words are considered SIGN16 when used in the calculation.

12345678

9ABCDEF0

12345678

9ABCDEF0

4660 / 22136 / -21555 / -8464

(4660*10^9)

+

(22136*10^6)

+

(-21555*10^3)

+

(-8464)

MOD1K_64 WORD SWAP (*)

Module 1000 calculation using 4 words with the order W4, W3, W2, W1.

The single words are considered SIGN16 when used in the calculation.

12345678

9ABCDEF0

DEF09ABC 56781234

-8464 / -21555 / 22136 /

4660

(-8464*10^9)

+

(-21555*10^6)

+

(22136*10^3)

+

(4660)

MOD10K_64 (*)

Module 10000 calculation using 4 words with the order W1, W2, W3, W4.

The single words are considered SIGN16 when used in the calculation.

12345678

9ABCDEF0

12345678

9ABCDEF0

4660 / 22136 / -21555 / -8464

(4660*10^12)

+

(22136*10^8)

+

(-21555*10^4)

+

(-8464)

MOD10K_64 WORD SWAP (*)

Module 10000 calculation using 4 words with the order W4, W3, W2, W1.

The single words are considered SIGN16 when used in the calculation.

12345678

9ABCDEF0

DEF09ABC 56781234

-8464 / -21555 / 22136 /

4660

(-8464*10^12)

+

(-21555*10^8)

+

(22136*10^4)

+

(4660)

MOD10_32

Module 10 calculation using 2 words with the order W1, W2.

The single words are considered SIGN16 when used in the calculation.

12345678

12345678

4660 / 22136

(4660*10)

+

(22136)

MOD10_32 WORD SWAP (*)

Module 10 calculation using 2 words with the order W2, W1.

The single words are considered SIGN16 when used in the calculation.

12345678

56781234

22136 /

4660

(22136*10)

+

(4660)

MOD1K_32

Module 1000 calculation using 2 words with the order W1, W2.

The single words are considered SIGN16 when used in the calculation.

12345678

12345678

4660 / 22136

(4660*10^3)

+

(22136)

MOD1K_32 WORD SWAP (*)

Module 1000 calculation using 2 words with the order W2, W1.

The single words are considered SIGN16 when used in the calculation.

12345678

56781234

22136 /

4660

(22136*10^3)

+

(4660)

MOD10K_32

Module 10000 calculation using 2 words with the order W1, W2.

The single words are considered SIGN16 when used in the calculation.

12345678

12345678

4660 / 22136

(4660*10^4)

+

(22136)

MOD10K_32 WORD SWAP (*)

Module 10000 calculation using 2 words with the order W2, W1.

The single words are considered SIGN16 when used in the calculation.

12345678

56781234

22136 /

4660

(22136*10^4)

+

(4660)

Note: (*)
1 When high numbers are involved, precision may be lost.. The NAE internally handles the values as FLOAT32 (-3.4028E+38 to 3.4028E+38). Numbers outside the limits of FLOAT32 cannot represent a single Metasys object. For this reason, for the DOUBLE, MOD10, SIGN64 and UNSIGN64 data types, three subtypes are used to isolate the low (000 to 999), the middle (000000 to 999000), and the high part of the number. These sub-types are indicated as “1K” (LOW, MIDDLE, HIGH)