Stiskněte "Enter" pro přeskočení obsahu

Krokové řízení se Siemens Logo!

4

Siemens Logo! (nebo jemu podobné) je univerzální logický modul, který umožňuje řízení jednoduchých aplikací v automatizaci či infrastruktuře. Tvorba probíhá v programu LOGO!Soft Comfort jednoduchým „skládáním“ a propojováním funkčních bloků. Oproti „dospělým“ systémům (jako je Simatic S7–1200, S7–1500, Tecomat Foxtrot a další) nedisponuje tak velkou škálou programových bloků a rychlostí. Nicméně na jednodušší úlohy plně dostačuje

Seriál o programování Siemens Logo! začíná článkem Programování Siemens Logo! #1 – O co vlastně jde?

Siemens Logo!, verze 6

Větší program „napsaný v Logu“ se stává krajně nepřehledným a pro neautora změtí ANDů, ORů, RS obvodů, časovačů a podobných. Jistým zjednodušením jak při návrhu tak i pozdějších opravách, či úpravách zařízení je vytvořit program po jednotlivých krocích, které se cyklicky za sebou opakují. Tento způsob řešení programu je zvlášť výhodný pro stále se opakující sled povelů bez větších zásahů obsluhou do chodu stroje.

Schématické znázornění řízení programu

Princip programu spočívá v nějakém elementu, který bude spouštět logiku jednotlivých kroků. V samotné logice se bude provádět příslušný program, který pracuje se společnými vstupy a výstupy. Logika zároveň zpětně obsluhuje krokování – „proveď další krok“, „reset krokování“ apod.

Jako tento „nějaký element“ můžeme použít např. dopředný/zpětný čítač, který bude čítat impulzy na vstupu a výstupem bude ovládat logiku jednotlivých kroků. Výhoda čítačů je možnost změny směru čítání. Nejjednodušší příklad by vypadal asi takto:

Kroky programu

Program obsahuje tři čítače. První (B001) má zapínací práh nastaven na 0 a vypínací na 1, další čítač (B002) má zapínací práh nastaven na 1 a vypínací na 2, u všech dalších se příslušné prahy zvyšují. Počet kroků lze libovolně (samozřejmě v rámci možností Loga) navyšovat.

Po spuštění programu je ve všech čítačích 0. Výstup z prvního čítače (B001) je tedy log. 1 = výstup Q1 je aktivní. Přivedením impulzu na vstup I2 se do všech čítačů přičte 1. První čítač se tedy vypne a aktivuje se čítač druhý (B002). Přivedením třetího impulzu se na resetovací vstup přivede impulz. Všechny čítače se resetují a program začíná od začátku. Protože nelze výstup čítače propojit přímo se vstupem, je potřeba použít buď propojení přes výstup, nebo jako zde přes Marker. Pozor, některé Markery jsou používané programem (např. k nastavení podsvětlení) viz nápověda v programu.

Program se pak skládá z řízení krokování, akce, která se v aktuálním kroku vytváří a čekání na reakci (např. od snímačů), která posune program do dalšího kroku. Vstupy a výstupy jsou pro všechny kroky společné. Vstupy je tedy vhodné si souhrnně umístit na jedno místo v programu, kde k nim bude snadný přístup a výstupy je nutné spínat např. přes hradlo OR. Viz program níže.

Reálný příklad

Takto jednoduchý program moc velkou úsporu a zjednodušení nenabízí. Jako další příklad si uveďme např. stroj, který po stisku tlačítka (I1) podá materiál pneumatickou pístnicí (bistabilní ventil Q1, Q2), po dojetí pístnice do koncové polohy (I3) sepne hydraulickou pístnici (Q3), která zalisuje materiál. Po zalisování (které od natlakování trvá 2 s) se vše vrátí do původní polohy a je očekáváno další lisování.

Příklad lisu s podavačem

Program lisu

Krok 1:
Program sepne pneumatický ventil (Q1) tak, aby se podávací pístnice přesunula do základní polohy (doleva). Jakmile dojede do levé krajní polohy (sepnut snímač I2)  je možné stisknutím tlačítka (I1) přes hradlo AND (B007) spustit další krok.

Krok 2:
Je vypnut pneumatický ventil Q1 a sepnut pneumatický ventil Q2 tak, aby se pístnice přesunula do pravé krajní polohy (spínač I3). Po přejetí do této polohy je přes hradlo AND (B009) sepnut další krok. Bylo by vhodné vřadit zpoždění kvůli ustálení polohy. Kvůli zjednodušení je vynecháno.

