今天来说说PI实时数据库。PI 实时数据库系统(Plant Information System)在自动化行业的应用,可以说是最广泛的。 美国 OSI Software 公司开发。这个玩意确实很强大,某化工企业20多万点轻松搞定。读取数据一次5万点+,几秒搞定,也许还能快。但是,说话一定听但是。也不知道为什么,网上几乎搜不到相关资料。跟Oracle,Mysql等关系型数据库不同,相关资料网上多的是。但是这玩意,网上几乎搜不任何资料。据说这个有个圈子,只有在圈子里面人家才带你玩。

如果企业准备用PI做实时数据库,部署、实施、数据采集等当然OSI自己的人来搞,这里我们只说一下怎么从PI读取数据,至于如何把数据写进去,一般是OSI公司的人自己干这个活。

这个读数的套路和PHD差不多,也是先安装客户端,然后通过OSI自带的API程序读取数据。所谓的API其实就是OSIsoft.AFSDK.dll ,就这个玩意,这个是最新版本。如果PI版本比较老,那么API可能是OSIsoft.SDK.dll。

客户端程序 PI-AF-Client_2018-SP3-Patch-3_.exe,安装过程其实也简单,基本上就是下一步下一步。这个程序也是OSI公司给的。

安装完了如上图现实,具体配置不算太复杂。如果有搞不定的场景,可以找PI的技术支持哦。这个不是重点。

客户端搞好了就开始写代码了,C#程序建立工程什么的,这里就不说了。关键一步就是引用PI动态库 OSIsoft.AFSDK.dll,这个文件在客户端的安装目录下就有,找不到的在安装目录搜一下。

具体写代码不难,首先是连接PI服务器,简单示意如下:

/**
using OSIsoft.AF;
using OSIsoft.AF.PI;
using OSIsoft.AF.Asset;
using OSIsoft.AF.Time;
**/private static string piAddress =  "pi";   //配置客户端名称
private static PIServer piServer;private string StartServer()
{try{if (piServer == null){piServer = PIServer.FindPIServer(piAddress);piServer.Connect();}return string.Empty;}catch (Exception ex){return "连接PIserver失败 " + ex.Message;}
}

如果连接不报错,就可以读取数据了。

string[] tagArray = { "123.abc","124.abc" };  //点名PIPointList pList = new PIPointList(PIPoint.FindPIPoints(piServer, tagArray));
AFListResults<PIPoint, AFValue>  list = pList.CurrentValue();  //遍历这个即可foreach (AFValue value in list.Results)
{object o = value.Value;string key = value.PIPoint.Name;dateTime dt = value.Timestamp.LocalTime;int  i = (int)value.Status;//
}

好像就差不多了,数据出来了,剩下事情是你想干啥你就干啥了。

在客户端的安装路径下help目录,有个AFSDK.chm 的帮助文件,仔细看看,代码怎么写,想实现具体业务,在这里基本都有。

自动化行业编程似乎不难。

