Modbus regiszterek írása,olvasása

Modbus regiszterek írása,olvasása


Modbus kommunikáció alapjai röviden

A Modbus kommunikációs protokoll az 1970-es években megjelent, Modicon cég által fejlesztett nyílt forráskódú protokoll.
A protokoll implementálható RS232 kétpontos kapcsolaton, RS485 multi-point (master/slave) vonalon és Ethernet hálózaton is. Nálunk a Loxone rendszernél a Modbus Extension RS485 vonalat használ, ezzel 32 eszköz fűzhető fel a vonalra Modbus RTU formátumú protokoll kommunikációra, vagy a másik lehetőség, a Modbus TCP formátum használata, kihasználva azt, hogy a Miniserver-ünk ethernet porton csatlakozik a hálózatra. A Modbus eszközökön eltérő struktúrában vannak reprezentálva a különböző gépészeti és egyéb eszközök mért értékei, setpontjai stb.
Lássuk milyen beállítások szükségesek a Loxone Config szoftverben, ahhoz, hogy ezen értékeket gond nélkül tudjuk olvasni.

Modbus eszközök összekötése  Loxone Modbus Extension-nel

Soros topológiát kell létrehozni, lehetőség szerint csavart érpárral az eszközök egymás után felfűzve, az utolsó eszköz végén 120ohm-os lezáró ellenállással.




Alapvető Modbus RTU beállítások Loxone-ban

Az első feladat a Loxone Modbus Extension csatlakoztatása, majd felvétele a rendszerhez Loxone Configban.
A periféria ablakban a Modbus Extension-re kattintva érjük el a tulajdonság ablakot, ahol be meg tudjuk adni a vezérelni kívánt Modbus eszköz paramétereit. Ezeket a paramétereket, mint "átviteli sebesség", "stop bitjeinek száma", "paritás", az eszköz leírásában találjuk. 
1 db Modbus Extension-nel 32 db Modbus eszköz vezérelhető abban az esetben, ha ezeknek az eszközöknek alap beállításai megegyeznek, vagy beállíthatóak azonos értékekre, ha ez nem megoldható, akkor több Modbus extension-re van szükség.

Modbus eszköz felvétele

Kijelölve a periféria ablakban a Modbus Extension-t, lehetőségünk nyílik Modbus eszköz hozzáadására egyedi eszközként vagy sablont használva.  


Az így létrehozott eszköz Modbus eszköz a perifériablakban  megjelenik,  ezt kijelölve érjük el beállításait:

 
A "Modbus cím" -nél kell megadni a vezérelendő eszköz címét 1...255-ig, ez a cím a legtöbb esetben állítható az eszköz saját felületén is. Több eszköz együttes vezérlésénél természetesen eltérő címeket kell használnunk.

A létrehozott Modbus eszközt lenyitva érjük el ki-bemeneteit : "Kimenetek" ( írott értékek) "Bemenetek" (olvasott értékek)


Létrehozhatunk digitális vagy analóg ki-bemenetet, vagy használhatunk előre létrehozott sablont:

 


Modbus opciók a Loxone Config tulajdonságok ablakban




Az alapértelmezett Modbus regiszter mérete 16 bit(2 byte). Ezen belül beállíthatjuk, hogy a Modbus eszköz adott regiszterében tárolt érték előjeles-e avagy sem, ugyanarra a regiszter tartalomra eltérő értéket fog kiolvasni a Miniszerver ( vagy a Modbus Extension) attól függően, hogy előjeles, vagy előjel nélküli olvasás van kiválasztva.
A Loxone lehetőséget ad 32 bites értékek (4 byte) olvasására is. Az érték 32 bit esetén is lehet előjeles, vagy előjel nélküli, illetve lebegőpontos érték is. Lebegőpontos érték olvasása az IEEE-754 szabvány szerint történik. Fontos: Bármely 32 bites érték olvasásához a "2 32-bites regiszter" opció bejelölése szükséges! Enélkül nem fog helyesen megtörténni a 32 bites érték olvasása.

Az alább látható táblázatban egy példában összefoglaljuk, milyen hatással vannak a modbus beállítások egy érték olvasásakor. A példában egy modbus eszköz 11-es és 12-es regisztereiből olvasunk értékeket. (Az IO cím beállításánál ügyelni kell arra, hogy a modbus eszköz adatlapján milyen címmel kezdődnek a regiszter címek.) A Modbus eszköz regisztereinek tartalma a példában:
11-es regiszter: 1562 (061Ahex)
12-es regiszter: 16554 (40AAhex)


