Print

Tipy pro programování PLC a výhody pro techniky

-- 15.11.17

Přečtěte si doporučení k programování programovatelných automatů PLC pokrývající obvyklá témata v oblasti liniových schémat.

Liniová schémata, skenování programovatelných automatů, kódování BCD a opětovně použitelné programové kódy patří mezi doporučení k programování PLC, která nabízí Frank Lamb, člen redakčního poradního sboru časopisu Control Engineering a zakladatel společnosti Automation Consulting Services, jež je obsahovým partnerem časopisu Control Engineering. Níže jsou popsány způsoby programování PLC nahlížené ze tří různých hledisek.

Liniová schémata, skenování PLC

Téměř všechna PLC po celém světě provádějí skenování stejným způsobem. Nejprve CPU načte fyzické vstupy do paměťové tabulky, obvykle označované jako „tabulka vstupů“. Tato tabulka se pak používá při vyhodnocování programu. Na různých platformách se používají různé druhy registrů. Tyto registry se aktualizují se zpracováním liniového schématu zleva doprava na každé příčce a shora dolů v rámci každé rutiny. To zahrnuje aktualizaci tabulky výstupů, která se následně použije k ovládání fyzických zařízení připojených k PLC.

Program může volat různé podprogramy pro rozmanité účely a může být důležité, v jakém pořadí se rutiny volají. V závislosti na tom, kde jsou paměťové registry a výstupní tabulky aktualizovány, mohou být fyzické výstupy zpožděny až o dva skeny. V každém případě program prochází různými rutinami, tak jak jsou volány, než se vrátí tam, odkud byly volány, až nakonec skončí v závěru původní cyklické rutiny. Většina programů využívá počáteční cyklickou rutinu, která slouží k volání všech ostatních rutin.

Některé programy však běží na periodické bázi, a nikoli jako kontinuální program. To je však neobvyklé. Většina programů využívá kontinuální konfiguraci programu, která běží, jak nejrychleji to jde. Po provedení celého programového kódu, následném vyhodnocení logiky a aktualizaci všech tabulek (kromě tabulek vstupů, které byly zapsány na začátku skenu) je výsledná tabulka výstupů nebo obsah registru zapsán do fyzických výstupů.

Jak dlouho to trvá? Závisí to na platformě (rychlosti procesoru), na množství kódu v programu a typu použitých instrukcí. Někdy programátoři použijí smyčky v programu nebo stejné rutiny volají opakovaně. To vše má dopad na celkovou dobu skenování. Obvykle je k dispozici dokumentace informující o době provádění různých instrukcí, nicméně nemá smysl pokoušet se sčítat veškerý programový kód a odhadovat délku. Tyto údaje jsou k dispozici jen pro orientaci.

Skenování může trvat až 80 ms. Pokud je skenování delší než přibližně 50 ms (u projektů řízení stroje), pak by měl uživatel hledat výkonnější procesor nebo způsoby, jak kód zefektivnit. U časů delších než 50 ms může být efekt na výstupní reakci u projektů řízení stroje již znatelný. U projektů řízení procesu na tom nemusí záležet.

Binární kódování decimálních čísel a automaty PLC

Binární kódování decimálních čísel (Binary-Coded Decimals – BCD) je druhem binárního kódování (obvykle reprezentovaného čtyřmi nebo osmi bity). Lidé musejí sčítat tyto individuální bity v našich registrech, aby je konvertovali na desítkovou soustavu, protože jsou naučeni uvažovat tímto způsobem.

