广东湘恒智能科技有限公司
主营产品: 西门子变频器,西门子PLC\西门子模块、西门子触摸屏、西门子伺服电机、西门子工控机、西门子集成系统、西门子低压、西门子控制单元、西门子CPU,广东省西门子授权代理商,等
西门子博途:TOF:生成关断延迟/TOF:生成关断延时
发布时间:2024-11-22

图片

可以使用“ 生成关断延时”(Generate off-delay) 指令将延时所指定的时间 PT 复位输出 Q。当输入 IN 的逻辑运算结果 (RLO)  从“0”变为“1”(上升沿)时,置位 Q 输出。当输入 IN 处的信号状态变回“0”时,预设的时间段 PT 开始计时。在 PT 计时过程中,输出 Q 期间将保持置位。

超出所指定的时间段 PT 后,复位输出 Q。如果输入 IN 的信号状态在时间段 PT 计时结束之前变为“1”,则复位该时间。而输出 Q 处的信号状态则保持为“1”。  

可以在输出 ET 处查询当前时间值。该时间值从 T#0s 开始,达到 PT 时间值时结束。经过时间 PT 后,输出 ET 会保持为当前值,直至输入 IN 切换回“ 1” 。如果在经过时间 PT 前输入 IN切换回“1”,则输出 ET 会复位为值 T#0 。  

该指令与标准 TOF  指令的功能上存在以下几点不同: 

•   如果在时间 PT = 0 ms  时调用该指令,则输出 Q 和 ET 复位。 

•   如果在 PT < 0  ms 时调用该指令,则输出 Q 和 ET 复位。 

需要在 PT 大于 0  且输出 IN 出现另一个下降沿时,重新启动关断延时。 

图片

 

①  对于循环  n+1  中的首次调用,相对于  F  运行组开始的时间,该指令的调用时间比在循环  n  中的调用时间早  Δ1 ,这是因为在循环  n+1  中调用该指令之前跳过了  F  运行组部分安全程序。对于时间更新,该指令将考虑时间  T Base_1,而不是循环  n  中从调用开始实际已用完的  T 1   时间。 

②  在循环  n+1  中第二次调用该指令。此时,不考虑其它时间更新(增量为  Δ2 )。 

③  在循环  n+2  中调用该指令时,相对于  F  运行组开始的时间,该指令的调用时间比在循环  n  中的调用时间晚  Δ3 ,这是因为在循环  n+2  中调用该指令之前,更高优先级的中断已中断了  F  运行组。该指令将使用时间 T Base_1  + TBase_2,而不是循环  n  中从调用开始算起已实际经过的时间 T 3 。即使在循环  n+1  中没有调用该指令,也将发生以上状况。 

例如: 

图片

如果操作数“TagIn_1”的信号状态从“0”变为“1”,则将输出 Q 处操作数“TagOut” 的信号状态置位为“1”。  

如果操作数“TagIn_1”的信号状态变为“0”,则输入 PT 处所指定的时间 (200 ms) 开始计时。 

超出该时间时,将输出 Q 处操作数“TagOut” 重新置位为“0”。而在操作数“"F_DB_1".Tag_ET”中则为当前时间值。 


说明

可以使用“生成关断延时”(Generate off-delay) 指令将 Q 输出的复位延时设定的时间 PT。当输入 IN 的逻辑运算结果 (RLO) 从“0”变为“1”(信号上升沿)时,将置位 Q 输出。当输入 IN 处的信号状态变回“0”时,预设的时间 PT 开始计时。只要 PT 持续时间仍在计时,输出 Q 就保持置位。持续时间 PT 计时结束后,将复位输出 Q。如果输入 IN 的信号状态在持续时间 PT 计时结束之前变为“1”,则复位定时器。输出 Q 的信号状态仍将为“1”。

可以在 ET 输出查询当前的时间值。该定时器值从 T#0s 开始,在达到持续时间值 PT 后结束。当持续时间 PT 计时结束后,在输入 IN 变回“1”之前,输出 ET 会保持被设置为当前值的状态。在持续时间 PT 计时结束之前,如果输入 IN 的信号状态切换为“1”,则将 ET 输出复位为值 T#0s。

每次调用“关断延时”指令,必须将其分配给存储指令数据的 IEC 定时器。


说明

如果程序中未调用定时器(例如,由于跳过定时器而导致),则输出 ET 会在定时器计时结束后立即返回一个常数值。


对于 S7-1200 CPU

IEC 定时器是一个 IEC_TIMER 或 TOF_TIME 数据类型的结构,可如下声明:

声明为一个系统数据类型为 IEC_TIMER 的数据块(例如,“MyIEC_TIMER”)

声明为块中“Static”部分的 TOF_TIME 或 IEC_TIMER 类型的局部变量(例如,#MyIEC_TIMER)

对于 S7-1500 CPU

IEC 定时器是一个 IEC_TIMER、IEC_LTIMER、TOF_TIME 或 TOF_LTIME 数据类型的结构,可如下声明:

声明为一个系统数据类型为 IEC_TIMER 或 IEC_LTIMER 的数据块(例如,“MyIEC_TIMER”)

声明为块中“Static”部分的 TOF_TIME、TOF_LTIME、IEC_TIMER 或 IEC_LTIMER 类型的局部变量(例如,#MyIEC_TIMER)

在以下应用中,将更新该指令数据:

ET 或 Q 输出未互连时调用该指令。如果输出未互连,则不更新输出 ET 中的当前时间值。

访问 Q 或 ET 输出时。

执行“关断延时”指令之前,需要事先预设一个逻辑运算。该运算可以放置在程序段的中间或者末尾。

参数

下表列出了“关断延时”指令的参数:



参数

声明

数据类型

存储区

说明

S7-1200

S7-1500

S7-1200

S7-1500

IN

Input

BOOL

BOOL

I、Q、M、D、L 或常量

I、Q、M、D、L、P 或常量

启动输入

PT

Input

TIME

TIME、LTIME

I、Q、M、D、L 或常量

I、Q、M、D、L、P 或常量

关断延时的持续时间

PT 参数的值必须为正数。

Q

Output

BOOL

BOOL

I、Q、M、D、L

I、Q、M、D、L、P

超出时间 PT 时复位的输出。

ET

Output

TIME

TIME、LTIME

I、Q、M、D、L

I、Q、M、D、L、P

当前时间值


脉冲时序图

下图为“关断延时”指令的时序图:

图片

示例

以下示例说明了该指令的工作原理:

图片


展开全文
拨打电话 微信咨询 发送询价