TC – Řízení časovače
Symbol blokuPotřebná licence: STANDARD
Popis funkce
Blok TC řídí interní časovač systému REXYGEN. Bloku umožňuje modifikovat
základní tik algoritmu (která se zadává parameterem tick bloku EXEC) a
to jak skutečnou délku tiku, tak i logickou délku (kolik se kund se přičte do časovevé
značky při každém tiku). Parametr EXEC:tick nastavuje logickou i fyzickou periodu a
také periodu spouštění bloků (některé bloky potřebují pro diskretizaci algoritmu).
Perioda pro bloky není blokem TC ovlivněna.
Skutečná (fyzická) perioda se nastavuje vstupem OsPer. Dále je možné nastavit posun tiků o několik sekund. To se provede nastavením posunu na vstup OsAdj na jeden tik. Aby nebolo příliž narušeno časování, jsou větší posuny realizovány tak, že je dočasně snížena nebo zvýšena perioda tiku, dokud nedojde k požadovanému posunu. Jak se změní perioda ovlivňuje parametr OsMax.
Příklad: předpokládejme periodu tiku 0.1s a OsMax=0.2, pak nastavení OsAdj=1.0 (na jeden tik) dočasně zvýší periodu na 0.12s (tj. o 20% jak určuje parametr OsMax), dokud nedojde k celkovému posunu 1sd, tj. na 50 tiků.
Logická perioda se řídí stejně s využitím vstupů/parametrů TsPer, TsAdj, TsMax.
Poznámka 1: Nepřipojené vstupy a vstupy s hodnotou 0 jsou ignorovány (nevyvolávají žádnou akci).
Poznámka 2: Nastavení skutečné periody není na windows platformách momentálně podporováno.
Poznámka 3: Hlavní účel bloku je synchronizovat čas/tiky systému REXYGEN s jiným systémem, takže změny period i offsety se předpokládají malé. Pro simulační a ladící účely je možné změnit periodu výrazně a tím zrychlit pomalu probíhající proces (nebo naopak zpomalit příliš rychle probíhající proces). Je to potřeba to dělat s rozmyslem, protože návaznost na další systémy pomocí driverů se v podstatě přestane fungovat a také se musí při zkrácené periodě stihnout všechny výpočty. Navíc se v tomto případě objevují v logu warningy o chybějících ticích, špatné periodě a pod. Pro tyto účely je lépe použít simulační režim.
Vstupy
OsPer | Skutečná perioda tiku [s] | Double (F64) |
"TsPer | Perioda tiku pro časovou značku[s] | Double (F64) |
OsAdj | Posun skutečné polohy tiku [s] | Double (F64) |
TsAdj | Posun časové značky tiku [s] | Double (F64) |
Parametry
OsMax | Maximální relativní změna tiku pro vstup OsAdj 0.0 1.0 0.1 | Double (F64) |
TsMax | Maximální relativní změna tiku pro vstup TsAdj 0.0 1.0 0.1 | Double (F64) |
Výstupy
per | Skutečná délka posledního tiku [s] | Double (F64) |
over | Počet ztracených tiků v poslední periodě | Long (I32) |
ticks | Počet tiků od startu | Large (I64) |
SIM | Časovač v simulačním režimu | Double (F64) |
[Předchozí] [Na začátek] [Výše] [Další]
2023 © REX Controls s.r.o., www.rexygen.com