Skip to main content

FB_ENVELOPE

描述 功能块

这 FB_ENVELOPE 用于根据以下值创建包络曲线 InValue 加 uiOffset 并检查是否 InValue 每次调用该功能块时都会违反此包络曲线。如果 InValue 范围从 - udiTargetValue 到 + udiTargetValue,然后是时间 tTimeAfterInTarget 开始运行。如果 InValue 离开此范围,并且时间尚未过去,则重置此时间。时间可能会在以下情况下重新开始: InValue 再次达到范围。如果 InValue 保持在范围内,那么 bSafeFunctionOut 输出设置为 FALSE 时间过后 tTimeAfterInTarget 已经过去。 bSafeFunctionOut 输出设置为 FALSE 最迟在 tMaxTime 已过期。

例如,此功能块通常可用于 SS1 或 SS2 安全功能。

提示

此功能块的可用性取决于 FBSupportFlags ESI 描述文件。这些 FBSupportFlags 评估为 CODESYS Safety for EtherCAT Safety Module 4.3.0.0. 如果相关设备不明确支持此功能块,则无法使用此功能块。

EL6900_ENVELOPE.png
表 42. 变量输入

姓名

数据类型

初始值

描述,参数值

bSafeFunction

SAFEBOOL

FALSE

对于下降沿,包络曲线由以下值创建: InValue 加 uiOffset. 在功能块的每个调用周期,都会进行检查以确定 InValue 违反了这个信封。

InValue

SAFELINT

0

当包络曲线内趋向于 0 时出现延迟或变化时应监控的模拟值。

允许的数据类型: UINT, INT, UDINT, DINT

udiTargetValue

SAVEUDINT

0

时间范围 InValue 对称于 0 (- udiTargetValue <= InValue <= udiTargetValue)

只允许使用常量值(无变量)

uiOffset

SAFEUINT

0

添加到价值中的值 InValue 并以此正负值构成包络曲线的起点。

只允许使用常量值(无变量)

tTimeAfterInTarget

SAFETIME

TIME#0ms

之后的时间 bSafeFunctionOut 输出设置为 FALSE 什么时候 InValue 位于范围内 - udiTargetValue 和 + udiTargetValue。

时间开始计时 InValue 达到 -udiTargetValue 和 + udiTargetValue. 时间重置时 InValue 离开范围并 tTimeAfterInTarget 尚未过去。时间重新开始,当 InValue 再次达到范围。

只允许使用常量值(无变量)

tMaxTime

SAFETIME

TIME#0ms

最大时间(毫秒)后 bSafeFunctionOut 输出设置为 FALSE。

只允许使用常量值(无变量)



表 43. 变量输出

姓名

数据类型

初始值

描述,参数值

bSafeFunctionOut

SAFEBOOL

FALSE

具有安全功能的输出(延时并受包络线监控)

设置 FALSE 什么时候 InValue 保持在包络线内直到 tTimeAfterInTarget 已经过去或直到 tMaxTime 已經過去。

bError

SAFEBOOL

FALSE

TRUE: InValue 不正确(例如,高于或低于包络曲线)或 tMaxTime 已过去

FALSE:未發生任何錯誤。