TASK – Standardní úloha řídicího systému REXYGEN

Symbol blokuPotřebná licence: STANDARD
Qt SVG Document Exported by REXYGEN Studio prev next TASK

Popis funkce
Algoritmy řídicích úloh (task) jsou do systému REXYGEN zařazovány pomocí bloků typu TASK. Aplikace řídicího systému může obsahovat několik úloh, které se v konfiguraci systému zařazují do jednotlivých výpočetních úrovní připojením na výstupy Level0 Level3 bloku EXEC. Vstup prev první úlohy dané úrovně <i> se propojí s výstupem Level<i> bloku EXEC. Další úlohy této úrovně se přidávají propojováním vstupu prev s výstupem next předchozí úlohy. Na každý výstup next smí být připojen nejvýše jeden vstup prev následující úlohy stejné úrovně, u poslední úlohy zůstává výstup next nepřipojen. Vzniklá posloupnost úloh dané úrovně určuje pořadí inicializace a spouštění úloh této úrovně v řídicím systému REXYGEN. Jednotlivé úrovně se inicializují v pořadí od Level0 do Level3 (rychlá úloha QTASK se inicializuje před úrovní Level0).

Všechny úlohy na dané úrovni <i> jsou prováděny se stejnou prioritou, která je určena parametrem pri<i> bloku EXEC. Doba provádění úlohy je vypočítána jako násobek parametru factor a základní periody úrovně ntick<i>tick v bloku EXEC.

Čas vyhrazený pro provádění úlohy začíná v tiku start a končí v tiku stop. Hodnoty start a stop mohou být pevné nebo automaticky určovány RexCore. Pro automatické určování RexCore lze parametry vyplnit následovně:

  • start = -1: Provádění začíná ihned po skončení předchozí úlohy.
  • start = -2: Provádění začíná v následujícím tiku po dokončení předchozí úlohy.
  • stop = -1: Provádění úlohy musí skončit před koncem ntick<i>*tick.
  • stop = -2: Provádění úlohy musí skončit v následujícím tick.

Pro pevné doby provádění by měly být hodnoty start a stop nezápornými celými čísly.

Kompilátor REXYGEN Compiler dodatečně ověřuje, že hodnota parametru stop předchozí úlohy je menší nebo rovna hodnotě parametru stop následující úlohy. To zajistí, že přidělené časové intervaly pro jednotlivé úlohy se nepřekrývají. Pokud časování jednotlivých úrovní není vhodné, úlohy mohou být přerušeny úlohami a jinými událostmi s vyšší prioritou. V takových případech provádění není zastaveno, ale pouze zpožděno (na rozdíl od bloku QTASK). Sekce Diagnostics programu REXYGEN Studio hodnotí, zda je zpoždění provádění příležitostné nebo trvalé (karty Level a Task).

Poznámka: Parametr MDLOPEN je určen pro interní potřeby systému REXYGEN a není ho možné měnit ručně.

Tento blok nepropaguje kvalitu signálu. Více informací je uvedeno v sekci 1.4.

Vstup

prev

Vstup pro řetězení úloh

Long (I32)

Parametr

factor

Faktor spouštění  1

Long (I32)

start

Startovací tik

Long (I32)

stop

Ukončovací tik  1

Long (I32)

stack

Velikost zásobníku (v bytech)  10240

Long (I32)

filename

Jméno příslušného MDL souboru

String

MDLOPEN

Příznak otevření MDL souboru

Bool

Výstup

next

Výstup pro řetězení úloh

Long (I32)

2024 © REX Controls s.r.o., www.rexygen.com