Skip to main content

时间转换

运算符转换时间值 (TIME 或者 LIME) 转换为指定的数据类型并返回此类型转换的值。

调用语法<TIME_TO<目标类型> ( <操作数> )<LTIME_TO<目标类型> ( <操作数> )

操作数

数据类型

描述

变量或文字

TIMELTIME

数据类型:TIME、LTIME

15. 转换运算符:TIME/LTIME_TO_<目标类型>

操作员

操作员

例子

返回值

描述

TIME_TO___UXINT

LTIME_TO___UXINT

__UXINT、__XINT、__XWORD

TIME_TO___XINT

LTIME_TO___XINT

__UXINT、__XINT、__XWORD

TIME_TO___XWORD

LTIME_TO___XWORD

__UXINT、__XINT、__XWORD

TIME_TO_BIT

LTIME_TO_BIT

BIT

TIME_TO_BOOL

LTIME_TO_BOOL

TIME_TO_BOOL(T#0MS);
TIME_TO_BOOL(T#59ms);
LTIME_TO_BOOL(T#0MS);
LTIME_TO_BOOL(T#59ms);

FALSE

TRUE

运营商返回 FALSE 当且仅当操作数的值可以解释为“0”。

BOOL

TIME_TO_BYTE

LTIME_TO_BYTE

Integer

TIME_TO_DATE

LTIME_TO_DATE

LTIME_TO_DATE(LTIME#2us1ns);

D#1970-1-1

语法:D#yyyy-MM-dd

数据类型:DATE

TIME_TO_DINT

LTIME_TO_DINT

Integer

TIME_TO_DT

LTIME_TO_DT

TIME_TO_DT(T#5d4h3m2s1ms);
LTIME_TO_DT(LTIME#2us1ns);

D#1970-1-1-0:0:0.000000012

语法:DT#yyyy-MM-dd-hh:mm:ss

数据类型:DATE

TIME_TO_DWORD

LTIME_TO_DWORD

Integer

TIME_TO_INT

LTIME_TO_INT

LTIME_TO_INT(LTIME#2us1ns);

0

Integer

TIME_TO_LDATE

LTIME_TO_LDATE

语法:LDATE#yyyy-MM-dd

数据类型:DATE

TIME_TO_LDT

LTIME_TO_LDT

句法: LDT#yyyy-MM-dd-hh:mm:ss.sss

数据类型:DATE

TIME_TO_LINT

LTIME_TO_LINT

Integer

TIME_TO_LREAL

LTIME_TO_LREAL

TIME_TO_LREAL(T#5d4h3m2s1ms);

x.x

TIME_TO_LTIME

-

TIME_TO_LTOD

LTIME_TO_LTOD

句法: LTOD#hh:mm:ss.sssssssss

数据类型:DATE

TIME_TO_LWORD

LTIME_TO_LWORD

TIME_TO_LWORD(T#5d4h3m2s1ms);
LTIME_TO_LWORD(LTIME#2us1ns);

0

Integer

TIME_TO_REAL

LTIME_TO_REAL

TIME_TO_REAL(T#1d2h3m4s5ms);
LTIME_TO_REAL(LTIME#2us1ns);

9.28E+07

0.0

REAL, LREAL

TIME_TO_SINT

LTIME_TO_SINT

Integer

TIME_TO_STRING

LTIME_TO_STRING

TIME_TO_STRING(T#0MS);

'T#0MS'

重要提示:输入的值作为字符串左对齐,如果太长会被截断。因此,声明返回变量时应足够长,以便字符串有足够的空间而无需进行任何操作。

STRING

-

LTIME_TO_TIME

LTIME_TO_TIME(LTIME#2us1ns);

T#0ms

数据类型:TIME、LTIME

TIME_TO_TOD

LTIME_TO_TOD

TIME_TO_TOD(T#1d2h3m4s5ms);
LTIME_TO_TOD(LTIME#2us1ns);

TOD#2:3:4.005

TOD#0:0:0

数据类型:DATE

TIME_TO_UDINT

LTIME_TO_UDINT

Integer

TIME_TO_UINT

LTIME_TO_UINT

Integer

TIME_TO_ULINT

LTIME_TO_ULINT

TIME_TO_ULINT(T#1d2h3m4s5ms);

93784005

Integer

TIME_TO_USINT

LTIME_TO_USINT

Integer

TIME_TO_WORD

LTIME_TO_WORD

Integer

TIME_TO_WSTRING

LTIME_TO_WSTRING

TIME_TO_WSTRING(T#1d2h3m4s5ms);
LTIME_TO_WSTRING(T#0US);

"T1d2h3m4s5ms"

"T#0US"

输入的值作为字符串左对齐,如果太长会被截断。因此,声明返回变量时应足够长,以使字符串有足够的空间而无需进行任何操作。

WSTRING



174. ST实现语言

ST 中的声明

FUNCTION_BLOCK FB_ConvertTimeAndDate
VAR
        ltReturn_1: LTIME;
        lwReturn_2: LWORD;
        rReturn_3: REAL;
        strReturn_4: STRING;
        timReturn_5: TIME;
        todReturn_6: TIME_OF_DAY;
        uliReurn_7: ULINT;
        wstrReturn_8: WSTRING;
        wstrReturn_80: WSTRING;
        uliReurn_70: ULINT;
        todReturn_60: TIME_OF_DAY;
        timReturn_50: TIME;
        strReturn_40: STRING;
        rReturn_30: REAL;
        lwReturn_20: LWORD;
        ltReturn_10: LTIME;
        ltReturn_11: LTIME;
        lwReturn_21: LWORD;
        rReturn_31: REAL;
        strReturn_41: STRING;
        timReturn_51: TIME;
        todRedurn_61: TIME_OF_DAY;
        uliReurn_71: ULINT;
        wstrReturn_81: WSTRING;
        ltReturn_12: LTIME;
        xReturn_9: BOOL;
        xReturn_90: BOOL;
        xReturn_91: BOOL;
        xReturn_92: BOOL;
        dateReturn_6: DATE;
        timReturn_60: TIME;
        wReturn_61: WORD;
        todReturn_61: TIME_OF_DAY;
END_VAR

在 ST 中的实现

FUNCTION_BLOCK FB_ConvertTimeAndDate
VAR_INPUT
END_VAR
VAR_OUTPUT
END_VAR
VAR
        ltReturn_1: LTIME;
        lwReturn_2: LWORD;
        rReturn_3: REAL;
        strReturn_4: STRING;
        timReturn_5: TIME;
        todReturn_6: TIME_OF_DAY;
        uliReurn_7: ULINT;
        wstrReturn_8: WSTRING;
        wstrReturn_80: WSTRING;
        uliReurn_70: ULINT;
        todReturn_60: TIME_OF_DAY;
        timReturn_50: TIME;
        strReturn_40: STRING;
        rReturn_30: REAL;
        lwReturn_20: LWORD;
        ltReturn_10: LTIME;
        ltReturn_11: LTIME;
        lwReturn_21: LWORD;
        rReturn_31: REAL;
        strReturn_41: STRING;
        timReturn_51: TIME;
        todRedurn_61: TIME_OF_DAY;
        uliReurn_71: ULINT;
        wstrReturn_81: WSTRING;
        ltReturn_12: LTIME;
        xReturn_9: BOOL;
        xReturn_90: BOOL;
        xReturn_91: BOOL;
        xReturn_92: BOOL;
        dateReturn_6: DATE;
        timReturn_60: TIME;
        wReturn_61: WORD;
        todReturn_61: TIME_OF_DAY;
END_VAR

ltReturn_1 := DT_TO_LTIME(DT#2019-9-9-23:59:59);
ltReturn_10 := DT_TO_LTIME(DT#1970-1-1-0:0:0);
ltReturn_11 := DT_TO_LTIME(DT#1970-1-2-0:0:1);
ltReturn_12 := DT_TO_LTIME(DT#1970-1-3-12:30:30);

lwReturn_2 := TIME_TO_LWORD(T#5D4H2M3S2MS);
lwReturn_20 := TIME_TO_LWORD(T#0D0H0M0S0MS);

rReturn_3 := TIME_TO_REAL(T#5D4H2M3S2MS);
rReturn_30 := TIME_TO_REAL(T#0D0H0M0S0MS);

strREturn_4 := TIME_TO_STRING(T#5D4H2M3S2MS);
strREturn_40 := TIME_TO_STRING(T#0D0H0M0S0MS);

timReturn_5 := TOD_TO_TIME(TOD#23:59:59.999);
timReturn_50 := TOD_TO_TIME(TOD#0:0:0.000);
timReturn_51 := TOD_TO_TIME(TOD#0:0:0.001);

dateReturn_6 := TOD_TO_DATE(TOD#23:59:59.999);
timReturn_60 := TOD_TO_TIME(TOD#0:0:0.000);
wReturn_61 := TOD_TO_WORD(TOD#0:0:0.001);

uliReurn_7 := DATE_TO_ULINT(D#2019-9-9);
uliReurn_70 := DATE_TO_ULINT(D#1970-1-1);
uliReurn_71 := DATE_TO_ULINT(D#1970-1-2);

wstrReturn_8 := DATE_TO_WSTRING(D#2019-9-9);
wstrReturn_80 := DATE_TO_WSTRING(D#1970-1-1);
wstrReturn_81 := DATE_TO_WSTRING(D#1970-1-2);

xReturn_9 := DATE_TO_BOOL(D#2019-9-9);
xReturn_90 := DATE_TO_BOOL(D#1970-1-1);
xReturn_91 := DATE_TO_BOOL(D#1970-1-2);
xReturn_92 := DATE_TO_BOOL(D#1970-1-3);
_cds_img_conversions_from_time.png
_cds_img_conversions_from_long_time.png


175. FBD 实现语言
_cds_img_fbd_convert_time.png