TIODRV – Vstupně-výstupní ovladač systému REX s úlohami

Symbol blokuPotřebná licence: STANDARD
PIC

Popis funkce
Blok TIODRV slouží pro konfiguraci speciálních ovladačů řídicího systému REX, které jsou samy schopny spouštět úlohy konfigurované bloky IOTASK, viz. uživatelská příručka konkrétního ovladače. První z úloh IOTASK se připojí svým vstupem prev na výstup Tasks bloku TIODRV. Pokud daný ovladač umožňuje spouštět více než jednu úlohu, připojí se další úloha svým vstupem prev na výstup next předchozí úlohy IOTASK, atd. Počet připojených úloh a jejich pořadí nekontroluje překladač RexComp (jako v případě bloků TASK), ale přímo vstupně-výstupní ovladač.

Pokud ovladač nemůže pro některou z úloh zajistit periodické spouštění (např. úloha spouštěná od externí události), nastaví pro tuto úlohu odpovídající příznak. Taková úloha nesmí obsahovat bloky, vyžadující konstantní periodu vzorkování (např. většina regulátorů). V případě, že nějaký ze zakázaných bloků je přesto použit, zahlásí exekutiva chybu běhu úlohy, kterou lze zjistit v programu RexView.

Vstup

prev

Vstup sloužící pro k připojení prvního ovladače na výstup Drivers bloku EXEC nebo k připojení na výstup next předchozího ovladače

long

Výstupy

next

Výstup pro řetězení ovladačů (s úlohami)

long

Tasks

Výstup sloužící pro zřetězování ovladačů připojením na vstup prev následujícího ovladače

long

Parametry

module

Jméno modulu, ve kterém je daný vstupně výstupní ovladač obsažen (nemusí se zadávat, je-li shodné s classname)

string

classname

Jméno třídy ovladače; rozlišuje malá a velká písmena!  DrvClass

string

cfgname

Jméno konfiguračního souboru ovladače  iodrv.rio

string

factor

Násobek parametru tick bloku EXEC určující periodu spouštění úlohy ovladače   1 10

long

stack

Velikost zásobníku úlohy ovladače v bytech   1024 10240

long

pri

Priorita úlohy ovladače   1  31 3

long

timer

Ovladač je zdrojem pro časování

bool