PLC - Programovatelné logické automaty
PLC-AUTOMATIZACE - PLC - CYKLUS PLC Provoz webu zajišťuje:

www.hapesoft.cz

CYKLUS PLC

Charakteristika

Cyklus PLC je základním rysem zpracování řízení, algoritmu, kdy jsou jednotlivé příkazy vykonávány opakovaně v cyklu.

Základní cyklus PLC

Cyklus je základním znakem průmyslového řídícího systému, kdy PLC stále opakovaně - cyklicky provádí svoji činnost, viz obrázek 1.

Obrázek 1
Základní cyklus malého PLC.

Úvodním krokem na začátku každého cyklu je vykonání systémových operací v CPU, které uživatel nemá možnost ovlivnit. Jedná se o vnitřní kontrolu, komunikaci s programátorem, manipulaci s programovými bloky a další.

Následujícím krokem je synchronní načtení stavu všech dostupných 1) vstupních periferních signálů a uložení tohoto stavu do paměti, která je označována jako obraz procesních vstupů (PII - Process Input Image). Pokud je pak v programu odkaz na nějaký vstupní signál, je jeho hodnota dosazena (převzata) právě z tohoto obrazu vstupů.

Toto ukládání stavu vstupů se zdá zbytečnou komplikací ale důvodem pro toto řešení je to, aby během jednoho cyklu programu byla zajištěna jednoznačnost stavu vstupního signálu, zejména u digitálních vstupů. V případě, že by se program běhen cyklu pokaždé dotazoval na právě aktuální stav vstupu, mohlo by dojít k situaci, že na začátku programu by byla hodnota konkrétního vstupu např. "zapnuto", ve středu programu "vypnuto" a na konci programu opět "zapnuto". Zpracování několika logických podmínek během jednoho cyklu programu s různým stavem téhož signálu by logicky vedlo k nejednoznačným stavům a výsledkům. Načítání stavu vstupů probíhá tzv. vzorkováním.

Po načtení stavu vstupních signálů je zahájeno zpracování programu, uloženého v paměťové oblasti vyhrazené pro program. Program je zpracováván shora dolu (zpravidla v hlavním organizačním bloku) jak je napsán a sestaven programátorem. Pro chod programu se využívá pomocná paměť pro ukládání dočasných výsledků zpracování, paměť pro lokální proměnné, platné pouze po určitou dobu a nezbytný zásobník hloubky vnoření pro uložení volání podprogramů, návratových adres, obnovu registrů aj.

Během zpracování programu se již podle algoritmu generují výstupní signály pro řízení procesu. Stavy signálů se nezapisují přímo do výstupních periferií, ale jsou ukládány do paměti zvané obraz procesních výstupů (PQI - Process Output Image). Důvod je stejný jako u vstupních signálů, a to zajištění jednoznačnosti stavu. Po dokončení programu, je požadovaný stav výstupů synchronně zapsán na fyzické výstupy periferií.

Výše uvedený popis, uvádějící synchronní načtení vstupů a zápis výstupů má omezení v počtu signálů, který je zpracováván. Důvodem je to, že v reálném čase nelze přesně v jednom okamžiku aktualizovat stovky až tisíce signálů. Uvedené je tedy možno považovat za reálné u malých, například kompaktních PLC systémů.

Pro větší modulární PLC systémy (včetně centrálních i rozšířených) se používá řadič sběrnice, ke kterému jsou periferie připojeny, viz obrázek 2.

Obrázek 2
Základní cyklus u většího PLC.

Jednotlivé periferie již mohou být od sebe více vzdáleny a i jejich množství je takové, že řízení toku dat již vyžaduje samostatnou řídící logiku periferií, tj. Periphery Bus Controller, který může pracovat samostatně ale přesto je synchronizován se systémem CPU, tedy, pokud je zpracování programu rychlejší než načtení aktuálního stavu všech periferií, vyčká systém na dokončení aktualizace stavu. Množství i vzdálenost periferií pak nepříznivě ovlivňuje rychlost předávání signálů i synchronizovatelnost mezi nimi.

Cyklus PLC s přerušením

Požadavek na zpracování přerušení přináší další nároky a vazby zpracování cyklu v PLC, viz obrázek 3.

Obrázek 3
Cyklu s přerušením v PLC.

