日期和时间指令用于日历和时间计算。
- T_CONV将值在(日期和时间数据类型)以及(字节、字和双字大小数据类型)之间进行转换
- T_ADD将 Time 值与 DTL 值相加: (Time + Time = Time) 或 (DTL + Time = DTL)
- T_SUB将 Time 值与 DTL 值相减: (Time - Time = Time) 或 (DTL - Time = DTL)
- T_DIFF提供两个 DTL 值的差作为 Time 值: DTL - DTL = Time
- T_COMBINE将 Date 值和 Time_and_Date 值组合在一起生成 DTL 值
表格 9- 1 T_CONV (转换时间并提取)指令
表格 9- 2 T_CONV 转换的有效数据类型
数据类型 IN(或 OUT) | 数据类型 OUT(或 IN) |
TIME (毫秒) | DInt, Int, SInt, UDInt, UInt, USInt, TOD
仅 SCL: Byte, Word, Dword |
DATE (自 1990 年 1 月 1 日起的天数) | DInt, Int, SInt, UDInt, UInt, USInt, DTL
仅 SCL: Byte, Word, Dword |
TOD (自午夜起至 24:00:00.000 的毫秒) | DInt, Int, SInt, UDInt, UInt, USInt, TIME, DTL
仅 SCL: Byte, Word, Dword |
使用 T_CONV 将较大的数据大小转换为较小的数据大小
将含较多字节的较大数据类型转换为含较少字节的较小数据类型时,可以截取数据值。 如果发生该错误,会将 ENO 置 0。
转换为/转换自 DTL 数据类型
DTL(时间和日期长型)包括年、月、日和时间数据。 DTL 数据可转换为/转换自 DATE和 TOD 数据类型。
但是,使用 DATE 数据转换的 DTL 仅会影响年、月、日的值。 使用 TOD 数据转换的DTL 仅会影响时、分、秒的值。将 T_CONV 转换为 DTL 时,DTL 格式中未受影响的数据元素将保持不变。
表格 9- 3 T_ADD(时间相加)和 T_SUB(时间相减)指令
1 对于 LAD 和 FBD: 单击“???”并从下拉菜单中选择数据类型。
表格 9- 4 T_ADD 和 T_SUB 参数的数据类型
参数和类型 | 数据类型 | 说明 | |
IN11 | IN | DTL, Time | DTL 或 Time 值 |
IN2 | IN | Time | 要加上或减去的 Time 值 |
OUT | OUT | DTL, Time | DTL 或 Time 的和值或差值 |
1 从指令名称下方提供的下拉列表中选择 IN1 的数据类型。 所选的 IN1 数据类型同时也会设置参数 OUT的数据类型。
表格 9- 5 T_DIFF(时差)指令
表格 9- 6 T_DIFF 参数的数据类型
参数和类型 | 数据类型 | 说明 | |
IN1 | IN | DTL | DTL 值 |
IN2 | IN | DTL | 要减去的 DTL 值 |
OUT | OUT | Time | Time 差 |
条件代码: ENO = 1 表示未发生错误。 ENO = 0 且参数 OUT = 0 的错误:
- DTL 值无效
- Time 值无效
表格 9- 7 T_COMBINE (组合时间)指令
继续阅读

plc入门知识问答
所有PLC工程师都会关注的微信公众账号,只需输入您的问题,就会有答案
评论