OPC: OLE for Process Control 工业自动化的数据交换规范
三个主要的OPC规范:
数据访问DA: 当前值
报警和实践A&E: 基于事件的信息借口
历史数据访问: HAD
所有接口提供通过地址空间浏览的方法,并提供可用数据的信息。
才用客户端/服务器(C/S)方式进行信息交换。
OPC服务器封转了过程信息来源,使信息可以通过它的接口访问。
经典OPC接口是基于微软的COM和DCOM技术的。
OPC DA客户端明确地选择他们需要从服务器读、写或检测的变量(OPC项)。
OPC客户端通过创建一个OPC Server对象来建立一个到服务器的连接。该服务器对象提供通过浏览地址空间分层寻找项目和他们的属性,如数据类型和访问权限。
事件:单条通知告诉客户端一个事件发生
报警通知:告诉客户端过程状态的变化
要接收通知,OPC A&E客户端连接到服务器,订阅通知,然后接收在服务器出发的所有通知。
OPC A&E客户端连接:
在A&E服务器创建一个OPCEventServer
生成OPCEventSubscription
OPC历史数据访问:
OPC DA访问实时的不断变化的数据
OPC HAD提供了对已存储数据的访问
三种不同的读取方式:
- 从记录中读取原始数据,服务器返回记录中指定时间范围内的所有值;
- 读取变量在指定时间戳的值;
- 历史数据库中一个活多个变量在指定的时间域的数据计算聚合值,值始终包括相关的质量戳和时间戳。
OPC UA的需求:
为分布式系统之间交换信息建立沟通的需求
建模描述一个系统和现有信息的需求
OPC服务器: 数据源
OPC 客户端: 数据使用者
OPC UA为应用程序之间提供了互操作的、平台独立的、高性能的、可扩展的、安全和可靠的通信。
定义OPC的目的就是为应用程序访问厂商前台提供共同的方法,允许兼容的应用程序无缝地访问产生环境中的数据。
OPC可以称为“软件总线”,应用程序只要知道如何读取OPC数据源即可,从而可以更加容易通用,简洁。
OPC规范定义了两套接口规范:
- 自动化接口规范(Automation Interface Standard)
- 定制接口规范(Custom Interface Standard)
任何技术都有它的技术壁垒。
两种开发符合OPC规范应用程序的方法:
- 利用软件开发商提供的快速开发工具;
- 根据规范直接开发。
OPC UA建模的基本概念是节点以及节点之间的引用。
引用描述了两个确定节点之间的关系。
引用用于暴露节点如何连接的不同语义。
OPC UA的应用程序架构:
应用程序,SDK,栈