过程互锁 (PINTLK)

此信息适用于 CompactLogix 5380P、ControlLogix 5580P 和 ControlLogix 5590P 控制器。
过程互锁 (Process Interlock, PINTLK) 指令收集或汇总用于将正在运行或已接通的设备停止或断电的互锁条件。该指令还有助于防止设备启动或接通。始终评估互锁以将设备断电。对于必须设置为启动设备但在设备运行时被忽略的许可条件,请使用过程许可 (Process Permissive, PPERM) 指令。
PINTLK 指令提供以下功能:
  • 互锁输入正常 (OK) 检查:每个输入都与其配置的正常 (OK) 状态进行比较。如果输入未处于正常 (OK) 状态,则会引发互锁条件,除非被绕过。
  • 互锁条件锁定:如果将输入配置为锁定状态,则互锁条件会保持锁定直到重置,除非锁定缺陷输入为真。如果输入未配置为锁定状态,则当输入返回到正常 (OK) 状态时,互锁条件将清除。
  • 互锁绕过:如果输入配置为可被绕过(Cfg_Bypassable.x = 1)、互锁被绕过(MSet_Bypass.x = 1),且下游设备指令启用了绕过(Sts_Bypass = 1),即使输入未处于其正常状态,也不会触发互锁条件。如果输入配置为不可绕过(Cfg_Bypassable.x = 0),或者互锁未被绕过(MSet_Bypass.x = 0),或者连接的设备未启用绕过(Sts_Bypass = 0),则输入将触发互锁条件。通常,工程部门会配置允许绕过的互锁。维护人员从工程部门允许绕过的互锁中选择要绕过的项。
  • 先出:如果没有引发互锁条件(可以运行),则要引发的第一个互锁条件被标记为先出。如果在同一个扫描中引发多个互锁条件,则这些条件都被标记为先出。
  • 锁定缺陷:锁定缺陷功能可减少启动设备所需的操作员操作数量。锁定缺陷输入是在设备未运行时设置的。当锁定缺陷输入为真时,会忽略锁定的输入配置,当它们对应的输入处于正常 (OK) 状态时,将清除所有互锁条件。此操作可使操作员无需在启动设备前进行重置。当设备启动时,锁定缺陷输入关闭。然后,如果配置为锁定的互锁条件关闭设备,则它将保持锁定状态直至重置。
  • 互锁类型:有八种可配置的互锁类型。每种类型都有描述;默认情况下,描述为三个字母的缩写(供 HMI 使用),后跟冒号和完整描述。每种类型都会影响可绕过性、锁定和可用性。类型 0、2、4 和 6 会影响可用性;类型 0、1、2 和 3 强制锁定并需要复位;类型 0、1、4 和 5 强制不允许绕过。
  • 输入可用字段:输入可用字段允许级联互锁存储区,并支持使用已准备运行但在序列中的某些点不可用的设备(例如,带有当前已关闭的自动截止阀的泵)。
    重要提示: 使用互锁存储区时,必须执行 PINTLK 指令,确保首先执行存储区 0。对存储区 0 执行该指令会先清除所有存储区的数据,然后再处理存储区 0。对其他存储区执行该指令不会清除存储区数据。PINTLK 指令可以按任意顺序执行,前提是先执行存储区 0,并且在设备指令执行之前执行所有存储区。
  • 汇总状态:将其 32 个互锁输入条件汇总到两个主状态位:
    • Sts_IntlkOK.指示无论绕过状态如何,所有互锁条件均已清除(无论绕过状态如何,都处于待运行状态)。
    • Sts_NBIntlkOK.指示所有不可绕过的互锁条件均已清除,且所有可绕过的互锁条件均已清除或已绕过(如果互锁被绕过,即随时可运行)。
    • Sts_Available。指示设备尽管当前有互锁处于激活状态,但仍可通电。
      重要提示: 下游设备指令用于确定是否绕过互锁。PINTLK 指令仅提供两个摘要状态位。这两个位将接线或映射至设备控制逻辑。
可用语言
梯形图
PINTLK_avail_LD
功能块图
PINTLK_avail_FBD
结构化文本
PINTLK(PINTLK 标签,Ref_IntlkBankSts);
操作数
重要提示: 以下情况下会导致运行出现意外:
  • 输出标签操作数被覆盖。
  • 结构操作数的成员被覆盖。
  • 除非另外指定,否则结构操作数由多条指令共用。
指令中混用数据类型时,需遵从相关的数据转换规则。请参阅 数据转换
配置操作数
操作数
类型
格式
说明
PlantPAx
P_INTERLOCK
标签
指令正确运行所需的数据结构。
Ref_IntlkBankSts
P_INTERLOCK_BANK_STATUS
标签
参考互锁存储区状态。
P_INTERLOCK 结构
公共成员是可通过编程方式访问的标准可见标签成员。专用隐藏成员用于 HMI 面板中,无法通过编程方式访问。专用成员在公共成员后面的单独表中列出。
公共输入成员
数据类型
说明
EnableIn
BOOL
启用输入 - 系统定义的参数
默认值为真。
Inp_InitializeReq
BOOL
1 = 请求初始化指令。指令通常在首次运行时进行初始化。需要重新初始化时使用此请求。该指令自动清除该操作数。
默认值为真。
Inp_Intlk00
BOOL
互锁条件 00,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk01
BOOL
互锁条件 01,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk02
BOOL
互锁条件 02,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk03
BOOL
互锁条件 03,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk04
BOOL
互锁条件 04,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk05
BOOL
互锁条件 05,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk06
BOOL
互锁条件 06,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk07
BOOL
互锁条件 07,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk08
BOOL
互锁条件 08,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk09
BOOL
互锁条件 09,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk10
BOOL
互锁条件 10,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk11
BOOL
互锁条件 11,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk12
BOOL
互锁条件 12,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk13
BOOL
互锁条件 13,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk14
BOOL
互锁条件 14,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk15
BOOL
互锁条件 15,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk16
BOOL
互锁条件 16,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk17
BOOL
互锁条件 17,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk18
BOOL
互锁条件 18,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk19
BOOL
互锁条件 19,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk20
BOOL
互锁条件 20,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk21
BOOL
互锁条件 21,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk22
BOOL
互锁条件 22,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk23
BOOL
互锁条件 23,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk24
BOOL
互锁条件 24,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk25
BOOL
互锁条件 25,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk26
BOOL
互锁条件 26,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk27
BOOL
互锁条件 27,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk28
BOOL
互锁条件 28,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk29
BOOL
互锁条件 29,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk30
BOOL
互锁条件 30,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_Intlk31
BOOL
互锁条件 31,如果未处于配置的正常 (OK) 状态,则会断电。
默认值为假。
Inp_IOFault
DINT
IO 故障逻辑的输入寄存器。
默认值为 2#0000_0000_0000_0000_0000_0000_0000_0000。
Inp_Available
BOOL
外部可用性输入。
默认值为真。
Inp_BypActive
BOOL
1 = 互锁绕过当前处于活动状态。
默认值为假。
Inp_LatchDefeat
BOOL
设备断电时设置。1 = 即使配置为锁定,也不要锁定输入,并且不要捕获新的先出信号。
默认值为假。
Inp_Reset
BOOL
1 = 重置锁定的互锁和先出信号。
默认值为假。
Cfg_OKState
DINT
相应位指示每个输入的哪个状态(0 或 1)为允许运行状态。
默认值为 2#0000_0000_0000_0000_0000_0000_0000_0000。
Cfg_Latched
DINT
设置位指示锁定(封闭)的条件。
默认值为 2#0000_0000_0000_0000_0000_0000_0000_0000。
Cfg_StopOnly
DINT
设置位指示哪些条件导致停止但不脱扣。
默认值为 2#0000_0000_0000_0000_0000_0000_0000_0000。
Cfg_Bypassable
DINT
设置位指示可以绕过的条件。
默认值为 2#0000_0000_0000_0000_0000_0000_0000_0000。
Cfg_HasNav
DINT
设置位以指示启用的导航按钮。
默认值为 2#0000_0000_0000_0000_0000_0000_0000_0000。
Cfg_eType00
SINT
互锁 0 的枚举类型。
默认值为 6。
Cfg_eType01
SINT
互锁 1 的枚举类型。
默认值为 6。
Cfg_eType02
SINT
互锁 2 的枚举类型。
默认值为 6。
Cfg_eType03
SINT
互锁 3 的枚举类型。
默认值为 6。
Cfg_eType04
SINT
互锁 4 的枚举类型。
默认值为 6。
Cfg_eType05
SINT
互锁 5 的枚举类型。
默认值为 6。
Cfg_eType06
SINT
互锁 6 的枚举类型。
默认值为 6。
Cfg_eType07
SINT
互锁 7 的枚举类型。
默认值为 6。
Cfg_eType08
SINT
互锁 8 的枚举类型。
默认值为 6。
Cfg_eType09
SINT
互锁 9 的枚举类型。
默认值为 6。
Cfg_eType10
SINT
互锁 10 的枚举类型。
默认值为 6。
Cfg_eType11
SINT
互锁 11 的枚举类型。
默认值为 6。
Cfg_eType12
SINT
互锁 12 的枚举类型。
默认值为 6。
Cfg_eType13
SINT
互锁 13 的枚举类型。
默认值为 6。
Cfg_eType14
SINT
互锁 14 的枚举类型。
默认值为 6。
Cfg_eType15
SINT
互锁 15 的枚举类型。
默认值为 6。
Cfg_eType16
SINT
互锁 16 的枚举类型。
默认值为 6。
Cfg_eType17
SINT
互锁 17 的枚举类型。
默认值为 6。
Cfg_eType18
SINT
互锁 18 的枚举类型。
默认值为 6。
Cfg_eType19
SINT
互锁 19 的枚举类型。
默认值为 6。
Cfg_eType20
SINT
互锁 20 的枚举类型。
默认值为 6。
Cfg_eType21
SINT
互锁 21 的枚举类型。
默认值为 6。
Cfg_eType22
SINT
互锁 22 的枚举类型。
默认值为 6。
Cfg_eType23
SINT
互锁 23 的枚举类型。
默认值为 6。
Cfg_eType24
SINT
互锁 24 的枚举类型。
默认值为 6。
Cfg_eType25
SINT
互锁 25 的枚举类型。
默认值为 6。
Cfg_eType26
SINT
互锁 26 的枚举类型。
默认值为 6。
Cfg_eType27
SINT
互锁 27 的枚举类型。
默认值为 6。
Cfg_eType28
SINT
互锁 28 的枚举类型。
默认值为 6。
Cfg_eType29
SINT
互锁 29 的枚举类型。
默认值为 6。
Cfg_eType30
SINT
互锁 30 的枚举类型。
默认值为 6。
Cfg_eType31
SINT
互锁 31 的枚举类型。
默认值为 6。
Cfg_HasType
SINT
从 HMI 中启用类型选择。
默认值为 2#1111_1111。
Cfg_TypeDesc00
BOOL
互锁类型 00 描述。
默认值为假。
Cfg_TypeDesc01
BOOL
互锁类型 01 描述。
默认值为假。
Cfg_TypeDesc02
BOOL
互锁类型 02 描述。
默认值为假。
Cfg_TypeDesc03
BOOL
互锁类型 03 描述。
默认值为假。
Cfg_TypeDesc04
BOOL
互锁类型 04 描述。
默认值为假。
Cfg_TypeDesc05
BOOL
互锁类型 05 描述。
默认值为假。
Cfg_TypeDesc06
BOOL
互锁类型 06 描述。
默认值为假。
Cfg_TypeDesc07
BOOL
互锁类型 07 描述。
默认值为假。
Cfg_BankID
INT
用于多个存储区的存储区 ID(0 到 7)。
默认值为 0。
Cfg_HasMoreObj
BOOL
1 = 通知 HMI 可使用包含更多信息的对象。
默认值为假。
Cfg_CnfrmReqd
SINT
需要操作员确认命令。表示需要命令确认的类型。0 = 无,1 = 需要命令确认,2 = 需要执行者电子签名,3 = 需要执行者和审批者电子签名。
默认值为 0。
PCmd_Reset
BOOL
用于重置锁定互锁的程序命令。
默认值为假。
公共输出成员
数据类型
说明
EnableOut
BOOL
启用输出 - 系统定义的参数
Out_Reset
BOOL
1 = 重置外部设备。
Val_FirstUpBankID
INT
首次互锁的存储区 ID 编号。
Val_FirstUpIndex
INT
首次互锁的索引编号。
Sts_Initialized
BOOL
1 = 指令已初始化。使用 Inp_InitializeReq 重新初始化。
Sts_IntlkOK
BOOL
1 = 运行正常 (OK),0 = 停止。
Sts_NBIntlkOK
BOOL
1 = 所有不可绕过的互锁均可正常 (OK) 运行。
Sts_Available
BOOL
1 = 可用。
Sts_IntlkTripInh
BOOL
1 = 互锁脱扣禁止 - 停止设备但不脱扣。
Sts_BypActive
BOOL
1 = 互锁绕过处于活动状态(忽略可绕过互锁)。
Sts_FirstUpDetect
BOOL
1 = 检测到首次互锁。
Sts_BankIDError
BOOL
1 = 存储区 ID 出错,每个存储区 ID 都必须唯一。
Sts_LatchDefeat
BOOL
1 = 即使配置为锁定,也不要锁定输入。
Sts_RdyReset
BOOL
1 = 锁定的互锁(返回为“正常 (OK)”)待重置。
Sts_LatchMask
DINT
锁定掩码 - 始终基于类型锁定。
Sts_BypassMask
DINT
绕过掩码 - 基于类型绕过。
Sts_Intlk
DINT
单独的互锁状态(1 = 停止,0 = 正常 (OK))。
Sts_FirstOut
DINT
互锁先出状态(首个非正常 (OK) 条件的位 1)。
专用输入成员
数据类型
说明
HMI_Tab
SINT
要显示的选项卡 (FTView ME)。
默认值为 0。
MSet_Bypass
DINT
单个条件维护绕过切换。
默认值为 2#0000_0000_0000_0000_0000_0000_0000_0000。
OCmd_Reset
BOOL
用于重置锁定互锁的操作员命令。
默认值为假。
专用输出成员
数据类型
说明
ORdy_Reset
BOOL
1 = OCmd_Reset 就绪(启用 HMI 按钮)。
Val_BankMap
DINT
检测到互锁存储区映射。
Val_BankSts
DINT
互锁存储区状态映射。
P_INTERLOCK_BANK_STATUS 结构
成员
数据类型
说明
Val_FirstUpIndex
INT
首次互锁的索引编号。
Val_FirstUpBankID
INT
首次互锁的存储区 ID 编号。
Val_BankMap
DINT
检测到互锁存储区映射。
Val_BankSts
DINT
互锁存储区状态映射。
Inp_Reset
BOOL
1 = 重置脱扣和首次互锁。
Inp_BypActive
BOOL
1 = 互锁绕过当前处于活动状态。
Inp_LatchDefeat
BOOL
1 = 不锁定。
Inp_Available
BOOL
1 = 可从之前的设备获取。
Sts_BankIDError
BOOL
1 = 重复或无效的存储区 ID。
Sts_IntlkOK
BOOL
互锁可绕过互锁状态(1 = 所有互锁正常 (OK) 接通)。
Sts_NBIntlkOK
BOOL
互锁不可绕过互锁状态(1 = 所有不可绕过的互锁正常 (OK) 接通)。
Sts_IntlkTripInh
BOOL
1 = 互锁脱扣禁止 - 停止设备但不脱扣。
Sts_Available
BOOL
可用性状态。(1 = 可用)。
Sts_FirstUpDetect
BOOL
1 = 检测到首次互锁。
Sts_RdyReset
BOOL
1 = 锁定的互锁(返回为“正常 (OK)”)待重置。
Sts_PrevIntlkOK
BOOL
之前的互锁可绕过互锁状态(1 = 所有互锁正常 (OK)接通)。
Sts_PrevNBIntlkOK
BOOL
之前的互锁不可绕过互锁状态(1 = 所有不可绕过的互锁正常 (OK) 接通)。
操作
下图展示了 PINTLK 指令的功能:
PINTLK_operation
HMI 字符串配置
配置 HMI 面板(FT 视图)和 Logix Designer 配置对话框的字符串。字符串将设置为标签项的扩展属性。仅配置 Logix Designer 中的字符串。
  • 说明
  • 图形符号的标签
  • 用于 HMI 面板调用的显示库
  • 指令名称
  • 区域名称
  • URL 链接
  • 输入条件文本
  • 导航路径
  • 互锁类型
  • 更多信息
