西门子PLC 日期和时钟指令用法

2019年1月9日23:20:02 发表评论 463 阅读

日期和时间指令用于日历和时间计算。

  • 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 (组合时间)指令

weinxin
plc入门知识问答
每一个PLC工程师都应该关注的微信公众账号,只需输入您的问题,就会有答案

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: