Skip to main content

Costante: TIME, LTIME

Puoi usare TIME costanti per azionare i moduli timer standard. La costante ha una dimensione di 32 bit e una risoluzione in millisecondi.

Inoltre, la costante di tempo LTIME è disponibile come base temporale per i timer ad alta risoluzione. Il LTIME costante ha una dimensione di 64 bit e una risoluzione in nanosecondi.

Costante: TIME

Sintassi

<time keyword> # <length of time>

<time keyword> : TIME | time | T | t
<length of time> : ( <number of days>d )? ( <number of hours>h )? ( <number of minutes>m )? ( <number of seconds>s )? (<number of milleseconds>ms)? // ( ...)? Optional

L'ordine delle unità di tempo non deve essere modificato. Tuttavia, non è necessario specificare tutte le unità. È consentito specificare le unità in maiuscolo.

Unità di tempo

  • D | d: Giorni

  • H | h: Ore

  • M | m: Minuti

  • s | s: Secondi

  • MS | ms: Millisecondi

Esempio 185. Esempi

Costanti di tempo corrette di un'assegnazione ST

VAR
        timLength : TIME := T#14ms;
        timLength1 : TIME := T#100s12ms; // Overflow in the highest unit is allowed.
        timLength2 : TIME := T#12h34m15s;
        timCompare : TIME;
        xIsOK: BOOL;

        timLongest := T#49D17H2M47S295MS; // 4294967295
END_VAR

IF timLength < T#15MS THEN
        IF timCompare < timLength1 THEN
                xIsOK := TRUE;
        END_IF;
END_IF

Utilizzo scorretto

timIncorrect := t#5m68s;

Troppo pieno in una posizione più bassa

timIncorrect1 := 15ms;

Indicatore del tempo T# mancante

timIncorrect2 := t#4ms13d;

Ordine errato delle unità di tempo



Costante: LTIME

Sintassi

<long time keyword> # <length of high resolution time>

<long time keyword> : LTIME | ltime
<length of high resolution time> : <length of time> ( <number of microseconds>us )?  ( <number of nanoseconds>ns )? // ( ...)? Optional

Puoi usare le stesse unità per LTIME costanti come per TIME costanti. Puoi anche specificare microsecondi e nanosecondi perché il tempo specificato viene calcolato con una risoluzione temporale maggiore. LTIME i valori letterali vengono trattati internamente come tipo di dati LWORD e quindi il valore risolto in nanosecondi.

Unità di tempo aggiuntive

  • US | us: Microsecondi

  • NS | ns: Nanosecondi

Esempio 186. Esempi di utilizzo corretto di un compito ST
PROGRAM PLC_PRG
VAR
        ltimLength := LTIME#1000d15h23m12s34ms2us44ns;
        ltimLength1 := LTIME#3445343m3424732874823ns;
END_VAR


Per ulteriori informazioni, vedere: Tipi di dati temporali e Costante: Data e Ora