V dobách před nástupem dotykových obrazovek se jako numerické rozhraní mezi operátorem a PLC používaly sedmisegmentové zobrazovací prvky a točítkové (thumbwheel) přepínače. A ještě před nástupem PLC byla tato zařízení jediným grafickým způsobem, jak zajistit numerické rozhraní s obvody. Uživatelé mohli přepojovat konektory podobně jako v dobách počítače ENIAC (prvního elektronického víceúčelového počítače), ale bylo mnohem snadnější zobrazovat a nastavovat decimální čísla pomocí těchto zařízení. Problém byl v tom, že byla velice náročná na vstupy a výstupy. Každý točítkový segment vyžadoval 4 vstupy (+ napájení) a každý sedmisegmentový zobrazovací prvek vyžadoval 4 výstupy (+ 2 napájecí připojení). Stále však bylo jednodušší pracovat s rozhraním s celými desetinnými čísly se znaménkem nebo bez znaménka než používat tlačítka a kontrolky.

Obvyklým problémovým aspektem jsou matematické funkce – každý datový typ musí být výslovně deklarován na platformě a konvertován, pokud datové typy nejsou ekvivalentní. A nejen to, standardní datové typy časovače a čítače zahrnují ve svých datových strukturách kódování BCD. Je to z toho důvodu, že tyto struktury se datují již od dob, kdy lidé museli pracovat s prvky, jako jsou tyto točítkové přepínače a sedmisegmentové zobrazovací prvky. Žádané hodnoty časovače se dokonce dodnes nastavují ve formátu „S5T#3S“ (pro třísekundovou žádanou hodnotu). Časovač využívá tři číslice BCD (12bitové) a dva bity navíc pro časovou základnu. To platí i pro čítače, což znamená, že mohou počítat pouze od –999 do +999.

Každá čtyřčíselná sekce může nést pouze bitové hodnoty od 0000 do 1001; pro následující hodnotu se namísto indexování na 1010 („10“ v desítkové soustavě se znaménkem nebo bez znaménka nebo „A“ v šestnáctkové soustavě) přesune následující bit na další sekci bitů. To znamená, že šest posledních kombinací bitů (A–F) je v podstatě nevyužito – ve struktuře BCD to není možné.

Struktura nebo základna BCD je stále použitelná u mnoha novějších dotykových obrazovek, ale většina programátorů pro vyjádření decimálních čísel volí spíše celočíselnou základnu. Do jisté míry je BCD něco jako systém DOS; v technických školách se o něm zmiňují, ale lidé ve skutečnosti nevědí, odkud pochází. Odkaz na staré točítkové ovladače a sedmisegmentové zobrazovací prvky může vyjasnit určité nejasnosti a otázky okolo BDC.

Výhody opětovně použitelného kódu pro prvky PLC

Většina programátorů čerpá své znalosti a dovednosti ze zkušeností s produkty Allen-Bradley společnosti Rockwell Automation, protože značnou část instalované základny ve výrobě tvoří právě prvky PLC společnost Allen-Bradley. Řada ControlLogix společnosti Rockwell představovala obrovský skok ve schopnostech prvků PLC a nabízela zpracování na bázi tagů a dovolovala použití uživatelsky definovaných datových typů (UDT) a přídavných instrukcí (Add-On Instructions – AOI). Tagy mohou být rovněž lokální pro každý program, což umožňuje jejich duplikování pro opětovné použití.

Tyto schopnosti, kromě zpracování na bázi tagů, již existovaly dlouhá léta předtím na jiných platformách. Výbor International Electrotechnical Commission (IEC) 61131 pro programovací jazyky působil již od roku 1993 a ostatní PLC začaly tyto schopnosti brzy využívat.

