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

Symbol blokuPotřebná licence: STANDARD
PIC

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 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 0 start < stop 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ů Level0Level3 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 (factortickntick<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

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