由于工作需要使用OPC技术,网上找了很多资料学习,发现大多数都讲的很片面,偏理论弄,经过两天研究,终于整理出OPC技术,核心在于我们如何使用及使用时的方法,特写此文章和代码供大家参看,免走弯路。如有需要,欢迎大家来一起进行技术交流。

一、 OPC服务器与客户端配置

当OPC服务器程序和OPC客户程序不在同一计算机上运行时,需要配置Windows的分布式COM,即DCOM,DCOM作为Windows系统的一个服务组件,在控制面板下的管理工具下的“组件服务”中进行管理,详情请请参考其在线帮助的相关章节。在本教程下面的一小节中对DCOM在服务器和客户端的配置分别做必要的说明。

【服务器端DCOM的配置】

1、从Windows的控制面板下的管理工具中启动“组件服务”程序,也可以直接从Windows的“开始”系统菜单中的“运行”项中输入“dcomcnfg”,确定启动Windows的“组建服务”管理程序。
2、在打开的“组件服务”配置程序中的“组件服务”分支,直到“DCOM配置”节点下在服务器上所使用的OPC服务器软件名称,易控的OPC服务器名称为“ControlEase OPC Server” 。
3、选中所使用的OPC服务器,如“ControlEase OPC Server”,选中其右键菜单中的“属性”。在打开的属性配置对话框中的“常规”页中的“身份验证级别”,选为“连接”。将“标识”页中“选择运行此应用程序的用户帐户”设置为“交互式用户”。将“安全”页中的“启动和激活权限”、“访问权限”和“配置权限”分别设为“自定义”,添加“Everyone”用户,应允许其启动激活、访问和完全控制OPC服务器
4、在“DCOM配置”节点下选中“OpcEnum”,将其属性对话框的“常规”页中的“身份验证级别”选择为“连接”

【客户端DCOM的配置】

1、和服务期端一样,启动“组件服务”程序
2、展开“组件服务”配置程序中的“组件服务”分支,直到“My Computer”节点,在其右键菜单中选择“属性”。在属性对话框的“默认属性”页中选中“在此计算机上启用分布式DCOM”,将“默认身份验证级别” 选择为“连接”,“默认模拟级别”选为“标识”。在“COM安全”页中分别编辑安全限制和默认值,把“本地启动”“远程启动”“本地激活”“远程激活”权限给当前用户或所有用户。

二、 OPC服务器与客户端通信原理

1、 在OPC服务器上添加好需要的分组和变量,如下图:

opc的客户机可以用Java opc客户端_C#


2、 在客户端连接到OPC服务器后,获取OPC服务器上的组与变量,并在客户端新建分组,将服务器上的变量与我们刚新建的分组里的变量关联起来。如下图:

opc的客户机可以用Java opc客户端_opc的客户机可以用Java_02


3、修改本地客户端的OPC变量,OPC服务器上的变量也会相应的变化;当然,本地客户端也可以随时读取OPC服务器上的变量值。

opc的客户机可以用Java opc客户端_服务器_03

源码下载链接