Krok 3:
V tomto kroku je stéle spuštěn ventil Q2 tak, aby nedošlo např. k posunutí materiálu. Zároveň je hlídána pravá krajní poloha podavače přes vstup I3 a hradlo AND (B010). Jestliže je materiál ve správné poloze je spuštěno lisování výstupem Q3. Po dosažení požadovaného tlaku je tlakovým spínačem aktivován vstup I4, který opět přes hradlo AND (B011) spíná časový spínač (zpožděné zapnutí). Do uplynutí požadovaného času se přivede signál na resetovací vstup všech čítačů (B001, B002, B003) a program pracuje od začátku – ustaví se do základní polohy.

V praxi je vhodné ještě kontrolovat např. časy dojetí pístnic (aby při zadření, nebo nízkém tlaku vzduchu stroj vyvolal chybu), kontrola protilehlých snímačů (pístnice nemůže být zároveň v levé i pravé krajní poloze) atd. Ve výše uvedeném příkladě by se i hodila ochrana proti trvalému stisknutí tlačítka (v případě trvalého stisknutí stroj pojede stále v cyklu) a kontrola návratu hydraulické pístnice do výchozí polohy. Vše ovšem závisí na konkrétním stroji.

Reálný stroj

Zde už se jedná o reálný stroj – lis na brikety. Původní program byl pomalý (dlouhé čekání) a obsahoval chyby, které pouštěly hydraulický agregát „do tlaku“, takže čerpadlo více trpělo a agregát se více zahříval. Navíc nebyly ošetřeny některé chyby, jako nedojetí válce do koncové polohy (válec se zadřel a zůstal viset, hydraulika stále tlakovala olej), nemožnost nastartování stroje po přepnutí z automatu do manuálu a zpět, a najetí do výchozí polohy po zapnutí, když je motor ještě sepnut do hvězdy způsobovalo vypnutí předřazeného jističe v rozvodné skříni. Původní elektrické zapojení zůstalo beze změny, upraven byl pouze program.

Původní program

Původní program obsahoval četné zpětné vazby na různá místa programu od výstupů a několika markerů. Aktivita v programu se odehrávala na více místech najednou, takže bylo složité program odlaďovat bez znalosti přesné funkce. Navíc na sebe některé části přímo navazovaly, takže např. zpožděním jednoho válce se nedal program spustit v manuálním režimu… 

Nový program odstranil výše zmíněné chyby, navíc obsahuje ochranu hydraulického čerpadla při zaseknutí válce.

 

Program s krokováním

Princip briketovačky:
Piliny jsou šnekovým dopravníkem nadávkovány do komory předlisu. Válec předlisu je slisuje, po dojetí předlisu do koncové polohy se sepne ventil hlavního lisování. Ten stlačené piliny z komory předlisu ještě více stlačí proti uzavřené svěrce. Po slisování na dostatečný tlak (hlídán tlakovým snímačem) se svěrka otevře a válec tlačí hotovou briketu, dokud nedojede na koncové čidlo. Poté se lisovací i předlisovací válec vrátí do výchozí polohy.

Část mimo krokování:
Vstup I1 je výstup tepelného relé motoru, pokud je aktivní, nelze spustit motor. Do tohoto vstupu jsou navedeny všechny ochrany v programu, které mají vypnout motor. Přivedením impulzu na vstup I2 se přes klopný obvod RS zapne/vypne motor (Q1).  Po spuštění motoru se čeká 4 s (B006), kvůli přepnutí motoru Y-D, poté se vypne resetovací vstup čítačů a spustí se první krok. Při vypnutém motoru (nebo motoru spuštěném do Y) není aktivován žádný krok.

Krok 1:
Pokud ještě první krok neproběhl, je povolena svěrka výstupem Q9. Zároveň je otevřen ventil, který zajišťuje najetí válců do základní (vrchní) polohy (Q6) a ventily, které ovládají jednotlivé válce, tedy předlis (Q4) a lis (Q5). Po najetí všech válců do základní polohy (hlídání čidlem I5 a I7) je možné tlačítkem (I3) spustit další krok. Další krok je možné spustit klopným obvodem RS, který je zapínán ze třetího kroku a resetován z druhého kroku. Tam program však ještě nedošel, takže toto spuštění zatím není možné.

