Přeskočit na hlavní obsah

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