1、使用连接点技术、Tear-off 技术完成 OPC 接口程序编制。按照 OPC 规范,开发出一个具有与第三方 OPC 客户进行基本数据通信能力的 OPC 数据访问服务器。该服务器实现了同步、异步、订阅等数据采集和同步、异步方式的数据设置功能。关键词 OPC,COM,接口,连接点技术,Tear-off 技术 BASE ON THE SPECEFICATION OF OPC DATA ACCESS ABSTRACT OPC is such a standard that we need.OPC means OLE(Object Linking and Embedding)for Progress
2、Control.OPC was put forward in solving communication between application software and vary drivers of devices.It makes the work more efficient.Consequently,the repeated exploitations are reduced in the integrated system.OPC specification will be a developmental aspect about process automations commu
3、nication normal for future.In the master student project the Component Object Model as OPC nut technology and its applications detail about the realize、issuance and establish method of COM component.The uses of connection pointer technology and Tear-off technology,the program for OPC interface was a
4、ccomplished.According to the OPC Data Access Specification,the OPC of Data Access with the basic function has been developed,which can communicate with OPC Client of the third party.This server can complete sync read,async read or async subscription,and sync write or async write.KEY WORDS:opc,com,in
5、terface,connectionpoint technology,Tear-off technology 第 i 页 目 录 第一章 绪论1 1.1 OPC 概论1 1.1.1 控制系统现状1 1.1.2 OPC 规范简介2 1.1.3 OPC 技术的发展3 1.1.4 OPC 技术的发展现状3 1.2 课题的主要研究内容及意义4 1.2.1 问题的提出4 1.2.2 主要研究内容5 1.2.3 研究的意义5 1.2.4 论文的主要结构6 第二章 COM 概论7 2.1 COM 与 OPC 的关系7 2.2 COM 技术7 2.3 创建 COM 组件9 2.3.1 建立信道10 2.3.2
6、 线程与进程11 2.3.3 实现 QueryInterface()15 2.3.4 引用计数16 2.4 COM 的数据类型17 2.4.1 BSTR 数据类型17 2.4.2 变量数据类型18 2.5 内存管理 19 第三章 OPC 体系结构22 3.1 OPC 基本框架22 3.2 OPC 规范术语23 第 ii 页 3.2.1 公共组23 3.2.2 数据源与时间戳23 3.2.3 活动状态24 3.2.4 更新率24 3.2.5 OPCHANDLE24 3.3 OPC 中的项结构25 3.4 质 量26 第四章 OPC 通信机制27 4.1 OPC 对象与接口29 4.1.1 OPC
7、 服务器对象29 4.1.2 OPC 组对象30 4.2 数据访问方法33 4.2.1 同步数据访问33 4.2.2 异步数据访问33 4.2.3 订约数据采集方式34 4.3 连接点35 4.4 活动状态和数据源对数据采集的影响37 4.4.1 IOPCSyncIO37 4.4.2 IOPCAsyncIO38 4.4.3 IOPCAsyncIO238 4.4.4 通过 IDataObject 订阅39 4.4.5 通过 IOPCDataCallback 订阅39 第五章 OPC 服务器的开发42 5.1 设计要求42 5.2 平台与工具42 5.3 设计方案42 5.4 系统访问流程图43
8、5.5 OPC 服务器的总体设计45 5.5.1 OPCServer 类45 第 iii 页 5.5.2 ISimuOPCServer 类46 5.5.3 OPCGroup 类46 5.5.4 OPCItem 类47 5.5.5 ISimuOPCItemMgt 类48 5.5.6 ISimuOPCSyncIO 类48 5.5.7 ISimuOPCAsyncIO2 类48 5.5.8 ISimuOPCGroupStateMgt 类48 5.6 服务器接口类的实现48 5.6.1 添加组48 5.6.2 添加项52 5.6.3 同步读写数据操作53 5.6.4 连接点的实现55 5.6.5 异步数
9、据通信58 5.7 服务器安装部署60 5.7.1 注册 Proxy/Stub DLL60 5.7.2 组件种类注册60 5.7.3 组件的注册项目61 5.8 OPC 服务器的测试62 总结64 参考文献66 附录69 致谢87 攻读学位期间发表的学术论文87 北京化工大学硕士研究生论文 第 1 页 第一章 绪 论 11 OPC 概论 111 控制系统现状 目前,工业自动化系统已经得到广泛应用,系统的集成度越来越高。工业现场可以采用的仪器仪表种类十分丰富,工业控制过程越来越复杂,同时控制系统也逐渐与商业系统结合到一起。随着监视和控制生产过程的 DCS 和 SCADA 系统的使用,以往由手工采
10、集的数据变成自动采集。将现场的数据进一步分析与处理,为与之相关的各种经营销售提供数据也成为可能。传统的实时监控系统由于不具备开放性,各个部分的联系过于紧密,使系统过于复杂,这样系统的更新、扩展、升级都变得非常困难,同时也增加了系统维护的难度。传统的实时监控系统开发中出现的另一个主要问题是软件的重复开发,软件不能够重用,资源不能共享,造成大量人力物力资源的浪费。随着计算机软件的发展,这种情况有所改观,高级语言中库函数的采用,实现了一定程度上资源的共享,尤其是面相对象的方法的应用,使得我们可以利用面相对象的继承等方法大量重用源代码。但这些重用只是对源代码级的重用而不是对可执行文件级的重用,对每一类
11、库都要重新编译,所以并没有真正实现资源共享,并且对某个模块中某个类库的修改将引起所有引用该类库的模块的修改,因此非常难以实现某个模块的升级。同时,为一种语言开发的类库以及函数库都不能够为其他语言所用,也大大限制了软件的重用。一般实时监控系统为分布式的结构,实现了人机接口、通信、数据处理等功能在网络上的分布,同时将一个系统划分为各个子系统,虽然降低了系统的复杂程度,改善了系统性能,减少了开发周期与维护费用,但由于系统各个计算机的通信协议依赖于某个厂家,没有形成统一的标准,不同厂家之间的软件与硬件的集成难于实现,也没有真正实现不同厂家的软件共享。因此这就迫切需要一种能有效进行数据访问和管理的开放标
12、准,使工业控制 第 2 页 计算环境中的各个数据源之间能够灵活地进行通信。OPC(OLE for Process Control,面向过程控制的 OLE)作为硬件与软件之间的一个中间件解决了以上的问题,它为工业计算环境提供了这样一种标准,支持分布式应用和异构环境下软件的无缝集成。供应商可以开发一个高度优化的、可重用的 OPC Server 访问底层的硬件,并将数据以 OPC 接口方式提供给任何支持 OPC规范的客户端软件,客户就可以按照统一的数据访问标准访问不同厂商的硬件产品。112 OPC 规范简介 OPC 规范作为一个工业标准,是开发 OPC 服务器与 OPC 客户软件之间数据传输的规范,
13、并已形成一个体系。根据开发软件功能的不同,OPC 制定了以下领域单独规范:1 数据访问规范:定义了 OPC 服务器中一组 COM 对象及其接口,并规定了客户对服务器程序进行数据存取时需要遵循的标准。借助 Microsoft 的 DCOM 技术,OPC 实现了高性能的远程数据访问能力。23 报警和事件处理规范:该规范提供了一种通知机制,在指定事件或报警条件发生时,OPC 服务器能够主动通知客户程序。4 历史数据访问规范:该规范提供一种通用历史数据引擎,可以向感兴趣的用户和客户程序提供数据汇总和数据分析等额外的信息。56 图 11 基于 OPC 协议的体系 第 3 页 安全性规范:该规范提供了一种
14、专门的机制来保护 OPC 服务器中的现场数据,防止未授权的操作误修改这些参数。7 批量过程规范:该规范基于 OPC 数据存取规范和 ISA88 系列批量控制标准,提供了一种存取实时批量数据和设备信息的方法。8 113 OPC 技术的发展 OPC 基金会(OPC Foundation)是管理 OPC 标准的国际组织,其成员几乎包括了世界上所有的控制系统、仪器仪表和过程控制系统的主要供应商。OPC 规范就是这些领先的自动化软硬件供应商与微软公司合作,制定的一套标准的OLE/COM/DCOM 接口协议。9 第一阶段在1996年8月由OPC Task Force(OPC Foundation的前身)发
15、布了OPC 1.0 版本。随着 1997 年 2 月 Microsoft 公司推出 Windows95 支持的 DCOM 技术,1997 年9 月新成立的 OPC Foundation 对 OPC 规范进行了修改,发布了 OPC 规范 1.0A 版,改名为数据存取规范 1.0A 版(Data Access Standard)。增加了数据访问等一些标准,OPC 规范得到了进一步地完善。1998 年推出 OPC 2.0 版本,修正了 1.0 版本的一些错误,并新增了几个接口,调整了数据通信的方法,使程序更稳定和健壮。1998 年 12 月发布了报警事件规范 1.0 版。1999 年 12 月升级到 1.01 版。1998年还发布了历史数据存取规范 1.0 版。2000 年 1 月发布了批量过程规范 1.0 版。同年 10 月发布了安全性规范 1.0 版。现在网络技术迅猛发展,作为其新技术之一的可扩展标记语言(extensible markup language,XML)非常适合不同应用程序间的数据交换,OPC 基金会专门成立了 XML 工作组,正在努力
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1