ModBus: Vrste podatkov

Vrsta podatkov

Opis

INT16

Celo število v območju od –32768 do 32767.
Dejansko območje številk, uporabljeno za podatkovno točko, lahko odstopa.

UINT16

Celo število brez predznaka v območju od 0 do 65535.
Dejansko območje številk, uporabljeno za podatkovno točko, lahko odstopa.

ENUM

Je naštevanje. Možno je samo pri eni vrednosti, navedeni med parametri.

BOOL

Boolova vrednost je parameter z natanko dvema vrednostma (0 – napačno/false in 1 – pravilno/true). Na splošno so vse vrednosti, večje od nič, ocenjene kot pravilne.

BITMAP*

Je povzetek 16 boolovih vrednosti (bit). Vrednosti so označene od 0 do 15. Številka za branje ali zapis v registru izhaja iz vsote vseh bitov z vrednostjo 1x2 na potenco indeksa.

  • Bit 0: 20 = 1
  • Bit 1: 21 = 2
  • Bit 2: 22 = 4
  • Bit 3: 23 = 8
  • Bit 4: 24 = 16
  • Bit 5: 25 = 32
  • Bit 6: 26 = 64
  • Bit 7: 27 = 128
  • Bit 8: 28 = 256
  • Bit 9: 29 = 512
  • Bit 10: 210 = 1024
  • Bit 11: 211 = 2048
  • Bit 12: 212 = 4096
  • Bit 13: 213 = 8192
  • Bit 14: 214 = 16384
  • Bit 15: 215 = 32768

BITMAP32

Je povzetek 32 boolovih vrednosti (bitov). Za podrobnosti izračuna glejte Bitmap.

*Primer za pojasnitev:
Bit 3, 6, 8, 15 imajo vrednost 1, vsi ostali pa 0. Vsota je 23+26+28+215 = 8+64+256+32768 = 33096. Možen je tudi obraten postopek. Pri tem se na podlagi bita z največjim indeksom preveri, ali je prebrana številka večja ali enaka drugi potenci. V tem primeru se uporabi bit 1, druga potenca pa se odstrani. Za tem se preverjanje z bitom z drugim najmanjšim indeksom in celim izračunanim ostankom ponavlja, dokler ne pridete do bita 0 ali pa je ostanek enak nič. Primer za pojasnitev: Prebrano število je 1416. Bit 15 je enak 0, zato 1416 < 32768. Biti od 14 do 11 so prav tako 0. Bit 10 je enak 1, zato 1416 > 1024. Preostanek je 1416 – 1024 = 392. Bit 9 je 0, zato 392 < 512. Bit 8 je 1, zato 392 > 256. Preostanek je 392 – 256 = 136. Bit 7 je 1, zato 136 > 128. Preostanek je 136 – 128 = 8. Biti od 6 do 4 so enaki 0. Bit 3 je 1, zato 8 = 8. Preostanek je enak 0. Tako so preostali biti od 2 do vsi 0.