Skip to main content

Conversión: DATE, DT, TOD, LDATE, LDT, LTOD

Los operadores convierten un valor de fecha y hora en el tipo de datos especificado y devuelven un valor convertido al tipo.

Los tipos de datos DATE y DT utilizan el mismo formato de memoria internamente y se almacenan como DWORD. La resolución para DATE es 1 día. La resolución para DT es 1 segundo. Ambos comienzan el 1 de enero de 1970. TOD se almacena como DWORD con una resolución de 1 milisegundo.

Las palabras clave DT y TOD son grafías alternativas para los tipos de datos DATE_AND_TIME y TIME_OF_DAYSin embargo, estos últimos no están asignados como un comando de conversión de tipo.

Los tipos de datos LDATE y LDT y LTOD Utilice el formato de memoria de 64 bits LWORD internamente.

Sintaxis de llamada: FECHA/DT/TOD_TO_< tipo de destino> ( <operando> )

Sintaxis de llamada: LDATE/LDT/LTOD_TO_< tipo de destino> ( <operando> )

Operando

Tipo de datos

Descripción

Variable o literal

DATE | DATE_AND_TIME | DT | TIME_OF_DAY | TOD

LDATE | LDATE_AND_TIME | LDT | LTIME_OF_DAY | LTOD

Tipo de dato: DATE

tabla 16. Operadores: DATE/DT/TOD_TO_<tipo de destino>

FECHA_HASTA_<tipo>

DT_TO_<tipo>

TOD_TO_<tipo>

Ejemplo

Valor de retorno

Descripción

DATE_TO___UXINT

DT_TO___UXINT

TOD_TO___XINT

__UXINT, __XINT, __XWORD

DATE_TO___XINT

DT_TO___XINT

TOD_TO___XINT

__UXINT, __XINT, __XWORD

DATE_TO___XWORD

DT_TO___XWORD

TOD_TO___XWORD

__UXINT, __XINT, __XWORD

DATE_TO_BIT

DT_TO_BIT

TOD_TO_BIT

BIT

DATE_TO_BOOL

DT_TO_BOOL

TOD_TO_BOOL

