您现在的位置是:首页 > PLC技术 > PLC技术

IEC的日期/日历功能

来源:艾特贸易2017-06-05

简介使用日期 / 日历功能,可以处理数据类型为 DATE 、 TIME_OF_DAY 和 DATE_ AND_TIME 的变量。 如果在功能执行中有错误发生,部分日期 / 日历功能将二进制结果 BR 或 ENO 输出设置为 FALSE 。 1 .

    使用日期/日历功能,可以处理数据类型为DATETIME_OF_DAYDATE_ AND_TIME的变量。

    如果在功能执行中有错误发生,部分日期/日历功能将二进制结果BRENO输出设置为FALSE

    1FC 3 D_TOD_DTDATETIME_OF_DAY合并到DT

    调用:date_and_time=D_TOD_DT(IN1:=date;IN2:=time_of_day);

    功能FC 3 D_TOD_DT把数据格式DT(D#)TIME_OF_DAY (TOD#)进行合并,并将其转换为DATE_AND_TIME (DT#)的格式。输入值IN1不能超出DATE#1990-01-01DATE#2089-12-31的范围。

    功能不报告错误。

    2FC 6 DT_DATEDT中获取DATE

    调用:date:=DT_DATE(date_an d_time);

    功能FC 6 DT_DATE从数据格式DATE_AND_TIME (DT#)中获取数据格式DATED#)。DATE不超出DATE#1990-01-01DATE#2089-12-31的范围。

    功能不报告错误。

    3FC 7 DT_DAYDT中获取一周的某天

    调用:int=DT_DAY(date_an d_time);

    功能FC 7 DT_DAYDATE_AND_TIME (DT#)格式中获取一周的某天。有效的一周的某天属于下列INT数据格式:

   1  星期天

   2  星期一

   3  星期二

   4  星期三

   5  星期四

   6  星期五

   7  星期六

    功能不报告错误。

    4FC 8 DT TODDT中获取TIM E_OF_DAY

    调用:time_of_day:=DT_DAY(date_and_time);

    功能FC 8 DT_TOD从数据格式DATE_AND_TIME (DT#)中获取TIME_OF_DAY(TOD#)的格式。

    功能不报告错误。

    5FC 1 AD_DT_TM给时间值加上一个时间周期

    调用;date_and_time:=AD_DT_TM(T:=date_and_time,D:=time);

    功能FC 1 AD_DT_TM把一个TIME (T#)格式的时间周期和一个DATE_AND_TIMEDT#)格式的时间相加,产生一个DATE_AND_TIME (DT#)格式的新的时间值。时间值(参数T)不超出DT#1990-01-01-00:00:00.000DT#2089-12-31-59:59:59.999的范围。功能不进行输入校验。

    如果相加的结果超出上述范围,结果将限制在相应的值,二进制结果BRENO输出将设为FALSE

    6FC 35 SB_DT_TM从时间值减去一个时间周期

    调用:date_and_time:=SB_DT_TM(T==date_and_time,D:=time);

    功能FC 35 SB_DT_TMDATE_AND_TIMEDT#)格式的时间中减去一个TIME, (T#)格式的时间周期,产生一个DATE_AND_TIME (DT#)格式的新的时间值。时间值(参数T)不超出DT#1990-01-01-00:00:00.000DT#2089-12-31-59:59:59.999的范围。功能不进行输入校验。

    如果相减的结果超出上述范围,结果将限制在相应的值,二进制结果BRENO输出将设为FALSE

    7FC 34 SB_DT_DT两个时间值相减

    调用:time:=SB_DT_DT(T1:=date_and_time,T2=date_and_time);

    功能FC 34 SB_DT_DT使两个DATE_AND_TIME (DT#)格式的时间值相减,产生一个TIME (T#)格式的时间值。时间值不超出DT#1990-01-01-00:00:00.000DT#2089-12-31-59:59:59.999的范围。功能不进行输入校验。如果第一个时间值大于(晚于)第二个时间值,则结果是正的;如果第一个时间值小于(早于)第二个时间值,则结果是负的。

    如果相减的结果超出了TIME的数值范围,结果将限制在相应的值,二进制结果BRENO输出将设为FALSE