4. AVEVA资产框架与KPI映射

在AVEVA PI System中,AF(Asset Framework)是连接原始时序数据与业务KPI的中间层。PI Data Archive负责存储位号级的原始测量值,而AF则把这些散落的位号组织成有业务含义的资产对象,并在其上定义属性、计算模板和KPI逻辑。没有AF,KPI只能靠位号名硬编码拼凑;有了AF,KPI就变成资产模型上可复用、可继承、可批量实例化的计算单元。

AF的三层结构:数据库、元素与属性

AF的顶层容器是AF Database,一个数据库通常对应一个工厂或一个业务域。数据库之下是Element(元素),元素是资产的实例化表示,可以嵌套形成层级。例如:华东一厂 → 一号产线 → 灌装工段 → 灌装机A,这就是一条典型的四级元素路径。每个元素由Element Template(元素模板)定义其结构,模板规定了该类型资产应该拥有哪些Attribute(属性)、哪些子元素、以及哪些分析计算。

属性是AF中最小的数据承载单元。属性有三种常见类型:一是PI Point属性,直接绑定到PI Data Archive中的位号,如灌装机A.电机电流绑定位号PL1_FILLER_A_MOTOR_I;二是常量属性,用于存储设备额定参数,如额定产能 = 12000 瓶/小时;三是公式属性,通过表达式引用其他属性,如负载率 = 实际速度 / 额定产能。属性还可以设置UOM(单位)和Data Reference(数据引用),后者决定了该属性如何取值——是直接读位号、做PI计算,还是执行AF Analysis。

从设备到KPI:资产建模的映射逻辑

将生产设备、产线、工段映射为KPI计算对象,核心是回答三个问题:KPI在哪个层级计算?它依赖哪些底层属性?这些属性如何沿层级向上汇总?

以OEE(设备综合效率)为例。OEE = 时间开动率 × 性能开动率 × 合格品率。在AF中,这三个分项不应全部塞进最底层的设备元素,而应按层级拆分:

  • 设备层(灌装机A):计算自身的运行时间、停机时间、实际产量、废品数。这些属性直接绑定该设备的PI位号或由PI Analysis计算得出。
  • 工段层(灌装工段):通过Rollup(汇总)分析,将下属各设备元素的产量、停机时间求和,得到工段级OEE。
  • 产线层(一号产线):再向上汇总灌装、旋盖、贴标等工段的数据,形成产线级KPI。

这种分层映射的好处是:KPI计算逻辑定义在模板上,实例化时自动继承。新增一条产线时,只需基于模板创建元素树并绑定位号,所有KPI分析自动生效,无需重复编写公式。

KPI与资产节点的关联方式

在AF中建立KPI与资产节点的关联,通常有三种手段。第一种是属性直接绑定:KPI本身就是元素的一个属性,通过PI Point Data Reference或Formula Data Reference取值。第二种是AF Analysis:在元素上创建分析,定义输入属性、计算表达式和输出属性,AF引擎按周期执行并将结果写回PI Data Archive或AF属性。第三种是Event Frame:用于捕捉“停机”“换型”“批次”等有开始和结束时间的事件,KPI如MTBF、MTTR就依赖Event Frame的持续时间来计算。

实际工程中,推荐的做法是:在Element Template上定义KPI属性及其Analysis,模板中引用相对路径(如..\ActualSpeed)而非绝对路径。这样当模板被实例化到不同产线时,属性引用自动解析到当前元素的上下文,避免因路径硬编码导致的批量失效。

AF Database:华东一厂 Element Template 定义结构 · Analysis 定义计算 · Event Frame 定义事件 一号产线(Element) 产线级KPI:OEE、日产量、综合能耗 灌装工段(Element) 工段级KPI:灌装OEE、灌装合格率 旋盖工段(Element) 工段级KPI:旋盖OEE、扭矩合格率 贴标工段(Element) 工段级KPI:贴标OEE、标签损耗率 灌装机A(Element) 属性:电机电流、实际速度、运行状态 Analysis:运行时间、停机时间、产量 旋盖机B(Element) 属性:扭矩值、实际速度、运行状态 Analysis:运行时间、停机时间、产量 贴标机C(Element) 属性:标签计数、实际速度、运行状态 Analysis:运行时间、停机时间、产量 PI Data Archive(位号层) PL1_FILLER_A_MOTOR_I · PL1_CAPPER_B_TORQUE · PL1_LABELER_C_COUNT · … KPI输出:OEE · 产量 · 合格率 · MTBF 通过AF Analysis写回PI Data Archive或AF属性 AF Database 产线/工段 Element 设备 Element KPI 输出

模板定义与实例化的关键细节

Element Template是AF建模效率的核心。一个设计良好的模板应包含:该类型资产的全部标准属性(含UOM和默认Data Reference)、标准子元素结构、以及标准Analysis。例如“灌装机”模板可以定义属性ActualSpeed、RatedSpeed、RunStatus,并定义AnalysisOEE_Calc,其表达式为:

OEE = (RunTime / PlannedTime) * (ActualSpeed / RatedSpeed) * (GoodCount / TotalCount)

其中RunTime由RunStatus的PI Analysis统计得出,GoodCount和TotalCount绑定到产量位号。模板中所有属性引用使用相对路径,如.\ActualSpeed或..\RatedSpeed,确保实例化后自动指向当前元素上下文。

实例化时,在产线元素下创建子元素并选择对应模板,然后逐一绑定PI Point。绑定完成后,AF Analysis会自动开始计算,KPI属性即可被PI Vision、PI DataLink或第三方看板读取。若某个位号绑定错误,该元素的KPI会显示“Bad”或“No Data”,此时应检查Data Reference配置和位号是否存在。

实践建议:在模板中为每个KPI属性添加Description和UOM,并在Analysis中设置合理的计算周期(如1分钟或5分钟)。对于跨层级汇总的KPI,优先使用AF Rollup Analysis而非手动逐级相加,减少维护成本。

映射关系的验证与排障

建立映射后,需要验证KPI是否按预期计算。常用方法有三种:一是在AF Client中查看元素的属性值,确认KPI属性有实时数据且数值合理;二是使用PI System Explorer的“Preview Results”功能,查看Analysis的中间计算结果;三是通过PI Vision趋势图对比KPI与底层位号的变化趋势,确认逻辑一致。

常见问题包括:属性引用路径错误导致KPI为“No Data”;PI Point绑定到了错误的位号导致数值异常;Analysis计算周期与数据更新频率不匹配导致KPI滞后。排查时应从底层位号开始逐级向上检查,先确认原始数据正常,再检查Analysis输入属性,最后检查输出属性。

AF资产框架的价值在于把“位号”变成“资产”,把“公式”变成“模板”,把“单点计算”变成“层级汇总”。掌握元素、模板、属性、Analysis和Event Frame这五个核心概念,就能把生产设备、产线和工段稳定地映射为可复用、可维护的KPI计算对象。