最近写了几篇文章,感觉有点遗憾看的人并不是很多,交流的人几乎没有,略感有点失望,还是希望各位看客多多转发一下。我为什么在头条上写这类的文章?原因是我认为头条是一个非常好而大的平台,比传统的技术论坛使用的人多了n倍,这对技术的交流是一个非常好的优势,人越多综合能力就越强,各行各业的人可以互相分享自己的知识,对行业也好对自身也好都是百利而无一害的。

发完牢骚开始进入正题,今天我们来说说工控行业一大通讯利器——opc。相信各位电气工程师们对这个不要太熟悉了,有些前沿的工程师们可能要说了,现在都用opcua了。关于opcua的内容,不在本次谈的内容中,以后我会写一篇单讲opcua的知识。其实opcua是opc的升级版,因为opc虽然很成功,但是有它的弊端,对于现在的各个平台搞大数据有所限制。

首先我们需要知道opc是个什么东西,我们来看看百度百科的定义:

OPC(OLE for Process Control, 用于过程控制的OLE)是一个工业标准,管理这个标准的国际组织是OPC基金会,OPC基金会现有会员已超过220家。遍布全球,包括世界上所有主要的自动化控制系统、仪器仪表及过程控制系统的公司。基于微软的OLE(现在的Active X)、COM (部件对象模型)和DCOM (分布式部件对象模型)技术。OPC包括一整套接口、属性和方法的标准集,用于过程控制和制造业自动化系统。

看着有点晕是不是,我再来解释一下。首先opc是一个工业标准,是一套用于过程控制和制造业自动化系统的标准。为什么要有这套标准?它的作用可就大了。各位电气同行们都知道,在工控行业存在很多类型的控制器,光光plc的厂家就有好多,有西门子,松下,欧姆龙,GE,三菱等等,还有dcs的厂家也有好多,国内有浙大中控浙大优稳,国外的也有好多,还有其他类型的控制器。各个设备用的大多不是同一家的产品,每家的产品的驱动协议还不一样,要想读取他们的数据成本有点大,标准统一的接口opc应运而生。opc还有一个特点,就是它是基于微软的,所以其他的系统就没有opc一说了。

以上说了半天只是说了一下概念,下面开始说说怎么去应用opc。毕竟我们不是理论派是实践派。opc分为客户端和服务器。opc服务器的作用是采集下层控制器的数据,opc客户端的作用连接opc服务器来获取数据。如下图所示

采集数据关系图

很多软件都包含opc功能,例如KEPServerEX 6,力控组态软件,优稳dcs等等。他们都可以作为opc客户端读取其它opc服务器的数据,也可以作为opc服务器让其它opc客户端读取数据。下面就以KEPServerEX 6为opc服务器力控组态软件为opc客户端为例,来简单说一下实现过程。

首先我在KEPServerEX 6创建几个数据,如下图

opc服务器拥有的数据

然后我用力控建立opc客户端来读取这些数据,步骤如下

建立力控opc客户端组态

在力控中建立opc客户端组态,点击刷新会在网络中搜索到opc服务器,因为我的电脑中有3个所以显示3个。建立好组态后开始在力控中建点,如下图

在力控中建点

在力控中建点数据连接,点击增加后会弹出一个窗口,在窗口中可以预览到opc服务器中的数据,因为我再opc服务器中建了3个变量,所以这里预览到了3个变量。这样力控就可以读取到KEPServerEX 6中的数据了。如下图

以上是同一台电脑上的opc客户端读取opc服务器的数据的操作流程,但是在实际的应用中大多数的情况是opc客户端和opc服务器不在同一台电脑上。那么需要对两台电脑进行防火墙、opcenum和dcom设置

寻找同路人

做自动化工业变革的践行者