Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verze | ||
| cs:sw:01-mervis:setting-modbus-server-hidden [2020/06/08 13:13] – avsetula | cs:sw:01-mervis:setting-modbus-server-hidden [2024/07/24 14:35] (aktuální) – [Nastavení Modbus TCP serveru (slave)] kcerny | ||
|---|---|---|---|
| Řádek 6: | Řádek 6: | ||
| <WRAP half column 15%> | <WRAP half column 15%> | ||
| ;;# | ;;# | ||
| - | < | + | < |
| < | < | ||
| - | < | + | < |
| + | < | ||
| + | < | ||
| ;;# | ;;# | ||
| </ | </ | ||
| </ | </ | ||
| + | |||
| + | |||
| ===== Fyzická vrstva ===== | ===== Fyzická vrstva ===== | ||
| Prvním krokem je rozhodnutí, | Prvním krokem je rozhodnutí, | ||
| - | Fyzická vrstva RS485 je typicky limitovaná svou max. rychlostí (115 200 bps) a povahou [[https:// | + | Fyzická vrstva RS485 je typicky limitovaná svou max. rychlostí (115200 |
| K nastavení komunikace mezi master a slave je nutné používat nějakou formu adresace. V protokolu Modbus RTU musí mít každé slave zařízení unikátní identifikaci, | K nastavení komunikace mezi master a slave je nutné používat nějakou formu adresace. V protokolu Modbus RTU musí mít každé slave zařízení unikátní identifikaci, | ||
| Řádek 26: | Řádek 30: | ||
| V Modbus TCP probíhá adresování skrze IP adresu a port. Výchozím portem je port 502. | V Modbus TCP probíhá adresování skrze IP adresu a port. Výchozím portem je port 502. | ||
| + | |||
| ===== Nastavení Modbus RTU serveru (slave) ===== | ===== Nastavení Modbus RTU serveru (slave) ===== | ||
| Řádek 32: | Řádek 37: | ||
| {{ : | {{ : | ||
| - | Nyní je třeba přidat **kanál serveru**. V **levém panelu** klikněte pravým tlačíkem na **PLC** a v kontextovém menu klikněte na **Přidat kanál serveru**. | + | Nyní je třeba přidat **kanál serveru**. V **levém panelu** klikněte pravým tlačítkem |
| {{ : | {{ : | ||
| Řádek 40: | Řádek 45: | ||
| </ | </ | ||
| - | Pod **PLC** se objeví položka **server-channel**. Dvojitě na ni klikněte a v panelu **Vlastnosti** změňte jeho název na něco více popisného. Kanál bude sloužit pro komunikaci Modbus RTU v režimu | + | Pod **PLC** se objeví položka **server-channel**. Dvojitě na ni klikněte a v panelu **Vlastnosti** změňte jeho název na něco více popisného. Kanál bude sloužit pro komunikaci Modbus RTU v režimu |
| {{ : | {{ : | ||
| Řádek 56: | Řádek 61: | ||
| {{ : | {{ : | ||
| - | Pod kanálem **ModbusRTU-master** se objeví nové zařízení. Dvojitě na něj klikněte a v panelu **Vlastnosti** změňte **Adresu zařízení** na něco více popisného. Můžeme změnit i jméno, na tomto kanálu ale budeme mít pouze jedno zařízení. | + | Pod kanálem **ModbusRTU-slave** se objeví nové zařízení. Dvojitě na něj klikněte a v panelu **Vlastnosti** změňte **Adresu zařízení** na něco více popisného. Můžeme změnit i jméno, na tomto kanálu ale budeme mít pouze jedno zařízení. |
| {{ : | {{ : | ||
| Nyní máme připravené vše potřebné k tomu, abychom mohli ostatním zařízením povolit číst a zapisovat proměnné na naše PLC skrze protokol Modbus RTU. Posledním krokem je definovat Modbus registry a coily, a namapovat je na naše proměnné. Tento proces probíhá stejně i na serveru Modbus TCP, u něj proto můžete přejít do sekce [[# | Nyní máme připravené vše potřebné k tomu, abychom mohli ostatním zařízením povolit číst a zapisovat proměnné na naše PLC skrze protokol Modbus RTU. Posledním krokem je definovat Modbus registry a coily, a namapovat je na naše proměnné. Tento proces probíhá stejně i na serveru Modbus TCP, u něj proto můžete přejít do sekce [[# | ||
| + | |||
| ===== Nastavení Modbus TCP serveru (slave) ===== | ===== Nastavení Modbus TCP serveru (slave) ===== | ||
| Řádek 96: | Řádek 102: | ||
| **IP adresu zařízení** můžete ponechat na výchozí hodnotě (0.0.0.0). Mervis IDE interně nastaví adresu stejnou jako pro PLC. | **IP adresu zařízení** můžete ponechat na výchozí hodnotě (0.0.0.0). Mervis IDE interně nastaví adresu stejnou jako pro PLC. | ||
| - | Naopak | + | Od verze Mervis IDE 2.6.5 byl port 502 uvolněn volně k použití, pro starší verze platí následující: |
| </ | </ | ||
| {{ : | {{ : | ||
| - | Nyní máme připravené vše potřebné k tomu, abychom mohli ostatním zařízením povolit číst a zapisovat proměnné na naše PLC skrze protokol Modbus | + | Nyní máme připravené vše potřebné k tomu, abychom mohli ostatním zařízením povolit číst a zapisovat proměnné na naše PLC skrze protokol Modbus |
| ===== Definice registrů a coilů ===== | ===== Definice registrů a coilů ===== | ||
| Komunikace přes Modbus je určena pouze pro výměnu dat. Master zařízení vyčítá a nastavuje datové body, které jsou nakonfigurovány na slave zařízení. V protokolu Modbus existují čtyři druhy datových bodů pro čtení i zápis, které ale mohou používat pouze dva datové typy - boolean a word (16-bitový integer). Toto omezení je zde kvůli stáří protokolu Modbusu (více než 40 let) a k udržení komunikace co nejjednodušší. Jakýkoliv jiný datový typ (32-bit real, string aj.) je třeba nejprve převést na 16-bitovou hodnotu, například použitím více datových bodů. | Komunikace přes Modbus je určena pouze pro výměnu dat. Master zařízení vyčítá a nastavuje datové body, které jsou nakonfigurovány na slave zařízení. V protokolu Modbus existují čtyři druhy datových bodů pro čtení i zápis, které ale mohou používat pouze dva datové typy - boolean a word (16-bitový integer). Toto omezení je zde kvůli stáří protokolu Modbusu (více než 40 let) a k udržení komunikace co nejjednodušší. Jakýkoliv jiný datový typ (32-bit real, string aj.) je třeba nejprve převést na 16-bitovou hodnotu, například použitím více datových bodů. | ||
| - | ==== Datové body ==== | ||
| + | ==== Datové body ==== | ||
| **Coil** je booleanovský datový bod, u kterého může master zařízení provádět čtení i zápis. Coily se obvykle používají pro ovládání digitálních či reléových výstupů, které mohou nabývat pouze hodnot '' | **Coil** je booleanovský datový bod, u kterého může master zařízení provádět čtení i zápis. Coily se obvykle používají pro ovládání digitálních či reléových výstupů, které mohou nabývat pouze hodnot '' | ||
| Řádek 115: | Řádek 122: | ||
| Druhý datový bod typu word má název **vstupní registr**. Z něj může master pouze vyčítat. Obvykle se tento datový bod používá pro odečty teploty. | Druhý datový bod typu word má název **vstupní registr**. Z něj může master pouze vyčítat. Obvykle se tento datový bod používá pro odečty teploty. | ||
| + | |||
| ==== Vytvoření datového bodu ==== | ==== Vytvoření datového bodu ==== | ||