Krok 2:
V tomto kroku je nejprve resetován klopný obvod RS z prvního kroku, pak je dotažena svěrka (Q7) a nadávkovány piliny (Q2) do komory předlisu po dobu 0,2 s (čas může být prodloužen externím časovačem – pro různý druh pilin, různý čas). Po 0,4s je otevřen spodní ventil (Q3) a ventil předlisu (Q5), který stlačí piliny. Pokud pohyb trvá déle než 5 s je stroj vypnut (impulz simulující tepelnou ochranu). Po dojetí válce předlisu do krajní polohy (I6) se spustí další krok.

Krok 3:
Zde se spustí samotné lisování otevřením spodního ventilu (Q3) a ventilu lisu (Q5). Při zvýšení tlaku oleje (I9) se otevře svěrka přivedením impulzu na výstup Q9. Válec pokračuje do krajní polohy. Při najetí válce do krajní polohy (I8) je stroj přepnut do prvního kroku, kde se vrátí do základní polohy. Svěrka se do základní polohy nevrací, ta byla otevřena v tomto kroku. Pokud je v době dojetí válce do koncové polohy sepnut přepínač trvalého chodu (I4) je klopný obvod RS v prvním kroku nastaven na log. 1 – první krok se přepne na druhý automaticky, není nutné stisknout tlačítko start cyklu (I3).

Startovací tlačítko a přepínač Manuál/Automatika

V příkladu výš je použito tlačítko start a přepínač režimu (jednodušší varianta, která byla později předělána na podobné schéma jako níž). Toto se hodí např. při seřizování stroje, kdy je potřeba udělat jeden kus výrobku pro kontrolu. Po seřízení se stroj přepne do automatického režimu, kde by manuální startování zdržovalo.

Jako jednoduchý příklad by mohlo sloužit schéma níže. Při splnění podmínek (např. dojetí válců do základních poloh) a vypnutém automatickém chodu (I2 = 0) se tlačítkem START (I1 = 1) spustí přes hradlo OR (B003) a hradlo AND (B002) další krok. Pokud se během provádění programu přepne přepínač do polohy AUT. (I2 = 1), tak se dokončí pouze první smyčka – program se vrátí do prvního kroku, ale dál nepokračuje.

K zapnutí automatického režimu je nutné nejprve přepnout přepínač do polohy AUT. a poté stisknout tlačítko START. Stroj bude cyklovat, dokud se přepínač režimů nepřepne zpět do polohy MAN. Výstup klopného obvodu RS by se mohl vyvést na výstup automatu a použít ho např. jako podsvětlení přepínače MAN/AUT (signalizace spuštění automatického režimu).

Tlačítko START a přepínání režimů MAN/AUT

Jednoduchou úpravou se dá změnit tlačítko START na tlačítko START/Dokončit cyklus. Funkce by byla stejná jako u obvodu výš – tlačítkem (I1) by se cyklus spouštěl jak v manuálním, tak automatickém režimu. V automatu by navíc stisk tlačítka dokázal cyklus po dokončení zastavit – nemusel by se přepínač AUT/MAN přepínat do manuálního režimu.

Tlačítko START/Dokončit cyklus a přepínač režimů MAN/AUT

