[西门子] 西门子PLC故障安全功能-ESTOP1

[复制链接]
查看284 | 回复0 | 2024-1-9 09:49:17 | 显示全部楼层 |阅读模式
西门子的故障安全模块是在工业控制系统中广泛应用的一种安全装置,其主要目的是保证设备的运行安全和可靠性。

以下将从三个方面介绍西门子安全功能当中的 ESTOP1:

指令介绍;使用方法;拓展思考;

1

指令介绍

为符合 IEC 60204 或 IEC 61800-5-2 的要求,该指令支持实现带 STOP 类别 0 和类别 1 确认的紧急停止/紧急关断。但是,可能需要执行相应标准中描述的附加措施,以确保完全符合相应标准的要求。

STEP7 V16 中创建和编写安全程序的过程与标准程序几乎相同。可使用 F-FBD 或 F-LAD 编程语言编写故障安全 FB 和 FC 程序,使用 F-DB 编程语言创建故障安全 DB。STEP7 Safety Advanced V16 提供了一些典型的可在安全程序中使用的故障安全应用程序块。编译安全程序时,将自动执行安全检查,并插入用于错误检测和故障响应的其它故障安全块。这将确保可以检测到故障和错误,并触发适当的响应,以使 F 系统保持在安全状态或进入安全状态。除安全程序之外,标准用户程序也可以在 F-CPU 上运行。

打开安全主程序块 FB1,在右侧安全功能库中调用 ESTOP1 急停功能块



将功能块拖拽到主程序当中



该指令主要包含以下几个参数



只要输入 E_STOP 的信号状态为 0,则立即将使能信号 Q 复位为 0(停止类别 0)。

在超出输入 TIME_DEL 中设置的延时时间后,使能信号 Q_DELAY 将复位为 0(停止类别 1)。

仅当输入 E_STOP 的信号状态为 1 且进行确认后,才将使能信号 Q 复位为 1。

按照在输入 ACK_NEC 处的参数分配对使能进行确认:

• 如果 ACK_NEC = 0,则将自动进行确认。

• 如果 ACK_NEC = 1,则必须使用输入ACK处的上升沿来对使能进行确认。

输出 ACK_REQ 用于发送信号,指示为了确认需要在输入 ACK 上输入一个用户确认。

当输入 E_STOP 为 1 时,该指令将输出 ACK_REQ 设置为 1。确认后,该指令将 ACK_REQ 复位为 0。

DIAG 输出将提供有关错误的非故障安全信息,用于检修。可以通过操作员监视和控制系统读取该信息,也可以在标准用户程序中评估该信息(如果适用)。DIAG 位 4 和 5 将被保存,直到在 ACK 输入处确认。



2

使用方法

急停信号"DB".Estop 为 1,表明没有按下急停按钮,故输出 Q 为 1



急停信号"DB".Estop 为 0,表明急停按钮被按下,故输出 Q 为 0,Q_DELAY 延时为 0



急停信号"DB".Estop 从 0 变为 1 时,表明急停按钮被按下过,故输出 Q 为 0,Q_DELAY 为 0,ACK_REQ 为 1,需要 ACK 处出现上升沿时确认该指令



3

拓展思考

ESTOP1 除了在急停上应用以外,我们还能在其他的地方应用吗?通过延时输出管脚,我们是否可以将它应用在脉冲检测当中。当我们需要检测一个脉冲宽度为 1s 的脉冲时,我们可以将 TIME_DEL 设定为 1.1s。ACK_NEC 设定为 FALSE。当脉冲信号超过1.1s时 Q_DELAY 为 0。

可以应用在心跳信号检测或电机旋转检测等场景。

此功能块只能在带F的cup中直接调用,如果我们想在常规的plc当中使用,是否可以编写一个类似的程序呢。

这篇文章是我在项目中遇到的一些问题后整理的笔记,旨在记录并分享给大家。后续将会推出一系列文章,介绍西门子故障安全模块的使用方法以及应用场景等内容。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则