TIME_TO_STRING

TIME至STRING

函数TIME_TO_STRING将数据类型TIME的值转换为数据类型STRING[20]的值。根据IEC-1131,显示的结果字符串带有短时前缀,不带下划线。结果字符串范围的可能值从'T#000d00h00m00s000ms'到'T#248d13h13m56s470ms'。

参数

输入

未定义的输入 (TIME)
输入数据类型

输出

未定义的输出 (STRING)
转换结果

标注

当通过FP-eFP0等小型PLC使用数据类型STRING时,确保结果字符串的长度等于或大于源字符串的长度。

示例

POU头

所有用于编程此函数的输入和输出变量已在POU头中声明。 所有编程语言使用相同的POU头。

	VAR
		input_value: TIME:=T#0s;
		result_string: STRING;

数据类型TIME的输入变量input_value被值T#1h30m45s初始化。result_string的输出变量为数据类型STRING[20]。其最多可以存储20个字符。可以将常量直接写入本体中函数的输入触点,代替使用变量input_value

POU本体

数据类型TIMEinput_value转换为STRING[20]。转换值被写入result_string。当变量input_value = T#1h30m45s时,result_string显示'T#000d01h30m45s000ms'。

LD本体

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,TIME_TO_STRING!,Instance,10,1,19,3,,?D?C);
B(B_VARIN,,input_value,8,1,10,3,);
B(B_VAROUT,,result_string,19,1,21,3,);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

ST本体

result_string:=TIME_TO_STRING(input_value);

IL本体

示例

POU头

此例显示如何从数据类型TIME的输入值创建格式为'xxhxxmxxs'的字符串STRING[9](仅输出小时、分钟和秒)。所有用于编程此函数的输入和输出变量已在POU头中声明。所有编程语言使用相同的POU头。

	VAR
		input_value: TIME:=T#1h30m45s;
			(*example value*)
		result_string: STRING[9]:='';
			(*result: here '01h30m45s'*)
	END_VAR

在此例中,数据类型TIME的输入变量input_value和数据类型STRING[9]的输出变量result_string均被声明。

POU本体

当执行有问题的操作时,标准函数MID被添附到函数TIME_TO_STRINGMID在字符串中从位置P(INT值)创建一个L(INT值)字符的中间部分。

在示例中,INT常量9输入到MIDL输入,确定结果字符串的长度。P输入的INT常量7确定中间部分开始的位置。从变量input_value = T#1h30m45s中,从数据类型转换得出STRING 'T#000d01h30m45s000ms'。MID函数切断位置7的STRING并得出result_string '01h30m45s'。

LD本体

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 6 ;
        NETWORK_BODY
B(B_F,TIME_TO_STRING!,Instance,7,2,16,4,,?D?C);
B(B_VARIN,,input_value,5,2,7,4,);
B(B_VAROUT,,result_string,24,2,26,4,);
B(B_F,MID!,Instance,19,1,24,6,,?DIN?DL?DP?C);
B(B_VARIN,,9,17,3,19,5,);
B(B_VARIN,,7,17,4,19,6,);
L(1,0,1,6);
L(16,3,19,3);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

IL本体

最后更新日期: 此页面上的反馈松下热线