v====== Analogové výstupy ======
V tomto tutoriálu si ukážeme různé funkce analogových výstupů a způsoby jejich použití.
Jelikož některé analogové výstupy jsou schopny provádět měření odporu, v tomto tutoriálu naleznete i návod na transformaci hodnot získaných z odporových teploměrů na teplotní údaj.
;;#
Patron \\
Neuron \\
Axon \\
Extension
;;#
Co budete potřebovat?
* kontrolér Unipi s nainstalovaným Mervis OS
* jednoduchý projekt v módu FBD s kontrolérem připojeným
* [[https://www.unipi.technology/cs/zdroje-c15|24 V⎓ napájecí zdroj]]
* znalosti funkce [[cs:automation:02-glossary:analog-outputs-hidden|analogových výstupů]] na PLC Unipi.
Pro účely tohoto tutoriálu použijeme jednotku [[https://www.unipi.technology/cs/unipi-neuron-l523-p329|Unipi Neuron L523]].
===== Úvod =====
Analogové výstupy mají různé režimy funkce, viz [[cs:automation:02-glossary:analog-outputs-hidden|Analogové výstupy]]. Režim lze v Mervis IDE změnit pomocí konfigurace modulu Unipi, **změny proto nelze provádět přímo v programu** a program je třeba před konfigurací zastavit.
Výstupy jsou ve výchozím stavu nastaveny na režim "Napětí" s výstupní hodnotou 0 V⎓.
===== Přepínání mezi módy =====
Změny se provádějí v nastavení prototypu PLC či rozšiřujícího modulu. V **levém panelu** dvojitě klikněte na prototyp. V **hlavním panelu** tak zobrazíte seznam všech dostupných vstupů a výstupů. Do vyhledávače proměnných zadejte "AO_", čímž zobrazíte seznam všech analogových výstupů.
{{ :en:sw:01-mervis:analog-outputs-01-search-for-ao.png?direct |}}
Jak můžete vidět, pro každý fyzický analogový výstup jsou dostupné dvě proměnné: AO_X.Y_r a AO_X.Y_w. Proměnná s příponou _r slouží ke čtení konkrétní hodnoty na výstupu. Ke změně režimu vyberte odpovídající zapisovací proměnnou (tj. proměnnou s příponou _w), přesuňte se do panelu **Vlastnosti** a v kolonce "Analogový typ" vyberte požadovaný mód.
{{ :en:sw:01-mervis:analog-outputs-02-change-type.png?direct |}}
Změnili jsme konfiguraci modulů PLC, kterou nelze uložit jednoduchým nahráním sestavy. Pro uložení konfigurace proto následujte tutoriál [[cs:sw:01-mervis:unipi-configure-module-hidden|Konfigurace modulu Unipi]].
===== Nastavení výstupního napětí a proudu =====
Nastavení výstupního napětí a proudu se provádí stejným způsobem. Po nastavení požadovaného módu stačí do proměnné zapsat reálnou hodnotu. Jak bylo ukázáno výše, požadovaná proměnná má název AO_X.Y_w, kdy X udává číslo skupiny a Y pozici výstupu ve skupině. Pro přidání proměnné do programu je nutné **[[cs:sw:01-mervis:autogen-hidden|nastavit Autogen]]**. Tím se proměnná zobrazí v **Prohlížeči proměnných** a vy s ní budete moci pracovat v **Módu ladění**.
Při nastavování hodnoty AO_X.Y_w v režimu udávejte hodnotu ve voltech (tj. hodnota 1,234 = 1,234 V⎓), u proudu pak v miliampérech (hodnota 3.145 = 3.145 mA)
===== Výchozí hodnoty =====
Analogové výstupy mohou mít výchozí hodnotu, která se automaticky nastaví po spuštění PLC. Tato funkce zajistí, že připojená technologie bude fungovat okamžitě po zapojení PLC do napájení a nebude muset čekat na nahrání celé sestavy.
Výchozí hodnotu nakonfigurujete ve vlastnostech zapisovací proměnné daného výstupu. Postup je stejný jako u nastavení módu výstupu - v **levém panelu** dvojitě klikněte na prototyp, vyberte požadovanou proměnnou a v panelu **Vlastnosti** do kolonky **Výchozí hodnota** zadejte požadované číslo, které byste normálně zadávali přímo do proměnné. Pro mód Napětí proto jde o hodnotu ve voltech, u módu Proud pak hodnotu v miliampérech.
{{ :en:sw:01-mervis:analog-outputs-04-change-default-value.png?direct |}}
Stejně jako u změn konfigurace modulu, i nyní [[cs:sw:01-mervis:unipi-configure-module-hidden|změny aplikujte]] stejně jako výše.
===== Měření odporu (teploty) =====
Analogové výstupy na skupině 1 jednotek Neuron a Axon (AO_1.1) jsou schopny kromě proudu a napětí měřit i odpor. Pro nastavení AO_1.1 do módu měření napětí následujte kroky uvedené výše.
Měření odporu je většinou používáno pro odečet hodnot z odporových teplotních čidel jako jsou např. Pt100, Pt1000 či Ni1000. Tyto senzory disponují definovatelnou křivkou teploty ku odporu a Mervis IDE dokáže naměřené hodnoty převádět na stupně Celsia (transformovat). Tuto transformaci nastavíte ve vlastnostech čtecí proměnné. V panelu **Vlastnosti** vyhledejte vlastnost "Transformace" - ve výchozím stavu je nastavena hodnoty "identity", která značí, že proměnná bude vždy obsahovat hodnotu odporu v Ohmech. Transformaci můžete přenastavit do módu "**ResistanceToTemperature**", čímž zobrazíte kontextové menu s více možnostmi. Nyní je třeba už jen změnit "Typ" na konkrétní typ odporového teploměru, ze kterého chcete hodnoty vyčítat. Všechny ostatní parametry můžete zanechat nezměněny. Stejně jako u konfigurace PLC, i nyní ji [[cs:sw:01-mervis:unipi-configure-module-hidden|aplikujte]] stejně jako výše.
**Poznámka:** transformaci použijte pouze na datový bod __čtení analogového výstupu__ (AO_x.yy_r), nikoli pro zápis (AO_x.yy_w).
{{ :cs:sw:01-mervis:analog-outputs-read-resistivity_transform.png?direct |}}