TIA Portal - SCL programování PLC, part 1

  • neděle, 05 květen 2019 14:36

V dalších částech o programování PLC Simatic v TIA Portal pro začínající uživatele si tentokrát ukážeme programování v jazyku SCL (Structured Control Language). Začneme od jednoduchých logických operací a matematických výrazů a porovnáme si je s programováním v jazyce LADDER. Jako bonus si uvedený program pro TIA Portal V15.1 můžete stáhnout v závěru článku.


Pro logické operace a jednoduchou matematiku si vystačíme s několika tlačítky pro ovládání a HMI panelem pro zobrazení několika proměnných.

tia scl1 01


Programový blok FC11 s názvem LAD_1. Těchto pět segmentů, ve kterých se vykonávají jednoduché logické a matematické operace včetně jednoho časovače si napíšeme v jazyku SCL.
Klikněte na obrázek pro zvětšení

tia scl1 10b


Budeme to sledovat na displeji HMI, i když to není nezbytně nutné, jedná se o jednoduché úlohy pro pochopení  věcí.

tia scl1 02


Vytvoříme si v projektu nový programový blok, funkci SCL_1, ale jako programovací jazyk vybereme z roletového menu SCL.

tia scl1 11


Co se týká programovacích výrazů, najdeme jejich seznam i s popisem v helpu. Některé z nich budou notoricky známé i začínajícím uživatelům.

tia scl1 12


Zbývá tabulka tagů, kde zatím máme jen symboliku pro diskrétní vstupy a výstupy na naší IO periferii ET200S s interface IM151 a osmi digitálními vstupy / výstupy. Ostatní adresy jsou na CPU a další periferii TB20.

tia scl1 13


Přesně tady do ET200S máme naše tlačítka zapojená. Mimochodem dva výstupy již máme sepnuty a časují, jak uvidíme dále v PLC programu.

tia scl1 03


Nejjednodušší úloha, jedno a druhé tlačítko aktivuje jeden výstup. Kromě programovacích výrazů budeme potřebovat znát syntaxi příkazů, tedy proměnná začíná vždy uvozovkami nebo #, dvojtečka oddělí instrukce a = přiřadí výsledek. TIA Portal vše automaticky doplňuje, takže stačí napsat dvojtečku a první znak symbolického názvu a okamžitě máme nabídku proměnných. Potřebujeme do výrazu dosadit vstup I10.2. Červená vlnovka upozorňuje na místo, kde není něco v pořádku. Dvojité lomítko odděluje poznámky v programovém bloku.
Klikněte na obrázek pro zvětšení

tia scl1 14b


A už nám to funguje. Ještě připomínám, že každý řádek musí být ukončen středníkem. V online režimu vidíme jednotlivé proměnné a jejich logický stav. Ve třetím řádku výraz RETURN za lomítky udává konec programového bloku, neboť stačí tyto lomítka vymáznout a PLC nám další řádky programu nevykoná. To je fajn pro odladění programu.

tia scl1 15


Jedna důležitá věc. Do bloku vytvořeného v jazyku LADDER, tedy LAD_1, bez potíží přidáme přes pravé tlačítko myši segment v jazyku SCL. Takže si klidně nějaké dlouhé logické operace dopíšeme v SCL přímo v LADDER bloku. To je jen pro úplnost, my zatím máme každý blok ve svém jazyku.

tia scl1 16


Další logická operace s použitím závorek. Stále pracujeme jen s našimi vstupy a výstupy na ET200S, IB10 a QB10.

tia scl1 17


Z nabídky základních instrukcí si přidáme časovač se zpožděným vypnutím. Parametry časovače jsou odděleny v závorce.
Klikněte na obrázek pro zvětšení

tia scl1 18b


Typ časovače lze pohodlně klikem na něj změnit.

tia scl1 19


V online vše hezky funguje, označením proměnné je možné tuto editovat. Na řádku 17 jsme si napsali jednoduchý matematický výraz „A krát B je rovno C“. Za výraz krát můžeme dosadit mocninu, násobení, dělení, součet, rozdíl, porovnávací výrazy <, =>, atp. Celý přehled opět v helpu.
Klikněte na obrázek pro zvětšení

tia scl1 20b


Nakonec další výraz „A + B = C“ na řádku 21 až 24, tentokrát s využitím pomocné temporary proměnné v interface funkčního bloku, obdobně jako při použití deklarovaných konstantních a statických proměnných interface. Na řádku 26 je vidět aktivní příkaz RETURN, tedy konec programového bloku.
To je celý zápis programu v jazyce SCL podle prvního obrázku v článku. Vše by šlo ještě zkrátit vymazáním některých komentářů. Je vidět že je to propastný rozdíl.

tia scl1 21


Takto jednoduše můžeme jakoukoliv proměnnou, u které to jde,  v online režimu editovat. Stačí si ji označit a kliknout.
Klikněte na obrázek pro zvětšení

tia scl1 22b


Našich pět posledních řádků napsaných v SCL nahradilo tyto dva segmenty programu v jazyku LADDER.

tia scl1 23


Jak to správně funguje, se podívejte i na naší videoukázce:

https://www.youtube.com/watch?v=oBz2OUotjrc&feature=youtube


Závěr:

Použití SCL je v celé řadě programů nebo jejich částí výborná věc, záleží jen na programátorovi, jak se s tím vyrovná. Existují jedinci, kteří na SCL nedají dopustit a naopak spousta programátorů tohle nevyužívá. My si příště ukážeme zase něco dalšího z SCL programování.

Další díl najdete zde.

Jaroslav Blažek


Doplňující odkazy k článku: 

Uvedený PLC program včetně HMI pro TIA Portal V15.1 si stáhněte tady. (registered user)

Nový systémový manuál S7-1200 z 08/2018 je tady.
TIA Portal pro Simatic S7-1200/1500, více tady.

Pro psaní komentářů se přihlašte

Kontakt

email : blaja @blaja.cz
email reklama: info @blaja.cz
email adresy bez mezery 
před zavináčem

Jaroslav Blažek
Štěpánská 1888
755 01 Vsetín
+420 608 180 209