Tá​blázat


Config Modbus beállítások paraméterei
Configban látható, olvasott érték
16-bit előjeles integer;
1562 (061Ahex)
16-bit előjel nélküli integer;
1562 (061Ahex)
16-bit előjeles integer; Byte sorrend
6662 (1A06hex)
16-bit előjeles integer; Byte sorrend
6662 (1A06hex)
32-bit előjel nélküli integer; 2 32-bites regiszter
1084884506 (40AA 061Ahex)
32-bit előjel nélküli integer; 2 32-bites regiszter; Regiszterek sorrendje
102383786 (061A 40AAhex)
32-bit előjel nélküli integer; 2 32-bites regiszter; Byte sorrend
2856327686 (AA40 1A06hex)
32-bit előjel nélküli integer; 2 32-bites regiszter; Regiszterek sorrendje; Byte sorrend
436644416 (1A06 AA40hex)
32-bit lebegőpontos; 2 32-bites regiszter
5,313


Lehetséges hibák, ha nem épül fel a kapcsolat:


  1. Modbus kommunikáció, bus polaritás váltása   A-B felcserélése
  2. Az utolsó Modbus eszköz végén 120ohmos lezáró ellenállás
  3. Modbus regiszterek írásánál olvasásánál figyelni kell, hogy decimális vagy hexadecimális értéket kell használni ( lásd eszköz adatlapja)
  4. Árnyékolt csavart érpár használata a buszhoz
  5. Modbus regiszterek megadásánál előfordulhat, hogy a regiszter táblán feltüntetett IO címből ki kell vonni egyet, pl. 1002-es IO cím (előremenő hőmérséklet) az a valóságban 1001. Ez a Modbus szabványok eltérése miatt lehetséges.
  6. A kommunikáció meglétéről érdemes úgy kezdeni a regiszterek beállítását, hogy csak egyetlen címről olvasunk értéket a Modbus eszközről/eszközökről
  7. A Modbus regiszterek lehetnek eltérő számábrázolás módúak, eltérő korrekcióval megadva, csak olvashatóak, csak írhatók, és különböző módon olvashatók (pl.: egy Modbus eszköz rendelkezhet egyetlen egy regiszterrel, ami egy 16 biten ábrázolt számérték, és a különböző bitek értékeit állítva 0-ra és 1-re lehet megadni a gép számára eltérő paramétereket)



    • Related Articles

    • SolarEdge inverter illesztése

      SolarEdge illesztés Abban az esetben ha a SolarEdge inverter felkerült a helyi hálózatra ( Loxone Miniserver hálózatával azonos hálózatra), akkor Modbus TCP-n keresztül lehetséges adatot kiolvasni belőle. Ehhez szükség van az eszköz fix helyi IP ...
    • Daikin berendezések illesztése

      Az illesztéshez szükséges Loxone Modbus Extension (https://store.verdom.hu/loxone-modbus-extension.html) vagy Loxone Modbus Air ( https://store.verdom.hu/loxone-modbus-air.html) és DCOM-LT-MB modul. DCOM-LT-MB Itt található a sablonja: ...
    • My-PV wifi meter illesztése

      Miután felkerül az mérő óra a helyi hálózatra, meg kell keresnünk. Szükség lesz a fix IP címére. Ezután létre kell hozni egy Modbus TCP eszközt a hálózati kommunikációnál: Megadni a fix IP címet: Majd hozzáadni a letöltött sablont: Itt található a ...
    • Admin jelszó megváltoztatása

      A folyamat ismertetése előtt le kell szögeznünk azt a tényt, ha egy olyan rendszer admin jelszavát szeretnéd megváltoztatni/alaphelyzetbe helyezni amit nem te programoztál, akkor az első körben ezt a cselekedetet jogilag tisztáznod kell vagy az ...
    • EIB/KNX Alapok

      EIB/KNX Alapok általános A KNX bus részére szükség van egy elkülönített erre a célra gyártott KNX tápegységre. Az eszközök címzéséhez és teljes beállításához szükség van egy érvényes licensel rendelkező ETS programra. Loxone EIB/KNX IP átjáró A ...