1. 西门子plc首页
  2. 编程入门

在STEP7(TIA Portal)中如何输入读取和编辑CPU模块的date and time变量?

描述 为了输入或读取 CPU 时钟的日期和时间,S7-300/400  需要数据类型 “DT” (DATA_AND_TIME) ,S7-1200/1500  需要数据类型 “DTL” 。

为了输入或读取 CPU 时钟的日期和时间,S7-300/400  需要数据类型 “DT” (DATA_AND_TIME) ,S7-1200/1500  需要数据类型 “DTL” 。

下表给出了在 S7-300/400 和 S7-1200 /1500 中输入和输出日期和时间数据所需要的指令。这些指令参见 STEP 7 (TIA Portal) 中的”高级指令 > 日期和时间”

Instructions Description
WR_SYS_T Set time
RD_SYS_T Read time
T_CONV Convert and extract times
T_COMBINE Combine times

在 S7-300/400 中使用 “T_CONV” 指令从 “DT” 中提取日期、星期和时间数据。该指令需要调用三次。在参数 “IN” 中填写 “DT” 类型的变量并在参数 “OUT” 中分别填写定义为 “Date”, “Int” 和 “TOD” 类型的变量。

1.   从 “DT”  转换到 “Date” (日期)

2.   从 “DT”  转换到 “Int”(星期)

3.   从 “DT”  转换到 “TOD” (当前时间)

使用 S7-1200/1500  可以直接符号访问 DTL 变量结构的组件,但它无需访问间接地址或编辑绝对地址。建议将数据保存到全局数据块。在这个数据块中使用“DTL” 声明变量,输入之后点击左边的箭头符号展开这个变量。在这个 DTL 数据类型下将显示其结构组成(YEAR, MONTH, DAY, … )及其各自的数据类型。

图. 01
图. 01

下载的附件中包含 S7-300/S7-400 和 S7-1200/S7-1500 的编程实例库。

S7-300/S7-400 的块

在功能 “ReadWriteTime” [FC20] 中,网络段1调用 “WR_SYS_T” 指令设置 CPU 时钟的日期和时间。在此之前,调用 “T_COMBINE” 将 “Date” 和 “Time_of_Day” 格式的数据组合为 “Date_and_Time” 的格式。 网络2调用 “RD_SYS_T” 读取 CPU 时钟的日期和时间。 调用 “T_CONV” 指令从 “DT” 格式中提取数据类型 “Date”, “Int” 和 “TOD”。 在 OB 块 “ReadWriteOB” 中调用 “ReadWriteTime” 功能,并将 DB 块 “TimeDB” 中的变量填写到该功能的管脚上。

图. 02
图. 02

S7-1200/S7-1500 的块

The function “SetTimeOn” [FC2] contains the two instructions “RD_SYS_T” and “WR_SYS_T” for reading out and setting the clock in the CPU. The function is called in the OB “SetTime” and parameterized with the variables of the data block “DB”.功能块 “SetTimeOn” [FC2] 使用两个指令 “RD_SYS_T” 和 “WR_SYS_T” 对 CPU 的时钟进行读写。在 OB 块 “SetTime” 调用该功能块,并将数据块 “DB” 的变量填写到该功能块的管脚。

在STEP7(TIA Portal)中如何输入读取和编辑CPU模块的date and time变量?
图. 03

在下面的 SCL 编程中,接通时间被编程为 5 个工作日。从周一到周五,变量“Access_On” 在上午9点到上午9点一刻接收到“True” 信号,这一周的其他时间段接收到的是“False”信号。

在STEP7(TIA Portal)中如何输入读取和编辑CPU模块的date and time变量?
图. 04

 

本文来自投稿,不代表西门子plc立场,如若转载,请注明出处:https://siemensplc.com/biancheng/23155.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

联系我们

在线咨询:点击这里给我发消息

邮件:344133793@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code