Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
cs:sw:01-mervis:weintek-ip-series-hidden [2020/06/08 13:13] avsetula |
cs:sw:01-mervis:weintek-ip-series-hidden [2024/03/14 09:07] (current) kcerny typos |
||
---|---|---|---|
Line 3: | Line 3: | ||
<WRAP half column 81%> | <WRAP half column 81%> | ||
V tomto tutoriálu si ukážeme, jak propojit zařízení HMI Weintek iP series a kontrolér Unipi se systémem Mervis. | V tomto tutoriálu si ukážeme, jak propojit zařízení HMI Weintek iP series a kontrolér Unipi se systémem Mervis. | ||
+ | |||
+ | Cílem tohoto návodu je zobrazit na HMI displeji teplotu měřenou 1-Wire teplotním senzorem připojeným k Unipi a mít na displeji dotykové tlačítko, které zapne a vypne reléový výstup Unipi. | ||
</WRAP> | </WRAP> | ||
<WRAP half column 15%> | <WRAP half column 15%> | ||
;;# | ;;# | ||
- | <html><span class="dev-tag dev-axon">Axon</span></html> \\ | + | <html><span class="dev-tag dev-patron">Patron</span></html> \\ |
<html><span class="dev-tag dev-neuron">Neuron</span></html> \\ | <html><span class="dev-tag dev-neuron">Neuron</span></html> \\ | ||
- | <html><span class="dev-tag dev-unipi11">Unipi 1.1</span></html> | + | <html><span class="dev-tag dev-gate">Gate</span></html> \\ |
+ | <html><span class="dev-tag dev-unipi11">Unipi 1.1</span></html> \\ | ||
+ | <html><span class="dev-tag dev-axon">Axon</span></html> | ||
;;# | ;;# | ||
</WRAP> | </WRAP> | ||
</WRAP> | </WRAP> | ||
- | |||
- | Cílem tohoto návodu je zobrazit na HMI displeji teplotu měřenou 1-Wire teplotním senzorem připojeným k Unipi a mít na displeji dotykové tlačítko, které zapne a vypne reléový výstup UniPi. | ||
<WRAP center round important 85%> | <WRAP center round important 85%> | ||
Line 20: | Line 22: | ||
</WRAP> | </WRAP> | ||
- | ===== Potřebné vybavení: ===== | + | <WRAP center round box> |
- | * UniPi Neuron kontrolér s instalovaným [[cs:files:software:os-images:00-start|Mervis OS]] | + | <html><span class="kbBlue-H4alt">Co budete potřebovat?</span></html> |
+ | * Unipi Neuron kontrolér s instalovaným [[cs:files:software:os-images:00-start|Mervis OS]] | ||
* [[https://www.unipi.technology/cs/hmi-devices-c29|Weintek HMI displej]] | * [[https://www.unipi.technology/cs/hmi-devices-c29|Weintek HMI displej]] | ||
- | * [[https://www.unipi.technology/cs/power-supplies-c15|24 VDC zdroj napájení]] | + | * [[https://www.unipi.technology/cs/power-supplies-c15|24 V⎓ zdroj napájení]] |
* 3x síťový kabel (RJ45) a připojení do místní sítě - jeden pro Unipi kontrolér, jeden pro HMI a jeden pro vaše PC | * 3x síťový kabel (RJ45) a připojení do místní sítě - jeden pro Unipi kontrolér, jeden pro HMI a jeden pro vaše PC | ||
- | == V tomto návodu konkrétně: == | + | \\ |
+ | <html><span class="kbBlueText">V návodu jsme použili:</span></html> | ||
* [[https://www.unipi.technology/cs/unipi-neuron-l523-p329|Unipi Neuron L523]] | * [[https://www.unipi.technology/cs/unipi-neuron-l523-p329|Unipi Neuron L523]] | ||
* [[https://www.unipi.technology/cs/weintek-mt8051ip-p198|Weintek MT8051iP]] | * [[https://www.unipi.technology/cs/weintek-mt8051ip-p198|Weintek MT8051iP]] | ||
* [[https://www.unipi.technology/cs/1-wire-temperature-sensor-p63?categoryId=3|1-Wire teplotní čidlo]] | * [[https://www.unipi.technology/cs/1-wire-temperature-sensor-p63?categoryId=3|1-Wire teplotní čidlo]] | ||
+ | </WRAP> | ||
== Příklad zapojení: == | == Příklad zapojení: == | ||
Line 36: | Line 40: | ||
===== Instalace softwaru ===== | ===== Instalace softwaru ===== | ||
- | Pro základní konfiguraci řadiče UniPi a instalaci Mervisu do vašeho počítače postupujte podle [[cs:sw:01-mervis:running-on-neuron-hidden|návodu zde]]. | + | Pro základní konfiguraci řadiče Unipi a instalaci Mervisu do vašeho počítače postupujte podle [[cs:sw:01-mervis:running-on-neuron-hidden|návodu zde]]. |
Pro konfiguraci HMI je třeba nainstalovat Weintek EasyBuilder Pro. Můžete si stáhnout verzi používanou v tomto tutoriálu [[files:software:tools:00-start#weintek_easybuilder_pro|zde]], nebo si můžete stáhnout nejnovější verzi z [[http://www.weintek.com/|webových stránek výrobce]]. | Pro konfiguraci HMI je třeba nainstalovat Weintek EasyBuilder Pro. Můžete si stáhnout verzi používanou v tomto tutoriálu [[files:software:tools:00-start#weintek_easybuilder_pro|zde]], nebo si můžete stáhnout nejnovější verzi z [[http://www.weintek.com/|webových stránek výrobce]]. | ||
Line 86: | Line 90: | ||
V tuto chvíli již máme hotová některá základní nastavení oken, nyní se proto můžeme podívat, jak budou okna vypadat na HMI displeji. EasyBuilder Pro v tomto uživatelům vychází vstříc možností simulovat projekt přímo na počítači bez nutnosti vlastnit samotné HMI zařízení. Na **liště** klikněte na **Projekt**, čímž zobrazíte dvě tlačítka: **Offline simulation** a **Online simulation**. Obě volby projekt zkompilují a spustí jej v místním okně, kde s ním můžete interagovat stejně jako s HMI displejem. **Online simulation** spustí simulaci a zároveň i sběr dat z nakonfigurovaných Modbus slave zařízení, případně spustí Modbus server a umožní tak HMI panelu, aby přijímalo data z kontrolérů. **Offline simulation** pak spustí pouze simulaci. | V tuto chvíli již máme hotová některá základní nastavení oken, nyní se proto můžeme podívat, jak budou okna vypadat na HMI displeji. EasyBuilder Pro v tomto uživatelům vychází vstříc možností simulovat projekt přímo na počítači bez nutnosti vlastnit samotné HMI zařízení. Na **liště** klikněte na **Projekt**, čímž zobrazíte dvě tlačítka: **Offline simulation** a **Online simulation**. Obě volby projekt zkompilují a spustí jej v místním okně, kde s ním můžete interagovat stejně jako s HMI displejem. **Online simulation** spustí simulaci a zároveň i sběr dat z nakonfigurovaných Modbus slave zařízení, případně spustí Modbus server a umožní tak HMI panelu, aby přijímalo data z kontrolérů. **Offline simulation** pak spustí pouze simulaci. | ||
- | Jelikož stále nemáme nastavené žádné připojení, zvolíme **Offline simulation**. Po potvrzení volby se objeví průběh komplilace projektu, a po několika vteřinách se zobrazí i simulovaný HMI displej. | + | Jelikož stále nemáme nastavené žádné připojení, zvolíme **Offline simulation**. Po potvrzení volby se objeví průběh kompilace projektu, a po několika vteřinách se zobrazí i simulovaný HMI displej. |
{{ :en:hw:04-hmi:weintek_ip_series_12_first_simulation.png?direct |}} | {{ :en:hw:04-hmi:weintek_ip_series_12_first_simulation.png?direct |}} | ||
Line 166: | Line 170: | ||
K vyčítání teploty přes Modbus TCP je třeba nejprve vytvořit kanál Modbus TCP serveru. I zde máte k dispozici manuál: [[cs:sw:01-mervis:setting-modbus-server-hidden]]. | K vyčítání teploty přes Modbus TCP je třeba nejprve vytvořit kanál Modbus TCP serveru. I zde máte k dispozici manuál: [[cs:sw:01-mervis:setting-modbus-server-hidden]]. | ||
- | Nyní je třeba určit, jaký typ dat budeme pro Modbus TCP server používat. Protokol Modbus zná pouze dva typy dat - 16-bitové registry pro číselné hodnoty a jednobitové coily pro stavové hodnoty. V Mervisu je teplota vyjádřena reálným číslem, tj. (2-bytový unsigned integer). K přenosu této hodnoty pomocí Modbusu bychom ji museli rozdělit na dva 16-bitové registry a následně je na straně HMI zařízení opět složit dohromady, takový postup je ale mimo záběr tohoto tutoriálu. Druhou možností je konverze teplotní hodnoty tak, aby zhruba odpovídala 16-bitovému registru. Předpokládejme nyní, že měříme teplotu v pokoji, která může nabývat hodnoty 0 - 40°C s přesností minimálně 0,1°C. To znamená, že je třeba pokrýt hodnoty 0 - 400, které do 16-bitové registru snadno vměstnáme. Podívejme se nyní, jak toho dosáhneme metodou funkčních bloků. | + | Nyní je třeba určit, jaký typ dat budeme pro Modbus TCP server používat. Protokol Modbus zná pouze dva typy dat - 16-bitové registry pro číselné hodnoty a jednobitové coily pro stavové hodnoty. V Mervisu je teplota vyjádřena reálným číslem, tj. (2-bytový unsigned integer). K přenosu této hodnoty pomocí Modbusu bychom ji museli rozdělit na dva 16-bitové registry a následně je na straně HMI zařízení opět složit dohromady, takový postup je ale mimo záběr tohoto tutoriálu. Druhou možností je konverze teplotní hodnoty tak, aby zhruba odpovídala 16-bitovému registru. Předpokládejme nyní, že měříme teplotu v pokoji, která může nabývat hodnoty 0-40 °C s přesností minimálně 0,1 °C. To znamená, že je třeba pokrýt hodnoty 0-400, které do 16-bitové registru snadno vměstnáme. Podívejme se nyní, jak toho dosáhneme metodou funkčních bloků. |
{{ :en:hw:04-hmi:weintek_ip_series_22_conversion_program.png?direct |}} | {{ :en:hw:04-hmi:weintek_ip_series_22_conversion_program.png?direct |}} | ||
Line 172: | Line 176: | ||
Na straně vstupů máme proměnné ''sensor_temperature'', která vrací hodnotu z 1-Wire senzoru. Na straně výstupů pak je k dispozici proměnná ''modbus_temperature'' reprezentující hodnotu registru 1 exportovanou z Modbus TCP serveru. | Na straně vstupů máme proměnné ''sensor_temperature'', která vrací hodnotu z 1-Wire senzoru. Na straně výstupů pak je k dispozici proměnná ''modbus_temperature'' reprezentující hodnotu registru 1 exportovanou z Modbus TCP serveru. | ||
- | Podle teploměru je aktuální teplota 26,8125°C. Pomocí bloku ''mul'' ji vynásobíme deseti na hodnotu 268,125. Tato hodnota je typu "real" a je tak potřeba ji převést na integer, abychom ji mohli použít pro daný typ registru. Blok ''to_uint'' převádí jakoukoliv vstupní hodnotu na integer, a pokud je vstupní hodnota menší než 0, na výstupu vrátí rovněž nulu - od toho se odvíjí název datového typu **unsigned integer**. | + | Podle teploměru je aktuální teplota 26,8125 °C. Pomocí bloku ''mul'' ji vynásobíme deseti na hodnotu 268,125. Tato hodnota je typu "real" a je tak potřeba ji převést na integer, abychom ji mohli použít pro daný typ registru. Blok ''to_uint'' převádí jakoukoliv vstupní hodnotu na integer, a pokud je vstupní hodnota menší než 0, na výstupu vrátí rovněž nulu - od toho se odvíjí název datového typu **unsigned integer**. |
S hodnotami jsme trochu zašvindlovali, pro naše potřeby ale vše funguje uspokojivě. Nyní můžeme danou proměnnou vyexportovat na Modbus TCP server. V Mervis IDE klikněte na zařízení Modbus TCP serveru. | S hodnotami jsme trochu zašvindlovali, pro naše potřeby ale vše funguje uspokojivě. Nyní můžeme danou proměnnou vyexportovat na Modbus TCP server. V Mervis IDE klikněte na zařízení Modbus TCP serveru. |