Skip to main content

Constante: TIME, LTIME

Puedes usar TIME constantes para operar los módulos de temporizador estándar. La constante tiene un tamaño de 32 bits y una resolución en milisegundos.

Además, la constante de tiempo LTIME está disponible como base de tiempo para temporizadores de alta resolución. El LTIME constante tiene una dimensión de 64 bits y una resolución en nanosegundos.

Constante: TIME

Sintaxis

<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

El orden de las unidades de tiempo no debe cambiarse. Sin embargo, no es necesario especificar todas las unidades. Se permite especificar las unidades en mayúsculas.

Unidades de tiempo

  • D | d: Días

  • H | h: Horas

  • M | m: Minutos

  • s | s: Segundos

  • MS | ms: Milisegundos

ejemplo 185. Ejemplos

Corregir las constantes de tiempo de una asignación de 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

uso incorrecto

timIncorrect := t#5m68s;

Desbordamiento en una posición más baja

timIncorrect1 := 15ms;

marcador de tiempo T# desaparecido

timIncorrect2 := t#4ms13d;

Orden incorrecto de las unidades de tiempo



Constante: LTIME

Sintaxis

<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

Puedes usar las mismas unidades para LTIME constantes en cuanto a TIME constantes También puede especificar microsegundos y nanosegundos porque el tiempo especificado se calcula con una resolución de tiempo más alta. LTIME los literales se tratan internamente como tipo de datos LWORD y por lo tanto el valor resuelto en nanosegundos.

Unidades de tiempo adicionales

  • US | us: Microsegundos

  • NS | ns: Nanosegundos

ejemplo 186. Ejemplos de uso correcto de una asignación ST
PROGRAM PLC_PRG
VAR
        ltimLength := LTIME#1000d15h23m12s34ms2us44ns;
        ltimLength1 := LTIME#3445343m3424732874823ns;
END_VAR


Para más información, ver: Tipo de dato: TIME, LTIME y Constante: Fecha y Hora