ModBus: andme tüübid

Andme tüüp

Kirjeldus

INT16

Täisarv vahemikus –32768 kuni 32767.
Andmepunkti tegelikult kasutatud arvuvahemik võib erineda.

UINT16

Eessümbolita täisarv vahemikus 0 kuni 65535.
Andmepunkti tegelikult kasutatud arvuvahemik võib erineda.

ENUM

On numeratsioon. Kasutada saab ainult ühte parameetrite all nimetatud väärtust.

BOOL

Boolväärtus on parameeter, millel on täpselt kaks olekut (0 – vale/false ja 1 – tõene/true). Üldiselt antakse kõigile väärtustele suurem väärtus kui 0 (true).

BITMAP*

See on 16 boolväärtuse (bittide) kokkuvõte. Väärtustele viidatakse vahemikus 0 – 15. Registrist loetavad või kirjutatavad arvud tulenevad kõigi bittide summast, mille väärtus on 1 × 2 võrra suuremad nende indeksist.

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

BITMAP32

See on 32 boolväärtuse (bittide) kokkuvõte. Arvutamise üksikasjade kohta lugege Bitmapi juurest.

* Selgitav näide:
bitid 3, 6, 8 ja 15 on 1 ning kõik teised on 0. Summa on siis 23+26+28+215 = 8+64+256+32768 = 33096. Ka vastupidine moodus on võimalik. Seejuures kontrollitakse suurima indeksiga bitist lähtudes, kas loetud arv on kahendsüsteemist suurem või sellega võrdne. Kui nii, siis asendatakse bitt 1 ja kahendsüsteem eemaldatakse arvust. Seejärel korratakse biti kontrollimist järgmise väikseima indeksiga ja arvutatud paarisjääkarv korrutatakse kuni jõutakse bitini 0 või kuni jääkarv on 0. Selgitamiseks üks näide: loetud arv on 1416. Bitt 15 on 0, kui 1416 < 32768. Bitid 14 – 11 on samuti 0. Bitt 10 on 1, kui 1416 > 1024. Jääkarv on 1416 – 1024=392. Bitt 9 on 0, kui 392 < 512. Bitt 8 on 1, kui 392 > 256. Jääkarv on 392 – 256=136. Bitt 7 on 1, kui 136 > 128. Jääkarv on 136 – 128=8. Bitid 6 – 4 on 0. Bitt 3 on 1, kui 8=8. Jääkarv on 0. Seega on ülejäänud bitid 2 kuni kõik 0.