过程阀门统计对象 (PVLVS)
此信息适用于 CompactLogix 5380P、ControlLogix 5580P 和 ControlLogix 5590P 控制器。
过程阀统计对象 (PVLVS) 指令用于监控两个状态(打开和关闭)阀,并记录冲程时间和冲程计数的统计信息,以帮助解决规划维护或诊断阀和传动装置问题。PVLVS 指令专用于 PVLV(电磁、电机和手控)阀指令。
PVLVS 指令记录以下统计信息:
- 当前状态(关闭、打开、打开、关闭、停止/其他)下的时间长度
- 阀上一次处于每种状态(已关闭、正在打开、已打开、正在关闭、已停止/其他)的时间长度
- 每种状态(已关闭、正在打开、已打开、正在关闭、已停止/其他)所用的最长时间;这些是先前统计信息获得的最高值
- 处于每种状态(已关闭、正在打开、已打开、正在关闭、已停止/其他)的总时间
- 最后 10 次关闭(关闭冲程)时间的移动平均值
- 最后 10 次打开(打开冲程)时间的移动平均值
- 已完成的打开冲程(从已关闭到已打开)数
- 已完成的关闭冲程(从已打开到已关闭)数
- 不完整的打开冲程(从已关闭到已打开,再返回到已关闭)数
- 不完整的关闭冲程(从已打开到正在关闭,再返回到已打开)数
- 阀处于已停止/其他状态的次数
- 所用时间大于所配置的“慢速打开时间”的打开冲程数
- 所用时间大于所配置的“慢速关闭时间”的关闭冲程数
可用语言
梯形图

功能块图

