Formato de datos de punto flotante (float), Formato de datos enteros largos (uint32) – Basler Electric DECS-250N Manual del usuario
Página 235

9440572990 Rev C
219
DECS-250N
Communicación Modbus™
•
Tipos de datos mapeados par más de 2 registros
o
Más de 4 caracteres en la cadena (String)
Formato de Datos de Punto Flotante (Float)
El formato de datos de punto flotante de Modbus utiliza dos registros de retención consecutivos para
representar un valor de datos. El primer registro contiene 16 bits de orden inferior del siguiente formato
de 32 bits:
•
MSB es el bit de signo para el valor del punto flotante (0 = positivo).
•
Los siguientes 8 bits son el exponente desviado por decimal 127.
•
Los 23 Bits Menos Significativos (LSBs) comprenden la mantisa normalizada. El bit más significativo
de la mantisa siempre se asume que sea 1 y no es almacenado explícitamente, produciendo una
precisión efectiva de 24 bits.
El valor del número del punto flotante se obtiene multiplicando la mantisa binaria por dos elevado a la
potencia del exponente sin desviación. El bit asumido de la mantisa binaria tiene el valor de 1,0 con los
restantes 23 bits que proporcionan un valor fraccional. La Tabla 23 muestra el formato de punto flotante.
Tabla 23. Formato de Punto Flotante
Signo
Exponente + 127
Mantisa
1 Bit
8 Bits
23 Bits
El formato de punto flotante permite valores que están aproximadamente entre 8,43X10
-37
y 3,38X10
38
.
Un valor de punto flotante de todos ceros es valor cero. Un valor de punto flotante de todos unos (no un
número) significa un valor actualmente no aplicable o deshabilitado.
Ejemplo: El valor 95.800 representado en el formato de punto flotante es hexadecimal 47BB1C00. Este
número leerá desde dos registros de retención consecutivos como a continuación:
Registro de Retención Valor
K
(Byte Hi)
hex 1C
K
(Byte Lo)
hex 00
K+1 (Byte Hi)
hex 47
K+1 (Byte Lo)
hex BB
Se requieren las mismas alineaciones de bytes para escribir.
Formato de Datos Enteros Largos (Uint32)
El formato de datos enteros largos de Modbus utiliza dos registros de retención consecutivos para
representar valor de datos de 32 bits. El primer registro contiene 16 bits de orden inferior y el segundo
registro contiene 16 bits en orden superior.
Ejemplo: El valor 95.800 representado en el formato entero largo es hexadecimal 0x00017638. Este
número leerá desde dos registros de retención consecutivos como a continuación:
Registro de Retención Valor
K
(Byte Hi)
hex 76
K
(Byte Lo)
hex 38
K+1 (Byte Hi)
hex 00
K+1 (Byte Lo)
hex 01
Se requieren las mismas alineaciones de bytes para escribir.
Formato de Datos Enteros (Uint16) o Variables de Mapeado de Bits en Formato Uint16
El formato de datos entero de Modbus utiliza un registro de retención único para representar un valor de
datos de 16 bits.
Ejemplo: El valor 4660 representado en el formato entero es hexadecimal 0x1234. Este número leerá
desde un registro de retención como a continuación: