【工控技术】如何在 S7-1200 /S7-1500 PLC 中实现一个定时执行事件的功能?

通过“clockalarm”功能块,可以实现事件单次执行,或每年,每月,每日,每小时,每分钟以及每秒执行。

描述
通过“clockalarm”功能块的输入参数定义事件的开始时间,禁用不需要的时间单位(例如,年,月,日,…)等下表中列出的参数。功能块会将配置的参数与系统时间进行比较,当定义的时间与系统时间相同时,“clockalarm”功能块输出管脚输出True信号。

例子
一个每天的事件用"ClockAlarm" 定义为本地时间14:50执行。 

详细设置如下:

1、设置输入参数“小时 使能”和“分 使能”为 真 信号。具体输入参数“小时”和“分钟”的数值。

2、设定 "小时" 为14 , "分钟" 为50。

3、不用的时间参数("年", "月", "日", "秒" 和 "星期")使能关闭,(默认初始值是使能打开)。

4、功能输出值"Ret_Val" 分配给变量"WakeUp" (Q0.0).

5、保存编译块并下载到PLC。

 

数字量"Ret_Val" 被设定为每天本地时间14:50时被程序调用执行.图1 显示了参数设置情况。

图.1

 

注意
 "ClockAlarm" 功能块参数也可以通过DB和面板设置。

“clockalarm”功能是SCL编程语言创建的,包含德语和英语的注释。下表描述了块参数。
  

参数

数据类型

描述

输入参数
UInt 1970 到 2554
年 使能 Bool "1": 年 使能; "0": 关闭 (无监控)
USInt 1到12
月使能 Bool 1": 月使能, "0": 关闭(无监控)
USInt 0 到 31
日 使能 Bool "1": 日 使能, "0": 关闭(无监控)
小时 USInt 0到23
小时 使能 Bool "1": 小时 使能, "0": 关闭(无监控)

USInt 0到59
分 使能 Bool "1": 分 使能, "0": 关闭(无监控)
USInt 0到59
秒 使能 Bool "1": 秒 使能, "0": 关闭(无监控)
星期 USInt 1 到 7; "-1": 星期数; "1": 代表星期日
星期使能 Bool "1": 星期使能, "0": 关闭(无监控)
本地时间 Bool "1":本地时间; "0": 系统时间
返回-参数
闹钟 Bool 当前日期时间与设定值相同