Pokud vezmeme v úvahu problematiku synchronního zpracování signálů, možné zpoždění i dobu odezvy při zpracování programu, může nastat situace, kdy potřebujeme prioritně hlídat určitý signál nebo skupinu signálů a to digitálních, analogových i z jiných periferií a v případě jejich změny nebo překročení limitu neprodleně vykonat nějakou operaci bez ohledu na to, která část programu se právě zpracovává a taktéž nezávisle na systémovém čtení vstupů a zápisu výstupů. Tomuto se říká zpracování přerušení a jeho úkolem je zkrácení doby odezvy systému.

Přerušení nemůže CPU zpracovat absolutně kdykoliv, některé činnosti nelze přerušit, protože by došlo k celkovému zhroucení chodu. Z tohoto důvodu periferie nebo modul generuje pouze požadavek na přerušení, i když se říká, že "vyvolá přerušení". Vlastní zpracování přerušení je pak řízeno systémem. Pokud tedy vznikne požadavek na přerušení, systém v nejbližším vhodném okamžiku povolí zpracování rutiny přerušení. Pokud se jedná o případ, kdy je požadavek přerušení generován z periferie, bývá obvykle logické, že je potřeba přesněji zjistit, o jaké přerušení se jedná, jaký je stav. Moderní koncepce přerušení již předává více informací o jeho zdroji včetně doplňujících informací, přesto bývá nutné zjistit konkrétné informace z periferie např. u jednodušších systémů. V tomto případě se nelze dotazovat na obraz procesních vstupů (aktualizovaný jednou za cyklus), protože obsahují stav před vznikem přerušení, je tedy potřeba zjistit aktuální stav. K tomuto slouží instrukce pro přímé čtení vstupů, tedy takové, které obejdou obraz vstupů v paměti a přes řadič periferií si vyžádají načtení aktuálního stavu konkrétního modulu periferií. V rutině přerušení je pak možno pracovat s právě aktuálními hodnotami signálů. Stejně tak je možno obejít obraz výstupních signálů a ještě před dokončením cyklu pomocí instrukcí přímého zápisu výstupů aktualizovat stav potřebných výstupů.  2)

Podrobněji viz Zpracování přerušení.

Cyklus PLC se síťovými prostředky

Cyklus PLC se síťovými prostředky, ať decentrálními periferiemi nebo přímo síťovou komunikací, musí být principielně shodný jako cyklus bez nich, viz obrázek 4.

Obrázek 4
Cyklus PLC se síťovými prostředky komunikace.

Jinými slovy, zpracování většího objemu dat musí být stejně rychlé i se zajištěním zpracování případného přerušení. Stejně jako řadič lokální periferní sběrnice obsluhuje periferie v centrálním nebo rozšiřujícím rámu, řadič síťové sběrnice obsluhuje decentrální periferie a účastníky připojené k síťové komunikaci.

Na rozdíl od lokálního řadiče sběrnice v CPU, který je v systému pouze jeden, síťových řadičů sběrnice může PLC obsahovat několik, pro fyzicky různé typy síťových sběrnic ale i s rozdělením na síťové řadiče pro decentrální periferie a další pro datovou výměnu s jinými systémy.

Nebudeme-li brát v úvahu PLC, která se programují vložením paměti s odladěným programem, tak každé CPU obsahuje základní možnost komunikace - interface pro programování. Podle typu a výrobce bylo možno i první CPU propojit do jednoduché sítě. S vývojem a modernizací se tato interface často proměnila v plnohodnotné síťové rozhraní. 

 
Poznámky:

1) Počet a typ periferií může být definován uživatelem, zpravidla u větších systémů nebo si dostupné periferie zjistí systém CPU během náběhu.
2) Přímý přístup k periferiím (vstupy/výstupy) je zpravidla možný i z hlavního programu, tedy i mimo zpracování přerušení.


PLC-AUTOMATIZACE - PLC - CYKLUS PLC
 
Publikovaný obsah je určen pouze pro individuální studium.
Není povolena distribuce, prodej, přetisk a použití textu a/nebo vyobrazení (úplný, dílčí a/nebo částečný), použití ke školení a/nebo výuce (hromadné, skupinové nebo zadávané), veřejné a/nebo skupinové prezentace a ani jiné formy šíření v hmotné a/nebo nehmotné podobě.