Briques techniques
gtbmodbus-lab
Laboratoire de registres Modbus
Décoder et encoder des registres Modbus — types numériques, ordre des octets, échelle et bits actifs.
- float32
- int16
- endianness
- bitfield
Registres lus
décimal ou hexadécimal · 0 à 65535
décimal ou hexadécimal · 0 à 65535
Mots 16 bits
Registre 1
0x41CC
- UINT16
- 16 844
- INT16
- 16 844
15 0
14 1
13 0
12 0
11 0
10 0
9 0
8 1
7 1
6 1
5 0
4 0
3 1
2 1
1 0
0 0
bits actifs : 2, 3, 6, 7, 8, 14
Registre 2
0x0000
- UINT16
- 0
- INT16
- 0
15 0
14 0
13 0
12 0
11 0
10 0
9 0
8 0
7 0
6 0
5 0
4 0
3 0
2 0
1 0
0 0
bits actifs : aucun
Interprétations 32 bits
résultat = valeur brute × facteur + offset
Chaque ligne teste un ordre d’octets différent. Repère la valeur cohérente avec la grandeur attendue : pour une température, 25,5 est par exemple plus plausible qu’un nombre de plusieurs milliards. La ligne et la colonne correspondantes donnent l’ordre et le type à configurer dans la GTB.
| Ordre | FLOAT32 | INT32 | UINT32 |
|---|---|---|---|
| ABCD | 25,5 | 1.10389e+9 | 1.10389e+9 |
| BADC | -50 593 792 | -868 155 392 | 3.42681e+9 |
| CDAB | 2.36035e-41 | 16 844 | 16 844 |
| DCBA | 7.32725e-41 | 52 289 | 52 289 |