应用COM开发OPC DA服务器

VIP免费
3.0 高德中 2024-11-19 11 4 1.48MB 83 页 15积分
侵权投诉
COM OPC DA
摘 要
OPC (OLE for Process Control) 一种通用工业控制标准,是由世界上领先的
自动化软硬件厂商与微软公司合作,所制定的一套标准的接口协议。OPC 技术主
要是为了解决由于设备驱动的非共享性,导致的应用程序难以同时与所有设备
行通讯而提出的,它将软件应用程序开发与硬件设备提供商分离开来,两部分
司其职,以 OPC 技术为中间件,同时提升了双方的工作效率,并从整体上优化了
典型工业控制系统兼容性差,数据传输效率低的情况,也进一步提高了系统的
成性。OPC 技术代表了今后过程控制系统发展的主方向。
本文OPC 据访 (OPC Data Access Specification)
可重用的 OPC DA 服务器来访问底层的硬件,并将数据以 OPC 接口的方式提供给
任何支持 OPC 规范的客户应用软件,使得客户能通过统一的数据访问标准来访问
不同厂商的硬件设备,方便系统的集成。
OPC DA 服务发是COM (Component Object Model) 的。
根据 COM 技术的原理,分析研究了 COM 对象的创建、实现、注册等方法,并详
细论述了基于 COM 技术的 OPC DA 服务器的开发原理和实现过程,提出了 OPC
DA 服务软件各对关系各对口的
法。通过研究 OPC DA 的通信机制,阐述了 OPC DA 规范中以数据通报和连接点
为核心技术的两种不同的异步数据交换机制并付诸于具体实现。
本文根据实际开发所碰到的问题,给出了各接口实现过程中所需要注意的
项,考虑到 OPC DA 服务器的向下兼容性,同时实现了 OPC 1.0 OPC 2.0 异步
数据交换接口,分析了其中的工作原理以及回调函数的作用,完成了 OPC DA
务器与客户端的双向通信。
本文最后使用标准 OPC 客户端对 OPC DA 服务器的整体实现情况进行了测试
根据 OPC DA 规范的标准,对对象管理以及同步、异步数据交换的测试结果进行
了评估。
OPC COM 访
问规范 异步数据交换 连接点技术
ABSTRACT
OPC (OLE for Process Control) is a kind of general criterion of industrial control.
It’s a standard protocol of interface which is made by the one-up automatism software
and hardware corporations in the world. Because the drivers of devices can’t be shared
each other, the OPC technology is put forward to solve the problem and let the
applications can communicate with all the devices. It separates the development of
software applications from the hardware device providers. The two separated parts
perform their respective roles and advance their working efficiency with the OPC
technology as a middle component. The OPC technology optimizes the classic industrial
control system in the whole with the situation of poor compatibility and low efficiency
in data transmission, and improves the system integration further. It represents the main
development aspect of the process control system in the future.
This paper mainly develops a reusable OPC DA Server to access the bottom
hardware through researching the OPC Data Access Specification, and provides the data
in the way of OPC interfaces to the application software which support the OPC
specification so as to let the Clients access the different devices with a uniform data
access criterion and make the system integrate conveniently.
COM (Component Object Model) is the basis of developing the OPC DA Server.
According to the principles of the COM technology, this paper researches the methods
of creating, realizing and registering the COM object, and discusses the development
principles and realization process of the OPC DA Server which base on the COM
technology in detail. The paper also puts forward to the software structure of the OPC
DA Server and the hiberarchy of the objects, and offers the realization methods of the
main interfaces of each object. Through researching the communication mechanism of
the OPC, this paper sets forth two different asynchronous data exchange mechanisms
mainly with the data message and the connection point as the internal technologies in
the OPC DA Specification and realize them.
According to the problems got in practice, this paper describes the events need to
be noticed in the realization process. Considering the compatibility of the OPC DA
Server, the asynchronous data exchange interfaces of OPC 1.0 and OPC 2.0 are realized
at one time. This paper analyzes the working principles and the operations of the
callback functions of them and achieves the bidirectional communication between the
OPC DA Server and Client.
At last, this paper uses the standard OPC Clients to test the whole realization
situation of the OPC DA Server, and evaluates the test results of the objects
management, synchronous and asynchronous data exchange with the OPC DA
Specification.
Key Words: OPC Server, industrial control criterion, middle
component, COM technology, Data Access Specification, asynchronous
data exchange, connection point technology
目 录
摘 要
ABSTRACT
第一章 绪 论..........................................................................................................1
§1.1 OPC 概述....................................................................................................1
§1.1.1 控制系统现状....................................................................................1
§1.1.2 OPC 技术发展现状...........................................................................2
§1.1.3 OPC 规范简介...................................................................................3
§1.2 课题研究内容及意义...................................................................................3
§1.2.1 问题的提出........................................................................................3
§1.2.2 主要研究内容....................................................................................4
§1.2.3 研究的意义........................................................................................5
§1.2.4 论文结构............................................................................................5
第二章 OPC 规范.....................................................................................................7
§2.1 OPC 技术发展过程......................................................................................7
§2.2 OPC DA 规范的内容...................................................................................8
§2.2.1 OPC Server 对象结构......................................................................8
§2.2.2 OPC Group 对象结构......................................................................9
§2.2.3 OPC 通信的基本架构...................................................................10
第三章 COM 技术..................................................................................................12
§3.1 COM 特性及其与 OPC 的关系...............................................................12
§3.2 COM 对象和接口.....................................................................................13
§3.2.1 COM 对象......................................................................................13
§3.2.2 COM 接口......................................................................................15
§3.2.3 COM 接口的原则..........................................................................17
§3.3 COM 中的通信机制.................................................................................18
§3.3.1 可连接对象的双向通信机制........................................................18
§3.3.2 数据通报的双向通信机制............................................................21
§3.3.3 DCOM 技术...................................................................................22
§3.4 COM 组件的开发方式.............................................................................24
§3.4.1 COM 组件开发方式比较..............................................................24
§3.4.2 ATL COM 技术的支持.............................................................25
第四章 OPC DA 服务器规划设计........................................................................28
§4.1 OPC DA 服务器结构...............................................................................28
§4.2 OPC DA 通信机制...................................................................................28
§4.2.1 数据访问方法................................................................................29
§4.2.2 数据传送方式................................................................................30
§4.3 活动状态和数据源对数据获取的影响....................................................33
§4.3.1 IOPCSyncIO..................................................................................33
§4.3.2 IOPCAsyncIO................................................................................33
§4.3.3 经由 IDataObject 订阅数据...........................................................34
§4.3.4 IOPCAsyncIO2..............................................................................34
§4.3.5 经由 IOPCDataCallback 订阅数据...............................................35
§4.4 OPC DA 服务器接口方法.......................................................................35
OPC DA 服务器程序实现........................................................................40
§5.1 OPC 服务器端 DA 规范内容的实现.......................................................40
§5.1.1 服务器组件对象的创建................................................................40
§5.1.2 服务器注册....................................................................................41
§5.1.3 OPC 服务器 DA 接口的实现........................................................43
§5.2 OPC DA 服务器与以太网网关的通信...................................................54
OPC DA 服务器的测试............................................................................56
§6.1 服务器测试的软、硬件环境...................................................................56
§6.2 服务器通用性测试...................................................................................56
§6.3 服务器组和项的管理测试.......................................................................58
§6.4 数据同步读写测试...................................................................................60
§6.5 数据异步读写测试...................................................................................61
§6.5.1 数据异步 1.0 读写测试................................................................62
§6.5.2 数据异步 2.0 读写测试................................................................63
与展..................................................................................................................65
..........................................................................................................................67
考文......................................................................................................................80
第一章 绪论
第一章 绪 论
§1.1 OPC概述
§1.1.1 控制系统现状
的工业控制中,各种器、表、PLC以及单片机等设备是通过通信
协议与计机进行通讯的。而,随着机控制系统的不发展,由于缺乏统一
的工业控制标准,成不同厂商的设备乃至不同型的设备与计机的通讯过程
中使用的协议有所不同,这就给开发设备驱动程序来了极大的不便以及大量
性的开发工作。有时,设备厂商仅仅对设备了一些小小动,驱动程序
可能需要重写;此外,由于设备的多样性,技术上也到同时对不同的一
设备进行访问来优化作。虽然众多设备厂商也断尝解决个问题,
由于不同客户有不同需,而且存在很多不同的数据传输协议,因此收微。
从程序设计角度,由于不同的语言对驱动程序的接口也有不同的要
因此每一个对不同客户开发的应用程序与数据源进行数据交换的时,通
常都会根据不同的硬件设备用不同的驱动程序来提供软硬件间的通讯,这就会
来一问题
1多少硬件设备就会多少驱动程序
2系统包含的硬件设备越多,则负责通信的模块越多,使用到的驱动也
越多这在无形就极大地限制了系统今后的升换代
3由于驱动程序一不能共享使用,因此,不同的应用程序通不能同时访
问同一个硬件设备
随着机软件的发展,种情况有所改观,高级语言函数的用,
定程上实现了源共享,其是向对象开发方法的应用,使得我们可以用开
语言继承等方式来大量重用源代但这些只是对源代的重用而不是对可
行文件的重用,所以并在真正意义上实现源的共享。此外,由于对模块
类库修改往往引发所有该类库模块修改因此难以对
进行升。同时,为一种语言开发的类库以及函数库都不能为其他语言所用,
在很大制了软件的重用。
常见DSC (Distributed Control System) 系统为系统实现了机接口
通信以及数据理等在网络上的分,同时将一个系统划分为各个系统,
低了系统的复杂改善了系统的性能,减少了开发周期维护费用,由于系
统中各个硬件设备与计机的通信协议成统一的标准,因此难以将不同的软
硬件进行有效的集成,也难以在真正意义上实现软件的共享。为了使工业控制计
环境中的各个数据源间能够灵进行通信,制出一种能有效进行数据访问和
管理的开标准就显为关和重要了。
- 1 -
应用 COM 开发 OPC DA 服务器
1-1 基于OPC协议的通信体系
OPCOLE for Process Control向过程控制的 OLE技术就在这种情况下
的,它作为硬件与软件间的一个中间件解决了以上的问题,为工业计
环境提供了一种需的标准。OPC支持分式应用和异构环境下软件的无缝集成,
其通信体系结构如图1-1。设备供应商可以开发一个高优化的、可重用的
OPC服务器来访问底层的硬件,并将数据以OPC接口方式提供给任何支持OPC规范
的客户端软件,这样客户可以按照统一的数据访问标准访问不同厂商的硬件产品
了。
§1.1.2 OPC技术发展现状
OPC技术是由世界上领先的自动化软硬件厂商与微软公司合作,所制定的一套
标准的接口协议,19968OPC 1.0本发并成OPC金会来管理OPC
准,OPC技术在此后得到了迅猛的发展,OPC商业产品的出现,随着这几
OPC规范的内容不得到修正增强这极大促进了OPC技术工业生产
的发展,定了其重要地位,使得越多的设备厂商加入一技术的研究、使
用、推广的行中。
在国外OPC技术多年的发展历史[1]其是过程控制以及自动化领
得到了大量的应用[2~3]并取得了不的效果,近年来,随着嵌入式系统的兴起
际上一些大型的跨国公司正积极于开发可供嵌入式系统使用的OPC.NET技术
力求进一步补充OPC规范的内容,使其XML技术,OPC的应用[4],而
其它领OPC技术也有所及,比通讯网络建等,使得OPC
更广阔[5~6]发展并得到更大用。
当前国内对OPC规范过程控制领大量推广和研究,在电力、化工
水处理、造纸能建以及国防域都广泛的应用,如电电力设备控、化
程控制、造纸工业制过程DCS控制、能建筑弱电系统集成。由于其巨大
技术优和经势在国民国防建设中发良好作用。现经有
公司加入OPC金会,成为其会员,并开发出一支持 OPC技术的工控软
件,打破了以的传统控制理站在OPC技术发展的端。
§1.1.3 OPC规范简介
OPC规范作为一个工业标准,是开发OPC服务器与OPC客户软件间数据传输
的规范,并已形成一个体系。根据开发软件能的不同,OPC制定了以下领
规范[7]
数据访问规范[8]定义了OPC服务器中一组COM对象及其接口,并规定了客户
- 2 -
第一章 绪论
对服务器程序进行数据取时需要遵循的标准。
和事件理规范[9]:该规范提供了一种通机制,在指定事件警条
时,OPC服务器能主动通客户程序。
历史数据访问规范[10]:该规范提供一种通用历史数据引擎,可以向感兴趣的用
户和客户程序提供数据汇总和数据分析等额外的信
安全性规范[11]:该规范提供了一种专门的机制来保护OPC服务器中的现数据
防止未授权误修改这些参数。
批量过程规范[12]:该规范基于OPC数据取规范和ISA88列批量控制标准,
提供了一种取实时批量数据和设备信的方法。
XML数据访问规范[13]:该规范用基于XMLWeb服务概,用SOAP作为对
应用进行准协使WSDLWeb服务
OPC客户端和服务器间通过HTTP协议传输Web服务。
§1.2 课题研究内容及意义
§1.2.1 问题的提出
从实际意义出发来,由于目前生产场存在着大量控制器和现设备,
这些设备来自不同的制商,从不同的通信标准,能组成各自的控制系统,与
特定的应用软件通信。虽然某些网络之间可通过协议换实现互联并不具有
性。传统的过程控制系统中,为使个应用程序与设备交换信个设
备提供应的驱动程序,由于设备多样性和驱动程序不兼容性,使应用程序开发
须花大量开发各设备的驱动接口,从而使开发时间和大大增加。设备
不具有互操作性,使用中硬件的升增加都可能引起驱动程序的化,从
在维护过程中引起二次。由于一个应用程序有各自的驱动程序,当多个应
用程序取同一数据源,经冲突。设备厂商虽然可能提供驱动程序,与用
户开发的应用软件往往协议不一致,制了客户对软件和硬件的选择
为解决个一直困扰工业自动化控制领的难题,外都进行了大量的研究
提出了的解决方。比较成的是OPC金会制定的OPC规范,根据规范开
发的OPC服务器,作为设备与应用软件间通信的中间件,很好地解决了上述问题
OPC正在逐渐成为过程控制的数据通信标准。
由于OPC规范的制定,使得所有的通信连接问题得简,它提供了一种软件
线使使
OPC数据源获取数据 (OPC Client),设备驱动程序何以简式提供
数据 (OPC Server) 可进行通信。
OPC定义了一个开的接口,在这个接口上,基于PC的软件组件能交换数据
而,OPC为自动化层的典型现设备连接工业应用程序和程序提供了一个
的方法。Windows程序的标准接口的引入,使得硬件制商为其部件所开发的
接口程序的数量减少到一个,需要开发一个OPC服务器的接口程序
软件制商也需要开发一的通讯接口程序——OPC客户机接口,对制
商有,而对最客户也有
我国在这的研究步较,自OPC规范发以来,取得了较的进展,
全国在已家科院校和控制系统公司对其研究,开发自主产权
- 3 -
应用 COM 开发 OPC DA 服务器
OPC能的控制软件。
§1.2.2 主要研究内容
本论文课题是应用COM开发OPC DA服务器,对传统控制过程中的不
性,研究了OPC技术的理论规范、实现方式以及OPC服务器的结构和通信机制。
并对OPC的技术基础——COM进行了的研究,掌握了基于COM的组件开发
程和实现技术。服务器开发过程中,提出了OPC Server对象、OPC Group对象和
OPC Item对象间的关系,根据各对象实现了各重要接口的方法函数,完成
了同步数据交换、异步数据交换等数据访问方法的开发工作,同时OPC DA
据异步交换接口实现过程中的以数据通报和连接点技术为基础的数据传送方式进行
了进一步的分析研究。课题研究中所使用的硬件数据源为课题合作公司——海泗
自动化技术有公司以下简泗博公司提供的以太网网关设备,课题的最
的是开发的OPC DA服务器能满足不同的应用程序从各种现设备
文以以太网网关为例)中获取数据,课题主要下内容
研究COM技术的理论基础及其对象的开发方法
研究OPC数据访问规范 (Data Access Specification) 体结构、通信机制以及
其主要的对象和接口
研究OPC DA服务器的具体开发方法以及其中一技术、主要模块
实现
§1.2.3 研究的意义
当前我国大量DCS控制系统,它使用设备供应商的驱动进行通信
其数据式并不规范,与现应用程序不能很好地兼容。为了有效挥这些
原有设备的能,使其能连接到当前多客户端的应用环境中,对OPC规范的研究以
OPC技术的实现将非具有现实意义。
此外,对作为过程控制通信标准的OPC的研究,将我国在工业控制领
发展。在国际化过程中,中国就一个技术的熔炉,各种先进的管理和控制技术
都在这个试用,我们抓住上世界发展的掌握和发展控
制领具有自主产权的核心技术,将对经建设和国防现代化产生积极
的影响,也能对OPC技术推广起到一定的作用。
§1.2.4 论文结构
本论文由理论述和实际开发两部分组成,论文分章,各章主要内容
第一章:总体概的介OPC规范及其产生背景当前工业控制系统以及
OPC技术的发展现状,并说明了论文的主要内容及研究意义。
第二章OPC技术发展的过程以及OPC金会OPC规范的主要内
容。
第三章具体研究了COM技术的理论基础及其与OPC技术的关系,分析了
COM的通信机制、组件对象的开发方式以及ATLCOM的支持。
第四章给出了OPC DA服务器的结构,研究了OPC技术的数据访问方法和数
据传送方式,比较了数据获取的影响,并对各主要接口的方法作
- 4 -
摘要:

应用COM开发OPCDA服务器摘要OPC(OLEforProcessControl)是一种通用工业控制标准,是由世界上领先的自动化软硬件厂商与微软公司合作,所制定的一套标准的接口协议。OPC技术主要是为了解决由于设备驱动的非共享性,导致的应用程序难以同时与所有设备进行通讯而提出的,它将软件应用程序开发与硬件设备提供商分离开来,两部分各司其职,以OPC技术为中间件,同时提升了双方的工作效率,并从整体上优化了典型工业控制系统兼容性差,数据传输效率低的情况,也进一步提高了系统的集成性。OPC技术代表了今后过程控制系统发展的主方向。本文通过研究OPC数据访问规范(OPCDataAccessSpecif...

展开>> 收起<<
应用COM开发OPC DA服务器.doc

共83页,预览9页

还剩页未读, 继续阅读

作者:高德中 分类:高等教育资料 价格:15积分 属性:83 页 大小:1.48MB 格式:DOC 时间:2024-11-19

开通VIP享超值会员特权

  • 多端同步记录
  • 高速下载文档
  • 免费文档工具
  • 分享文档赚钱
  • 每日登录抽奖
  • 优质衍生服务
/ 83
客服
关注