#2 Jakub
Abych zde neplácal jen tak do větru, tak uvedu i drobný rozbor.
1) Dle uživatelského prostředi a užitých funkcí bych to tipnul na TwinCaT (Beckhoff), případně CoDeSys (Wago, ...).
2) Celkově vzato je příklad vytržen z kontextu. Chybí zde uvést i deklaraci proměnných, jelikož v sekvenci jsou užité symboly, nikoliv absolutní adresace. Ale jelikož se nejspíše jedná o Beckhoff, či Wago, tak lze s velkou pravděpodobností předpokládat, že dané proměnné jsou definovány jokažto merker/flag. Což znamená, že jsou statické a uchovávájí si hodnoty z předchozího cyklu.
3) Z dané sekvence jde jasně vidět, že se jedná právě o tu třetí podmínku, nebo-li proměnné jsou užity ve více částech skvence.
A teď trochu přímo k dané logice:
- Jedná se o počítání stisknutí tlačítka v rozmezí 1 až 3 stisky.
- První "řádek": Při náběžné hraně se na jeden cyklus nasetuje proměnná "druhy". Pokud je promenná "druhy" v log. 1 a současně s tím je proměnná "podruhe_1" také v log. 1, tak se nasetuje proměnná "potreti_1".
- Druhý "řádek": Při náběžné hraně se na jeden cyklus nasetuje proměnná "prvni". pokud je proměnná "prvni" v log. 1 a současně s tím je proměnná "interval" také v log. 1, tak se nasetuje proměnná "podruhe_1". Zde je potřeba si všimnout jedné věci, pokud by se přehodil první a druhý řádek, tak by se vždycky automaticky nastavila proměnná "potreti_1". Proto jsou tyto řádky právě v tomto pořadí.
- Třetí "řádek": Při stisku tlačítka se generuje puls po dobu 3,5 minuty. Pokud je tento puls aktivní a nebo je proměnná "podruhe_1" v log. 1 ¨, tak se aktivuje proměnná "svit_7"
- Čtvrtý řádek: Při stisku tlačítka se generuje puls po dobu 2,5 sekundy, který aktivuje proměnnou "interval". Tento interval je schválně téměř na konci, aby se opravdu počítal pouze první stisk. A nezapočetlo to rovnou jako druhý nebo třetí.
- pátý řádek je pouze resotování počítání při třetím cyklu.