SLEEP – Časovací blok pro Simulink
Symbol blokuPotřebná licence: STANDARD
Popis funkce
Blok SLEEP slouží k zajištění co nejpřesnější periody spouštění algoritmu. V
řídicím systému REXYGEN je časování výpočetních úloh zajištěno
systémovými prostředky (viz blok EXEC), a proto je blok SLEEP ignorován.
V systému Matlab/Simulink se pracuje se simulačním časem, který může běžet
rychleji nebo pomaleji než reálný čas (podle výkonu počítače a složitosti
algoritmu).
Má-li simulace běžet v reálném čase, stačí do simulačního algoritmu zařadit blok SLEEP, který jej v každém kroku pozastaví na tak dlouho, aby byl jeho algoritmus volán s periodou danou parametrem ts. Mechanismus samozřejmě funguje jen v případě, že simulace běží rychleji než ve skutečnosti.
V současné době je blok SLEEP implementován pro systém Matlab/Simulink ve verzi pro operační systémy Windows. Vzhledem k tomu, že ve Windows běží obvykle ještě jiné úlohy, které přerušují simulaci, je vhodné nepoužívat příliš krátké periody v řádu milisekund, doporučená hodnota je od 100 ms. Pro správnou funkci je nutné v parametrech simulace Solver options nastavit parametr Type na fixed-step, discrete (no continuous states) a parametr Fixed step size na stejnou hodnotu, jako parametr ts bloku SLEEP. Blok SLEEP by měl být nejvýše jeden v celém simulačním schématu (počítáno včetně subsystémů).
Parametr
ts | Perioda spouštění simulační úlohy v sekundách 0.1 | Double (F64) |
[Předchozí] [Na začátek] [Výše] [Další]
2024 © REX Controls s.r.o., www.rexygen.com