Důležitým rozdílem mezi staršími systémy pouze na bázi registrů a novějšími systémy je schopnost vytvářet opětovně použitelné bloky kódu. Podpůrné platformy musejí mít tři následující vlastnosti:

  1. Lokální versus globální proměnné. Opětovně použitelný kód musí mít proměnné, které platí pro každou instanci kódu, ideálně pouze po změně formátu dat dříve náležejících původnímu kódu. To znamená, že se seznam tagů nebo symbolů nemusí přejmenovávat pro každou instanci nebo volání. Duplikování podprogramu několikrát a iterace adres uvnitř podprogramu, i když šetří čas, není ve skutečnosti opětovně použitelným kódem.
  2. Uživatelsky definované datové typy. Vytvoření uživatelsky definovaných datových typů umožňuje vybudovat struktury, které lze exportovat z jedné aplikace do jiné. Umožňují popisovat komponenty pomocí obecných pojmů, jako je „rychlost“, „spustit“ a „zamítnout“. Uživatelské datové typy nevyžadují systémy na bázi tagů, ale potřebují vyspělé používání symbolů.
  3.  Samostatné bloky s možností ochrany. Je důležité, aby byl kód obsažený v blocích, které umožňují vstup a výstup proměnných a které jsou chráněny, aby uživatel nemohl měnit jejich specifickou instanci. K tomu je zapotřebí heslo nebo softwarový klíč.

To je jen několik požadavků. Také další vlastnosti, jako je například možnost zápisu kódu v jiných jazycích pro PLC normy IEC, přispívají k tomu, aby byly platformy mnohem výkonnější a umožňovaly rychlé psaní programového kódu.

Bez ohledu na to, zda platforma používá podprogramy s lokálními proměnnými nebo přizpůsobitelné instrukce, je opětovně použitelný programový kód kriticky významným aspektem rychlého vytváření výkonných programů. Opětovně použitelný kód využívá mnoho platforem a každá z nich uplatňuje své vlastní metody.

Frank Lamb, člen redakčního poradního sboru časopisu Control Engineering, je zakladatel společnosti Automation Consulting Services. Tento článek byl původně publikován na blogu Automation Primer. Blog Automation Primer je obsahovým partnerem vydavatelství CFE Media. Upravil Chris Vavra, redaktor časopisu Control Engineering, CFE Media, cvavra@cfemedia.com.


Sponzorované odkazy

 
Aktuální vydání
Reklama

Navštivte rovněž

  •   Události  
  •   Katalog  

Události

Malá automatizace v čele s rebelem Modicon M221
2018-01-17 - 2018-01-17
Místo: webinář
Infotherma 2018
2018-01-22 - 2018-01-25
Místo: Černá louka 3235, Pavilon A, Ostrava
Diago 2018
2018-01-30 - 2018-01-31
Místo: Orea Resort Devět Skal ***, Sněžné - Milovy
Trendy v robotizaci a automatizaci
2018-01-31 - 2018-02-01
Místo: Brno, hotel Avanti
Řízení závislých pohybů aneb Motion Control umí
2018-02-14 - 2018-02-14
Místo: webinář

Katalog

Schneider Electric CZ, s. r. o.
Schneider Electric CZ, s. r. o.
U Trezorky 921/2
158 00 Praha 5
tel. 00420737266673

Mitsubishi Electric Europe B.V.
Mitsubishi Electric Europe B.V.
Pekařská 621/7
155 00 Praha 5
tel. +420 251 551 470

COGNEX
COGNEX
Emmy-Noether-Str. 11
76131 Karlsruhe
tel. 720 981 181

BALLUFF CZ s.r.o.
BALLUFF CZ s.r.o.
Pelušková 1400
19800 Praha
tel. 724697790

B+R automatizace, spol. s r.o.
B+R automatizace, spol. s r.o.
Stránského 39
616 00 Brno
tel. +420 541 4203 -11

všechny firmy
Reklama


Tematické newslettery




Anketa


Ano, proto se je snažíme minimalizovat
Ne, jsou na odpovídající úrovni
Nejsou vysoké, ale rychle rostou

O nás   |   Reklama   |   Mapa stránek   |   Kontakt   |   Užitečné odkazy   |   Bezplatné zasílání   |   RSS   |   
Copyright © 2007-2017 Trade Media International s. r. o.
Navštivte naše další stránky
Trade Media International s. r. o. Trade Media International s. r. o. - Remote Marketing Továrna - vše o průmyslu Control Engineering Česko Řízení a údržba průmyslového podniku Inteligentní budovy Almanach produkce – katalog firem a produktů pro průmysl Konference TMI