版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

一、 说明

OPC (OLE for process control)即用于过程控制领域的对象链接和嵌入技术,这一概念是由Fisher Rosemount公司1995年首次提出的,它借用了微软的OLE(Object Linking and Embedding)和COM(Component Object Model)/DCOM(Distributed Component Object Model) 技术,并应用于过程控制中。它为过程控制和工业自动化领域提供了一套标准的接口、属性和方法,是实现控制系统现场设备与过程监控级进行信息互连,实现控制系统开放性的关键技术。

《OPC驱动》指导用户进行OPC驱动的正确配置。内容可分为环境配置和驱动配置,环境配置保证标准的OPC客户端能够连接到OPC服务器;驱动配置则确保eview自带的OPC驱动能够从OPC服务器正确读取数据。

该驱动所支持的读取和写入的数据类型有:

  • BOOL
  • Short
  • Word
  • Long
  • DWord
  • Float
  • Double
  • String

二、 OPC环境配置

《OPC环境配置》保证标准的OPC客户端能够连接到OPC服务器,同时eview的服务器能够管理其自带的OPC驱动。OPC服务包括本地服务和远程服务,OPC客户端连接本地服务不需要特殊的配置,但是连接远程服务则需要进行比较复杂的操作,所以这里以WindowXP环境为例,详细介绍远程连接的计算机配置。

1. 本地连接环境

注意给防火墙添加例外,允许服务和客户程序。(也可以直接选择关闭防火墙。)

2. 远程连接环境

操作系统用户配置

在OPC服务器上用Administrator用户建立一个拥有管理员权限的用户并设置密码(密码不能为空),如用户名OPCClientUser,密码123;在OPC客户机上进行相同的操作,并用该用户登入。只有建立了能相互识别的用户账号,才可能建立OPC通讯。


防火墙设置(OPC服务器和客户端上都要进行设置)

关闭window自带的防火墙。


DCOM配置(OPC服务器和OPCClient服务器都要进行设置)

开始→运行→输入:dcomcnfg,打开组件服务界面。

在控制台根目录→组件服务→计算机→我的电脑,右键选择“属性”。

Image Added

选择默认属性tab页,将“在这台计算机上启用分布式COM”打上勾,将默认身份级别改为“连接”。

Image Added

打开COM安全属性页。分别编辑界面上的4个红框选中的按钮选项。在四个编辑选项中分别添加everyone、Administrators、INTERACTIVE、ANONYMOUS LOGIN、SYSTEM、NETWORK用户,并勾选上所有权限选项。

Image Added

打开MSDTC属性页,点击安全性配置按钮,Windows7的环境下,此配置页面默认即可。


在OPC服务器上,还要回到“组件服务”界面,打开DCOM配置,找到注册的OPC服务器的名称选项,打开它的属性。

在常规属性页,将身份验证级别改成“无”。

在位置属性页,Windows7的环境下,此配置页面默认即可。

在标识属性页,选择“交互式用户”


有时做好dcom配置后,需要重新启动电脑才起作用。所以为了安全起见,建议最好重新启动一下电脑,再做下一步。


本地安全策略配置

OPC服务器和OPCClient服务器都要设置:打开控制面版→管理工具→本地安全策略→本地策略→安全选项,选择“网络访问:本地账户的共享和安全模型”,双击打开属性对话框,将模式改成经典模式,如下图:


Image Added

不能忘了这一步,否则会在连接OPC服务器时报“拒绝访问”的错误!


如果通过以上方法在客户端仍然无法访问OPC服务,可尝试在服务端上安装OPC官方OpcEnum库OPC Core Components 2.00 SDK 2.20.msi(部分系统需要管理员权限运行,Win7系统如果仍然不能安装,可使用matrikon OPC模拟器安装程序替代),并启用OpcEnum服务进行访问。


无法远程浏览OPC服务

以管理员身份运行cmd.exe,进入一键设置目录,运行onekey.bat,查看运行没有错误。不需要启用guest用户,或者新建其他用户。

运行dcomcnfg,在组件服务/计算机/我的电脑,右键属性

  • 默认属性,在此计算机上启用分布式DCOM
  • COM安全:4个选项中只需要增加Anonymous Logon的所有权限,guest和everyone等用户不需要配置。
  • 标识选项:交互式用户。
  • 常规的身份验证级别选项:无。


运行dcomcnfg,组件服务/计算机/我的电脑/DCOM配置的OPCEnum:必须在DCom的OPCEnum的安全中,配置

  • 安全选项:启动和激活权限、访问权限、配置权限增加Anonymous Logon用户所有权限,guest和everyone不需要配置。
  • 标识选项:交互式用户。
  • 常规的身份验证级别选项:无。

这样就能浏览远程OPC服务了


无法连接远程OPC服务:

运行dcomcnfg,组件服务/计算机/我的电脑/DCOM配置的该OPC服务(名如:OpcServer.WinCC)属性中

  • 安全选项:启动和激活权限、访问权限、配置权限增加Anonymous Logon用户所有权限,guest和everyone不需要配置。
  • 标识选项:交互式用户。
  • 常规的身份验证级别选项:无。

这样就能远程连接和访问OPC服务了。


三、 OPC驱动配置

3. 驱动配置

系统驱动中需要包含OPCDrv这个驱动

4. 设备配置

增加一个设备,设备连接类型选取Other,连接字符串输入支持三种可能:

OPC服务名。如Matrikon.OPC.Simulation,表示访问本地(本机上的atrikon.OPC.Simulation服务名称)。

OPC服务名@IP。如Matrikon.OPC.Simulation@192.168.10.XX,表示OPC服务部署和运行在192.168.10.XX这个机器上,通过远程进行访问

OPC服务名@IP1,IP2。如Matrikon.OPC.Simulation@192.168.10.XX,192.168.10.YY表示OPC服务部署和运行在192.168.10.XX和192.168.10.YY这两个机器上,通过远程访问。这两个机器同时互为主备,但同时只会连接其中一个,但该连接不同时会自动连接另外一个。

设备参数1:读取数据方式,空表示设备,其他表示缓存

设备参数2:读取IO方式,空表示同步,其他为异步

设备参数3:读取死区值,float

设备配置如下图所示:

Image Added

5. 变量配置

增加变量时,地址格式为:ItemID@AccessPath。如果AccessPath为空,则只需要输入ItemID(多数OPCServer不支持AccessPath)。

如下面一个第三方工具选择Item界面如下:

Image Added


上图的变量地址需要输入为:Random.Boolean

加入存在AccessPath,则地址应为:Random.Boolean@AccessPath

变量配置如下图所示:

Image Added

其中a.a.b为Knight.OPC.Server.VC上的一个item

四、 模拟器与测试

模拟器的使用:

  • 运行OPC.Server.VC,点击左上角的OPC按钮。

Image Added

  • 点击AddItem按钮,在弹出的窗口中添加新的Item变量,填写Item变量名、数据类型以及初始值的属性

Image Added

测试步骤:

  • 按照设备配置、变量配置里的说明完成相应的参数输入
  • 依次运行eview/bin目录下的bat,pknodeserver.exe文件,然后运行pkTagMonitor.exe文件观察所建立的OPC变量
  • 运行exe驱动,观察测试得到的值,如下图所示,与服务器保持一致:

Image Added