C#实现 OPC历史数据存取研究 (原文)

          C#实现 OPC历史数据存取研究 (原文)
Research of Accessing the OPC Historical Data by Using C#
文孟飞[1]
,何海江[2]
,阳春华[3]
WEN meng-fei
[1]
, HE hai-jiang[2]
, YANG chun-hua
[3]
 
(1、长沙广播电视大学;2、长沙大学计算机中心;3、中南大学信息科学与工程学院)
摘要:在 OPC.NET COM  包装器和 OPC.NET API 的基础上,用 C#实现一个实例,从 OPC
历史数据服务器抽取数据,对数据聚合运算。结果表明,该技术能应用于工业过程数据仓库,
综合分析自动化系统所产生的历史数据,取得了满意的效果。
关键词:OPC 历史数据;工业过程;.NET
中图分类号:TP312         文献标识码:A
 
Abstract: One application coded by C# on the basis of OPC.NET COM Wrapper and OPC.NET
API is realized,it can be used to extract and aggregate data from the OPC historical data server.
The results show its good performance when used in the industrial process data warehouse to
analyze synthetically the historical data produced by the automation system.
Key Words: OPC historical data; industrial process;.NET
1  前言
目前工业界面临激烈的全球竞争,企业为了生存,需要各种分析和决策去占领和控制市
场。为提高竞争力,许多企业使用 DCS、SCADA、PLC 等自动化设备和软件,来实现生产过
程自动化[1]
。 现在大多数这一类工业企业都保存了大量的过程数据,但由于这些自动化系统属
于不同的厂商,数据往往分散在异构的计算机或控制系统上,各个自动化系统所拥有的历史数
据都只能为本身使用,不能统一的存储、调用和管理,造成数据资源的极大浪费,许多问题因无
法得到足够的数据进行综合分析而难以得到合理快捷的解决。本文遵循 OPC 历史数据规范,
开发了一个历史数据抽取的程序,为工业过程历史数据分析软件提供基础,文章分五个部分介
绍实现过程。
2 OPC历史数据规范
OPC 历史数据服务器实现两个逻辑意义上的对象,每个对象包含一个或多个接口。
IOPCHDA_Server、IOPCHDA_SyncRead 和 IOPCHDA_Browser(后文简称 HDA项)是这两
个逻辑对象包含的重要接口。历史数据客户端软件根据功能要求,获取对应的接口,再调用接
口,从服务器获得所需要的数据。
3 服务器的枚举和连接
OPC基金会[2]
对会员提供了OpcRcw动态链接库、OPC NET COM 包装器和OPC NET
API 1.1版本,前两者完成了COM编排过程中遇到的包括数据类型转换、接口实现、参数传递
等复杂的技术工作,后者将OPC复杂的规范封装成简单易用的C#类。本文在此两种技术的基
础上,建立客户端软件,与OPC历史数据服务器交换数据。遵照Visual Studio.NET的要求,引用
组件OpcNetApi.dll和OpcNetCom.dll,在程序中使用using,加入这些命名空间[3]

下面的代码用来浏览某台计算机上已安装的历史数据服务器。
 Opc.IDiscovery m_discovery = new OpcCom.ServerEnumerator();
Opc.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值