DATE_TO_BOOL(D#1970-1-1)
DATE_TO_BOOL(D#2019-9-1)
DT_TO_BOOL(DT#1970-1-1-0:0:0)
DT_TO_BOOL(DT#2019-9-1-12:0:0)
TOD_TO_BOOL(TOD#0:0:0)
TOD_TO_BOOL(TOD#12:0:0)

FALSE

TRUE

FALSE

TRUE

FALSE

TRUE

Si y solo si el valor del operando se puede interpretar como "0", entonces el operador devuelve un FALSE.

BOOL

DATE_TO_BYTE

DT_TO_BYTE

DTOD_TO_BYTE

Entero

-

DT_TO_DATE

TOD_TO_DATE

Resolución en segundos (aunque solo se muestra el día)

DATE_TO_DINT

DT_TO_DINT

TOD_TO_DINT

DATE_TO_DINT(D#1970-1-1)
DATE_TO_DINT(D#1970-1-2)
DATE_TO_DINT(D#2019-9-1)
DT_TO_DINT(DT#1970-1-1-0:0:0)
DT_TO_DINT(DT#1970-1-1-0:0:1)
DT_TO_DINT(DT#2019-9-1-12:0:0.0)
TOD_TO_DINT(TOD#0:0:0)
TOD_TO_DINT(TOD#12:0:0)

0

86400

1567339200

0

1

1567339200

0

43200000

Entero

DATE_TO_DT

-

TOD_TO_DT

Tipo de dato: DATE

DATE_TO_DWORD

DT_TO_DWORD

TOD_TO_DWORD

Entero

DATE_TO_INT

DT_TO_INT

TOD_TO_INT

Entero

DATE_TO_LDATE

DT_TO_LDATE

TOD_TO_LDATE

Tipo de dato: DATE

DATE_TO_LDT

DT_TO_LDT

TOD_TO_LDT

Tipo de dato: DATE

DATE_TO_LINT

DT_TO_LINT

TOD_TO_LINT

Entero

DATE_TO_LREAL

DT_TO_LREAL

TOD_TO_LREAL

REAL, REAL

DATE_TO_LTIME

DT_TO_LTIME

TOD_TO_LTIME

Tipo de dato: DATE

DATE_TO_LTOD

DT_TO_LTOD

TOD_TO_LTOD

Tipo de dato: DATE

DATE_TO_LWORD

DT_TO_LWORD

TOD_TO_LWORD

Entero

DATE_TO_REAL

DT_TO_REAL

TOD_TO_REAL

REAL, REAL

DATE_TO_SINT

DT_TO_SINT

TOD_TO_SINT

Entero

DATE_TO_STRING

DT_TO_STRING

TOD_TO_STRING

DATE_TO_STRING(D#1970-1-1)
DT_TO_STRING(D#1970-1-1-0:0:1)
TOD_TO_STRING(12:0:1)

'D#1970-1-1'

'D#1970-1-1-0:0:1'

'TOD#12:0:1'

STRING

DATE_TO_TIME

DT_TO_TIME

TOD_TO_TIME

Tipo de dato: DATE

DATE_TO_TOD

DT_TO_TOD

-

Tipo de dato: DATE

DATE_TO_UDINT

DT_TO_UDINT

TOD_TO_UDINT

Entero

DATE_TO_UINT

DT_TO_UINT

TOD_TO_UINT

Entero

DATE_TO_ULINT

DT_TO_ULINT

TOD_TO_ULINT

Entero

DATE_TO_USINT

DT_TO_USINT

TODE_TO_USINT

Entero

DATE_TO_WORD

DT_TO_WORD

TOD_TO_WORD

Entero

DATE_TO_WSTRING

DT_TO_WSTRING

TOD_TO_WSTRING

DATE_TO_WSTRING(D#1970-1-1)
DT_TO_WSTRING(D#1970-1-1-0:0:1)
TOD_TO_WSTRING(12:0:1)

"D#1970-1-1"

"D#1970-1-1-0:0:1"

"TOD#12:0:0"

WSTRING



tabla 17. Operadores: LDATE/LDT/LTOD_TO_<tipo de destino>

LDATE_TO_<tipo>

LDT_TO_<tipo>

LTOD_TO_<tipo>

Ejemplo

Valor de retorno

Descripción

LDATE_TO___UXINT

LDT_TO___UXINT

LTOD_TO___XINT

__UXINT, __XINT, __XWORD

LDATE_TO___XINT

LDT_TO___XINT

LTOD_TO___XINT

__UXINT, __XINT, __XWORD

LDATE_TO___XWORD

LDT_TO___XWORD

LTOD_TO___XWORD

__UXINT, __XINT, __XWORD

LDATE_TO_BIT

LDT_TO_BIT

LTOD_TO_BIT

BIT

LDATE_TO_BOOL

LDT_TO_BOOL

LTOD_TO_BOOL

BOOL

LDATE_TO_BYTE

LDT_TO_BYTE

LTOD_TO_BYTE

Entero

LDATE_TO_DATE

LDT_TO_DATE

LTOD_TO_DATE

Segundos (aunque sólo se muestra el día)

Tipo de dato: DATE

LDATE_TO_DINT

LDT_TO_DINT

LTOD_TO_DINT

Entero

LDATE_TO_DT

LDT_TO_DT

LTOD_TO_DT

Tipo de dato: DATE

LDATE_TO_DWORD

LDT_TO_DWORD

LTOD_TO_DWORD

Entero

LDATE_TO_INT

LDT_TO_INT

LTOD_TO_INT

Entero

-

LDT_TO_LDATE

LTOD_TO_LDATE

Nanosegundos (aunque sólo se muestra el día)

Tipo de dato: DATE

LDATE_TO_LDT

-

LTOD_TO_LDT

Tipo de dato: DATE

LDATE_TO_LINT

LDT_TO_LINT

LTOD_TO_LINT

Entero

LDATE_TO_LREAL

LDT_TO_LREAL

LTOD_TO_LREAL

REAL, REAL

LDATE_TO_LTIME

LDT_TO_LTIME

LTOD_TO_LTIME

Tipo de dato: DATE

LDATE_TO_LTOD

LDT_TO_LTOD

-

Tipo de dato: DATE

LDATE_TO_LWORD

LDT_TO_LWORD

LTOD_TO_LWORD

Entero

LDATE_TO_REAL

LDT_TO_REAL

LTOD_TO_REAL

REAL, REAL

LDATE_TO_SINT

LDT_TO_SINT

LTOD_TO_SINT

Entero

LDATE_TO_STRING

LDT_TO_STRING

LTOD_TO_STRING

STRING

LDATE_TO_TIME

LDT_TO_TIME

LTOD_TO_TIME

Tipo de dato: DATE

LDATE_TO_TOD

LDT_TO_TOD

LTOD_TO_TOD

Tipo de dato: DATE

LDATE_TO_UDINT

LDT_TO_UDINT

LTOD_TO_UDINT

Entero

LDATE_TO_UINT

LDT_TO_UINT

LTOD_TO_UINT

Entero

LDATE_TO_ULINT

LDT_TO_ULINT

LTOD_TO_ULINT

Entero

LDATE_TO_USINT

LDT_TO_USINT

LTOD_TO_USINT

Entero

LDATE_TO_WORD

LDT_TO_WORD

LTOD_TO_WORD

Entero

LDATE_TO_WSTRING

LDT_TO_WSTRING

LTOD_TO_WSTRING

WSTRING



Convertir a cadena

Los operandos del tipo DATE, DATE_AND_TIME, TIME_OF_DAY, DT, o TOD, que se pasan a un operador para una conversión de datos y tiempo, se convierten a su sintaxis constante (sintaxis literal). La cadena generada contiene la palabra clave D#, DT# o TOD# y luego el tamaño con su unidad de datos y tiempo, como lo indica la norma IEC 61131-3.

ejemplo 176. Lenguaje de implementación FBD

El controlador está en modo en línea para monitorear las variables.

_cds_img_convert_dates.png