Server
Konfigurace serveru protokolu Modbus
Vzor
...
<!-- konfigurace pro Modbus IP server -->
<Ez_mdbips version="1.00">
<srvgroup>
<!-- "konfigurace pro svetelny sloupek a houkacku ASX1,2" -->
<srv name="Sloupek ASX12" rip="172.16.1.15" cfid="59"/>
<rec fc="1" addr="4000" dcount="16">
<sig id="3124" off_lo="0" lo="0"/> <!-- 1x4000 LED Zelena - Sumarni porucha komunikace -->
<sig id="3122" off_lo="0" lo="1"/> <!-- 1x4001 LED Modra - Sumarni mistne -->
<sig id="3125" off_lo="1" lo="0"/> <!-- 1x4008 Houkacka - impulz sumarni porucha komunikace -->
<sig id="3123" off_lo="1" lo="1"/> <!-- 1x4009 Houkacka - impulz sumarni mistne -->
</rec>
</srvgroup>
</Ez_mdbips>
...
<Ez_mdbips>
Je hlavička, která určuje protokol a hierarchii komunikace. Zde se jedná o server <…s>
= server.
- version = verze implementace daného protokolu, povinné vždy zadat a zapisuje se v reálných číslech bez znaménka.
- dbg = diagnostická pomůcka, zanesení do logu komentáře. Defaulně se zadává 0 v celých číslech bez znaménka. Vyjmenování typů viz. Debug
<srvmain>
Srvmain obsahuje nastavení serverů pro komunikaci.
- en = Povolení 1 nebo zakázání 0 provedení tohoto prvku, absence en znamená že je nastaven na 1
- mid = defaultně se mid = 1, NIKDY nesmí být 0 (chybná konfigurace), vytvoří se interface s určitým ID
- lip = lokální IP adresa, defaultně nevyplněná ("")
- lport = lokální port, je port klienta. Pokud není nastaven očekává se 502
<srvgroup>
Je skupina serverů které sdílejí společně stejná data.
- en = Povolení 1 nebo zakázání 0 provedení tohoto prvku, absence en znamená že je nastaven na 1
<srv>
Nastavení serveru pro možné dotazování klientů a nastavení jeho vlastností.
- en = Povolení 1 nebo zakázání 0 provedení tohoto prvku, absence en znamená že je nastaven na 1
- name = jméno serveru, musí se zadat
- cfid = ID chybového hlášení přerušení komunikace (hlásí se bufferu), defaultně 0
- rip = rezervování IP adresy, jen tato IP se může připojit, defaultně prázdná
- rport = port pro komunikaci serveru, defaultně 0
- rdto = opožděný start serveru, defaultně nastaven na 0, zadává se v ms
- ncto = new connect timeout, po timeoutu začne server posílat požadavky na připojení, zadává se v ms, defaultně 0
- dto = defaultně 0
- wdto = defaultně 0
- dbg = diagnostická pomůcka, zanesení do logu komentáře. Defaulně se zadává 0 v celých číslech bez znaménka. Vyjmenování typů viz. Debug
<settings>
Nastavení některých základních údajů komunikace protokolu.
- unit = defaultně 0xFFFF /// dovyplnit ///
<rec>
- en = Povolení 1 nebo zakázání 0 provedení tohoto prvku, absence en znamená že je nastaven na 1
- addr = adresa, defaultně 0
- fc = je funkční kód zprávy, defaultně 0 // kontrola //
- dcount = je počet dat co se má zpracovat, defaultně 0
- status = /// dovyplnit /// defaultně 0
<sig>
- en = Povolení 1 nebo zakázání 0 provedení tohoto prvku, absence en znamená že je nastaven na 1
- id = odkaz na objekt v bufferu, defaultně 0
- conv = je způsob jak převést data na jiné datové typy nebo je upravit (negace, float => celé číslo), defaultně 0. Vyjmenování typů viz. Konverze
- k = lineární konverze kx + q, defaultně 1.0
- q = lineární konverze kx + q, defaultně 0.0
- c = konstanta pro konverze, defaultně 0.0
- off_lo = offset pro určení bytové informace z řetězce pro 1. bit, defaultně 0
- lo = určení čísla bitu z offset bytového řetězce pro 1. informaci, defaultně 0
- off_hi = offset pro určení bytové informace z řetězce pro 2. bit, defaultně 0
- hi = určení čísla bitu z offset bytového řetězce pro 2. informaci, defaultně 0
<cmd>
- en = Povolení 1 nebo zakázání 0 provedení tohoto prvku, absence en znamená že je nastaven na 1
- id = odkaz na objekt v bufferu, defaultně 0
- conv = je způsob jak převést data na jiné datové typy nebo je upravit (negace, float => celé číslo), defaultně 0. Vyjmenování typů viz. Konverze
- k = lineární konverze kx + q, defaultně 1.0
- q = lineární konverze kx + q, defaultně 0.0
- c = konstanta pro konverze, defaultně 0.0
- off_lo = offset pro určení bytové informace z řetězce pro 1. bit, defaultně 0
- lo = určení čísla bitu z offset bytového řetězce pro 1. informaci, defaultně 0
- off_hi = offset pro určení bytové informace z řetězce pro 2. bit, defaultně 0
- hi = určení čísla bitu z offset bytového řetězce pro 2. informaci, defaultně 0
- lp = je odkaz na id poruchy komunikace v bufferu
- lpt = defaultně 0