TRND – Záznam trendů v reálném čase

Symbol blokuPotřebná licence: STANDARD
PIC

Popis funkce
Blok TRND slouží pro ukládání průběhů až čtyř vstupních signálů u1 u4 do cyklických trendových bufferů v paměti cílového zařízení (target). Výhodou bloku TRND je synchronní ukládání dat s během exekutivy reálného času, které umožňuje ukládat do trendu i velmi rychlé signály. Na rozdíl od asynchronního ukládání dat na nadřazeném operátorském počítači (host) nedochází ke ztrátě některých vzorků nebo jejich vícenásobnému uložení. Data lze blokem TRND ukládat i pro velmi krátké periody spouštění úloh.

Skutečný počet ukládaných průběhů určuje parametr n. V případě, že se trendové buffery s délkou l vzorků zaplní, začnou se přepisovat nejstarší vzorky. Do trendových bufferů se mohou ukládat data jednou za pfac spuštění bloku (decimace) a ukládaná data mohou být zpracována podle hodnoty parametrů ptype1 ptype4. Další decimace s faktorem afac může být použita pro ukládání do archivů.

Pro úsporu paměti na cílovém zařízení může být parametrem btype specifikován typ použitých trendových bufferů. Velikost paměti obsazená trendovými buffery je dána vztahem s nl, kde s je velikost proměnné daného typu v bytech. Přednastavený typ Double zabírá 8 bytů na každý vzorek, pokud je tedy např. počet trendů n= 4, délka každého trendu l = 1000, pak pro typ Double je zapotřebí 8 4 1000 = 32000 bytů. V případě, že by byly vstupní signály měřeny z A/D převodníku s rozlišením do 16 bitů, mohly by být ukládány v typu Word s velikostí 2 byty na vzorek a velikost potřebné paměti by se zmenšila na jednu čtvrtinu. Velikosti jednotlivých datových typů a jejich rozsahy jsou uvedeny v tabulce 1.1.

Při použití jiného typu pro trendové buffery než je typ Double může nastat případ, že se zpracovaná hodnota některého vstupu „nevejde“ do zvoleného typu bufferu a má hodnotu menší (větší) než je nejmenší (největší) zobrazitelné číslo v daném typu. V takovém případě se do bufferu uloží nejmenší (největší) zobrazitelné číslo v daném typu a chyba se binárně zakóduje do chybového výstupu iE podle následující tabulky (nepoužité bity jsou vypuštěny):

Podkročení rozsahu
Překročení rozsahu









Chyba









Vstup u4 u3 u2 u1 u4 u3 u2 u1
Číslo bitu 11 10 9 8 3 2 1 0
Váha bitu 2048 1024 512 256 8 4 2 1









V případě, že nastane najednou několik chyb, je výsledný chybový kód dán součtem vah jednotlivých chyb. Poznamenejme, že současné překročení a podkročení rozsahu na daném vstupu nemohou nastat zároveň.

Číst, zobrazovat a exportovat průběžně ukládaná data je možné v REXYGEN Studio ve Watch režimu. Po dvojkliku na příslušný TRND blok se otevře nová karta s předponou Trend.

POZOR: nastavení kteréhokoliv z parametrů arc, afac, id na 0 (prázdný) způsobí, že data se nezapisují do archivu a jsou dostupná jen v diagnostických nástrojích.

Vstupy

u1..u4

Analogové vstupy bloku určené pro zpracování a ukládání do trendu

Double (F64)

RUN

Povolení běhu algoritmu. Data se zpracovávají a ukládají jen pokud je RUN = on.

Bool

R1

Signál pro vymazání obsahu trendového bloku. Data jsou mazána při každém spuštění bloku, je-li R1 = on. Vstup má přednost před vstupem RUN.

Bool

Výstupy

y1..y4

Analogové výstupy bloku nastavované jednou za pfac spuštění bloku na poslední hodnoty uložené do trendových bufferů

Double (F64)

iE

Kód chyby ukládání do trendových bufferů, viz popis v textu výše