Tento článek měl sloužit jako inspirace pro jednoduché krokování programu v systému Siemens Logo!. Výsledný program je většinou přehlednější a lze ho lépe ladit a déle upravovat – i přes větší počet nutných hradel, díky obsluze krokování. Malá nevýhoda (která má vliv na přehlednost) je, že nelze použít blok vstupu/výstupu vícekrát. Vstupy je tedy nutné „protahovat“ celým programem a výstupy je nutné ošetřit hradlem OR. Nicméně i přes pár úskalí lze tímto způsobem v několika málo krocích vytvořit program i pro celkem komplexní autonomní systém.

  1. Jan Rojko Jan Rojko

    Chtěl jsem Vás poprosit o zaslání programu na moji emailovou adresu. Předem děkuji.

    Peťan: Jakého programu? Taky nejde o konkrétní program, ale o princip s čítačem. Jinak, programy jdou přepsat z obrázků.

  2. Patrik Čada Patrik Čada

    Dobrý den přeji.
    Prestavuji kalibrační brusku.

    Obsahuje dva krokove motory, jeden pro posuv brusneho kotouče po draze cca 30 mm a druhý na podávání zubu rezaciho kotouče.
    Co vše budu potřebovat k sestavě siemens logo aby vše fungovalo?
    Popis akce.
    Podavaci motor posune palcem z bodu nula do bodu 1 a potom se vrátí do bodu jedna. Potom dostane
    Motor s brusnym kotoucem heslo ze je volno a vykoná pohyb také z bodu 0 do bodu 1 a potom zpět.
    Celý cyklus se opakuje v různých poctech cyklů 50,54,60,66.
    Je treba upravit rychlosti posuvů a odkud kam pojede podavač.
    Dekuji Patrik Čada

    Peťan: Pokud se jedná o ovládání krokových motorů, doporučuji použít spíše S7-1200. Ta umí přímo (samozřejmě přes drivery) ovládat krokové motory pomocí MotionControl funkcí. Lze si pak nastavit různé rychlosti, zrychlení, pozice a podobně. Navíc je možné daleko volněji tvořit program.
    Samozřejmě, je možné ovládat krokové motory i z Loga! Výstupy však nejsou tak rychlé, aby se s nimi dal rozumě ovládat krokový motor (signály STEP, DIR). Spíše by bylo lepší použít driver s analogovým vstupem (jako např. tento), který se řídí digitálním vstupem a analogovou hodnotou. Samozřejmě je pak nutné použít analogové výstupy, snímače na hlídání poloh atd.
    Stále mi ale vychází lépe ta S7-1200, kde je polohování hračka (bude o tom článek a video, ale ještě to nemám hotové). Ps.: Ohledně Loga! doporučuji pročíst si články zde na stránkách.

  3. Thomas Thomas

    Dobrý den,
    chystám se použít Logo! 8 jako datalogger.
    Nevíte o nějaké možnosti jak data z loga ukládat do SQL DB?

    Peťan: Co vím, tak nyní (Logo! 8.2) je možné ukládat záznam jenom do Loga! a na SD kartu (viz článek). Na podzim by snad měla vyjít nová verze 8.3, která by měla podporovat Amazon Web Services. Ale nevím v jakém rozsahu. Pokud mohu doporučit, můžete kontaktovat přímo Siemens na industry.cz@siemens.com Další možností by mohl být Snap7, který umožňuje komunikaci mezi HW Siemens a PC. Netestoval jsem to s Logem, ale pouze s S7-1200, kde to funguje v pohodě.

  4. Martin Martin

    Zdravím,

    navrhuji stroj a chtěl bych ovládat pomocí Loga! krokové motory pomocí časovačů. (3x krok. motor paralelně zapojené pro jeden směr otáčení a 3x krok. motor pro opačný směr – budou se točit souběžně)
    Pro řízení krokáčů píšete, že je vhodnější použít simatic 1200.
    Neumím programovat v step7, pouze v Logo soft. comf. Lze program vytvořit v Logo soft comfort, nahrát do Loga! a mít na něm připojený Simatic 1200 přes ethernet a ovládát jím krokáče?

    Peťan: Tento článek se nevěnuje řízení krokových motorů, ale řízení programu tak, že je program rozdělen na jednotlivé kroky.
    Modulem Simens Logo! lze řídit krokový motor, ale jeho výstupy nemají tak vysokou frekvenci spínání, aby to mělo nějaký rozumný smysl na polohování. Záleží také, jak je krokový motor k Logu připojen. Krokový motor se umí točit na obě strany, nevidím důvod používat jeden pro jeden směr a další pro druhý směr. Ale asi záleží, jak je stroj vyrobený… Z principu, Siemens Logo! na řízení krokových motorů použít lze.
    Na řízení krokových motorů se určitě lépe hodí alespoň S7-1200 – má na to přímo funkce, lze si vypočítat dynamiku, rychlost, polohu apod. Je to hodně podobné jako v článku Siemens Simatic S7-1200 – Motion Control se servomotorem.
    Logo a S7-1200 lze spolu propojit přes ethernetový kabel – viz článek Programování Siemens Logo! #7 – Propojení více modulů. Mohou si spolu vyměňovat data, ale stejně by bylo zapotřebí v PLC vytvořit program na řízení krokového motoru. To už je jednodušší udělat v PLC vše (jednoduchá logika o tolik složitější není).

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *