Nastavení Modbus serveru
Modbus server slouží k předávání dat cizímu PLC. Modbus server je implementovaný pro RTU (kromě wPLC750-8101, mark1..., IMIO..., ICIO...) i TCP (u všech platforem). Modbus server přídame do sestavy pravým klikem myši na PLC - Přidat kanál serveru

Ve vlastnostech kanálu vybereme protokol ModbusServer a linkový protokol Serial (master - slave) nebo TCP (klient - server). Při vybrání linkového protokolu "Serial" vyplňte parametry sériové linky číslo portu, přenosovou rychlost, počet dat. bitů, paritu a počet stop bitů. U linkového protokolu TCP nemusíte už na úrovni kanálu nic nastavovat.

Do vytvořeného kanálu si přidáme zařízení serveru. Pro Modbus TCP kanál serveru je možné přidat pouze jedno zařízení.

Pokud máte na kanálu serveru nastavený linkový protokol "Serial" (po lince RS232 nebo RS485), ve vlastnostech zařízení vyplňte pouze Modbusovou (linkovou) adresu zařízení (1...255).

V případě, že máte na kanálu serveru nastavený linkový protokol "TCP" (server), ve vlastnostech zařízení vyplňte "IP adresu zařízení" - pro standardní nastavení ponechte localhost (127.0.0.1) nebo 0.0.0.0, "Port zařízení" - 502 (standardní Modbus TCP port) a "Adresu zařízení" nastavte na 1 (standardní nastavení linkové adresy u Modbus TCP serveru).
Editor Modbus serveru se skládá z analogových a digitálních záložek.
V záložce "Analogové" je možné přidávat Holding reg. (čtení i zápis) a Input reg. (čtení). V záložce "Digitální" je možné přidávat Coily (čtení i zápis) a vstupy (čtení). Tyto funkce jsou na sobě nezávislé a můžou mít v editoru zadaný stejný modbusový registr resp. adresu. Kliknutím pravým tlačítkem myši do obrazovky zařízení si vložíme nový registr nebo proměnnou.

Funkce "Přidat proměnnou" umožňuje hromadné přidání proměnných od editoru pro Modbus server.

Analogové funkce (Holding reg. a Input reg.) a Digitální funkce (Coily a Vstupy) mohodu mít stejný "Počáteční prvek", jelikož se jedná o rozdílné funkce. Na analogové funkce je možné aplikovat transformace: Převést na INT - Převedení na celočíselný tvar. Identita - Zachování tvaru hodnoty - pro přenos hodnot word, ale i real (za použití více registrů, viz níže) Násobení 100 - Vynásobení hodnoty 100 - používá se pro přenos hodnot s desetinnou čárkou, např. teplota 23.56 °C se přenáší jako 2356, v klientském programu je pak nutné hodnotu opět vydělit 100. Násobení 10 - Vynásobení hodnoty 10 Dělení 100 - Vydělení hodnoty 100 Dělení 10 - Vydělení hodnoty 10

Po vložení všech proměnných do editoru Modbus serveru nahrajte sestavu do PLC.
Upozornění
Pro datové typy, které jsou větší než 16 bit (1 registr), je nutné v editoru Modbus serveru vyhradit 2 a více registrů (např. datový typ REAL - 32 bit. = 2 registry).
U klienta je nutno nastavit přiměřený interval mezi telegramy (typicky 500 ms), jinak může dojít k přetěžování serveru a výpadkům komunikace. To platí zejména v případech, je-li na server připojeno více klientů. Modbus TCP server umožňuje připojení max. 4 klientů. Další pokusy o otevření socketu jsou odmítány.
Příklad
Na uvedeném příkladu je v editoru pro zařízení Modbus serveru na počátečním prvku 1 mapovaná proměnná na plc1_out s funkcí Holding registr. Na straně klienta je nutné mít u datového bodu nastavené modbusové parametry na počátečním prvku jedna. Po nahrání sestavy do obou PLC je možné z klienta měnit hodnotu na proměnné a pozorovat změnu na serveru.

Po kompilaci a nahrání do obou PLC si můžeme vyzkoušet komunikaci. Po vložení hodnoty do plc1_out se hodnota přehraje do proměnné device_PLC_2_IN.

Stejným postupem si můžeme přiřadit do zařízení více proměnných.
Export Modbusové tabulky
Námi vytvořené zařízení Modbus serveru lze exportovat do CSV souboru. To lze udělat pravým kliknutím myši na zařízení, najet na Export/Import a zde vybrat Export Modbus tabulky.

Zobrazí se nám dialog, kde lze vybrat:
- Cestu pro export registrů - výchozí je adresář projektu, lze změnit
- Cestu pro export coilů - výchozí je adresář projektu, lze změnit
- Přepsat existující - pokud už existuje v adresáři soubor se stejným názvem, v dialogu se zobrazí chybová hláška a uživatel musí soubor přejmenovat nebo vybrat tuto možnost pro přepsání.
- Oddělovač sloupců - zde lze vybrat mezi čárkou, středníkem nebo tabulátorem.

Po stisku OK se nám ve vybraných adresářích vytvoří 2 soubory, v tomto příkladu soubor „PLC_registers.csv“ a „PLC_coils.csv“.
Soubor pro registry obsahuje sloupce:
- Počáteční prvek
- Prostá transformace
- Násobit 100
- Násobit 10
- Převést na INT
- Identita
- Dělit 10
- Dělit 100
- Funkce
- Holding register
- Input register
- Mapovaná proměnná
- Typ
- Retain
- Pozn.
Soubor pro coily obsahuje sloupce:
- Počáteční prvek
- Funkce
- Vstup
- Coil
- Mapovaná proměnná
- Typ
- Retain
- Pozn.
Import Modbusové tabulky
Vyexportované tabulky lze zpátky i naimportovat a použít v tom samém nebo úplně v jiném projektu.
Opět dialog vyvoláme pravým klikem na zařízení, najedeme na Export/Import, kde vybereme Import Modbus tabulky.

Objeví se dialog, který obsahuje:
- Vstupní cesta - ve výchozím stavu se zobrazuje adresář projektu, je zde potřeba vybrat CSV soubor, který chceme importovat
- Výchozí modul - název spustitelného projektu
- Typ - zde je potřeba vybrat, jaký typ souboru se snažíte importovat (Registers nebo Coils)
- Import podle proměnných - dojde k zobrazení dalšího dialogu a u proměnných se stejným názvem proměnné se po dokončení pouze aktualizují jejich ostatní parametry (např. adresa)
- Import podle adres - dojde k zobrazení dalšího dialogu a u proměnných se stejnou adresou se po dokončení pouze aktualizují jejich ostatní parametry (např. název proměnné)
- Importovat - dojde k zobrazení dalšího dialogu, kde při finálním importu neprobíhá žádná kontrola již existujících proměnných
Stisk OK otevře dialog jako kdybychom stiskli tlačítko Importovat.

V dalším dialogu můžeme vidět proměnné, které se podařilo načíst z CSV souboru.
Těmto proměnným lze poté ještě změnit mapovanou proměnnou nebo funkci.
