Server
Konfigurace serveru protokolu IEC 60870-5-104
Vzor
...
<!-- konfigurace pro pro IEC-104 server -->
<Ez_iec104s version="1.00">
<srvmain mid="1" lip="10.16.62.98"/>
<srvgroup>
<srv name="ED" mid="1" rip="192.168.1.21,192.168.1.22,192.168.2.21,192.168.2.22" cfid="1">
<settings
enlog ="0"
/>
<asdu addr="164"/>
</srv>
<srv name="ED servis" mid="1" rip="" cfid="2">
<asdu addr="164"/>
</srv>
<!-- adresace -->
<iodata>
<io type="30" ioa="1" group="0x1"> <!-- 0:1, _RDRT_PorKom_ED: Porucha komun. klient ED -->
<sig id="1"/>
</io>
<io type="30" ioa="3" group="0x1"> <!-- 0:3, _RDRT_PorKom_ED_servis: Porucha komun. klient ED servis -->
<sig id="2"/>
</io>
</iodata>
</srvgroup>
</Ez_iec104s>
...
<Ez_iec104s>
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 2404
<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 = název serveru
- rip = rezervování IP adresy, jen tato IP se může připojit, defaultně prázdná v tom případě se může připojit jakékoli zařízení.
- rport = port pro komunikaci serveru, defaultně 0
- cfid = ID chybového hlášení přerušení komunikace (hlásí se bufferu), defaultně 0
- name= jméno serveru, musí se zadat
- 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 = (debug) 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.
- en = Povolení 1 nebo zakázání 0 provedení tohoto prvku, absence en znamená že je nastaven na 1
- t1 = Časová prodleva pro vysílané nebo zkušební APDU, defaultně 15 s.
- t2 = Časová prodleva pro potvrzení v případě, že zprávy neobsahují data t2 < t1, defaultně 10 s.
- t3 = Časová prodleva pro vysílání zkušebních rámců v případě dlouhých klidových stavů, defaultně 20 s.
- k = Maximální rozdíl mezi pořadovým číslem příjmu a stavovou proměnou vysílání, defaultně 12 APDU.
- w = Poslední potvrzení po přijetí w APDU s I formátem, defaultně 8 APDU
- enlog = povolení logů defaultně 1 // kontrola //
- entestfr = /// dovyplnit /// defaultně 0
- ensendinit = /// dovyplnit /// defaultně 0
- lp = Určení objektu pro porovnání s bufferem (ID), defaultně 10
- lpa = Způsob porovnání objektu s bufferem (rovnost / nerovnost => 1/0), defaultně 0 (nerovnost), defaultně 200 // kontrola //
- blkcmd = platí na všechny povely, (1/0), pokud 1, neprovede se vůbec, pokud 0, přechází na podmínky v příkazu
<asdu>
Adresní prostor.
- en = Povolení 1 nebo zakázání 0 provedení tohoto prvku, absence en znamená že je nastaven na 1
- addr = adresa asdu, defaultně 0
- aid = Pokud je definováno více asdu je pak potřeba jim přidat aid jakožto identifikátor
<io>
- en = Povolení 1 nebo zakázání 0 provedení tohoto prvku, absence en znamená že je nastaven na 1
- type = určuje počet bitů, pokud se nedefinuje, defaultně se nastaví na 0 (sama se určí jako rezerva, nepoužívá se)
- ioa = Adresa informačního objektu nad protokolem 104 (strukturovaná adresa–3 bytové číslo), plní se VŽDY
- ioa1 = 1. část nestrukturované adresy informačního objektu 104, musí být uvedena (pokud si uživatel vybere nestrukturovanou adresu)
- ioa2 = 2. část nestrukturované adresy informačního objektu 104, defaultně 0
- group = musí být vyplněna, uvedena hexadecimálně
<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