VB编写OPC客户端程序.doc
《VB编写OPC客户端程序.doc》由会员分享,可在线阅读,更多相关《VB编写OPC客户端程序.doc(6页珍藏版)》请在咨信网上搜索。
1、如何用VB编写OPC客户端程序一、引言在工业自动化领域,计算机早已成为必不可少的工具,计算机技术的不断发展,大大加速了工业自动化技术的进步,而各种各样的工业控制应用软件正是具体实现这一进程的最重要的工具。以往,应用软件开发商要为每一种硬件开发驱动程序,由于硬件的种类繁多,特征各异,软件开发商的负担异常繁重,尤其是如果硬件特征发生了变化,整个应用软件相应的驱动程序也要相应地修改,这对软件开发商,对整个工程都是很不利的。而且由于驱动程序的不统一,不同应用程序访问同一硬件设备时常常发生冲突。OPC(OLE for Process Control)技术标准正是在这种情况下产生的。OPC基于微软的OLE
2、、COM和DCOM技术,而且它本身就是一种特殊的COM,也正因为有微软的参与,以及以已经成熟的技术为基础,它比一般的工业标准制定的效率更高,它从开始制定到第一个可运行的规范开始运行,只用了不到一年的时间。二、OPC原理及应用OPC技术为工业自动化软件面向对象的开发提供了统一的标准。它大大减轻了软件开发商的负担,软件开发商不必再为每一硬件单独编写驱动程序,只要硬件的特征符合统一的OPC接口程序标准,或者硬件生产商提供OPC服务器,如图一所示,不同的应用软件开发商都可以采用OPC标准设计工控软件,以标准规定的统一接口通过OPC服务器存取现场数据。这样,当现场设备发生变化或系统中加入新设备时,OPC
3、服务器的提供商需要重新实现服务器接口,以适应硬件的变化,但由于服务器所提供的接口的一致性,工控软件不作更改即可继续使用,只是某些情况下可能需要重新组态(如添加新的PLC站点等),这样,软件开发商可以节省大量的时间致力于工控软件的性能方面的提高,不必再考虑硬件变化带来的影响,大大减小了软件维护的工作量。这正如OPC规范里所说,OPC将应用软件和硬件设备划清了界限。2.1 OPC基本结构OPC服务器有两类接口:定制接口(Custom Interface)、自动化接口(Automation Interface),定制接口比较低级,它提供更多的功能,效率也比后者高,可以用C+语言调用此类接口,自动化接
4、口主要用于VB、DELPHI等开发工具。按照OPC规范,定制接口是服务商必须提供的,而自动化接口则是可选的,不过,OPC基金会(管理OPC标准的国际组织)提供了一个叫做“自动化包装器”的动态连接库,用于在两者间转换。如图二所示:在OPC的早期规范里主要包括OPC数据存取规范、OPC报警和事件、OPC历史数据存取规范。OPC数据存取规范详细规定了客户程序和服务器程序进行数据通信的机制,其它类型的OPC服务器往往是在数据存取服务器的基础上通过增加对象、扩展接口而来的,所以该规范也是其它OPC规范的基础。OPC数据存取规范规定的基本对象有三类:OPC Server、OPC Group和OPC Ite
5、m,OPC Server包含服务器的所有信息,也是OPC Group的容器,OPC Group除了包含它自身信息外,还负责管理OPC Item。它们的结构如图三所示。每一个OPC Item代表到数据源的一个连接,但它没有提供外部接口,客户端程序无法对OPC Item直接进行操作,应用程序必须依靠OPC Item的容器OPC Group来对它进行操作,这在下面的程序中会有具体说明。2.2 OPC数据访问方式OPC客户程序对OPC服务器中数据的存取方式分为同步读写方式和异步读写方式。客户程序可按照一定的周期调用OPC Group对象的IOPCSyncIO接口对服务器程序进行数据同步存取操作,此时客
6、户方的调用函数一直运行到所有数据读写完成,然后才能执行其它操作,因此,这种方法适合与读取少量数据,如果数据多的话,会使系统处于假死状态,无法进行操作。IOPCSyncIO2是从3.0版才出现的,是对IOPCSyncIO的增强。IOPCAsyncIO2和IOPCAsyncIO3是异步方式中使用的接口,异步访问时,当客户端对服务器提出访问要求后,立即返回到OPC应用程序执行其它操作,无须等待,当OPC服务器完成数据读取后通知OPC应用程序,应用程序从而得到数据。其中前者是在2.0版本中新定义的,具有较高的通信性能;后者则是在3.0版本中才刚刚出现,同IOPCSyncIO2类似,IOPCAsyncI
7、O3是对IOPCAsyncIO2的增强。在异步方式下,服务器程序收到读请求后,调用客户程序方的IOPCDataCallback接口,将数据发送给客户程序。异步方式中允许服务器将读写操作进行排队,使客户方的调用函数可立刻返回,当服务器读写操作完成后再通知客户程序。显然,异步通报方式的通信效率更高,这种方式也是本文所要讨论的方式,但有多个客户程序与服务器相连时,同步读写方式更具时效性。对于每个组对象,客户程序可根据需要采用其中一种数据存取方式,而不能两者都使用。异步读取还有一种特殊的方式,叫做订阅方式(Subscribe)这种情况下,应用程序不需要发出读请求,OPC服务器在定期更新数据的时候,如果
8、发现数据有一定变化,则自动向应用程序发出通知和传输变化的数据。2.3编写OPC客户端应用程序VB简单实用,是比较理想的OPC应用程序快速开发工具,若要用VB开发OPC应用程序,必须要使用OPC自动化包装器,这在前文已经提过,这种包装器一般由OPC服务器的供应商以DLL形式提供,下面就以SIEMENS提供的sopcdaauto.dll为例,介绍如何开发OPC应用程序,这也正是笔者在最近的工程中实际应用到的,这是基于DA2.0的版本。首先,新建VB工程后,作图四所示的引用:2.3.1建立OPC对象首先申明OPC对象:Option Base 1Dim WithEvents ServerObj As
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 编写 OPC 客户端 程序
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。