过程双传感器模拟输入 (PAID)
此信息适用于 CompactLogix 5380P、ControlLogix 5580P 和 ControlLogix 5590P 控制器。
PAID 指令通过使用两个模拟输入信号(来自双传感器、双发送器和双输入通道等源)来监控一个模拟过程变量 (PV)。PAID 指令监控通道的条件,并报告配置的 PV 质量。PAID 指令具有输入选择、求平均值和故障检测的功能。其他功能(如过滤和报警)由下游 PAI 块完成。
PAID 指令提供以下功能:
- 选择传感器或输入 A 值、传感器或输入 B 值、两者的平均值、两者中的较小值或两者中的较大值作为 PV 值。
- 对每个传感器、发送器或输入的不确定或不良输入进行输入源和质量监控,并监控每个信号是否超出范围。如果一个 PV 不良、发生故障或超出范围,则会自动选择另一个 PV。
- 如果两个传感器 PV 之差超出配置的限值,则发出警告。
- 仅有一个 PV 质量良好时发出警告。
- 如果两个 PV 均不具备良好质量,例如两者都不确定,则发出警告。
- 如果两个 PV 均不良,例如每个 PV 均质量不良(Inp_PVABad 或 Inp_PVBBad)或超出配置的故障范围,则发出故障报警。
可用语言
梯形图

功能块图

