TASK – Standardní úloha řídicího systému REXYGEN
Symbol blokuPotřebná licence: STANDARD
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 až 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 dané úrovně se spouštějí se shodnou prioritou danou parametrem pri<i> bloku EXEC a periodou rovnou násobku parametru factor a základní periody dané úrovně ntick<i>tick v bloku EXEC. Pro svou exekuci má daná úloha vymezen čas od tiku č. start do tiku č. stop, přičemž parametry start a stop musí splňovat podmínku ntick<i>. Navíc musí být splněna podmínka postupného spouštění úloh kontrolovaná překladačem REXYGEN Compiler říkající, že parametr stop předchozí úlohy nesmí být větší než parametr start úlohy následující (intervaly vymezené pro jednotlivé úlohy se nesmějí překrývat). V případě nesprávné volby časování jednotlivých úloh dané úrovně (jsou přerušovány úlohami vyšších úrovní a dalšími úlohami s vyšší prioritou), nedojde k ukončení činnosti systému (narozdíl od rychlé úlohy QTASK), ale vykonávání následujících úloh se odsouvá. Programem REXYGEN Diagnostics (záložky Level a Task) lze zjistit, zda došlo k časovému posunutí pouze jednorázově nebo dochází k trvalému sklouzávání plánovaných časů.
Vstup
prev | Vstup sloužící pro k připojení první úlohy na některý z výstupů Level0 až Level3 bloku EXEC nebo k připojení na výstup next předchozí úlohy dané úrovně | Long (I32) |
Výstup
next | Výstup sloužící pro zřetězování úloh dané úrovně připojením na vstup prev následující úlohy téže úrovně | Long (I32) |
Parametry
factor | Faktor spouštění, násobek periody tickntick<i> bloku i-té výpočetní úrovně bloku EXEC určující periodu úlohy (ntick<i>) 1 | Long (I32) |
start | Číslo tiku periody dané výpočetní úrovně, na kterém má být úloha spuštěna 0 ntick<i> | Long (I32) |
stop | Číslo tiku periody dané výpočetní úrovně, do kterého má být úloha dokončena start+1 ntick<i> | Long (I32) |
stack | Velikost zásobníku (v bytech) 10240 | Long (I32) |
filename | Jméno souboru s příponou .mdl obsahující algoritmus úlohy. Není-li jméno zadáno, je jméno souboru určeno jménem tohoto bloku (v hlavním souboru projektu) doplněným příponou .mdl. | String |
[Předchozí] [Na začátek] [Výše] [Další]
2020 © REX Controls s.r.o., www.rexygen.com