基础知识

OPC是一种工业控制协议
OPC是PLC与IT系统通信的桥梁,将PLC处理的数据转变成IT系统能够直接使用的变量。
OPC有两个发展阶段。
阶段1是OPC DA,OPC代指OLE for Process Control。
阶段2是OPC UA,OPC代指Open Platform Communications。
其中,OPC DA基于微软的OLE(对象链接与嵌入)、COM(组件)、DCOM(分布式组件)开发,于1996年发布最初版本。所以说,在工控领域,微软Windows是真正的生产力工具.
OPC协议基于C/S模式。
DCOM底层使用DECRPC协议。
设备状态量——传感器(I/0点)——PLC——opc Server——opc Client——Database

OPC协议

可参考 OPC工业控制通信协议浅析 基于COM/DCOM、DECRPC OPCserver只能跑在windows平台上,明文,可劫持伪造,C/S模式

OPC UA

可参考 OPC UA详细介绍 最新的OPC规范,支持webservice接口,不限于windows平台,更安全

COM/DCOM

可参考【三层架构】——COM/DCOM初识

DECRPC 与 RPC

RPC可参考 RPC是什么,看完你就知道了 DEC/RPC(Distributed Computing Environment RPC) RPC是一种实现 使用TCP 135端口 可参考 网络空间测绘核心技术之:协议识别(DCERPC篇)Distributed Computing Environment/Remote Procedure Call (DCE/RPC)

PLC

可编程逻辑控制器(Programmable Logic Controller,简称PLC),一种具有微处理器的数字电子设备。
PLC(Programmable Logic Controller,可编程逻辑控制器)是现代工业控制的核心。
下面简单介绍一下PLC的发展历程。
1968年,通用汽车公司招标新式设备,用于取代传统继电器,以提升产线调整、设备检修时的效率。1969年Modicon公司交付了其第一件PLC产品,并于1979年发布了Modbus通信协议。Modicon后来成为施耐德公司旗下PLC品牌。
此外,Allen-Bradley公司也参与了PLC的早期发展,其PLC后来成为罗克韦尔旗下AB PLC。
除了Modbus外,PLC流行的通信协议还有Profibus和Profinet。
Profibus在1987年由德国西门子等公司及机构所推动,Profinet继承自Profibus,并于2002年发布Profinet CBA标准。
西门子等PLC大厂都有自己的OPC产品,但是现在最流行的是Kepware公司的通用OPC Server,其兼容大多数主流型号的PLC。Kepware于1995年成立,于2016年被PTC公司收购。

可参考 什么是PLC?

OpcServer

OPC协议、OPC Server的理解+OPC-UA、OPC-DA 常用的OpcServer有 MatrikonOPC: 使用Matrikon OPC Server Simulation 用于模拟 KEPServer V6: 使用KEPServerEX 6

OpcClient

可使用C++,C#,python等开发OpenClient 可参考短小精干原创的三合一命令行OPC客户端

OpenOPC

在windows上使用python的第三方库OpenOPC可远程访问opcserver 可参考这篇文章 OpenOPC and Python 3.7 on Windows

在windows上配置DCOM

可参考 DCOM Tutorial

使用python访问OPC Server

OpenOPC 注意配置好DCOM 就可以不需要network gateway了

组态王 上位机 下位机

组态王、触摸屏、上位机是啥,三者之间有区别?