ModBus: Veri tipleri

Veri tipi

Açıklama

INT16

32768 ila 32767 aralığında tam sayı.
Bir veri noktası için kullanılan gerçek sayı aralığı sapma gösterebilir.

UINT16

0 ila 65535 aralığında ön işaretsiz tam sayı.
Bir veri noktası için kullanılan gerçek sayı aralığı sapma gösterebilir.

ENUM

Bir sayımdır. Sadece parametreler altında sunulan değerlerden sadece biri konulabilir.

BOOL

Bir bool değeri tam iki duruma sahip bir parametredir (0 – yanlış/false ve 1 – gerçek/true). Genel olarak sıfırdan büyük tüm değerler true olarak değerlendirilir.

BITMAP*

16 bool değerinin bir özetidir (Bits). Değerler 0 ila 15 arasında gösterilir. Sekmede okunacak veya yazılacak sayı, tüm Bitlerin toplamlarıyla, indekslerinin 1×2 üssü değeriyle oluşur.

  • 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

32 bool değerinin bir özetidir (Bits). Hesaplama ayrıntıları için Bitmap üzerinden okuyun.

* Netleştirmek için örnek:
Bit 3, 6, 8, 15, 1'dir tüm diğerleri 0'dır. Toplam ise 23+26+28+215 = 8+64+256+32768 = 33096 olur. Tersine yol aynı şekilde mümkündür. Bu sırada en yüksek indekse sahip bit ile yola çıkılarak, bu okunan sayının ikinin kuvvetlerinden daha yüksek veya eşit olup olmadığı kontrol edilir. Eğer bu durum söz konusuysa, bit 1 ayarlanır ve sayıdan ikinin kuvveti çıkarılır. Ardından bir sonraki küçük indekse sahip bit ve düz hesaplanan kalan sayılar ile kontrol, bit 0'a ulaşılana veya kalan sayılar sıfır olana kadar tekrarlanır. Netleştirmek için bir örnek: Okunan sayı 1416. Bit 15, 0 olur, çünkü 1416<32768. Bitler 14 ila 11 aynı şekilde 0 olur. Bit 10, 1 olur, çünkü 1416>1024. Kalan sayı 1416-1024=392 olur. Bit 9, 0 olur, çünkü 392<512. Bit 8, 1 olur, çünkü 392>256. Kalan sayı 392-256=136 olur. Bit 7, 1 olur, çünkü 136>128. Kalan sayı 136-128=8 olur. Bit 6 ila 4, 0 olur. Bit 3 1 olur, çünkü 8=8. Kalan sayı 0 olur. Böylece kalan bitler 2 ila 0 olur.