(动力机械及工程专业论文)火电站全范围仿真系统中opc通讯技术的研究与开发.pdf_第1页
(动力机械及工程专业论文)火电站全范围仿真系统中opc通讯技术的研究与开发.pdf_第2页
(动力机械及工程专业论文)火电站全范围仿真系统中opc通讯技术的研究与开发.pdf_第3页
(动力机械及工程专业论文)火电站全范围仿真系统中opc通讯技术的研究与开发.pdf_第4页
(动力机械及工程专业论文)火电站全范围仿真系统中opc通讯技术的研究与开发.pdf_第5页
已阅读5页,还剩66页未读 继续免费阅读

(动力机械及工程专业论文)火电站全范围仿真系统中opc通讯技术的研究与开发.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

东南大学硕士学位论文 摘要 伴随着电力行业的大发展,火电站全范闱仿真系统的研究开发也跃上了一个新的高度。 高性能的仿真系统离不开高性能的数据通道,数据通道的构建对仿真系统的实现起着强有力 的支撑作用。 本论文结台o p c 基金会的数据访问规范( d a t a a c c e s ss t a n d a r d ,d a ) 和组件对象模犁 技术( c o m p o n e n to b j e c tm o d e l ,c o m ) ,开发了适用于火电站全范围仿真系统的o p c 服务 器程序。该程序作为仿真机实时数据库的扩展服务器,通过实时数据库的定制方法与数据库 相连接,同时按照o p c 规范规定的方式,采用客户端朋日务器网络结构,能够为所有标准 o p c 客户端提供高度品质的数据服务。 本论文采刖v i s u a lc + + 为基本的开发工具,在开发过程中严格按照面向对象的思想通 过友类、抽象类等编程方法的使用,方便快捷的实现了o p c 服务器组件对象及其接口函数 的定义。通过这种方法,还巧妙的实现了服务器内三种c o m 对象间的管理n 务关系,构建 了一个高敛灵活的服务器体系结构。 本论文开发了o p c 测试用客户端程序,对开发好的o p c 服务器进行了各项测试。通过 测试发现,该服务器性能稳定通用性强,基本上能够满足仿真系统的开发要求。 关键字:o p c服务器c o m 组件实时数据库接口 客户端数据访问规范 东南大学硕士学位论文 a b s t r a c t w i t ht h ef a s td e v e l o p m e n to fe l e c t r i cp o w e r , a l lc o n d i t i o n ss i m u l a t i o ni np o w e rs t a t i o nh a s j u m p e dt oan e ws t a g e ah i g hc a p a b i l i t ys i m u l a t i o ns y s t e ms t a n d so nf a s t e rc o m m u n i c a t i o n s t h e f a s t e rc o m m u n i c a t i o ni st h eb a s eo ft h es i m u l a t i o ns y s t e m i nt h i sa r t i c l e 。a n0 p cd a t aa c c e s ss e r v e rw a sd e v e l o p e df o rt h ea l lc o n d i t i o n ss i m u l a t i o ni n p o w e rs t a t i o n t h i ss e r v e rs t a n d sb yt h ed a t aa c c e s ss t a n d a r do fo p cf o u n d a t i o na n dt h e c o m p o n e n to b j e c tm o d e lo ft h em i c r o s o f tc o r p o r a t i o n s a s e x t e n s i o no ft h er e a l - l i m e d a t a b a s e ,t h es e r v e rc o n n e c t st ot h ed a t a b a s ei nas p e c i a lm e t h o do f f e r e db yt h ed a t a b a s e a tt h e s a n l et i m e ,i nam e t h o dr e g u l a t e db yt h eo p cs t a n d a r d ,c l i e n ts e r v e ra r c h i t e c t o n i c ,t h es e r v e r s u p p l yh i g hq u a l i t yd a t ac o m m u n i c a t i o nt ot h ec l i e n ts i d e i nt h i sa r t i c l e a l lc o d e sw e r ew r i t t e nb yu s i n gv i s u a lc + + d e v e l o p m e n tt o o l s i nt h ep r o c e s s o ft h ed e v e l o p i n g t h ec o d e sc r i t i c a l l ys t a n db yt h eo b j e c to r i e n t e dp r o g r a m m i n gt h i n k i n g b y u s i n gt h ef r i e n dc l a s sa n da b s t r a c tc l a s s ,t h ea u t h o rn o to n l ye x p e d i e n t l yr e a l i z e dt h eo p cs e r v e r c o m p o n e n to b j e c ta n dt h ei n t e r f a c eo fi t , b u ta l s or e a l i z e dt h er e l a t i o nh e t w e e n si nt h et h r e ec o m o b j e c t s ah i g hq u a l i t yd a t as e r v e rw a sc o n s t r u c t e d i nt h ea r t i c l e ,a no p cc l i e n tf o rt e s t i n gw a sd e v e l o p e d i ti si m p o r t a n tf o r t h ed e v e l o p m e n to f t h eo p cs e r v e r a f t e rt e s t i n g w ef o u n dt h es e r v e rw o r k e ds t e a d i l y , c a nf u l l ym e e tt h en e e d so f s i m u l a t i n gc o n d i t i o n s k e y w o r d s : o p cs e r v e r c o mr e a p t i m ed a t a b a s e i n t e r f a c e c l i e n td a t aa c c e s ss t a n d a r d m 东南大学硕士学位论文 1 1 论文选题背景 第一章绪论 我国的电力工业自1 9 7 8 年改革开放以来,获得了很大发展,2 0 0 4 年全国电力设备 总装机容量已跨上4 亿k w 的新台阶,比1 9 7 8 年增长了5 倍多,而比1 9 4 9 年则增长了 2 2 0 多倍,居世界第二位。据中国电力企业联合会发布的最新统计快报显示,2 0 0 4 年中 国电力生产与消费快速增长,全国发电量突破2 万1 8 7 0 亿千瓦时同比增长1 4 ,8 。截至 2 0 0 4 年底全国发电设备容量达到4 4 0 7 0 万千瓦,同比增长1 2 6 ,近十年来增幅首次达 到1 0 以上。其中火力发电占3 4 以上己掌握3 0 0 m w 、6 0 0 m w 亚临界机组的发电技 术和6 0 0 m w 以上的核电技术。口”这个历史性的成就,为我国在新世纪的新发展,奠定 了良好的基础,同时亦为电力工业自身的持续发展、加强科技创新、优化产品结构、推 出更先进的电力设备提供了很好的机遇和较大的发展空间。 但是我国人口众多,电力设备按人均占有的装机容量则只有0 2 4 k w 左右,还不到 世界平人均水平的一半,是一般发达国家的1 6 左右。而美国要比我们多十多穑,若按 目前俄罗斯的人均装机容量1 1 k w 人的目标来考虑,则到2 0 5 0 年总装机容量约需1 6 亿 k w 因此电力设备装机容量缺v i 尚差1 2 亿k w ,即使将人均装机指标再低些年平均 新装机容量仍需2 0 0 0 万k w 左右,否则到二十一世纪中叶,我国要建设成中等发达国 家的宏伟目标将难以实现。口3 1 据了解预计到2 0 1 0 年电力设备装机总容量将达到6 亿k w ( 考虑安排停运拆除3 仟万k w 左右小火机组) ,而到2 0 2 0 年,就要按年增3 0 0 0 万k w 装机量来考虑总装机容量将达到9 亿k w ,舄以后装机的数额将会更大,这个装机速 度将居世界各国的前列。 随着电力装机容量的不断增大,大容量机组的增多,安全生产的重要性也日益提高。 1 9 7 5 年美国联邦能源部提出的安全性专题报告中就指出:“电厂的可靠性可以由改进设 计和加强维护来改善,但是它只占可靠性的2 0 - - 3 0 。另外7 0 8 0 依靠运行人员。” ”以前的水电部也曾经发出文件,要求3 0 0 m w 以上的机组的运行人员上岗前必须接受 电站仿真器培训f 5 ”。电站仿真机培训对安全生产有着不可替代的重要性。到目前为止, 国内能够独立开发电站全范围仿真机的单位有2 0 多家,已经开发出的仿真机共有1 4 0 多 套。 东南大学仿真实验室多年以来一直在从事仿真技术的研究开发,取得了丰硕的成果。 1 9 8 3 年,南京工学院( 现东南大学) 与华东电力仿真所( 现华东电力培训中心) 联合开 发了1 2 5 m w 火电机组仿真机【捌。是继清华大学之后国内第二家从事火电站仿真技术 研究的高等院校。特别是近几年,东南大学仿真实验室紧跟技术的发展方向在建模方 东南大学硕士学位论文 法、d c s 控制系统仿真和操作员站组态等方面都取得了众多成果,先后完成了安徽坪圩 发电厂、江苏射阳发电厂和华能太仓发电厂等许多大型仿真机项目的开发。基本上形成 了临界亚临界机组、3 0 0 m w 6 0 0 m w 机组和不同d c s 控制系统机组的全面仿真能力。 在仿真机的开发过程中,一个高速、可靠、连接方便的数据通道对整个仿真机系统 起着至关重要地支撑作用。特别是操作员站与仿真机服务器的通讯上,通讯速度的好坏 将会直接影响操作的灵敏性和仿真机的逼真程度。由于历史的原因,在以往的开发中通 常是采用d d e 技术来实现这种数据通道。随着仿真机复杂性的提高仿真点数持续增加, d d e 技术4 0 0 点,秒的传输速率正在逐渐成为一个性能瓶颈。为了解决这一问题,进行技 术升级将是一个很好的办法。1 9 9 6 年以后提出来的o p c ( o l ef o rp r o c e s sc o n t r 0 1 ) 技 术以其高速度、高可靠性和连接简便等特点成为了当然的首选。本课题的主要内容便 是研究o p c 通讯技术,并开发出符合o p c 数据访问规范( o p cd a t aa c c e s ss t a n d a r d ) 的仿真机通讯用服务器。 1 2o p c 规范的产生和发展 1 2 io p c 规范的产生 o p c 是一个工业标准,0 代表o l e ( 对象链接和嵌入) ,p ( p r o c e s s ,过程) ,c ( c o n t r o l ,控制) 。o p c 规范蓦于微软的o l e ( 现在的a c t i v e x ) 、c o m ( c o m p o n e n to b j e c t m o d e l 组件对象模型) 和d c o m ( d i s t r i b u t e dc o m p o n e n to b j e c tm o d e l 分布式组件对象 模型) 技术,是包括一整套接e l 、属性和方法的标准集。a c t i v e x c o m 技术定义各种不 同的软件部件如何交互使用和分享数据。不论采用什么软件或设备,o p c 为多种多样的 过程控制设备之间进行通信提供了公用的接口,允许在自动化控制应用、现场设备和商 业,办公室应用之间进行简明的、标准化的数据交换 】。 管理和发展o p c 标准的组织是o p c 基金会。它的前身是一个由f i s h e r ,r o s e m e n t i n t e l l u t i o n ,r o c k w e l ls o f t w a r e ,i n t u i t i v et e c h n o l o g y 以及o p t 0 2 2 等五家公司组成的一个 特别工作组。他们早在1 9 9 5 年就开发出了原始的o p c 标准,m i c r o s o f t ( 微软) 同时作 为技术顾问给予了支持。【j ”】 为了普及和进一步改进于,o p c 基金会开始了全球范围的活动。现在的o p c 基金会 的理事会是由f i s h e r r o s e m e n t ,h o n e y w e l l ,i n t e l l u t i o n ,r o c k w e l ls o f t w a r e ,n a t i o n a l i n s t r u m e n t 以及欧洲代表s i e m e n s 和远东代表东芝所组成。目前,o p c 基金会的会员已 经超过2 2 0 家,世界上各主要的工业自动化仪表、控制系统厂商都是该组织的成员。 目前,负责制定o p c 规范的技术小组分为:d a t a a c c e s s ( 数据访问) ,h i s t o r i c a l a c c e s s ( 历史数据访问) ,a l a r m sa n d e v e n t s ( 报警和事件) ,s e c u r i t y ( 安全性) 和b a t c h ( 批处理) ,o p c x m l 等。技术委员会主席由i n t e l l u t i o n 公司的a ic h i s h o l m 担任。 东南大学硕士学位论文 1 2 2o p c 技术的发展 o p c 基金会于1 9 9 6 年8 月完成了最初的o p c 规范,即1 0 版。后来于1 9 9 7 年9 月 发布了o p c 规范1 ,o a 版,并改名为数据访问规范1 o a 版( d a t a a c c e s ss t a n d a r d ) 。目 前,该规范现已升级到3 0 版。1 9 9 8 年1 2 月发布了报警事件规范1 0 版( a l a r m s e v e n t s s p e c i f i c a t i o n ) 。1 9 9 9 年1 2 月升级到1 0 2 版。1 9 9 8 年还发布了历史数据访问规范1 0 版 ( h i s t o r y d a t a a c c e s ss p e c i f i c a t i o n ) 。2 0 0 0 年1 月发布了批量过程规范1 0 版( b a t c h s p e c i f i c a t i o n ) 。2 0 0 0 年l o 月发布了安全性规范1 0 版( s e c u r i t ys p e c i f i c a t i o n ) 。2 0 0 2 年7 月发布了o p c x m l d a 规范r c l 8 版( o p c x m l - d as p e c i f i c a t i o n ) o p c 数据访问规范9 1 数据访问规范定义了o p c 服务器中一组c o m 对象及其接口并规定了客户程序对 服务器程序进行数据存取时需要遵循的标准。该规范分为定制接口规范和自动化接口规 范两部分。 o p c 报警与事件处理规范“- 1 提供一种由服务器程序将现场报警和事件通知客户程序的机制,使工控软件可以按 照统一的标准处理现场的各种报警事件。 o p c 历史数据访问规范 1 3 , 1 4 提供一种通用的历史数据引擎,可以向感兴趣的用户和客户程序提供额外的数据信 息。目前大多数历史数据系统采用专用接口分发数据,这样无法在即插即用的环境中增 加或使用已有的历史数据解决方案,限制了其应用的范围和功能。o p c 历史数据访问规 范将历史信息看成某种类型的数据,用统一的标准把不同应用层次的数据集成起来。 o p c 批量过程规范 1 5 , 1 6 】 基于o p c 数据访问规范和i e c6 1 5 1 2 1 国际批量控制标准( 对应的美国标准为 i s a 一8 8 ) 制定,它提供了一种存取实时批量数据和设备信息的方法。该规范的目的不但 为批量过程控制提供某种解决方案,而且使异构计算环境下不同的生产控制方案能有效 地协同工作。 o p c 安全性规范”】 o p c 服务器为应用提供了重要的现场数据,如果这些参数被误修改将会产生无法预 料的后果,因此需要防止未授权的操作。o p c 安全性规范就提供了这样一种专门的机制 来保护这些敏感数据。 o p c 可扩展置标语言一数据访问规范“1 o p c x m l ,d a 规范使用x m l 对厂级数据采用灵活的、一致的规范和格式自我描述, 建立了一组关键字和属性,用于描述工业设备、控制系统等方面的特性和操作,从而使 整个企业环境下的应用程序能够共享控制系统和现场设备的信息。 东南大学硕士学位论文 1 2 3o p c 规范的实用意义 在o p c 规范出现之前,工业控制软件缺乏统一的工业标准,不同厂家的s c a d a 、 d c s 、h m i 软件之间进行通信是非常麻烦的一件事。在今天的市场上,所有过程控制系 统和信息系统有其专用的技术和接口以及a p i ( 应用程序接口) ,目的都在于存取所包 含的信息。为了实现不同系统之间的集成以及长期维护和支持集成环境等所需的费用是 昂贵的。尽管可以编写定制的驱动程序和接口程序,但因为各个设备供应商的软件对控 制系统硬件操作的设备驱动程序接口也各不相同这样为了对市场上不同厂家的设备都 能管理,控制软件厂家必须针对市场上的几百种常用的硬件都开发设备驱动程序,而且 当硬件设备升级、修改时,驱动程序也必须修改,这是做的代价无疑是非常高的。此外, 一个系统中如果同时运行不同的工业控制软件,他们通过各自的设备驱动程序同时对同 一个硬件设备操作,往往会由于相互之间的不协调、不兼容造成系统的崩溃,影响整个 系统的运行。如果设备驱动程序由硬件设备制造商开发,那么他也必须为市场上常用的 各种工业控制软件开发都开发驱动程序代价同样是非常高的。传统控制软件与硬件设 备之间的通信如图l 一1 所示。 问题的解决方案是,给出一个标准,这个标准为过程控制和工厂自动化提供真正的 即插即用( p l u ga n d p l a y ) 软件技术,使得过程控制和工厂自动化的每一系统、每一设备、 每一驱动器能够自由的连接和通信。有了这样一个标准,使得系统及设备之间,包括从 车间级到m i s 和更远距离,完全无缝地、真正开放和方便地进行企业级的通信成为可能。 o p c 规范就是这样一个标准。采用o p c 规范的控制软件与硬件设备之间的通信如图i 一 2 所示【2 4 1 。 o p c 客户a | | o p c 客户b | | o p c 客户c o p c 服务器a i | o p c 服务器b | | o p c 服务器c 设备aii 设备bil 设备c 图1 - 1 传统控制软件与硬件设备之间的通信图t - 2 采用o p c 规范的控制软件与硬件设备之间的通信 o p c 规范使设备软硬件提供商和用户都受益匪浅。对于硬件设备提供商。它提供了 一下好处:1 ) 节省时间,减少了驱动程序的开发。硬件设备提供商只需要开发一个版本 的o p c 服务器程序,使之能与所有其它o p c 客户机应用程序通信。本质上讲,昂贵的 i o 驱动程序的开发不复存在,硬件设备提供商可以将它们的开发资源集中到与最终设备 的通信上,而不是与不同客户的通信上。对于软件开发商来说,也只需要开发一套o p c 客户端程序就可以访问硬件设备提供商提供的o p c 服务器,而不需要考虑与具体硬件 设备通信的细节,这大大节约了开发时间,降低了开发成本。2 ) 增强的连接性和互操作 4 东南大学硕士学位论文 性带动了增长的服务市场。产品将更容易地插装在一起。i o 制造商将更容易地销售它们 的硬件( 一个o p c i o 服务器将取代许多专用的驱动器且能与不同的产品进行通信) 。 3 ) 聚焦于增值的活动。软件提供商可以将其精力投入到为其s c a d a 、h m l 和b a 曲增 加其新功能。还允许第三方的应用程序提供商( 如性能优越的商品软件包、先进的功能 模块) 更容易地与其它软件提供商的产品进行数据通信”。 对于用户,它带来的好处也是显而易见”。i ) 自由地进行系统集成。o p c 提供的 开放性和互操作性,使最终用户在设计自动化系统时,选用最优化的、独立于软硬件厂 商的组件成为可能。这与以前必须调整需求以满足系统的方式形成了鲜明的对比。2 ) 降 低了系统集成费用,节省了时间。o p c 兼容组件大大降低了系统的集成费用,因为所有 的软件和硬件组件遵守一个单一的、标准的接口,该接口正在世界范围内使用。自动化 设备供应商仪需提供集成了能替代专用设备驱动器软件的o p c 服务器。这使得自动化项 目能更快的完成。因而节省了系统集成的时间。3 ) 即插即用( 连接性) 使系统的集成 变得轻而易举。应用o p c 规范,d c s 、s c a d a 、h m i 、工厂生产计划、维护以及其它 生产制造应用之间就能够进行开放的信息交换。这种信息交换是在全厂互连的协同应用 程序间实现的。这样就允许用户把它的精力集中在通过系统集成而增值的商业活动上。4 ) 简单、方便地实现客户应用程序的连接性和互操作性。用户可以开发简单的v i s u a lb a s i c 程序来与其它的o p c 服务器交换数据,或使用他们熟悉的客户应用程序来与其它的o p c 服务器交换数据。同时不需要具备很多工业网络知识的人员也能够利用客户应用程序 实现数据的存取。o p c 标准提供了应用程序必需的稳定性,并且鼓励范围更广的软件和 服务提供商提供应用程序。5 ) 降低了故障诊断和维护费用。o p c 规范提供了一个标准, 一旦掌握了这个标准。就等于学会了所有服从o p c 协议的o p c 服务器应用。6 不会被 淘汰。由于采用c o m 、d c o m 、a c t i v e x 技术当o p c 服务器加入新的功能时,当前的 o p c 客户机程序不会被淘汰,通过只增加新的c o m 接口,而保留全部现有的、向下兼 容的c o m 接口,就能容易地扩展o p c 服务器。这一特性对最终用户是非常重要的。 1 3o p c 的国内外研究现状 在1 9 9 6 年芝加哥i s a ( i n s t r u r a e n ts y s t e m sa n d a u t o m a t i o n ,美国仪表、系统和自动 化学会) 博览会上o p c 基金会首次露面。在这次会上来自几家公司的o p c 服务器在 m i c r o s o f t 公司的展位上进行了展示,o p c 成员公司召开了第一次全体会议。此后在世界 主要展览会上都进行了o p c 的联合展示。 现在国际上主流自动化设备提供商都推出了支持o p c 规范的软硬件产。w o n d e r w a r e 公司的包含其全部产品的套装软件f a c t o r y s u i t e t “作为工业界第一个集成的套装软件,提 供了对o p c 的全面支持,包含了8 0 0 多个i o 通信程序和o p c 客户程序,可以与任何 o p c 服务器相连口”。f i s h e r r o s e m o u n t 公司在已开发成功的d e l t a v 过程系统中就已经采 用了o p c 技术【2 7 l 。作为o p c 基金会的五家发起人之一,i n t e l l u t i o n 至今仍是这一标准 东南大学硕士学位论文 的技术领导者,在推行o p c 标准方面始终是不遗余力。其i n t e l l u t i o nd y n a m i c s 系列自 动化软件全方位应用o p c 作为产品内部主要的数据交换标准。在各个组件部分均支持双 向o p c 数据流向 2 8 1 此外,i n t e l l u t i o n 公司还推出了许多支持o p c 规范的产品。批次管理产品i b a t c h 是 第一个商业化的o p c 产品;支持w i n c e 的产品i v i s u a l i z e 是基于w i n d o w s c e 的o p c 客户端应用程序;软逻辑产品i l o g i e 支持双向o p c 服务器和客户端;企业历史数据库 i h i s t o r i a n 支持直接从标准o p c 服务器进行历史采集。o p cs e r v e r 开发工具o p cs e r v e r t o o l k i t :可以自动生成o p c 兼容的设备驱动程序框架,便于用户开发自己的o p cs e r v e r 。 o p c 技术作为一项工业标准在国内也得到了越来越广泛地应用,特别是近年来发展 速度非常快。不少高等院校、研究机构和制造厂商都展开了对o p c 技术的研究和应用。 从目前国内发表的论文来看。对o p c 的研究已经进入深入阶段。总结起来,有以下 几个方面: 夺将o p c 应用到通用监控软件中。例如:清华大学自动化系的赵仕健在计算机 工程与应用上发表的“基于o p c 的通用监控软件设计”等。国内在这个方面 的开发和工程应用也较多。北京亚控科技的系列产品“组态王”从5 1 开始即 支持o p c 技术。北京三维力控的p c a u t o 也支持了这项功能。 夺将o p c 应用到厂级监控信息系统( s i s s u p e r v i s i o ni n f o r m a t i o ns y s t e m ) 中。 例如:东南大学动力工程系的全新建博士在热能动力工程上发表的“基于 o p c 规范的火电厂监控信息系统的研究”。在这一方面,国内应用的也较多。 s i s 系统的建构通常要依赖于p i 这样的实时数据库。该类数据库通常对o p c 通 讯方法提供支持。 令o p c 服务器快速开发工具包的设计方面。这方面的论文较少,但是应用实例非 常多。例如上海林坷公司的客户端,月务器端o p c 快速开发包k o s r d k 等。o p c 服务器端开发困难,入门门槛高的现实促成了这一方向应用领域的繁荣。 夺将o p c 与现场总线技术相结合。例如:四川大学原子核技术研究所研究员黄宁 在电子技术应用上发表的“采用m o d b u s 协议实现d c s 系统中监控级数据 集成”。在这一方面应用较少,还没有出现成熟的产品。 o p c 作为一项全新的技术,有着广泛的应用前景,国内对o p c 技术的重视程度也在 不断提高,相信在不远的将来,国内的o p c 研究一定能够达到国际水准,并能够作为 o p c 基金会的重要成员,参与到o p c 规范的制定中去。 1 4 本论文主要研究内容 本论文主要研究内容如下: 夺o p c 服务器“s e uo p cs e r v e r ”的研究开发。o p c 通讯技术中,最为核心和关 键的就是o p c 服务器,它作为现场实时数据或仿真数据库与客户端之间的桥梁, 6 - 东南大学硕士学位论文 起到了一个传输中介的作用。一方面,它需要跟现场设备或仿真机实时数据库 进行数据交换,另一方面还需要按照o p c 规范中定义的标准,将数据及时准确 地传送给客户端,开发难度较大,也是本论文的核心内容。 夺o p c 测试用客户端的研究开发。o p c 服务器的开发过程中经常需要对正在开发 中的o p c 服务器进行测试,而测试工作的开展必须有满足特殊要求的客户端程 序与之配合。s e u o p cs e r v e r 的测试用客户端完全符合o p c 数据访问规范定 制接口标准部分对o p c 客户端的所有要求,能够与任何实现了o p c 定制接口 的o p c 进程内、本地、异地服务器进行通讯连接。 针对上述研究内容,除绪论外,本论文各章节内容安排如下: 第二章介绍了o p c 技术的主要计算机理论基础组件对象模型( c o m p o n e n t 0 b i e c tm o d e l ,c o m ) 技术。本章内容涵盖了c o m 技术的发展历程组件对象模型的结 构和特性组件对象及接口,以及c o m 组件对象的设计实现方法和工具等与o p c 服务 器客户端开发密切相关的内容。 第三章详细的介绍o p c 数据访问服务器的设计和实现这部分也是本论文的主要内 容。在第一节,首先介绍了o p c 数据访问规范中关于o p c 服务器开发的部分。第二节 从应用程序框架入手,介绍了o p c 数据访问服务器的运行环境和数据交换流程。从第三 节开始,分别介绍了o p c 服务器中项c o m 对象、组c o m 对象和服务器c o m 对象的 接口定义和实现方法。最后,第六节介绍了o p c 服务器与仿真机实时数据库的连接方法。 第四章详细的介绍了o p c 客户端的开发方法。o p c 客户端的开发流程较为清晰,并 且与其它c o m 对象客户端的开发有很大的相似性。第一节首先介绍了数据访问规范中 关于客户端开发的i a d v i s e s i n k 接口。之后按照创建流程,先后介绍了如何创建o p c 服 务器、如何创建o p c 组对象和如何创建o p c 项对象。最后介绍了退出o p c 客户端时需 要完成的释放工作。 第五章总结了全文,并指出今后进步的工作和研究方向。 东南大学硕士学位论文 第二章o p c 技术的基础组件对象模型 2 1 组件对象模型的起源和发展 c o m ( c o m p o n e n t o b j e c t m o d e l ,组件对象模型) 是m i c r o s o f t 创建的一种二进制和 网络标准,它允许任意两个组件相互通信,而不管他们是在什么计算机上运行( 只要计 算机是相连的) ,不管各计算机上运行的是什么操作系统( 只要该操作系统支持c o m ) , 也不管该组件是用什么语言编写的。c o m 技术是随着组件化程序设计方法的发展而发展 起来的,目前在几乎所有与w i n d o w s 操作系统相关的大型软件开发中都会不同程度的采 用c o m 技术。6 1 2 1 1 组件对象模型的起源 任何新事物的产生都有其必然原因,c o m 也正是如此。当开发人员面临着现代软件 带来的巨大挑战时,他们尝试了各种方法来解决面临的问题。但传统编程模式存在着种 种缺陷,连长期以来人们所依赖的面向对象方法也显得无能为力,这时候组件化的程序 设计方法粉墨登场。 组件化程序设计方法的思想是将复杂的应用程序设计成一些小的、功能单一的组件 模块,组件之间可以跨进程、跨机器、跨语言甚至跨操作平台进行通信。要实现这样的 应用软件t 组建程序之间必须要遵循严格的规范,软件系统才能正常运行。c o m ( c o r n p o n e n to b j e c tm o d e l ) 正式微软提出的解决组件之间进行通信的标准。【1 ,”1 2 1 1 1 软件业面临的挑战 随着计算机硬件和软件的飞速发展,计算机应用的功能愈来愈强大实现也愈来愈 灵活,然而人们在兴奋之余也看到,这些强大与灵活,给应用开发者、软件提供商和用 户带来同样多的问题m : 夺现代软件应用即大又复杂开发周期长,维护困难而且维护成本高,难以扩 展它的功能。 夺应用时单一集成的它们集成了许多功能,而大多数功能无法单独升级或替 换。 夺应用不易被集成一个应用的数据和功能不能用于另一个应用,即使两个应 用用同一种语言编写而且运行在同一台机器上。 夺操作系统也有类似问题。模块化不充分,难以升级或替换其中的某项服务。 夺开发方式不统一即使应用之间可以进行交互,提供的服务的方式也同由操 作系统或网络提供的服务不一样。甚至,根据服务是来自同一进程空间( 通过 动态链接库) ,还是来自本地机器的另一进程空间,还是来自操作系统或来自 8 东南大学硕士学位论文 网络上另一台机器,开发方式编程模型的变化非常大。 2 1 1 2 传统解决方案 要解决这些问题,一个很自然的想法就是把一个庞大的应用程序分成多个模块,每 个模块保持一定的功能独立性。这些模块可以单独开发,当所有的模块开发完成后,把 它们组合在一起就得到了完整的应用系统。 如何访问模块的功能呢? 最初,开发者们使用函数库作为访问一个模块功能的方法, 这些库通过接口程序( a p p l i c a t i o np r o g r a m m i n g i n t e r f a c e 。简称a p i ) 实现其功能。只需 要链接这些库,就可以重用这些函数。这种使用a p i 的传统方法存在许多缺陷,其中包 括:a p i 的更新困难、版本问题、模块之间通讯和实现语言的限制。 后来人们又提出了面向对象的程序设计方法。长期以来,面向对象程序设计方法是 解决传统软件开发问题的埽好方案。面向对象编程技术让开发者按照现实世界里人们思 考问题的模式编程,让开发者更好的利用代码直接表达现实中存在的对象。面向对象编 程得到了大规模普及,是因为它允许开发者可以在完全不同的工程之间共享代码,所以 重用性是面向对象的重要特性。不仅如此,重用性也是软件产业发展的重要基础。提供 什么样的重用机制或者在哪一个层次上提供重用,对于软件发展有不同的意义。因此我 们可以把重用性作为衡量程序设计方法的一个重要指标。 虽然面向对象方法已经深入人心,但随着软件科学的不断发展,尤其是近几年 i n t r a n e t i n t e r n e t 的飞速发展,使软件应用置身于更加广阔的环境中从而对应用软件的 跨语言、跨平台和互操作性提出了更高的要求。在这种情况下,面向对象方法已经难以 适应现代的分布式软件应用。 2 1 1 3 最终解决方案;组件软件 尽管面向对象编程技术非常强大,然而面向更加复杂的现代分布式软件应用,它显 得有点力不从心,因为它无法使用一个标准的框架使得来自不同提供商的软件对象可以 在同一地址空间通信,更不用说跨进程地址空间或者通过网络进行通信,于是组件化程 序设计思想得到了迅速发展。 按照组件化程序设计思想,同样是将单独的、庞大而复杂的应用程序分成多个模块, 但这里每一个模块是不再是一个简单的代码集而是一个自给自足的组件。这些组件模 块可以运行在同一台机器上,也可以运行在局域网络,广域网络甚至i n t e r n e t 上的不同 机器上。 软件行业的组件系统比其他行业发展的要缓慢,不过,目前基于组件的程序设计方 法正受到越来越多的重视,像c o m 这样的组件体系也日趋成熟。“组件”成为软件界 的热门话题,但对于研究什么特性标示软件组件的基本的属性,不同的学者有着不同的 理解。下面是软件行业对组件的一些具有代表性的观点“3 q : 夺组件是软件的基本量子。它具有一定的功能,可插用、可维护。 9 东南大学硕士学位论文 组件是软件开发中一个可替换的单元。它封装了设计决策,并作为一个大单元 的一部分和其他组件组合起来。 夺组件是具有特定功能的,能够跨越进程边界,实现网络、语言、应用程序、开 发工具和操作系统的“即插即用”的独立对象。 夺组件是指任何可被分离出来,具有标准化的、可重用的公开接口的软件。 2 1 1 4 组件对象模型( c o m ) 的主要特点 c o m 就是微软力推的,也是大家一致认可的组件标准,包括对象和接口两个核心概 念。在c o m 标准中,对象是一个非常活跃的元素,通常把它称为c o m 对象。但是c o m 对象的概念与所熟悉的c + + 中的对象不大一样。c o m 对象被很好的封装起来客户无法 访问对象的内部实现细节,也无法知道对象使用了什么数据结构,访问c o m 对象的唯 一途径是通过接口我们把这种接口成为c o m 接口。c o m 接口有两个含义。首先,它 是一组可以调用的函数由此客户可以让对象做某些事情;其次,也是更重要的,接口 是组件及其客户程序之间的协议,也就是说,借口不但定义了可用什么函数,也定义了 当调用这些函数时对象要做什么。c o m 有一个核心接口:i u n k n o w n 接口,每个c o m 组件都必须实现这个接口,而且其他所有接口都必须从i u n k n o w n 接1 3 派生。 在w i n d o w s 系统平台上,一个c o m 组件可以是一个d l l ( d y n a m i cl i n k i n gl i b r a r y , 动态链接库) 文件,也可以是一个e x e ( 可执行程序) 文件。一个组件程序可以包含多 个c o m 对象,并且每个c o m 对象可以实现多个接1 2 ,如图下图所示田一0 l : 接口1接口2接口3 图2 1c o m c 豳t 1 a e 、c 伽对象和c 伽接口之问的关系 当另外的组件或普通程序( 即组件的客户程穿) 调用组僻的功能时,它首先刨建一 个c o m 对象或者通过其它途径获得c o m 对象,然后通过该对象所实现的c o m 接口调 用它所提供的服务。当所有的服务结束后,如果客户不再需要该c o m 对象,那么它应 该释放掉对象所占用的资源,包括对象自身。 2 1 2 组件对象模型的发展 1 9 9 1 年,m i c r o s o f t 通过引入一项叫做o l e ( o b j e c tl i n k i n ga n de m b e d d i n g ,对象连 接嵌入) 的技术,映入了对象启用的概念。值得肯定的是,o l e l 提供了一种在文档容 东南大学硕士学位论文 器中更为有效地存储和维护文档各部分( 或整个文档) 的途径。但o l e i 仍然称不上真 正面向对象的技术,因为它只是从源文件中引用了数据,而没有对数据进行封装。1 9 9 3 年微软推出了c o m ,其建立的基础戏剧性的改为了w i n d o w s 环境中的对象通讯。 m i c r o s o f t 使用新的c o m 体系结构彻底重建o l e 形成了o l e 的第二个版本。o l e 2 成 为第一个用c o m 架构的软件系统。由于采用了c o m ,o l e 2 比o l e l 效率更高,稳定 性和灵活性有了很大提高。在以后o l e 的发展过程中,由于采用了c o m 作为其底层结 构,使用c o m 接口作为程序之间通信的标准,因此,o l e 模块定制和扩充变得非常方 便。 1 9 9 5 年,i n t e r n e t 革命给微软带来了很大的刺激,为了应对这一潮流,微软决定将 o l e 技术用a c t i v e x 商标来销售。于是就产生了a c t i v e x 技术。 1 9 9 7 年9 月下旬,m i c r o s o f t 把a c t i v ep l a t f o r m 技术重命名为w i n d o w sd i s t r i b u t e d i n t e r n e ta p p l i c a t i o n sa r c h i t e c t u r e ( w i n d o w s 分布式i n t e r n e t 应用结构) ,简称为w i n d o w s d n a 。w i n d o w sd n a 是微软多年积累下来的技术精华集合起来形成的一个完整的、多层 结构的企业应用总体方案,它使得w i n d o w s 真正成为企业应用平台。w i n d o w s d n a 仍 然以c o m 为基础,但是这里的c o m 已经被增强为c o m + 。 图2 2 显示了o l e 、a c t i v e x 和c o m 技术的关系: i 蜊2 2a c t i v e x 和o l e 都以c o m 为接础 微软坚持不懈的创建它自己的特定子w i n d o w s 系列操作系统的全功能对象请求代 东南大学硕士学位 仑文 理,这项技术在1 9 9 6 年正式发布,称为分布式组件对象模型( d i s t r i b u t e d c o m p o n e n t o b j e c t m o d e l ,d c o m ) 。d c o m 扩充了c o m 体系结构,为使用兼容c o m 的操作系统并通过 网络连接的计算机在二进制级别上提供对象通信服务。 2 2 组件对象模型的对象和接口 在c o m 规范中,对象和接口是最核心的部分。c o m 对象是一个c o m 规范中非常 活跃的元素,c o m 对象被很好地封装起来,客户访问c o m 对象的唯一途径是通过c o m 接1 2 ,c o m 接口是c o m 规范中最关键的元素。c o m 有一个核心接口:i u n k n o w n 接口, 每个c o m 组件都必须实现这些接1 2 。本节将详细论述这两方面内容。 2 2 1c o m 对象 c o m 是面向对象的软件模型,因而对象是它的基本要素之一。类似于c + + 中对象的 概念,对象是某个类的德一个实例;而类则是一组相关的数据和功能组合在一起的一个 定义。使用对象的应用( 或另一个对象) 为客户。有时也称为对象的用户。 在c o m 模型中,对象本身对于客户来说是不可见的,客户请求服务是通过接口进 行在c o m 规范中。也没有对c o m 对象进行严格的定义。但c o m 提供的是面向对象 的组件模型,c o m 组件提供给客户的是以对象形式封装起来的实体。客户程序与c o m 组件程序进行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论