OPC的数据访问方法分别有“同步访问”、“异步访问”和“订阅式数据采集方式”三种。

1. 同步数据访问方式

OPC服务器把按照OPC应用程序要求得到的数据访问结果作为方法的参数返回给OPC应用程序,OPC应用程序在结果被返回之前必须处于等待状态。

同步数据访问特点为:读取指定OPC标签对应的过程数据时,应用程序一直要等到读取完为止;写入指定OPC标签对应的过程数据时,应用程序一直等待写入完成为止。当客户数据较少而且同服务器交互的数据量比较少的时候可以采用这种方式,然而当网络堵塞或大量客户访问时,会造成系统的性能效率下降。

2. 异步数据访问方式

OPC服务器接收到OPC应用程序的要求后,几乎立即将方法返回。OPC应用程序随后可以进行其他处理。当OPC服务器完成数据访问时,OPC服务器转换角色充当成客户程序,而原来的客户程序此时可以看成是服务器。OPC服务器主动触发OPC应用程序的异步访问完成事件,将数据访问结果传送给OPC应用程序。OPC应用程序在其事件处理程序中接收从OPC服务器传来的数据。

异步数据访问特点为:读取指定OPC标签对应的过程数据,应用程序发出读取要求后立即返回,读取完成时发生读取完成事件,OPC应用程序被调用;写入指定OPC标签对应的过程数据,应用程序发出写入要求后立即返回,写入完成时发出写入完成事件,OPC应用程序被调用。因此异步方式的效率更高,能够避免多客户大数据请求的阻塞,并可以最大限度地节省CPU和网络资源。

3. 订阅式数据访问方式

并不需要OPC客户应用程序向OPC服务器提出要求,而是服务器周期性地扫描缓冲区的数据,如果发现数据变化超过一定的幅度时,则更新数据缓冲器,并自动通知OPC应用程序。这样OPC客户应用程序就可以自动接到OPC服务器送来的变化通知的订阅方式数据采集(Subscription)。订阅式数据采集方式实际上也属于异步读取方式的一种。采用订阅式数据采集方式的服务器按一定的更新周期(UpdateRate)更新数据缓冲器的数值时,如果发现数据有变化时,就会以数据变化事件(DataChange)通知OPC应用程序。OPC服务器支持不敏感带(DeadBand),而且OPC标签的数据类型是模拟量的情况,只有当前值与前次值的差的绝对值超过一定的限度时,才更新缓冲器数据并通知OPC应用程序。由此可以无视模拟值的微小变化,从而减轻OPC服务器和OPC应用程序的负荷。

订阅式数据访问特点为:服务器用一定的周期检查过程数据,发现数字数据变化或者模拟数据的变化范围超过不敏感区后,立刻通知客户程序,传递相应信息。订阅式技术基于“客户-服务器-硬件设备”模型,在服务器中的内部建立预定数据的动态缓存,并且当数据变化时对动态缓存给予刷新,并向订阅了这些数据的客户端发送。这使得网络上的请求包数大大减少,并有效降低了对服务器的重复访问次数。在数据点很多的情况下,这种通信方式的优势更能凸现出来。

OPC数据访问方法简介相关推荐

  1. OPC的数据访问方法分别有同步访问、异步访问和订阅式

    OPC的数据访问方法分别有同步访问.异步访问和订阅式数据采集方式三种. 1 同步数据访问方式 OPC服务器把按照OPC应用程序的要求得到的数据访问结果作为方法的参数返回给OPC应用程序,OPC应用程序 ...

  2. ASP.NET Core 实战:基于 Dapper 扩展你的数据访问方法

    ASP.NET Core 实战:基于 Dapper 扩展你的数据访问方法 一.前言 在非静态页面的项目开发中,必定会涉及到对于数据库的访问,最开始呢,我们使用 Ado.Net,通过编写 SQL 帮助类 ...

  3. TCGA数据下载方法简介

    TCGA数据,指癌症测序数据,TCGA的全称为The Cancer Genome Atlas,癌症基因组图谱(TCGA)是美国国家癌症研究所(NCI)和国家人类基因组研究所(NHGRI)已生成的33种 ...

  4. DNN 数据访问策略 (转)

    经过几天断断续续的努力,这篇文章终于翻译结束,文章主要讲了DNN的数据访问策略,对于了解系统整体上是如何工作的有一定的帮助,希望能给dnn的初学者一些有用的信息.由于翻译的匆忙+水平有限,错误或不当之 ...

  5. .NET 数据访问架构指南(转)

    Alex Mackman, Chris Brooks, Steve Busby, 和 Ed Jezierski 微软公司 2001年10月 概述:本文提供了在多层.NET应用程序中实施基于ADO.NE ...

  6. [转自microsoft]NET 数据访问架构指南,-数据库连接的测试.即监视链接池化

    NET 数据访问架构指南 Alex Mackman, Chris Brooks, Steve Busby, 和 Ed Jezierski 微软公司 2001年10月 概述:本文提供了在多层.NET应用 ...

  7. .NET 数据访问架构指南

    Alex Mackman, Chris Brooks, Steve Busby, 和 Ed Jezierski 微软公司 2001年10月 概述:本文提供了在多层.NET应用程序中实施基于ADO.NE ...

  8. [转].NET 数据访问架构指南

    Microsoft   目录 ADO.NET简介 管理数据库链接 错误处理 性能 通过防火墙建立链接 处理 BLOBs 事务处理 数据分页 简介 如果你在为.NET应用程序设计数据访问层,那么就应该把 ...

  9. NET 数据访问架构指南

     发布者:[本站编辑]  来源:[]  浏览:[<script src="../../ArticleInfo.asp?action=viewtotal&ArticleId=82 ...

最新文章

  1. Idea不能新建package的解决
  2. 数据库系统实训——实验七——触发器
  3. 【BZOJ4197】寿司晚宴,状态压缩DP
  4. 嵌入式Linux系统编程学习之十一Linux进程的创建与控制
  5. 1 | GNN基础理论
  6. Windows XP SP3细节官方详解
  7. 博文视点大讲堂第24期“PPT演示之道”专题讲座成功落幕
  8. Industroyer:自震网病毒以来对工控系统的最大威胁
  9. OpenCVSharp学习(十二):图片的逻辑运算
  10. 计算机老师为什么不用伽卡他卡做文件服务器?
  11. 微信红包.....真的是抢的越晚越好吗
  12. 使用百度地图api根据网吧名称获取经纬度信息
  13. c++类和对象---多态
  14. ANSYS多相流的单向流固耦合(2022R1版)
  15. TMS320F280025的时钟
  16. 数据库软件MySQL的下载与安装+Navicat for MySQL图形化管理界面的下载与连接
  17. 律所CRM软件,适用于律师事务所的系统
  18. 我的关联规则读数目录
  19. 从云原生到智能化,深度解读行业首个「视频直播技术最佳实践图谱」
  20. 《美国新闻与世界报道》公布2021年全球最佳大学排行榜

热门文章

  1. Spring MVC —— form表单post提交出现乱码
  2. String中的==与Empty
  3. 【转载】DXUT进阶
  4. 关于eclipse新建web项目,提示:The superclass javax.servlet.http.HttpServlet was not found on the Java解决办法...
  5. 【JZOF】已知前序遍历和中序遍历,求出其后序遍历
  6. 解决ssh登录慢,等待时间长的问题
  7. 安装linux环境及相关包方法
  8. 数据库技大会五周年 技术领袖共聚DTCC
  9. Oracle静默安装
  10. CakePHP:链接地址问题(不用mod_rewrite,IIS)