结构化文本
PAID (PAIDTag, 0);
操作数
重要提示:
以下情况下会导致运行出现意外:
- 输出标签操作数被覆盖。
- 结构操作数的成员被覆盖。
- 除非另外指定,否则结构操作数由多条指令共用。
指令中混用数据类型时,需遵从相关的数据转换规则。请参阅 数据转换。
配置操作数
操作数 | 类型 | 格式 | 说明 |
|---|---|---|---|
PlantPAx Control | P_ANALOG_INPUT_DUAL | 标签 | 指令正确运行所需的数据结构。 |
BusObj | BUS_OBJ | 标签 | 总线组件 |
P_ANALOG_INPUT_DUAL 结构
公共成员是可通过编程方式访问的标准可见标签成员。专用隐藏成员用于 HMI 面板中,无法通过编程方式访问。专用成员在公共成员后面的单独表中列出。
公共输入成员 | 数据类型 | 说明 |
|---|---|---|
EnableIn | BOOL | 启用输入 - 系统定义的参数 默认值为真。 |
Inp_InitializeReq | BOOL | 1 = 请求初始化指令。指令通常在首次运行时进行初始化。需要重新初始化时使用此请求。该指令自动清除该操作数。 默认值为真。 |
Inp_PVAData | REAL | 来自传感器或输入 A 的 PV 信号(PV 单位)。有效值 = 任意浮点数。 默认值为 0.0。 |
Inp_PVASrcQ | SINT | 来自通道 A 对象的输入源和质量(如果可用)(枚举)。 默认值为 0。 |
Inp_PVANotify | SINT | 相关 PV 对象报警优先级和确认状态。 0 = 未处于报警中,已确认, 1 = 未处于报警中,未确认或需要重置, 2 = 低严重性报警,已确认, 3 = 低严重性报警,未确认, 4 = 中等严重性报警,已确认, 5 = 中等严重性报警,未确认, 6 = 高严重性报警,已确认, 7 = 高严重性报警,未确认, 8 = 紧急严重性报警,已确认, 9 = 紧急严重性报警,未确认。 默认值为 0。 |
Inp_SmartDvcASts | DINT | SMART 设备在 Inp_PVAData 上提供的当前代码。代码复制到 Out_SmartDvcSts,允许用户在 HMI 上监控设备状态以进行诊断查找。有效值 = 0 到最大正数。 默认值为 0。 |
Inp_PVBData | REAL | 来自传感器或输入 B 的 PV 信号(PV 单位)。有效值 = 任意浮点数。 默认值为 0.0。 |
Inp_PVBSrcQ | SINT | 来自通道 B 对象的输入源和质量(如果可用)(枚举)。 默认值为 0。 |
Inp_PVBNotify | SINT | 相关 PV 对象报警优先级和确认状态。 0 = 未处于报警中,已确认, 1 = 未处于报警中,未确认或需要重置, 2 = 低严重性报警,已确认, 3 = 低严重性报警,未确认, 4 = 中等严重性报警,已确认, 5 = 中等严重性报警,未确认, 6 = 高严重性报警,已确认, 7 = 高严重性报警,未确认, 8 = 紧急严重性报警,已确认, 9 = 紧急严重性报警,未确认。 默认值为 0。 |
Inp_SmartDvcBSts | DINT | SMART 设备在 Inp_PVBData 上提供的当前代码。代码复制到 Out_SmartDvcSts,允许用户在 HMI 上监控设备状态以进行诊断查找。有效值 = 0 到最大正数。 默认值为 0。 |
Inp_PVABad | BOOL | 输入 A 的信号质量或通信状态:1 = 不良,0 = 正常 (OK)。 默认值为假。 |
Inp_PVAUncertain | BOOL | 输入 A 的信号质量:1 = 不确定,0 = 正常 (OK)。 默认值为假。 |
Inp_SmartDvcADiagAvailable | BOOL | 1 = 执行 Inp_PVAData 诊断的 SMART 设备可用。通常用于指示需要采取措施来保持设备按预期运行。 默认值为假。 |
Inp_PVBBad | BOOL | 输入 B 的信号质量或通信状态:1 = 不良,0 = 正常 (OK)。 默认值为假。 |
Inp_PVBUncertain | BOOL | 输入 B 的信号质量:1 = 不确定,0 = 正常 (OK)。 默认值为假。 |
Inp_SmartDvcBDiagAvailable | BOOL | 1 = 执行 Inp_PVBData 诊断的 SMART 设备可用。通常用于指示需要采取措施来保持设备按预期运行。 默认值为假。 |
Inp_DiffGate | BOOL | 用于状态检测的门输入。1 = 启用相应的模拟输入阈值监控。0 = 禁用检测并强制关闭相应的状态输出。 默认值为真。 |
Cfg_AllowDisable | BOOL | 1 = 允许维护人员禁用报警。 默认值为真。 |
Cfg_AllowShelve | BOOL | 1 = 允许操作员延迟报警。 默认值为真。 |
Cfg_UseInpSrcQPVA | BOOL | 1 = PVA SrcQ 输入用于拒绝决策。 默认值为假。 |
Cfg_UseInpSrcQPVB | BOOL | 1 = PVB SrcQ 输入用于拒绝决策。 默认值为假。 |
Cfg_HasPVNav | BOOL | 1 = 通知 HMI 允许导航到所连接的 PV (Val) 对象。 默认值为假。 |
Cfg_HasMoreObj | BOOL | 1 = 通知 HMI 一个具有更多信息的对象可用于导航。 默认值为假。 |
Cfg_HasNav | SINT | 设置位指示启用的导航按钮。0=PVA、1=PVB 默认值为 0。 |
Cfg_PVEUMin | REAL | 用于显示 PV 单位的 PV(输出)最小值。有效值 = 任意浮点数。 默认值为 0.0。 |
Cfg_PVEUMax | REAL | 用于显示 PV 单位的 PV(输出)最大值。有效值 = 任意浮点数。 默认值为 100.0。 |
Cfg_DiffLim | REAL | PV 单位的信号差异状态限值,差值。有效值 = 任意非负浮点数。 默认值为 1.50E+38。 |
Cfg_DiffDB | REAL | PV 单位的信号差异状态死区,差值。有效值 = 任意非负浮点数。 默认值为 1.0。 |
Cfg_DiffGateDly | REAL | 从激活门输入到启用阈值检测需要经过的时间(单位为秒)。有效值 = 0.0 到 2147483.0 秒。 默认值为 0.0。 |
Cfg_OoRHiLim | REAL | 输入单位的超出范围(故障)上限。有效值 = 任意浮点数。 默认值为 103.958336。 |
Cfg_OoRLoLim | REAL | 输入单位的超出范围(故障)下限。有效值 = 任意浮点数。 默认值为 -2.0833333。 |
Cfg_OoRDB | REAL | 输入单位的超出范围(故障)上限或下限死区。有效值 = 任意非负浮点数。 默认值为 0.41666666。 |
Cfg_AllowOper | BOOL | 1 = 允许操作员控制 PV 选项。 默认值为假。 |
Cfg_AllowProg | BOOL | 1 = 允许程序命令控制 PV 选项。 默认值为假。 |
Cfg_AllowExt | BOOL | 1 = 允许外部命令控制 PV 选项。 默认值为假。 |
Cfg_PVDecPlcs | SINT | PV 显示的小数位数。有效值 = 0、1、2、3、4、5、6。 默认值为 2。 |
Cfg_CnfrmReqd | SINT | 需要操作员确认命令。表示需要命令确认的类型。 0 = 无, 1 = 需要命令确认, 2 = 需要执行者电子签名, 3 = 需要执行者和审批者电子签名。 默认值为 0。 |
PSet_Owner | DINT | 程序宿主请求 ID(非零)或释放(零)(有效值 = 任意整数)。 默认值为 0。 |
PCmd_SelA | BOOL | 用于选择传感器 A PV 的程序命令。 默认值为假。 |
PCmd_SelB | BOOL | 用于选择传感器 B PV 的程序命令。 默认值为假。 |
PCmd_SelAvg | BOOL | 用于选择传感器 A 和 B 之间的 PV 平均值的程序命令。 默认值为假。 |
PCmd_SelMin | BOOL | 用于选择传感器 A 和 B 之间的 PV 最小值的程序命令。 默认值为假。 |
PCmd_SelMax | BOOL | 用于选择传感器 A 和 B 之间的 PV 最大值的程序命令。 默认值为假。 |
PCmd_Reset | BOOL | 用于重置需要重置的所有报警的程序命令。 默认值为假。 |
XCmd_SelA | BOOL | 用于选择传感器 A PV 的外部命令。 默认值为假。 |
XCmd_SelB | BOOL | 用于选择传感器 B PV 的外部命令。 默认值为假。 |
XCmd_SelAvg | BOOL | 用于选择传感器 A 和 B 之间的 PV 平均值的外部命令。 默认值为假。 |
XCmd_SelMin | BOOL | 用于选择传感器 A 和 B 之间的 PV 最小值的外部命令。 默认值为假。 |
XCmd_SelMax | BOOL | 用于选择传感器 A 和 B 之间的 PV 最大值的外部命令。 默认值为假。 |
XCmd_Reset | BOOL | 用于重置所有报警和锁定去除条件的外部命令。该指令自动清除该操作数。 默认值为假。 |
XCmd_ResetAckAll | BOOL | 用于确认和重置所有报警和锁定去除条件的外部命令。该指令自动清除该操作数。 默认值为假。 |
公共输出成员 | 数据类型 | 说明 |
|---|---|---|
EnableOut | BOOL | 启用输出 - 系统定义的参数 |
Val | REAL | 所选模拟 PV(包括替代 PV,如使用)(PV 单位)。 |
Val_PVA | REAL | 来自输入 A 的模拟值(实际值)(PV 单位)。 |
Val_PVB | REAL | 来自输入 B 的模拟值(实际值)(PV 单位)。 |
Val_AvgPV | REAL | 输入 A 和输入 B 的模拟值平均值(PV 单位)。 |
Val_MinPV | REAL | 输入 A 和输入 B 的模拟值最小值(PV 单位)。 |
Val_MaxPV | REAL | 输入 A 和输入 B 的模拟值最大值(PV 单位)。 |
Val_InpPV | REAL | 所选 PV,例如替代之前(PV 单位)。 |
Val_Diff | REAL | 输入 A 和输入 B PV 之间的差值(PV 单位)。 |
Val_PVEUMin | REAL | PV 范围最小值 = Cfg_PVEUMin 和 Cfg_PVEUMax 之间的最小值(PV 单位)。 |
Val_PVEUMax | REAL | PV 范围最大值 = Cfg_PVEUMin 和 Cfg_PVEUMax 之间的最大值(PV 单位)。 |
Out_SmartDvcSts | DINT | Inp_SmartDvcASts 或 Inp_SmartDvcBSts 提供的 SMART 设备状态代码。选择最高状态代码。 |
Sts_Initialized | BOOL | 1 = 指令已初始化。使用 Inp_InitializeReq 重新初始化。 |
Sts_SmartDvcDiagAvailable | BOOL | 1 = 当前可以使用 SMART 设备诊断。通常用于指示需要采取措施来保持其中一个设备按预期运行。 |
Sts_PVASel | BOOL | 1 = 为 PV 选择的输入 A。 |
Sts_PVBSel | BOOL | 1 = 为 PV 选择的输入 B。 |
Sts_AvgSel | BOOL | 1 = 为 PV 选择的 A 和 B 之间的平均值。 |
Sts_MinSel | BOOL | 1 = 为 PV 选择的 A 和 B 之间的最小值。 |
Sts_MaxSel | BOOL | 1 = 为 PV 选择的 A 和 B 之间的最大值。 |
Sts_PVBad | BOOL | 1 = PV 质量不良或超出范围。 |
Sts_PVUncertain | BOOL | 1 = PV 值不确定(质量)。 |
SrcQ_IOA | SINT | 主输入/输出 (I/O) 的源和质量(枚举)。 |
SrcQ_IOB | SINT | 主输入/输出 (I/O) 的源和质量(枚举)。 |
SrcQ_IO | SINT | 主输入/输出 (I/O) 的源和质量(枚举)。 |
SrcQ | SINT | 主 Val 或 Sts 的源和质量(枚举)。 |
Sts_eSts | SINT | 设备已确认状态(枚举):0 = PV 良好,1:PV 不确定,2:PV 不良。 |
Sts_eFault | INT | 设备故障状态(枚举):0 = 无,........32 = 失败,34 = 不良配置。 |
Sts_eNotify | SINT | 所有报警状态枚举值: 0 = 未处于报警中,已确认, 1 = 未处于报警中,未确认或需要重置, 2 = 低严重性报警,已确认, 3 = 低严重性报警,未确认, 4 = 中等严重性报警,已确认, 5 = 中等严重性报警,未确认, 6 = 高严重性报警,已确认, 7 = 高严重性报警,未确认, 8 = 紧急严重性报警,已确认, 9 = 紧急严重性报警,未确认。 |
Sts_eNotifyAll | SINT | 所有报警状态枚举值(包括相关对象): 0 = 未处于报警中,已确认, 1 = 未处于报警中,未确认或需要重置, 2 = 低严重性报警,已确认, 3 = 低严重性报警,未确认, 4 = 中等严重性报警,已确认, 5 = 中等严重性报警,未确认, 6 = 高严重性报警,已确认, 7 = 高严重性报警,未确认, 8 = 紧急严重性报警,已确认, 9 = 紧急严重性报警,未确认。 |
Sts_eNotifyOneGood | SINT | 只有一个良好的 PV 报警状态枚举值: 0 = 未处于报警中,已确认, 1 = 未处于报警中,未确认或需要重置, 2 = 低严重性报警,已确认, 3 = 低严重性报警,未确认, 4 = 中等严重性报警,已确认, 5 = 中等严重性报警,未确认, 6 = 高严重性报警,已确认, 7 = 高严重性报警,未确认, 8 = 紧急严重性报警,已确认, 9 = 紧急严重性报警,未确认。 |
Sts_eNotifyNoneGood | SINT | 没有良好 PV 报警状态枚举值: 0 = 未处于报警中,已确认, 1 = 未处于报警中,未确认或需要重置, 2 = 低严重性报警,已确认, 3 = 低严重性报警,未确认, 4 = 中等严重性报警,已确认, 5 = 中等严重性报警,未确认, 6 = 高严重性报警,已确认, 7 = 高严重性报警,未确认, 8 = 紧急严重性报警,已确认, 9 = 紧急严重性报警,未确认。 |
Sts_eNotifyDiff | SINT | 输入差值报警状态枚举值: 0 = 未处于报警中,已确认, 1 = 未处于报警中,未确认或需要重置, 2 = 低严重性报警,已确认, 3 = 低严重性报警,未确认, 4 = 中等严重性报警,已确认, 5 = 中等严重性报警,未确认, 6 = 高严重性报警,已确认, 7 = 高严重性报警,未确认, 8 = 紧急严重性报警,已确认, 9 = 紧急严重性报警,未确认。 |
Sts_eNotifyFail | SINT | 失败报警状态枚举值: 0 = 未处于报警中,已确认, 1 = 未处于报警中,未确认或需要重置, 2 = 低严重性报警,已确认, 3 = 低严重性报警,未确认, 4 = 中等严重性报警,已确认, 5 = 中等严重性报警,未确认, 6 = 高严重性报警,已确认, 7 = 高严重性报警,未确认, 8 = 紧急严重性报警,已确认, 9 = 紧急严重性报警,未确认。 |
Sts_UnackAlmCount | DINT | 未确认报警计数。 |
Sts_Err | BOOL | 1 = 配置出错,请参阅明细位以查找原因。 |
Sts_ErrEU | BOOL | 1 = 配置出错:Cfg_PVEUMax 不能等于 Cfg_PVEUMin。 |
Sts_ErrDiffDB | BOOL | 1 = 配置出错:Cfg_LoDevDB 死区 < 0.0。 |
Sts_ErrDiffGateDly | BOOL | 1 = 计时器预设值无效(使用 0.0 到 2147483.0)。 |
Sts_ErrOoRDB | BOOL | 1 = 配置出错:Cfg_OoRDB 死区 < 0.0。 |
Sts_ErrAlm | BOOL | 1 = 基于 logix 标签的报警设置中存在错误。 |
Sts_Alm | BOOL | 1 = 报警处于活动状态。 |
Sts_AlmInh | BOOL | 1 = 报警已延迟或已禁用。 |
Sts_OneGood | BOOL | 1 = 只有一个良好的 PV(另一个为不良或不确定)。 |
Sts_NoneGood | BOOL | 1 = 没有良好的 PV(均不良,或者一个不良另一个不确定)。 |
Sts_DiffCmp | BOOL | 信号差值比较结果 1 = 高差值。 |
Sts_DiffGate | BOOL | 信号差值门延迟状态,1 = 完成。 |
Sts_Diff | BOOL | 1 = 检测到高信号差值。 |
Sts_Fail | BOOL | 1 = 总信号故障(均为不良或超出范围)。 |
Sts_RdyAck | BOOL | 1 = 报警待确认。 |
Sts_RdyReset | BOOL | 1 = 锁定的报警或解除条件待重置。 |
XRdy_SelA | BOOL | 1 = XCmd_SelA 就绪,启用 HMI 按钮。 |
XRdy_SelB | BOOL | 1 = XCmd_SelB 就绪,启用 HMI 按钮。 |
XRdy_SelAvg | BOOL | 1 = XCmd_SelAvg 就绪,启用 HMI 按钮。 |
XRdy_SelMin | BOOL | 1 = XCmd_SelMin 就绪,启用 HMI 按钮。 |
XRdy_SelMax | BOOL | 1 = XCmd_SelMax 就绪,启用 HMI 按钮。 |
XRdy_Reset | BOOL | 1 = XCmd_Reset 就绪,启用 HMI 按钮。 |
XRdy_ResetAckAll | BOOL | 1 = XCmd_ResetAckAll 就绪,启用 HMI 按钮。 |
Val_Owner | DINT | 当前对象宿主 ID(0 = 未拥有)。 |
专用输入成员 | 数据类型 | 说明 |
|---|---|---|
OCmd_Reset | BOOL | 用于重置需要重置的所有报警的操作员命令。 默认值为假。 |
OCmd_ResetAckAll | BOOL | 用于重置和确认所有报警的操作员命令。 默认值为假。 |
OCmd_SelA | BOOL | 用于选择传感器 A PV 的操作员命令。 默认值为假。 |
OCmd_SelAvg | BOOL | 用于选择传感器 A 和 B 之间的 PV 平均值的操作员命令。 默认值为假。 |
OCmd_SelB | BOOL | 用于选择传感器 B PV 的操作员命令。 默认值为假。 |
OCmd_SelMax | BOOL | 用于选择传感器 A 和 B 之间的 PV 最大值的操作员命令。 默认值为假。 |
OCmd_SelMin | BOOL | 用于选择传感器 A 和 B 之间的 PV 最小值的操作员命令。 默认值为假。 |
专用输出成员 | 数据类型 | 说明 |
|---|---|---|
HMI_BusObjIndex | DINT | HMI 总线对象索引。 默认值为 0。 |
ORdy_Reset | BOOL | 1 = OCmd_Reset 就绪(启用 HMI 按钮)。 |
ORdy_ResetAckAll | BOOL | 1 = OCmd_ResetAckAll 就绪(启用 HMI 按钮)。 |
ORdy_SelA | BOOL | 1 = OCmd_SelA 就绪(启用 HMI 按钮)。 |
ORdy_SelAvg | BOOL | 1 = OCmd_SelAvg 就绪。 |
ORdy_SelB | BOOL | 1 = OCmd_SelB 就绪(启用 HMI 按钮)。 |
ORdy_SelMax | BOOL | 1 = OCmd_SelMax 就绪(启用 HMI 按钮)。 |
ORdy_SelMin | BOOL | 1 = OCmd_SelMin 就绪(启用 HMI 按钮)。 |
公共 InOut 成员 | 数据类型 | 说明 |
|---|---|---|
BusObj | BUS_OBJ | 总线组件 |
BUS_OBJ 结构
成员 | 数据类型 | 说明 |
|---|---|---|
Inp_Cmd | DINT | 用于声明命令的输入 |
Out_Cmd | DINT | 产生的命令 |
Inp_CmdLLH | DINT | 水平常高命令的输入 |
Out_CmdLLH | DINT | 产生的线路水平高命令 |
Inp_Sts | DINT | 用于声明状态的输入 |
Out_Sts | DINT | 产生的状态 |
Inp_CmdAck | DINT | 用于声明命令确认的输入 |
Out_CmdAck | DINT | 产生的命令确认 |
Inp_SeverityMax | DINT | 输入:最大报警严重性 |
Out_SeverityMax | DINT | 最大报警严重性的产生 |
Cfg_CmdMask | DINT | 命令的传播掩码 |
Cfg_CmdLLHMask | DINT | 线路水平高命令的传播掩码 |
Cfg_StsMask | DINT | 状态的传播掩码 |
Ref_Index | DINT | 总线数组索引 |
操作
下图展示了 PAID 指令的功能:

报警
为以下成员定义基于离散标签的报警。
成员 | 报警名称 | 说明 |
|---|---|---|
Sts_Fail | Alm_Fail | 当两个传感器 PV 不良或超出范围时引发。 |
Sts_Diff | Alm_Diff | 当检测到两个传感器之间的 PV 信号上限差超过配置的限值时引发。 |
Sts_NoneGood | Alm_NoneGood | 当两个 PV 均不具备良好质量(例如两者都不确定)时引发。 |
Sts_OneGood | Alm_OneGood | 仅有一个 PV 质量良好时引发。 |
将报警标记为已使用或未使用,并设置基于离散标签的报警的标准配置成员。以此格式访问报警元素:
PAIDTag.@Alarms.AlarmName.AlarmElement
提供程序、操作员和外部命令,用于同时重置以及重置并确认指令的所有报警(报警集)。下图显示了命令与 PDO 指令的交互方式。

初始化
指令通常在首次运行时进行初始化。通过设置 Inp_InitializeReq = 1 请求重新初始化。为了进行正确的初始化,如果在执行代码的联机编辑时添加指令,请确保默认值 Inp_InitializeReq = 1。
HMI 字符串配置
配置 HMI 面板(如 FactoryTalk 视图中所示)和 Logix Designer 配置对话框的字符串。
- 说明
- 图形符号的标签
- 用于 HMI 面板调用的显示库
- 指令名称
- 区域名称
- URL 链接
- 更多信息
- 所选模拟 PV 工程单位 - Val 成员的单位元数据,Val.@Units。
- 模拟输入 A 说明 - Inp_PVAData 成员的标记元数据,Inp_PVAData.@Label。
- 模拟输入 B 说明 - Inp_PVBData 成员的标记元数据,Inp_PVBData.@Label。
- 允许导航对象标签名称输出 - PAID 成员 Val 标签的导航元数据。
- 允许导航对象标签名称输入 A - PAID 成员 Inp_PVAData 标签的导航元数据。
- 允许导航对象标签名称输入 B - PAID 成员 Inp_PVBData 标签的导航元数据。
监控 PAID 指令
使用 PlantPAx 过程对象库中的操作员面板进行监控。
影响数学状态标志
编号
严重/轻微故障
没有特定于此指令的故障。请参见“数组索引编制”,了解关于数组索引故障的信息。
执行
梯形图
条件/状态 | 执行的操作 |
|---|---|
预扫描 | 梯级输出条件设置为假。 |
指令首次运行 | 每次执行时自动清除的所有命令都将被清除和忽略。 PSet_Owner 和 Val_Owner 设置为 0。 指令正常执行。 |
梯级输入条件为假 | 梯级输出条件设置为假。 每次执行时自动清除的所有命令都将被清除和忽略。 PSet_Owner 和 Val_Owner 设置为 0。 重置锁定的报警。 清除总线对象命令和 HMI 总线对象索引 在接收到“禁用”、“启用”、“抑制”、“取消抑制”所有报警时执行总线命令。 执行总线命令状态传播。 内部计时器已重置。 |
梯级输入条件为真 | 将梯级输出条件设置为梯级输入条件。 指令执行。 |
后扫描 | 梯级输出条件设置为假。 |
功能块图
条件/状态 | 执行的操作 |
|---|---|
预扫描 | EnableOut 设置为假。 |
指令首次运行 | 每次执行时自动清除的所有命令都将被清除和忽略。 PSet_Owner 和 Val_Owner 设置为 0。 指令正常执行。 |
指令首次扫描 | 请参阅“功能块图”表中的“指令首次运行”行。 |
EnableIn 为假 | EnableOut 设置为假。 每次执行时自动清除的所有命令都将被清除和忽略。 PSet_Owner 和 Val_Owner 设置为 0。 重置锁定的报警。 清除总线对象命令和 HMI 总线对象索引 在接收到“禁用”、“启用”、“抑制”、“取消抑制”所有报警时执行总线命令。 执行总线命令状态传播。 内部计时器已重置。 |
EnableIn 为真 | EnableOut 设置为真。 指令执行。 |
后扫描 | EnableIn 和 EnableOut 位设置为假。 |
结构化文本
在结构化文本中,EnableIn 在普通扫描期间始终为真。指令在处于由逻辑激活的控制路径中时执行。
条件/状态 | 执行的操作 |
|---|---|
预扫描 | 请参阅“功能块图”表中的“预扫描”行。 |
指令首次运行 | 请参阅“功能块图”表中的“指令首次运行”行。 |
EnableIn 为真 | 请参阅“功能块图”表中的“EnableIn 为真”行。 |
后扫描 | 请参阅“功能块图”表中的“后扫描”行。 |
示例
本示例使用 PAID 指令,利用两个模拟输入信号(双传感器、双发送器)监控一个模拟过程变量 (PV)。使用 PAID 指令可选择一个传感器、另一个传感器,或者两个传感器的平均值、最小值或最大值。如果两路输入信号之差超出配置的限值,则会生成报警。
在此示例中,应用程序使用两个模拟传感器(A、B)。这些模拟的平均值在逻辑中的其他位置用于控制单独的应用程序元素。
Inp_PVAData 和 Inp_PVBData 参数连接到来自两个模拟发送器的值。每个传感器的故障状态都与指令的不良输入(例如 Inp_PVABad)相关。输出参数 Val、Sts_PVBad 和 Sts_PVUncertain 随后可连接到 Inp_PVData、Inp_PVUncertain 和 Inp_ChanFault 进行控制。
梯形图

功能块图

结构化文本
PAI(AIT_201A);
PAI(AIT_201B);
AY_201.Inp_PVAData := AIT_201A.Val;
AY_201.Inp_PVASrcQ := AIT_201A.SrcQ;
AY_201.Inp_PVANotify := AIT_201A.Sts_eNotify;
AY_201.Inp_PVBData := AIT_201B.Val;
AY_201.Inp_PVBSrcQ := AIT_201B.SrcQ;
AY_201.Inp_PVBNotify := AIT_201B.Sts_eNotify;
PAID(AY_201,0);
AI_201.Inp_PVData := AY_201.Val;
AI_201.Inp_ChanFault := AY_201.Sts_PVBad;
AI_201.Inp_PVUncertain := AY_201.Sts_PVUncertain;
PAI(AI_201);
提供反馈