本文主要内容来自Rockwell Automation知识库,是结合个人日常使用后整理的内容。
原英文版链接:FactoryTalk View Machine Edition Best Practices – Alarms
查看原文内容,请确认你拥有TechConnect合同权限。
❓问题
FactoryTalk View Machine Edition报警功能的最佳做法是什么?
回答
以下信息适用于所有版本的PanelView Plus终端
配置FactoryTalk View ME报警
在设计中选择最有效的报警触发器(Trigger)类型,每一种类型的报警触发器都有各自的优缺点。
- 可能会减少需要的触发器标签数量
- 提高通讯效率
- 减少开发工作
可用的触发器类型
- 值(Value)
- 位(Bit)
- 最低有效位(LSBit)
报警触发器的比较
触发器类型 | 优势 | 不利因素 |
---|---|---|
值(Value) | 需要信号交互才能同时发出报警 PLC信号交互管理所有进入HMI的报警 INT是最有效的值触发器 | 必须在PLC中有额外的逻辑进行信号交互 |
位(Bit) | 使用单个标签生成多个报警信息 | 必须是设备标签 |
最低有效位(LSBit) | 按优先级顺序触发报警 仅最低位被触发 | LSB类型的触发器不适用于使用“默认”数据类型的标签,默认数据类型为浮点型,但LSB不支持浮点型 |
上表中提到的默认数据类型为触摸屏自带的标签功能
位(Bit)或 最低有效位(LSB)类型触发器可用于:
- HMI数字标签
- 直接引用数组语句
- 直接引用BOOL量
数组类型触发器的使用技巧
L修饰符是什么?
L修饰符是添加到“触发标签”的另一个参数,该参数使得报警子系统将标签识别为数组。
注意:要基于控制器位数组触发报警,必须使用直接引用标签。{标签名,L数组长度}
例如:{::[PLC1]Program:Alarm,L1}
数组中位的数量取决于标签的数据类型。例如整型数据类型,每个元素返回16位,而位数据类型每个元素返回8位。
L修饰符有哪些好处?
- 允许同时触发报警
- 无需与PLC信号交互
- 触发器以单独的位作为监视目标
- 减少触发标签
- 返回一个数组
- 提高一个触发器的利用率
报警标签和筛选
分配单独的或组触发器标签。
- 为特定的报警对象应用标签筛选器
- 易用性可以加快操作员响应时间
- 筛选可能对具有严重报警的应用提供更快的响应
选择适当的报警历史记录大小
- 历史记录大小等于预期的最大报警数量
- 查看你期望看到的
- 根据主要的报警先进先出原则设置历史记录大小
- 最大历史记录大小为10000条记录
FactoryTalk View 文件查看器
- 一个可以在PC上查看“报警历史记录”的外部实用程序
- 查看器信息包括触发标签,报警信息,触发时间和确认时间
报警性能影响
报警功能和性能影响
- 嵌入式报警信息
- 最大刷新速率
- 触发器标签的数量
为什么嵌入式报警消息会影响性能?
- 嵌入式变量在运行期间会在后台不断更新
- 多任务处理需要额外的开销
- 扫描速率与最大刷新速率直接相关
报警对内存的影响
报警触发器
- 启动时,所有的报警触发器都缓存到RAM中
- 在任何地方,内存消耗可以是几Kb或Mb
- 内存使用情况与扫描时触发标签的数量有关
- 报警触发器过多将导致程序加载时间更长
- 将出现“Starting Alarms”对话框,直到操作完成
报警信息
- 报警信息的最大长度为256个字符
摘录自帮助文件:
消息
输入一条信息,最多 256 个字符。
或
右键单击以打开上下文菜单,然后单击编辑字符串。使用该选项将嵌入式变量包含到信息中。
要在消息中创建换行符,请键入 \n。如果希望在消息中显示字符序列 \n,请键入 \n,它不会被解释为换行符。
提示:
如果在“报警设置”编辑器中“信息”选项卡中定义的信息使用一个嵌入式变量来显示报警的值,并且如果在应用程序启动时报警正处于报警状态中,报警条将显示问号来代替嵌入变量。这是因为报警系统无法确定报警被触发的时间,因此无法确定触发报警时变量的值。当嵌入式变量的值重置为 0 后,该值将准确显示下一次触发报警的时间。
嵌入报警消息的变量中,不能使用标签占位符 (#n)。
- 过长的报警信息将会占用更多的内存
- 报警信息文件包含在.MER文件之中
- .MER文件越大,消耗的内部存储空间就越大
报警历史记录大小
- 报警历史全部记录文件将会有20字节的header和CRC+(30字节*N(N为报警历史记录大小,默认设置为128))
- 同时占用RAM和存储卡的存储空间
报警占用的通讯带宽
为什么要优化触发器标签?
- 分散的触发标签将需要额外的通讯数据包
- 增加了额外的通讯开销
- 组态整体运行性能可能减慢
- 在PLC, SLC和MicroLogix中每个数据包包含244个字节的数据
优化触发标签以提升通讯效率
- 在连续的数据组中组合报警触发器
- 优化的触发器将最大限度减少数据包的产生
- 提高了通讯效率
主要适用于PLC,SLC和MicroLogix系列控制器
报警显示对象
显示对象 | 优点 | 缺点 |
---|---|---|
报警条 (Alarm Banner) | 显示嵌入式报警消息 显示所有报警条目的时间/日期 能够排队报警消息 能够显示非活动报警 支持多行消息 | 没有报警累积时间 没有报警数量项 |
报警列表 (Alarm List) | 显示嵌入式报警消息 按时间和触发器排序 显示所有报警条目的时间/日期 能够显示活动/不活动报警 动态显示确认/未确认的报警 支持多行消息 | 没有报警累积时间 没有报警数量项 |
报警状态列表 (Alarm Status List) | 提供所有过去或活动报警的视图 显示报警累积时间 支持多行消息 | 不显示内嵌式报警消息 报警按触发器排序而不是按时间 不显示报警输入的时间/日期 |
触发顺序
将触发器添加到“报警设置”编辑器中的顺序是按触发器排序时报警将出现的顺序。
在项目运行时启动报警
在启动设置中选中报警选择框以激活报警。
优化性能和内存的最佳做法
触发标签
- 通过实现数组来最大程度的减少触发标签的数量
- 组合连续的触发标签以最大程度的减少通讯开销
嵌入式报警消息
- 仅在需要时使用嵌入式报警消息
- 保持简短的报警消息描述
最大更新速率
- 最大更新速率应设置为即使运行任何后台任务(报警,数据记录,信息消息,全局连接)HMI仍将继续保持最佳的用户性能速率
- 除非操作者要求立即发出报警,否则为了获得良好的性能,应将“最大更新速率”设置为1秒或更高,以这样的速率,当前的任何操作都不会受到其他后台任务的严重影响
- 大多数HMI是无人监管的,因此使用比1秒更快的刷新速率是不合理的
重要的:
报警的“触发器”和“远程确认”不应设置为相同的标签,这样做可能会导致不可预测的报警确认行为。