© Copyright Brainboxes Ltd
ED-560
Analogue outputs (as integer
Analogue outputs (as float)
Integer values are encoded in one of two formats, depending on the integer format setting.
“Hexadecimal” (integer format register = 0, integer format coil OFF): the output range is scaled to an
integer value ranging from 0 to 16383 (3FFF hexadecimal).
“Engineering units” (integer format register = 1, integer format coil ON): the output, in mA or V, is
scaled up to as high a power of 10 as possible while allowing the full range of values to fit in a 16-bit
integer.
Floating-point values are encoded according to the IEEE 754 standard for 32-bit floating-point numbers. Each
value takes two sequential 16-bit Modbus registers, with the least-significant bits of the 32-bit value being held
in the lower register address (“little-endian” format). Both Modbus registers must be written or read in the
same Modbus request. The units of the float values are Volts or milliAmps.
Writing values below the minimum results in the minimum output for the range being used, and writing values
above the maximum results in the maximum output for the range being used.
The type/range codes which can be set using Modbus, and the data ranges they result in, are tabulated below.
The codes are the same as for the ASCII protocol.