PRGM – Programátor
Symbol blokuPotřebná licence: STANDARD
Popis funkce
Blok PRGM je určen pro generování časových funkcí
(programů) složených z n lineárních částí definovaných
(n+1) rozměrnými
vektory tm=[t0,...,tn] času a
požadovaných hodnot y=[y0,...,yn]
(generovaná křivka je spojitá po částech lineární, viz. obrázek). Nejčastěji je používán
pro generování požadované hodnoty regulátoru. Generování programu je spuštěno vstupem
RUN=on; přechod zpět
na RUN=off vrací
stav programátoru do základního stavu. Vstup DEF nastaví sp na hodnotu spv a po vymizení
hodnoty DEF=on se
pokračuje přejetím po rampě na nejbližší následující uzel, čas přitom není narušen.
Vstup HLD=on
zmrazí výstupní hodnotu sp a všechny výstupní časy (tsc, tt, rt), po vymizení
hodnoty HLD=on
se pokračuje z okamžiku zmrznutí dále podle programu. Je-li při přechodu
HLD on→off nastaven
vstup CON=on,
nepokračuje se od okamžiku zmrazení, ale najede se do uzlového bodu s
indexem ind po rampě za čas trt. Index uzlového bodu ind musí být
rovný nebo větší než aktuálně prováděný sektor (v okamžiku
HLD on→off).
Je-li RPT=on,
potom se program generuje opakovaně.
Vstupy
RUN | Povolení generování časové funkce programu | Bool |
DEF | Inicializace sp na hodnotu spv | Bool |
spv | Inicializační hodnota | Double (F64) |
HLD | Zmrazení výstupu a výstupních časů | Bool |
CON | Pokračování od uzlového bodu ind | Bool |
ind | Index uzlového bodu pro pokračování | Long (I32) |
trt | Čas pro dosažení požadovaného uzlu ind | Double (F64) |
RPT | Příznak opakování generování časové funkce | Bool |
Výstupy
sp | Požadovaná hodnota (hodnota časové funkce v daném čase) | Double (F64) |
isc | Aktuální sektor funkce | Long (I32) |
tsc | Čas od začátku sektoru | Double (F64) |
tt | Čas od startu generování časové funkce | Double (F64) |
rt | Čas do konce programu | Double (F64) |
CNF | Příznak sledování nakonfigurované křivky | Bool |
E | Chyba, časy uzlů nejsou seřazeny vzestupně | Bool |
Parametry
nmax | Maximalní (alokovaná) délka pole ↓4 ↑10000000 ⊙10 | Long (I32) |
tmunits | Jednotky pro zadávání časů ⊙1 | Long (I32) |
|
|
|
tm | (n+1)-rozměrný vektor vzestupně uspořádaných časů ⊙[0 1 2] | Double (F64) |
y | (n+1)-rozměrný vektor hodnot časové funkce ⊙[0 1 0] | Double (F64) |
[Předchozí] [Na začátek] [Výše] [Další]
2024 © REX Controls s.r.o., www.rexygen.com