SuperAPI AI 工具集

matlab-find-pi-assets

通用与其它

查看项目

更新于 10-16 00:21

技能介绍

用途:在 MATLAB 中连接 PI 系统、定位资产并读取数据,使用 Industrial Communication Toolbox 封装函数而非原始 .NET SDK 互操作。

两条工作流:A 直接标签查询(R2022a+),使用 piclient、tags、read;B PI Asset Framework 导航(R2026a+),使用 afclient、findElementByName、getAttributes、readHistory 等。

适用:查找或查询 PI AF 元素与属性;按标签名或描述查找 PI 标签;读取 AF 属性或 PI 标签的历史数据;涉及 PI AF 服务器、PI Data Archive、OSIsoft、AVEVA PI 或资产层级;按模板列出元素。不适用:创建或修改 AF 元素/模板、实时流、事件帧、通知、PI Vision 或 PI Web API、向 PI 写回数据。

用法要点:先确认服务器(必须询问用户,不可自动选择),再连接。工作流 A:piObj = piclient('serverName');tagList = tags(piObj, Name='pattern*');当前值用 read(piObj, tagName),历史值用 read(piObj, tagName, DateRange=[start end], Interval=..., AggregateFcn=...)。工作流 B:afObj = afclient('serverName');用 listDatabases 并让用户选择数据库;用 findElementByName、findElementByTemplate 或 findElementByPath 查找元素(路径必须用双引号字符串);用 getAttributes 获取属性并确认;当前值用 read(attr),历史值用 readHistory(attr, startTime, endTime, Interval=hours(1), AggregateFcn="average")。

限制:需相应 MATLAB 版本与工具箱;服务器和数据库必须由用户确认;读取后应检查 Status 列是否为 Bad;AF 的 Value 为 cell 数组,PI Data Archive 的 Value 为 double 数组。其他细节暂未提供。