Long (I32)

Parametry

n

Počet signálů (bufferů) v trendu   1  4 4

Long (I32)

l

Počet vzorků vyhrazený v paměti pro každý buffer trendu   0  268435000 1000

Long (I32)

btype

Typ všech použitých bufferů trendu  8

Long (I32)

1 ....

Bool

2 ....

Byte

3 ....

Short

4 ....

Long

5 ....

Word

6 ....

DWord

7 ....

Float

8 ....

Double

10 ...

Large

ptypei

Způsob zpracování signálu ui,i = 14. Zvolený způsob se aplikuje na posledních pfac vzorků a výsledek se uloží do i-tého trendového bufferu  1

Long (I32)

1 ....

ukládání bez zpracování

2 ....

minimum z pfac vzorků

3 ....

maximum z pfac vzorků

4 ....

součet pfac vzorků

5 ....

aritmetický průměr z pfac vzorků

6 ....

směrodatná odchylka pfac vzorků

7 ....

rozptyl pfac vzorků

pfac

Násobek periody spouštění bloku pro uložení zpracovaných hodnot do trendových bufferů. Pokud je vstup RUN = on, ukládají se zpracovaná data do trendu s periodou pfac TS, kde TS je perioda spouštění bloku ve vteřinách.   1  1000000 1

Long (I32)

afac

Archivační faktor je číslem udávajícím po kolika uložených vzorcích do trendu se mají ukládané hodnoty navíc uložit do archivů zadaných příznaky arc. Je-li afac = 0, neukládají se trendy do žádného archivu, jinak se ukládají s periodou afacpfacTS, kde TS je perioda spouštění bloku ve vteřinách.   0  1000000

Long (I32)

arc

Seznam archivů, kam budou ukládána data z trendu. Zadává se ve tvaru např. 1,3..5,8. Data budou uložena do všech uvedených archivů (detaily o číslování archivů viz blok ARC. Programy třetích stran (Simulink, OPC klienti atd.) pracují s celým číslem, které je bitovou maskou – pro uvedený příklad tedy 157, binárně 10011101.

Word (U16)

id

Identifikační kód trendu v archivu. Tento kód musí být volen jednoznačně v celé stanici s řídicím systémem REXYGEN (tzn. ve všech archivačních blocích). Deaktivováno pro id = 0.  1

Word (U16)

Title

Text hlavičky trendu pro zobrazení v diagnostických nástrojích systému REXYGEN, např. ve Watch režimu programu REXYGEN Studio.  Trend Title

String

timesrc

Zdroj časových značek. Součástí každého vzorku v trendovém bufferu je časová značka. Pro rychlé nebo krátkodobé trendy, kde nás zajímá přesný čas mezi vzorky odpovídající periodě spouštění úlohy spíše než absolutní čas, vybereme CORETIMER – interní technologický čas systému REXYGEN, který je inkrementován o nominální periodu s každým základním tikem. Pro dlouhodobé trendy, kde nás zajímá spíše absolutní čas sdílený s operačním systémem (a případně synchronizovaný přes NTP), vybereme SYSCLOCK. Ostatní volby jsou určeny pouze pro ladicí nebo speciální účely.  1

Long (I32)

1 ....

CORETIMER – Čas udržovaný jádrem časovače (v aktuálním ticku)

2 ....

CORETIMER-PRECISE – Čas udržovaný jádrem časovače (při spuštění bloku)

3 ....

SYSCLOCK – Čas udržovaný systémem (v aktuálním ticku)

4 ....

SYSCLOCK-PRECISE – Čas udržovaný systémem (při spuštění bloku)

5 ....

PFC – Čas čítače s vysokým rozlišením (PerFormanceCounter)

SigNames

Názvy jednotlivých signálů pro zobrazení v diagnostických nástrojích systému REXYGEN, např. ve Watch režimu programu REXYGEN Studio. Zadává se na každou řádku název jednoho signálu. Pokud je parametr nevyplněný, použije se náhradní hodnota (interní identifikace).

String

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