OPC
OPC(OLE for Process Control, 用于过程控制的OLE)是一个工业标准,管理这个标准国际组织是OPC基金会。
OPC全称是OLE for Process Control,它的出现为基于Windows
的应用程序和现场过程控制应用建立桥梁。在过去,为了存取现场设备的数据信息,每一个应用软件开发商都需要编写专用的接口函数。由于现场设备的种类繁多,且产品的不断升级,往往给用户和软件开发商带来了巨大的工作负担。
系统集成商和开发商急切需要一种具有高效性、可靠性、开放性、可互操作性的即插即用的设备驱动程序。在这种情况下,OPC标准应运而生。OPC标准以微软的OLE(现在的Active X)、COM (部件对象模型)和DCOM (分布式部件对象模型)为技术而开发出的一整套接口、属性和方法的标准集,用于过程控制和制造业自动化系统。OPC采用典型的C/S模式,提供统一的OPC接口标准的Server程序,软件厂商只需按照OPC标准接口编写Client程序就可以访问Server程序进行读写。
OPC协定包括:
1.DA(Data Access)规范:访问数据主要采用该规范
2.A&E(Alarm and Event)规范:基于事件,提供Client端订阅,事件触发后Server端主动提交回数据的数据访问方式。
3.HDA(History data access)规范
4.OPC XML-DA规范,XML-basedexchange of real-time values
参考文档
https://blog.csdn.net/byxdaz/article/details/78164850?locationNum=5&fps=1
OPC-UA
OPC UA优势
1)一个通用接口集成了之前所有OPC的特性和信息,A&E, DA,OPC XML DA or HDA
2)更加开放,平台无关性,WINDOWS,Linux都能兼容
3)扩展了对象类型,支持更复杂的数据类型比如变量,方法和事件
4)在协议和应用层集成了安全功能,更加安全
5)易于配置和使用
OPC和OPC UA协议区别
OPC虽然通过配置COM/DOM来提供数据加密和签名功能,配置防火墙,用户权限来让数据访问变得更加安全,但是会增加额外的工作量,尤其是对非IT的工程师来说;对于OPCUA,数据加密和签名,防火墙等都是默认的功能。比如基于DOM的OPC使用的动态端口分配,端口不固定,让防火墙难以确定,而OPC UA的端口都是唯一的,比如SINUMERIK 840D是PORT 4840,SIMATIC S7是PORT 4845。DOM/COM也可以生成不同级别的事件日志,但日志内容不够详细,只会提供“谁连接上服务器”这种,而对于OPC-UA来说都是默认的功能,生成的日志内容更全面。
核心的区别是因为OPC和OPC UA协议使用的TCP层不一样,如下:
OPC是基于DOM/COM上,应用层最顶层;OPC UA是基于TCP IP scoket 传输层.
参考文档
http://baijiahao.baidu.com/s?id=1579065585407579208&wfr=spider&for=pc
https://www.cnblogs.com/zouhao/p/6305439.html
开源库open62541
open62541(http://open62541.org)是一个开源的免费实现OPC UA(OPC统一架构)
github地址:
https://github.com/open62541/open62541/releases
KEPWARE
OPC客户端开发
https://www.cnblogs.com/foxclever/p/7586824.html
https://www.cnblogs.com/ioufev/articles/9697717.html
https://blog.csdn.net/mikasoi/article/details/84887313
//oen62541 学习文档
https://blog.csdn.net/mikasoi/article/details/84799078
https://blog.csdn.net/qq_37887537/article/details/84849998
原文地址:https://www.cnblogs.com/retry/p/11679353.html