====== 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 {{:cs:mervis-ide:35-help:modbusserver1.png}} 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. {{:cs:mervis-ide:35-help:modbusserver2.png}} 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í. {{:cs:mervis-ide:35-help:modbusserver3.png}} 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).  {{:cs:mervis-ide:35-help:modbusserver6.png}} 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. {{:cs:mervis-ide:35-help:modbusserver4.png}} Funkce "Přidat proměnnou" umožňuje hromadné přidání proměnných od editoru pro Modbus server. {{:cs:mervis-ide:35-help:modbus_server_multiselect.png}} 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 {{:cs:mervis-ide:35-help:analog_reg.png}} {{:cs:mervis-ide:35-help:digital_reg.png}} 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). ===== 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. {{:cs:mervis-ide:35-help:modbusserver5.png}} 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. {{:cs:mervis-ide:35-help:modbusserver8.png}} Stejným postupem si můžeme přiřadit do zařízení více proměnných.