DATETIME – Čtení, nastavování a konverze času

Symbol blokuPotřebná licence: STANDARD
PIC

Popis funkce
Blok DATETIME je určen pro pokročilé operace s časem řídicího systému REXYGEN a operačního systému.

Blok umožňuje synchronizaci hodin operačního systému a řídicího systému REXYGEN. V okamžiku spuštění exekutivy systému REXYGEN jsou hodiny synchronizovány, ale během dlouhodobého provozu se mohou tyto dva údaje rozcházet (např. při přechodu na letní čas). Pokud je potřeba provést opětovnou synchronizaci, hodiny systému REXYGEN se při náběžné hraně (off on) na vstupu SET aktualizují dle vstupů a parametrů bloku.

Je však důrazně doporučeno neaktualizovat hodiny systému REXYGEN, pokud je řízený stroj či technologie v provozu, neboť by to mohlo vést k nepředvídatelnému chování.

Pokud je potřeba číst nebo konvertovat údaje o čase, je možno příslušnou akci spustit náběžnou hranou (off on) na vstupu GET a hodnoty přečíst na výstupech bloku. Výstupy začínající na ’t’ označují celkový počet daných jednotek od 1.1.2000 UTC.

Pokud jsou nastaveny parametry getper a setper na nenulové hodnoty, je čtení a nastavování hodin prováděno periodicky.

Při menší odchylce hodin systému REXYGEN a operačního systému, než udává parametr settol, nejsou hodiny systému REXYGEN nastaveny jednorázově, synchronizace probíhá postupně. Toho je dosaženo zanedbatelnými změnami v časování exekutivy systému REXYGEN, čímž po nějaké době dojde k dosažení synchronizace. Následně je použito standardní časování systému REXYGEN.

Pro jednoduché čtení data a/nebo času použijte bloky DATE_ a TIME.

Vstupy

uyear

Vstup pro nastavení roku  0.00E+00

Long(I32)

umonth

Vstup pro nastavení měsíce  0.00E+00

Long(I32)

uday

Vstup pro nastavení dne  0.00E+00

Long(I32)

uhour

Vstup pro nastavení hodin  0.00E+00

Long(I32)

umin

Vstup pro nastavení minut  0.00E+00

Long(I32)

usec

Vstup pro nastavení sekund  0.00E+00

Long(I32)

unsec

Vstup pro nastavení nanosekund   -9.22E+18  9.22E+18 0.00E+00

Large (I64)

SET

Nastavení času pomocí náběžné hrany

Bool

GET

Přečtení času pomocí náběžné hrany

Bool

Výstupy

yyear

Rok

Long (I32)

ymonth

Měsíc

Long (I32)

yday

Den

Long (I32)

yhour

Hodiny

Long (I32)

ymin

Minuty

Long (I32)

ysec

Sekundy

Long (I32)

ynsec

Nanosekundy

Long (I32)

ydow

Den v týdnu

Long (I32)

ywoy

Týden v roce

Long (I32)

tday

Počet dní od začátku epochy

Long (I32)

tsec

Počet sekund od začátku epochy

Long (I32)

tnsec

Počet nanosekund od začátku epochy

Large (I64)

dsec

Počet sekund od půlnoci

Long (I32)

Parametry

isetmode

Zdroj podle kterého nastavit čas  1.00E+00

Long(I32)

1 ....

čas OS

2 ....

vstupy bloku

3 ....

vstup unsec

4 ....

vstup usec

5 ....

vstup unsec relativně

igetmode

Zdroj ze kterého přečíst čas pro nastavení či konverzi  6.00E+00

Long(I32)

1 ....

čas OS

2 ....

vstupy bloku

3 ....

vstup unsec

4 ....

vstup usec

5 ....

vstup uday

6 ....

čas systému REXYGEN

settol

Tolerance pro nastavení času systému REXYGEN [s]  1.0

Double (F64)

setper

Perioda nastavování času [s] (0=bez opakování)  0.0

Double (F64)

getper

Perioda čtení času [s] (0=bez opakování)  0.001

Double (F64)

FDOW

První den v týdnu je neděle

Bool

off ..

týden začíná pondělím

on ...

týden začíná nedělí

tz

Časové pásmo  1.00E+00

Long(I32)

1 ....

lokální čas

2 ....

UTC

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