OPC服务器设计和实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
OPC服务器设计和实现

OPC服务器设计和实现   摘 要:工业控制类软件系统开发面临着如何有效采集数量和种类不断增多的现场设备数据,采集设备间及与控制系统间数据如何实现共享,系统如何升级和维护,如何解决不同的、相对独立的驱动程序可能存在的冲突等问题。OPC为工业自动化软件的开发提供了统一标准,能很好地解决上述问题。采用OPC标准,硬件开发商可为其硬件产品开发统一的OPC接口,软件开发者可将精力集中在其核心产品开发上。基于OPC2.0标准,利用VC++6.0开发平台可方便进行OPC服务器和客户端开发。   关键词:工控;OPC;组件;COM   DOIDOI:10.11907/rjdk.151482   中图分类号:TP319   文献标识码:A 文章编号文章编号2015)009013704   0 引言   随着工业生产技术的不断进步,工业控制类软件取得了长足发展,但在其开发过程中也面临很多问题。在传统控制系统中,数据采集设备之间及设备与控制系统之间信息传递主要通过特有驱动程序来实现。不同生产厂家设备使用不同驱动程序,因此在软件中必须包含工程所需全部设备通信驱动及控制模块,为升级和维护带来极大不便,并且系统中存在若干驱动程序对其控制的硬件设备进行操作时,可能会引起冲突,甚至导致系统崩溃。   OPC(OLE for Process Control)技术能很好地解决多种设备共同使用问题。OPC是微软公司对象链接和嵌入技术在过程控制方面的应用。OPC以OLE、COM、DCOM技术为基础,采用B/S模式,为工业控制类软件系统开发提供了统一标准规范。利用该标准,硬件开发商可为硬件产品提供标准OPC接口,软件开发者可直接使用OPC标准接口控制不同硬件设备。   目前,公开发行的OPC开发资料较少,本文基于OPC2.0标准提出基于VC++6.0开发平台的OPC服务器和客户端开发步骤及方法。   1 OPC   OPC是一个工业标准,其规范了一整套接口、属性和方法,用于各种过程控制设备之间通信。OPC规范分服务器和客户端两个部分。   OPC服务器端采集控制设备数据信息,并通过标准OPC接口将数据传送到OPC客户端;OPC客户端则利用标准的接口接收数据信息。OPC服务器端由3大部分构成,即服务器、组和项。服务器对象提供设备自身相关信息,包含组对象;OPC组对象提供数据组对象相关信息以及组织数据的方法,组对象包含项对象,并管理项对象。组对象有两种:公共组合和私有组。OPC项代表服务器扫数据源的一个物理连接。OPC标准中最主要的是数据访问规范和报警与事件规范。数据访问规范提供访问设备实时过程数据的方法接口,报警与事件规范提供将现场设备事件或报警数据告知客户程序的通知机制。   2 OPC服务器实现   2.1 支持接口添加   OPC规范定义了两种接口:自定义接口(the OPC Custom Interfaces)和自动化接口(the OPC Automation interfaces)。OPC基金会为OPC开发规范,制定了OPCDA.IDL接口描述文件,该文件描述了一个标准OPC服务器所该支持的接口。比较常用的有IOPCServer、IOPCBrowseServerAddressSpace、IOPCGroupStateMgt、IOPCSyncIO、IOPCAsyncIO2等。开发时最便捷的方法是将OPCDA.IDL文件内容复制到项目IDL文件内,添加支持接口定义。   2.2 服务器接口   根据OPC标准,设计OPC服务器,由3个对象构成:服务器(OPCServer)、组(OPCGroup)、项(Item)。一个标准的OPC服务器对象支持的接口如图1所示,带有中括号标志的接口为可选接口,其余为必须实现的接口。其中,IOPCServer接口最为重要,该接口定义了组对象管理方法,包括添加组、删除组、获取组对象索引等,是必须实现的接口。此外,IOPCBrowseServerAddressSpace 接口允许用户浏览服务器中的组员空间,为用户提供组员定义列表;IOPCCommon接口为某个特定的对话设置和查询本地标识;IconnectionPointContainer为支持可连接点对象接口,用于客户端回调。   图1 标准OPC服务对象支持接口   图2为一个基本的OPC服务器所应具有类对象的关系示意图。在OPC服务器中,服务器对象管理和维护组对象,而组对象管理和维护项对象,每个项对象实际上是和设备的一个物理连接。通过项对象和设备进行数据交换。   图2 OPC服务器类结构   2.3 OPC同步异步通讯   OPC可采用同步或异步方式进行通信。当以同步方式通信时,客户程序对服务器进行调用,且必须等到调

文档评论(0)

bokegood + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档