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应用程序的负荷。

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

本文转自:http://blog.sina.com.cn/s/blog_3f2c99eb0100d1q6.html

OPC的数据访问方法分别有同步访问、异步访问和订阅式相关推荐

  1. OPC数据访问方法简介

    OPC的数据访问方法分别有"同步访问"."异步访问"和"订阅式数据采集方式"三种. 1. 同步数据访问方式 OPC服务器把按照OPC应用程序 ...

  2. 一文带你了解MySQL之单表访问方法

    前言 对于我们这些MySQL的使用者来说,MySQL其实就是一个软件,平时用的最多的就是查询功能.DBA时不时丢过来一些慢查询语句让优化,我们如果连查询是怎么执行的都不清楚还优化什么,所以是时候掌握真 ...

  3. ASP.NET MVC涉及到的5个同步与异步,你是否傻傻分不清楚?[下篇]

    关于ASP.NET MVC对请求的处理方式(同步或者异步)涉及到的五个组件,在<上篇>中我们谈了三个(MvcHandler.Controller和ActionInvoker),现在我们来谈 ...

  4. scrapy | 爬取伯乐在线全部博文(xpath/css/itemload三种提取方法,同步、异步方式存入MySQL)

    1.目标 伯乐在线网站地址:http://blog.jobbole.com/all-posts/ 爬取伯乐在线的所有文章信息,包括图片网址,标题,发表日期,标签,点赞数,评论数等 将爬取的数据保存至数 ...

  5. android多个请求同步,Android的同步和异步理解

    在Android的API当中handler消息处理.Broadcast广播消息等均采用异步通信机制.什么是异步通信机制呢?和它相对的同步通信机制又是什么呢?有什么区别呢? Synchronous(同步 ...

  6. C# OPC DA 协议同步及异步读取数据,支持局域网访问其 他OPC server

    C# OPC DA 协议同步及异步读取数据,支持局域网访问其 他OPC server

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

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

  8. Visual Basic.NET中访问数据的方法(zz)

    http://info.shangdu.com/new/2003-5-8/200358113624.htm        Visual Basic.NET是微软对Visual Basic语言进行的升级 ...

  9. 本地主机作服务器解决AJAX跨域请求访问数据的方法

    本地主机作服务器解决AJAX跨域请求访问数据的方法 参考文章: (1)本地主机作服务器解决AJAX跨域请求访问数据的方法 (2)https://www.cnblogs.com/QiScript/p/5 ...

最新文章

  1. 使用Java辅助类(CountDownLatch、CyclicBarrier、Semaphore)并发编程
  2. SharePoint数据表组件错误
  3. python语言面试基础_【python面试指北】1.语言基础
  4. C# Aes CryptoStream Specified padding mode is not valid for this algorithm的解決方法
  5. java getclass 相等_Java判断2个List集合是否相等(不考虑元素的顺序)
  6. 记录安装mysql5.7.24遇到的坑
  7. 通过C++ Interop把Windows窗体集成到MFC应用程序中
  8. jzoj4669-[NOIP2016提高A组模拟7.19]弄提纲【LCA,KMP,字符串】
  9. JAVA反射系列之Field,java.lang.reflect.Field使用获取方法。
  10. java mongodb 模糊查询_Java操作MongoDB插入数据进行模糊查询与in查询功能的方法
  11. 力扣(SQL)584. 寻找用户推荐人
  12. Java整合ORC识别验证码
  13. logo设计的基础知识
  14. 80C51单片机的指令系统
  15. base64编码图片替换url图片
  16. oracle双活数据中心建设_双活数据中心 是什么
  17. STL 常用容器的底层数据结构实现
  18. 气象环境监测系统有哪些组成设备
  19. 温补晶振及压控晶振的技术资料与应用
  20. (1)英文分词——波特词干提取算法

热门文章

  1. 河南省计算机大学应用水平考试,河南省大学计算机等级考试选择题(文管二级)...
  2. Map转xml格式字符串
  3. 手机开启apache_微信否认“年终奖人均280万”;MySQL 8.0.14 稳定版发布;支付宝集五福昨开启,一天29万人集齐......
  4. 北京大学自考计算机应用本科,北京大学自学考试本科2019年还能报考吗
  5. solve函数c语言_数值计算方法编程作业(C语言版)汇总
  6. Ubuntu Qt编译报错 stdlib.h: No such file or directory
  7. centos 安装ftp FileZilla
  8. 高通固件解包IPQ6000固件解包
  9. gdb set写text/code段错误的解决办法
  10. matlab叶子分割实验,基于MATLAB进行树叶面积测量实验报告