您现在的位置是:首页 > PLC技术 > PLC技术
IEC的日期/日历功能
来源:艾特贸易2017-06-05
简介使用日期 / 日历功能,可以处理数据类型为 DATE 、 TIME_OF_DAY 和 DATE_ AND_TIME 的变量。 如果在功能执行中有错误发生,部分日期 / 日历功能将二进制结果 BR 或 ENO 输出设置为 FALSE 。 1 .
使用日期/日历功能,可以处理数据类型为DATE、TIME_OF_DAY和DATE_ AND_TIME的变量。
如果在功能执行中有错误发生,部分日期/日历功能将二进制结果BR或ENO输出设置为FALSE。
1.FC 3 D_TOD_DT把DATE和TIME_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-01到DATE#2089-12-31的范围。
功能不报告错误。
2.FC 6 DT_DATE从DT中获取DATE
调用:date:=DT_DATE(date_an d_time);
功能FC 6 DT_DATE从数据格式DATE_AND_TIME (DT#)中获取数据格式DATE(D#)。DATE不超出DATE#1990-01-01到DATE#2089-12-31的范围。
功能不报告错误。
3.FC 7 DT_DAY从DT中获取一周的某天
调用:int:=DT_DAY(date_an d_time);
功能FC 7 DT_DAY从DATE_AND_TIME (DT#)格式中获取一周的某天。有效的一周的某天属于下列INT数据格式:
1 星期天
2 星期一
3 星期二
4 星期三
5 星期四
6 星期五
7 星期六
功能不报告错误。
4.FC 8 DT TOD从DT中获取TIM E_OF_DAY
调用:time_of_day:=DT_DAY(date_and_time);
功能FC 8 DT_TOD从数据格式DATE_AND_TIME (DT#)中获取TIME_OF_DAY(TOD#)的格式。
功能不报告错误。
5.FC 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_TIME(DT#)格式的时间相加,产生一个DATE_AND_TIME (DT#)格式的新的时间值。时间值(参数T)不超出DT#1990-01-01-00:00:00.000到DT#2089-12-31-59:59:59.999的范围。功能不进行输入校验。
如果相加的结果超出上述范围,结果将限制在相应的值,二进制结果BR或ENO输出将设为FALSE。
6.FC 35 SB_DT_TM从时间值减去一个时间周期
调用:date_and_time:=SB_DT_TM(T==date_and_time,D:=time);
功能FC 35 SB_DT_TM从DATE_AND_TIME(DT#)格式的时间中减去一个TIME, (T#)格式的时间周期,产生一个DATE_AND_TIME (DT#)格式的新的时间值。时间值(参数T)不超出DT#1990-01-01-00:00:00.000到DT#2089-12-31-59:59:59.999的范围。功能不进行输入校验。
如果相减的结果超出上述范围,结果将限制在相应的值,二进制结果BR或ENO输出将设为FALSE。
7.FC 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.000到DT#2089-12-31-59:59:59.999的范围。功能不进行输入校验。如果第一个时间值大于(晚于)第二个时间值,则结果是正的;如果第一个时间值小于(早于)第二个时间值,则结果是负的。
如果相减的结果超出了TIME的数值范围,结果将限制在相应的值,二进制结果BR或ENO输出将设为FALSE。
点击排行
PLC编程的基本规则
