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自动化接口的浅析  未知来源 供稿 2004-10-8 17:38:00 【字体:大 中 小】  1 引言 OPC全称是OLE for Process Control,直译为过程控制中的对象连接嵌入技术。在当今过程控制领域,是一种非常流行的数据交换技术。其实质上是将微软的Activex(控件)技术应用于过程控制领域。也就是说在过程控制系统中,硬件服务商或软件提供者提供的数据源,在设计数据接口方面就采用了微软的OLE技术,并提供相应的控件、动态链接库,即支持OPC接口技术;当监控系统需要与数据源进行数据交换时,其开发的基于Windows的应用程序仅需将数据源提供的控件引入或者遵循OLE技术,就可以与数据源进行通讯,而无需开发数据源硬件驱动或与服务商软件通讯接口,大大地节省了开发费用,使应用程序和现场过程控制建立了桥梁,相互之间进行数据交换更加方便、灵活。OPC服务器通常支持两种类型的访问接口,它们分别为不同的编程语言环境提供访问机制。这两种接口是:自动化接口(Automation interface);自定义接口(Custom interface), 如图1所示。自动化接口通常是为基于脚本编程语言而定义的标准接口,可以使用Visual Basic、DelphiPowerBuilder等编程语言开发OPC服务器的客户应用。而自定义接口是专门为C++等高级编程语言而制定的标准接口。 图1 OPC的两种通用接口方式 OPC现已成为工业界系统互联的缺省方案,给工业监控编程带来了便利,用户不用为通讯协议的难题而苦恼。 2 OPC服务器数据访问过程 OPC数据访问提供从数据源读取和写入特定数据的手段,一个OPC对象具有一个作为子对象的OPC组集合对象(OPCGROUPS)。在这个OPC组集合对象里可以添加多个的OPC组。每个组对象都具有一个作为子对象的OPC标签集合对象(OPCITEMS)在这个OPC标签集合对象里可以添加多个OPC对象。假定现有一个由DCS、I/O驱动器或独立的软件供应商用C++开发的OPC服务器,其服务名称为OPC—Jsample SERVER, 自动化接口组件为:OPCDAAUTO.DLL,以下是用VB访问OPC服务器数据的过程。 2.1 注册OPC组件 利用VB开发OPC应用程序时,因为VB应用程序是运行在与OPC服务器不同的计算机空间,不能直接调用OPC服务器的接口进行数据交换,需要通动态链接库并利用操作系统提供的通信能力进行数据交换,所以必须注册OPC自动化接口组件OPCDAAUTO.DLL(一个动态连接库),这样就能够引用该组件建立OPC各种对象以便于OPC服务器连接。在批命令中运行语句%RegSvr32Path %RegSvr32/s opcdaauto.dll 进行注册。注册完后引用该组件。 2.2 引用OPC组件 如图2所示:在引用对话框中,将OPC Automation 2.0加入。这样在对象浏览器中将看到OPC的各种属性和方法,供编程时使用。 图2 引用对话框 2.3 建立OPC服务器对象 在申明服务器对象后,通过SET语句建立服务器对象:首先用“NEW”关键词创建生成一个用于连接数据服务的OPC服务器,然后建立该服务器的OPC组集合,在该组集合添加一个OPC组,建立OPC项集合, 生成项标识符, 添加OPC标签。这种结构使得应用程序可以像使用OPC对象支持的数据和功能。OPC应用程序可以取得OPC服务器支持属性的执行状态,调用OPC服务器支持的方法和服务器连接。 2.4 数据读取 OPC客户与服务器进行数据交互可以有2种不同方式,即同步方式和异步方式。异步方式比同步方法实现较为复杂,需要在客户程序中实现服务器回调函数。然而当有大量客户和大量数据交互时,异步方式的效率更高,能够避免客户数据请求的阻塞,并可以最大限度地节省CPU和网络资源。具体在OPC对象声明中,ObjTestGRP对象带有“WithEvents”语句,同时增加异步方式访问使用的新定义的变量,即事务标识符(LtransID等)用于读取和写入。以下是数据同步读取主程序: Sub Connect(strProgID As String, Optional strNode As String) Set objServer = New OPCServer’ 建立一个OPC服务器对象 If objServer.ServerState = OPCDisconnected Then objServer.Connect strProgID, strNode’ 连接OPC服务器 End If Set objGroups = objServer.OPCGroups’ 建立一个OPC组集合 Set objTestGrp = objGr

文档评论(0)

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

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

1亿VIP精品文档

相关文档