论文部分内容阅读
【摘 要】简要说明程序如何通过OPC 服务器接口读取PHD实时数据,并实现Excel读取实时数据库数据,具有行业应用价值。
关键词:PHD 实时数据库 OPC服务器 Excel VBA
一、前言
生产控制系统都存在大量的实时数据,这些数据都使用实时数据库存储和管理。查询都只能依靠厂家系统界面查询,如果需要对其数据导出并再综合应用,现有厂家系统与工具都无法实现。为此,研究实现Office Excel通过OPC接口读取PHD实时数据库数据。
二、正文
(一)OPC Server 配置
PHD OPC服务器是基于微软的DCOM技术来实现,使用OPC Server之前,需要进行相关的DCOM配置。
注意:修改DCOM的相关设置之后,需要重新启动计算机方可生效。
配置步骤详见《Uniformance PHD OPC Server User Guide》“View/Modify DCOM Configuration of PHD OPC Server”章节。
(二)OPC Client 连接测试
使用opcuser用户登陆本机,运行进入opc quick client应用程序,测试能否连接OPC Server成功:
1.菜单Edit: New Server Connection... --> 选OPC Data Access Servers Version 2.0 --> 选OPC.PHDServerDA.1 --> 输入:HL-MESOPC --> ok
2.选OPC.PHDServerDA.1 右键 --> 选New Group... --> Name处随便输入可分组信息
3.选中新建的组名:右键 --> 选New Item... --> Item ID 处输入点位号信息 --> 点一下右边勾 --> ok
如果连接测试成功,就可以进行VBA程序开发了。
(三) Excel OPC Client开发
开发过程中需要注意的事项:
1. OPC对象的声明
Private objServer As OPCServer
Private objGroups As OPCGroups
Private objTestGrp As OPCGroup
Private objItems As OPCItems
2.建立一个OPC服务器对象
Set objServer = New OPCServer
3.连接OPC服务器
objServer.Connect ("OPC.PHDServerDA.1")
4.建立一个OPC组集合与组
Set objGroups = objServer.OPCGroups
Set objTestGrp = objGroups.Add("Test")
5.添加OPC项
Call objItems.AddItems(8, strItemIDs, lClientHandles, _lServerHandles, lErrors)
6.读取PHD实时数据
Call objTestGrp.SyncRead(OPCCache, 8, lServerHandles, _ItemVal, lErrors)
7.清除OPC项、清除OPC组、断开OPC服务器
Call objItems.Remove(8, lServerHandles, lErrors)
objGroups.Remove ("Test")
Call objServer.Disconnect
Excel OPC Client 运行测试
Excel设置如下图:
鼠标单击“连接”,如果没有出错信息,表示已经连接上OPC Server了,再单击“读取”,来完成第一行设置的点位号的实时数据的读取。上图为数据读取成功的示例。
三、总结
简要说明程序如何通过OPC 服务器接口读取PHD实时数据,并实现Excel读取实时数据库数据,具有行业应用价值。
参考文献:
[1]Data Access Custom Interface Standard Version 2.05,2001.12.17.
[2]Uniformance PHD OPC Server User Guide 2007.6.27.
关键词:PHD 实时数据库 OPC服务器 Excel VBA
一、前言
生产控制系统都存在大量的实时数据,这些数据都使用实时数据库存储和管理。查询都只能依靠厂家系统界面查询,如果需要对其数据导出并再综合应用,现有厂家系统与工具都无法实现。为此,研究实现Office Excel通过OPC接口读取PHD实时数据库数据。
二、正文
(一)OPC Server 配置
PHD OPC服务器是基于微软的DCOM技术来实现,使用OPC Server之前,需要进行相关的DCOM配置。
注意:修改DCOM的相关设置之后,需要重新启动计算机方可生效。
配置步骤详见《Uniformance PHD OPC Server User Guide》“View/Modify DCOM Configuration of PHD OPC Server”章节。
(二)OPC Client 连接测试
使用opcuser用户登陆本机,运行进入opc quick client应用程序,测试能否连接OPC Server成功:
1.菜单Edit: New Server Connection... --> 选OPC Data Access Servers Version 2.0 --> 选OPC.PHDServerDA.1 --> 输入:HL-MESOPC --> ok
2.选OPC.PHDServerDA.1 右键 --> 选New Group... --> Name处随便输入可分组信息
3.选中新建的组名:右键 --> 选New Item... --> Item ID 处输入点位号信息 --> 点一下右边勾 --> ok
如果连接测试成功,就可以进行VBA程序开发了。
(三) Excel OPC Client开发
开发过程中需要注意的事项:
1. OPC对象的声明
Private objServer As OPCServer
Private objGroups As OPCGroups
Private objTestGrp As OPCGroup
Private objItems As OPCItems
2.建立一个OPC服务器对象
Set objServer = New OPCServer
3.连接OPC服务器
objServer.Connect ("OPC.PHDServerDA.1")
4.建立一个OPC组集合与组
Set objGroups = objServer.OPCGroups
Set objTestGrp = objGroups.Add("Test")
5.添加OPC项
Call objItems.AddItems(8, strItemIDs, lClientHandles, _lServerHandles, lErrors)
6.读取PHD实时数据
Call objTestGrp.SyncRead(OPCCache, 8, lServerHandles, _ItemVal, lErrors)
7.清除OPC项、清除OPC组、断开OPC服务器
Call objItems.Remove(8, lServerHandles, lErrors)
objGroups.Remove ("Test")
Call objServer.Disconnect
Excel OPC Client 运行测试
Excel设置如下图:
鼠标单击“连接”,如果没有出错信息,表示已经连接上OPC Server了,再单击“读取”,来完成第一行设置的点位号的实时数据的读取。上图为数据读取成功的示例。
三、总结
简要说明程序如何通过OPC 服务器接口读取PHD实时数据,并实现Excel读取实时数据库数据,具有行业应用价值。
参考文献:
[1]Data Access Custom Interface Standard Version 2.05,2001.12.17.
[2]Uniformance PHD OPC Server User Guide 2007.6.27.