编辑: jingluoshutong | 2014-06-10 |
2 o o
6 年第
2 2 卷第 f ;
-
1 期OP C n ~ , 务器开发的几种方法 A f e w me t h o d o f t h e OP C s e r v e r d e v e l o pme n t ( 武汉海军工程 大学) 陈丹 丹钱美夏立邵英Ch e n , Da n d a n Qi a n, Me i Xi a, L i Sh a o.
Yi n g 摘要 : 简要 介绍了OPCDA规 范,描述了OPCDA( 数 据访 问) 服务器开发 的三 种 方法 : 使用MFC的 C
0 M 库 函数 开发 O P C服务器、通过A11L开发 O P C服务器和利 用工 具 包快速 开发 O P C服务器,最后对 三种 方 法的特 点作 出了比较 . 关键词 : 0P C;
A T L;
服务器开发 中图分类号 : T P
3 1
7 文献标识码 : A Ab s t r a c t : S i m p l y d e s c r i b e t h e O P C D A s p e c i f i c a t i o n, t h e n t h r e e M e t h o d s o f s c r v e r m o d e l d e s i g n b a s e d o n O P C D A ( D a t a A c c e s s ) s p e c i f i c a t i o n a r e i n t r o d u c e d . T h e t hr e e me t h o d s a r e u s i n g MF C AT L a n d t he f a s t d e v e l o p me n t T o o l k i t t O d e v e l o p O P C s e r v e r . At l a s t , c o mp a re t h e c h a r a c t e r i s t i c s o f t h r e e me t h o d s. Ke y wo r d s : OPC;
ATL;
S e r v e r d e v e l o p m e n t
1 引言2OP C 服务器 开 发概 述OPCDA( O P C数据访 问规范) 是OPC基金会最早 发布的一个工业标准 ,主要是对现场设备的在线数据 进行存取 , 目前已经发展到 O P C D A
3 .
0 版本 .O P C基 于微软的 O L E / C O M原理, 采用客户朋 艮 务器模式. OP C 数据访 问服务器主要 由服务器对象 、组对象和项对象 组成.O P C 服务器对象维护服务器的有关信息并包容 O P C组对象 . 可以动态的创建或释放组对象;
而OPC组 对象维护有关其 自身的信息并包容 O P C项 ,逻辑上管 理OPC项;
O P C项则标识了与 O P C服务器 中数据的连 接.O P C项不可以由 O P C客户直接操作 . 所有对 O P C 项的操作都是通过包容该项 的OPC组对象进行的.而OPC服务器对象和组对象是聚合关系 . 即OPC服务器 对象产生 O P C组对象后 , 将组对象的指针传递给客户, 由客户之间操作对象.这样既提高了数据存取 的速度 也易于功能扩展 , 体现了组件软件的重用性 . 它支持 C O M技术的双向通信机制, 具有事件驱动 功能 ,当OPC服务器的数据发生变化时它能 自动通知 O P C客户.在OPC1.0规范中事件驱动使用的是 C O M 的通报连接机制, 在OPC2.0规范 中又增加了对连接点 的支持.而一般的数据采集应用程序 , 从数据源读数据 是主动的, 相 当于客户主动访问服务器的数据 .这就要 求客户不断地查询服务器 的数据 .不管服务器的数据 是否发生了变化, 增加 了系统的开销.因此 O P C D A的 效率大大高于一般的数据采集应用程序. 陈丹丹:硕士研究生海军 指令性 基金项 目OP C服务器 的设计与实现是一个较为复杂与繁 重 的任务 , 设计者需要有很 高 的编程水平 , 熟悉 O P C 规范 , 同时也必须掌握相应 的硬件产品特性 .O P C数 据服务器大致可以分解为不同的功能模块 : O P C对象 接 口管理 , I t e m数据项管理以及服务器界面和设置等 如图
1 . OP C 对象接 口管理 OPC 数 据存储区 服务器界 面和设计 硬件驱动程序 I / O D L L 图1OPC服务 器结构图 一 个设备 的OPC服务器主要 由两部分组成 . O P C 标准接 口的实现和与硬件设备的通信.O P C服务器的 开发必须以 O P C规范为基础 ,实现各个对象及其接 口.下面将 就OPC标准接 口的实现方法进行重点讨 论.3OPCDA 服 务器 开发 方法3.1通过 MF C提供的 C O