如何通过C#读取PI实时数据相关推荐

  1. 如何读取PHD实时数据

    最近因为业务需要,研究了一下如何从霍尼韦尔的PHD实时库读取数据,这个玩意跟平常用的数据库Oracle,Sqlserver,Mysql都不太一样,网上几乎搜不到任何资料.为什么资料这么少,我也不太明白 ...

  2. python读取大智慧数据_读取大智慧实时数据

    kalummark8 2011-7-17 21:26 经过研究你之前的方法,现在这个问题解决了,但另一个问题又出来,应该是关系到数据类型的问题,setcode(600033) //关于这里输入的代码, ...

  3. PI 实时数据库系统

    PI 实时数据库系统(Plant Information System)是由美国 OSI Software 公司开发的基于C/S.B/S结构的商品化软件应用平台,是工厂底层控制网络与上层管理信息系统连 ...

  4. PI.实时数据库系统---详细介绍

    PI 实时数据库系统(Plant Information System)是由美国 OSI Software 公司开发的基于C/S.B/S结构的商品化软件应用平台,是工厂底层控制网络与上层管理信息系统连 ...

  5. OSI PI实时数据库系统

    OSI PI实时数据库系统 PI 实时数据库系统 (Plant Inhrmation System) 是由美国 OSI Software 公司开发的基于 C/S.B/S 结构的商品化软件应用平台,是工 ...

  6. 设计思路工作笔记-使用当天时间戳的差值读取实时数据绕过错误数据

    目录 背景 演示 背景 这里我只是举个栗子,如有雷同,纯粹巧合. 比如一套实时数据读取系统,他会把数据读取到数据库,可能1分钟写入数据库一次,可能1s,可能5分钟.这里面经常会读取到错误数据. 这里可 ...

  7. 基于人脸识别的课堂签到管理系统(四)---摄像头上传实时数据,百度AI读取并返回信息以及多线程操作

    基于人脸识别的课堂签到管理系统(四)---摄像头上传实时数据,百度AI读取并返回以及多线程操作 一. 前言概述 二.摄像头上传数据,读取百度AI返回信息 三.多线程操作 四.程序展示 五.相关下载 一 ...

  8. 基于 Flex+GoogleMap+PHP 的远程实时数据监测系统

    Flex 是 Adobe 公司开发的支持 RIA(Rich Internet Applications) 开发和部署的技术产品,借助于其强大的功能,Flex 能够开发基于 flash 的 web 界面 ...

  9. 2021年大数据Spark(五十):Structured Streaming 案例一实时数据ETL架构

    目录 案例一 实时数据ETL架构 准备主题 ​​​​​​​模拟基站日志数据 ​​​​​​​实时增量ETL 案例一 实时数据ETL架构 在实际实时流式项目中,无论使用Storm.SparkStreami ...

最新文章

  1. OpenResty搭建高性能服务端
  2. 打开深度神经网络黑箱:竟是模块化的?图聚类算法解密权重结构 | ICML 2020
  3. html5的音乐标签使用,html5 音乐播放器 audio 标签使用概述_html5教程技巧
  4. scrapy框架_入门Scrapy框架看这一篇文章就够了
  5. linux (fc8) 下的IE
  6. 自定义ElementUI风格树形组件,详解递归组件的使用及事件数据传递,视图更新等问题
  7. python程序设计采用格式框架结构_Python笔记:基于Django框架的项目架构程序设计...
  8. XML DOM Object Model in .NET [2/3]
  9. C++引用与指针的比较
  10. 树磁盘[HBase] LSM树 VS B+树
  11. Fizz Gateway API in Java
  12. 【图论】新年好(最短路的综合问题)
  13. oppor17刷鸿蒙系统,OPPO R17 Pro手机6G+128GB版本上线
  14. novipnoad电影网站分析
  15. php执行fastlane,fastlane教程
  16. MT7921方案WIFI6无线网卡驱动编译方法
  17. 使用kvm部署虚拟化服务器,KVM虚拟化(KVM的部署及使用)
  18. 类型多样的数码配件免抠元素素材,速来收藏
  19. 【GamePlay】UGUI的注意事项
  20. 武汉工程大学第一届程序设计女生赛(牛客contest 4746)解题报告 Apare_xzc

热门文章

  1. 安卓陀螺仪异常html5,手机陀螺仪模块损坏引起的常见故障现象是()
  2. 市盈率概念及计算2021-1-19
  3. Redis分布式锁实现OneByOne组件
  4. 关于ARM芯片中内存架构的疑惑记录
  5. 使用cygwin X server实现Linux远程桌面 (for windows)
  6. 电脑触摸板不灵的原因
  7. layui实现动态获取两级联动数据
  8. 【瑞萨RA_FSP】WiFi——ESP8266模块通讯
  9. STM32F407ZG TIM通用定时器
  10. 学习计算机基础知识论文,中小学生应注重学习计算机的基础知识_信息技术论文.doc...