结构化文本
PVLVS (PVLVS_01);
操作数
重要提示:
以下情况下会导致运行出现意外:
- 输出标签操作数被覆盖。
- 结构操作数的成员被覆盖。
- 除非另外指定,否则结构操作数由多条指令共用。
指令中混用数据类型时,需遵从相关的数据转换规则。请参阅 数据转换。
配置操作数
操作数 | 类型 | 格式 | 说明 |
|---|---|---|---|
PlantPAx Control | P_VALVE_STATISTICS | 标签 | 指令正确运行所需的数据结构。 |
P_VALVE_STATISTICS 结构
公共成员是可通过编程方式访问的标准可见标签成员。专用隐藏成员用于 HMI 面板中,无法通过编程方式访问。专用成员在公共成员后面的单独表中列出。
公共输入成员 | 数据类型 | 说明 |
|---|---|---|
EnableIn | BOOL | 启用输入 - 系统定义的参数 默认值为真。 |
Inp_InitializeReq | BOOL | 1 = 请求初始化指令。指令通常在首次运行时进行初始化。需要重新初始化时使用此请求。该指令自动清除该操作数。 |
Inp_Closed | BOOL | 1 = 确认设备已关闭。 默认值为假。 |
Inp_Opened | BOOL | 1 = 确认设备已打开。 默认值为假。 |
Inp_StopOther | BOOL | 1 = 确认设备已停止/处于其他状态。 默认值为假。 |
Cfg_HasStopOther | BOOL | 1 = 设备已停止或处于其他待监控状态。 默认值为假。 |
Cfg_SlowOpenTime | REAL | 引发 Sts_SlowOpen 之前的最长打开时间(秒)。有效值 = 0.0 到 2147483.0 秒。 默认值为 10.0。 |
Cfg_SlowCloseTime | REAL | 引发 Sts_SlowClose 之前的最长关闭时间(秒)。有效值 = 0.0 到 2147483.0 秒。 默认值为 10.0。 |
PCmd_ClearTotTimes | BOOL | 用于清除总时间统计信息的程序命令。 默认值为假。 |
PCmd_ClearMaxTimes | BOOL | 用于清除最长时间统计信息的程序命令。 默认值为假。 |
PCmd_ClearStrokeCounts | BOOL | 用于清除冲程数统计信息的程序命令。 默认值为假。 |
PCmd_ClearSlowCounts | BOOL | 用于清除设备慢速计数统计信息的程序命令。 默认值为假。 |
PCmd_ClearMAvgs | BOOL | 用于清除移动平均冲程时间的程序命令。 默认值为假。 |
公共输出成员 | 数据类型 | 说明 |
|---|---|---|
EnableOut | BOOL | 启用输出 - 系统定义的参数 |
Val_CurrClosedTime | REAL | 处于关闭状态的当前时间(秒)。 |
Val_LastClosedTime | REAL | 设备上一次关闭后处于已关闭状态的时间(秒)。 |
Val_TotClosedTime | REAL | 处于已关闭状态的累积时间(小时)。 |
Val_MaxClosedTime | REAL | 任何情况下处于已关闭状态的最长时间(小时)。 |
Val_CurrOpeningTime | REAL | 处于“正在打开”状态的当前时间(秒)。 |
Val_LastOpeningTime | REAL | 设备上一次打开后处于“正在打开”状态的时间(秒)。 |
Val_TotOpeningTime | REAL | 处于“正在打开”状态的累积时间(小时)。 |
Val_MaxOpeningTime | REAL | 任何情况下处于“正在打开”状态的最长时间(小时)。 |
Val_MAvgOpeningTime | REAL | 移动平均打开冲程时间,最后 10 个完整的打开冲程(秒)。 |
Val_CurrOpenedTime | REAL | 处于已打开状态的当前时间(秒)。 |
Val_LastOpenedTime | REAL | 设备上一次打开后处于已打开状态的时间(秒)。 |
Val_TotOpenedTime | REAL | 处于已打开状态的累积时间(小时)。 |
Val_MaxOpenedTime | REAL | 任何情况下处于已打开状态的最长时间(小时)。 |
Val_CurrClosingTime | REAL | 处于“正在关闭”状态的当前时间(秒)。 |
Val_LastClosingTime | REAL | 设备上一次关闭后处于“正在关闭”状态的时间(秒)。 |
Val_TotClosingTime | REAL | 处于“正在关闭”状态的累积时间(小时)。 |
Val_MaxClosingTime | REAL | 任何情况下处于“正在关闭”状态的最长时间(小时)。 |
Val_MAvgClosingTime | REAL | 在任何情况下处于“正在关闭”状态的最长时间(秒)。 |
Val_CurrStopOtherTime | REAL | 处于已停止/其他状态的当前时间(秒)。 |
Val_LastStopOtherTime | REAL | 设备上一次停止(或其他状态)后处于已停止/其他状态的时间(秒)。 |
Val_TotStopOtherTime | REAL | 处于已停止/其他状态的累积时间(小时)。 |
Val_MaxStopOtherTime | REAL | 任何情况下处于已停止/其他状态的最长时间(小时)。 |
Val_CpltOpenCount | DINT | 完整的设备打开冲程(从已关闭到已打开)计数。 |
Val_CpltCloseCount | DINT | 完整的设备关闭冲程(从已打开到已关闭)计数。 |
Val_IncpltOpenCount | DINT | 不完整的设备打开冲程(已关闭 - 正在移动 - 已关闭)计数。 |
Val_IncpltCloseCount | DINT | 不完整的设备关闭冲程(已打开 - 正在移动 - 已打开)计数。 |
Val_StopOtherCount | DINT | 设备处于已停止/其他状态的次数。 |
Val_SlowOpenCount | DINT | 设备慢速打开的计数。 |
Val_SlowCloseCount | DINT | 设备慢速关闭的计数。 |
Sts_SlowOpen | BOOL | 1 = 上一次从已关闭到已打开的冲程超出所配置的时间阈值。 |
Sts_SlowClose | BOOL | 1 = 上一次从已打开到已关闭的冲程超出所配置的时间阈值。 |
Sts_Err | BOOL | 1 = 配置错误:慢速打开时间或慢速关闭时间无效。 |
Sts_ErrSlowCloseTime | BOOL | 1 = 配置出错:SlowCloseTime 计时器预设值无效(使用 0.0 到 2147483.0)。 |
Sts_ErrSlowOpenTime | BOOL | 1 = 配置出错:SlowOpenTime 计时器预设值无效(使用 0.0 到 2147483.0)。 |
专用输入成员 | 数据类型 | 说明 |
|---|---|---|
MCmd_ClearMAvgs | BOOL | 用于清除移动平均冲程时间的维护命令。 默认值为假。 |
MCmd_ClearMaxTimes | BOOL | 用于清除最长时间统计信息的维护命令。 默认值为假。 |
MCmd_ClearSlowCounts | BOOL | 用于清除设备慢速计数统计信息的维护命令。 默认值为假。 |
MCmd_ClearStrokeCounts | BOOL | 用于清除冲程计数统计信息的维护命令。 默认值为假。 |
MCmd_ClearTotTimes | BOOL | 用于清除总时间统计信息的维护命令。 默认值为假。 |
操作
下图展示了 PVLVS 指令的功能:










HMI 字符串配置
配置 HMI 面板(FT 视图)和 Logix Designer 配置对话框的字符串。字符串将设置为标签项的扩展属性。仅配置
Logix Designer
中的字符串。- 已确认阀已停止/处于其他状态(在 Logix Designer 对话框中)- Inp_StopOther 项的说明。
- 说明
- 图形符号的标签
- 用于 HMI 面板调用的显示库
- 指令名称
- 区域名称
- URL 链接
监控 PVLVS 指令
使用 PlantPAx 过程对象库中的操作员面板进行监控。
影响数学状态标志
编号
严重/轻微故障
没有特定于此指令的故障。请参见“数组索引编制”,了解关于数组索引故障的信息。
执行
梯形图
条件/状态 | 执行的操作 |
|---|---|
预扫描 | 梯级输出条件设置为假。 关机后再开机,总时间、冲程计数和慢速计数将保持不变。当前时间将被清除。 内部状态设置为“未知”。当输入内容显示阀在已知条件下的状态时,主逻辑将转换为相应的状态。 |
指令首次运行 | 每次执行时自动清除的所有命令都将被清除并忽略。 指令正常执行。 |
梯级输入条件为假 | 将梯级输出条件设置为梯级输入条件。 如果该指令处于假梯级上,或者 EnableIn 在 FBD 中为假,则会保持“总计时间”、“冲程计数”和“慢速计数”,但会将当前时间清零。 内部状态设置为“未知”。 将上一状态的当前时间复制到它的上次时间,并重置当前时间(累加 10 个小时的小时数,如果适用)。 内部状态设置为“未知”(禁用)。 当恢复正常执行(逻辑例程)时,如果输入内容显示阀在已知条件下的状态,将转换为相应的状态。 应扫描所有保持型计时器假 (FALSE) 以将其停止。 |
梯级输入条件为真 | 将梯级输出条件设置为梯级输入条件。 指令执行。 |
后扫描 | 梯级输出条件设置为假。 |
功能块图
条件/状态 | 执行的操作 |
|---|---|
预扫描 | 请参阅“梯形图”表中的“预扫描”行。 |
指令首次运行 | 请参阅“梯形图”表中的“指令首次运行”行。 |
指令首次扫描 | 请参阅“梯形图”表中的“指令首次运行”行。 |
EnableIn 为假 | 请参阅“梯形图”表中的“梯级输入条件为假”。 |
EnableIn 为真 | 请参见“梯形图”表中的“梯级输入条件为真”行。 |
后扫描 | EnableIn 和 EnableOut 位设置为假。 |
结构化文本
在结构化文本中,EnableIn 在普通扫描期间始终为真。因此,如果指令处于由逻辑激活的控制路径中,指令将会执行。
条件/状态 | 执行的操作 |
预扫描 | 请参阅“梯形图”表中的“预扫描”行。 |
指令首次运行 | 请参阅“梯形图”表中的“指令首次运行”行。 |
EnableIn 为真 | 请参见“梯形图”表中的“梯级输入条件为真”行。 |
后扫描 | EnableIn 和 EnableOut 位设置为假。 |
示例
本部分介绍 PVLVS 指令如何收集有关电动阀的统计信息。在此示例中,使用 PVLVS 指令控制电动阀。通过将 PVLVS 实例标签命名为与 PVLV 标签相同的名称并加上 ValveStats,PVLVS 实例标签会在 HMI 上自动链接到阀实例。在本例中,电动阀打开、关闭,或者电机在行程期间可能停止移动,然后达到任一位置。可使用 PVLVS 指令跟踪这三种状态的统计信息。在此示例中,参数 Inp_Closed、Inp_Opened 和 Inp_StopOther 连接到 PVLV 指令的参数 Sts_Closed、Sts_Opened 和 Sts_Stopped。PVLVS 指令跟踪已完成的冲程,以及低于预期的打开和关闭冲程。Cfg_SlowOpenTime 和 Cfg_SlowCloseTime 参数设置为 10,表示任何超过 10 秒的转换都将被视为慢速转换。
梯形图

功能块图

结构化文本
PVLVMO_ValveStat.Inp_Closed := PVLVMO.Sts_Closed;
PVLVMO_ValveStat.Inp_Opened := PVLVMO.Sts_Opened;
PVLVMO_ValveStat.Inp_StopOther := PVLVMO.Sts_Stopped;
PVLVS (PVLVMO_ValveStat);
提供反馈