监控 PINTLK 指令
使用 PlantPAx 过程对象库中的操作员面板进行监控。
影响数学状态标志
编号
严重/轻微故障
没有特定于此指令的故障。请参见“数组索引编制”,了解关于数组索引故障的信息。
执行
梯形图
条件/状态
执行的操作
预扫描
梯级输出条件设置为假。
指令首次运行
指令正常执行。
梯级输入条件为假
梯级输出条件设置为假。
如果该指令处于脱机扫描状态,则将摘要互锁正常 (OK) 状态位设置为假。
仅为配置为绕过的条件设置单独的互锁绕过。将清除不可绕过的输入的所有 MSet。
梯级输入条件为真
将梯级输出条件设置为梯级输入条件。
指令执行。
后扫描
梯级输出条件设置为假。
功能块图
条件/状态
执行的操作
预扫描
EnableOut 设置为假。
指令首次运行
指令正常执行。
指令首次扫描
请参阅“功能块图”表中的“指令首次运行”行。
EnableIn 为假
EnableOut 设置为假。
如果该指令处于脱机扫描状态,则将摘要互锁正常 (OK) 状态位设置为假。
仅为配置为绕过的条件设置单独的互锁绕过。将清除不可绕过的输入的所有 MSet。
EnableIn 为真
EnableOut 设置为真。
指令执行。
后扫描
EnableIn 和 EnableOut 位设置为假。
互锁组
使用互锁存储区时,必须执行 PINTLK 指令,确保首先执行存储区 0。对存储区 0 执行该指令会先清除所有存储区的数据,然后再处理存储区 0。对其他存储区执行该指令不会清除存储区数据。PINTLK 指令可以按任意顺序执行,前提是先执行存储区 0,并且在设备指令执行之前执行所有存储区。
结构化文本
在结构化文本中,EnableIn 在普通扫描期间始终为真。指令在处于由逻辑激活的控制路径中时执行。
条件/状态
执行的操作
预扫描
请参阅“功能块图”表中的“预扫描”行。
指令首次运行
请参阅“功能块图”表中的“指令首次运行”行。
EnableIn 为真
请参阅“功能块图”表中的“EnableIn 为真”行。
后扫描
请参阅“功能块图”表中的“后扫描”行。
示例
该示例使用 PINTLK 指令集中处理互锁条件,这些互锁条件允许运行纸浆制造过程中用于研磨木材的研磨板。
梯形图
PINTLK_example_LD
功能块图
Function Block Diagram
结构化文本
P182_Motor_INTLK.Inp_BypActive := P182_Motor.Sts_BypActive;
P182_Motor_INTLK.Inp_Intlk00 := Zone_1_Light_Curtain;
P182_Motor_INTLK.Inp_Intlk01 := Coolant_Pressure_OK;
PINTLK(P182_Motor_INTLK, 0);
P182_Motor.Inp_IntlkOK := P182_Motor_INTLK.Sts_IntlkOK;
P182_Motor.Inp_NBIntlkOK := P182_Motor_INTLK.Sts_NBIntlkOK;
PMTR(P182_Motor,P182_CtrlSet,P182_CtrlCmd,P182_CtrlSts, 0, 0);
提供反馈
对本文档有问题或反馈吗? 请在这里提交您的反馈
Normal