组态王通过网络OPC通讯时DCOM配置
说明文档
北京亚控科技发展有限公司
2009 年 10 月
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
目 录
1. 概述 ........................................................................................................................ 1
2. 基于Windows NT/2000 操作系统域计算机的DCOM配置 ................................ 1
3. 基于Windows XP SP2/Server 2003 SP1 操作系统域计算机的DCOM配置 ...... 6
3.1 配置防火墙 .................................................................................................. 6
3.2 DCOM配置 ................................................................................................... 9
4. 补充说明:OPC Client不能连接OPC Server时可以尝试的方法 .................... 20
5. OPC通讯同步和异步的差别 ............................................................................... 24
6. 网络OPC配置工具 .............................................................................................. 24
北京亚控科技发展有限公司 i
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
1. 概述
组态王具有网络 OPC 功能,组态王与组态王之间可以通过网络以 OPC 方式进行通
讯,同样其他 OPCclient/OPCserver 也可以通过网络与组态王之间以 OPC 方式进行通讯。
在使用网络OPC模式前,需要对充当OPC服务器的机器进行dcomcnfg程序配置,本
文主要介绍在Windows 2000、NT、XP、2003 Server操作系统下,组态王采用OPC方式通
讯时的DCOM配置。
win98 操作系统不支持网络 OPC 功能。
2. 基于 Windows NT/2000 操作系统域计算机的 DCOM 配置
Win NT/2000 操作系统自己带有 dcomcnfg 程序,设置过程如下:
1)打开 dcomcnfg: 在 windows 菜单“开始”中选择“运行”,在编辑框中输入
“dcomcnfg”,如下图 2-1 所示。
图 2-1
2)定义属性:点击“确定”后,弹出“分布式 com 配置属性”对话框,如下图 2-2。
北京亚控科技发展有限公司 1
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 2-2
进入“默认安全机制”属性页进行定义,如下图 2-3:
北京亚控科技发展有限公司 2
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 2-3
对“默认访问权限”,“默认启动权限”和“默认配置权限”进行设置,将 everyone
用户设置为“允许访问”,“允许调用”和“完全控制”,如图 2-4、图 2-5、图 2-6 所
示。
图 2-4
北京亚控科技发展有限公司 3
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 2-5
图 2-6
然后选中“opcEnum”,进行“属性”配置,弹出如下图 2-7 对话框:
北京亚控科技发展有限公司 4
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 2-7
在“安全性”属性页中选中“使用自定义访问权限”,“使用自定义启动权限”,
“和使用自定义配置权限”,并分别进行编辑,全部设置为”everyone”允许访问,允许
设置,完全控制等。
3)再回到“分布式 com 配置属性”对话框中,选中 kingview.view,如下图 2-8,
图 2-8
北京亚控科技发展有限公司 5
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
进行属性配置,同样,在“安全性”属性页中选中“使用自定义访问权限”,“使
用自定义启动权限”,“和使用自定义配置权限”,并分别进行编辑,全部设置
为”everyone”允许访问,允许设置,完全控制等。然后在“身份标识”属性页中选中“交
互式用户”。
3. 基于 Windows XP SP2/Server 2003 SP1 操作系统域计算机的
DCOM 配置
3.1 配置防火墙
WINDOWS 防火墙是基于“例外”的,也就是默认情况下,防火墙将阻止外部“未
被请求”的连接通过网络,而管理员可以在规则之外设置特定的应用程序或端口来响应
外部“未被请求”的连接。
防火墙的例外可被归入两种层次的情况,一是应用程序层次,二是端口与
协议
离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载
层次。
前者可设置特定的程序来对“未被请求”的连接进行响应,后者可设置特定的 TCP 或
UDP 端口来允许相应的通信。为了使 OPC 程序可以通过 DCOM 正常工作,必须在这两
个层次上都进行设置。
防火墙的配置过程如下:
1)为了给系统提供必须的保护,WINDOWS 防火墙是默认启用的(如图 3-1)。(个
人)不推荐关闭 WINDOWS 防火墙,若通信连接失败,在调试过程中可以暂时关闭防火
墙以确实问题是否是由防火墙所引起。如若确定永久关闭防火墙,下面所述关于防火墙
的设置均可忽略。
北京亚控科技发展有限公司 6
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 3-1
2)进入 WINDOWS 控制面板,双击“WINDOWS 防火墙”图标,打开“WINDOWS
防火墙”设置对话框,选中“例外”选项卡,把相应 OPC Client 和 Server 程序添加进例
外列表。同时添加Microsoft Management Console (mmc.exe 在Windows\System32目录下)
和 OPC 应用程序 OPCEnum (opcenum.exe 在 Windows\System32 目录下) 到例外列表
中(如图 3-2)。最后确保“文件和打印机共享”也被选中在例外列表中。
(注:只有 EXE 程序可以被添加到例外列表中,对于 DLL 和 OCX 等类型的 OPC
Server 和 OPC Client ,必须添加调用它们的 EXE 程序;本步设置可能要用到“添加程
序”和“浏览”按钮。)
北京亚控科技发展有限公司 7
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 3-2
3)添加 TCP 135 端口。建立 DCOM 通信和对外来请求进行响应需要用到 TCP 135
端口。在“WINDOWS 防火墙”的“例外”选项卡中,点击“添加端口”按钮。在“添
加端口”对话框中进行设置,如下图 3-3 所示。
北京亚控科技发展有限公司 8
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 3-3
3.2 DCOM 配置
Windows XP SP2 和 Windows 2003 SP1 在 DCOM 安全方面进行了一些增强。在
Windows XP SP2 和 Windows 2003 SP1 中,若要通过网络使用 OPC,应该注意到以下两
个方面的问题:一是用户可以通过“激活和访问权限”对话框对使用 DCOM 的应用程序
的“限制权限”进行配置;二是在“激活和访问权限”中定义的每个用户,其本地和远
程访问权限可以进行分别配置。
关于“激活和访问权限”,启动权限定义了谁可以本地或远程激活(或启动)基于
COM 的应用程序(比如 OPC Server 程序);访问权限定义了谁可以对已经启动起来的
程序进行访问。
默认情况下,Windows XP SP2 和 Windows 2003 SP1 不允许经由网络的 OPC 通信。
为了使基于 DCOM 的 OPC 应用程序可以通过网络工作,用户应该被给予 OPC Server 和
OPC Client 的远程激活和访问权限。
Windows XP SP2 和 Windows 2003 SP1 下 DCOM 的配置过程如下:
北京亚控科技发展有限公司 9
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
1)点击“开始”-->“运行”。输入 DCOMCnfg,回车,打开“组件服务”窗口,
如图 3-4 所示。
图 3-4
2)双击“控制台根目录”下的“组件服务”展开“组件服务”文件夹,同样方式,
展开“计算机”文件夹,右键点击右侧窗口的“我的电脑”图标,点击“属性”,打开
属性对话框。
选中“默认属性”选项卡,勾选“在此计算机上启用分布式 COM”,“默认身份
验证级别”选“无”,如图 3-5 所示。
图 3-5
北京亚控科技发展有限公司 10
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
3)选中“COM 安全”选项卡,注意这里有 4 个按钮可供点击进入配置,如图 3-6。
图 3-6
4)配置访问和启动激活权限。
-->“编辑限制(L)…”
设置 ANONYMOUS LOGON
OPC .
如图
“访问权限”
的本地访问及远程访问权限为允许。(此设置与
Enum exe 发挥作用有关,对于某些设置了 “验证等级”为“无”以允许匿名连接
的 OPC Servert 和 OPC Client,此设置也是必须的。)
设置 Everyone 的的本地访问及远程访问权限为允许。
3-7 所示。
北京亚控科技发展有限公司 11
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 3-7
“启动和激活权限”-->“编辑限制(I)…”
设置 ANONYMOUS LOGON 的本地启动、本地激活、远程启动和远程激活权限为
允许。
设置 Everyone 的本地启动、本地激活、远程启动和远程激活权限为允许。(注:为
了安全,可建立专用于 OPC 通信的用户组,进行权限赋予。)
如图 3-8 所示。
北京亚控科技发展有限公司 12
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 3-8
设置默认访问和启动激活权限。对于每个参与 OPC 通信的用户或组,均应赋予其本
地和远程访问以及启动激活权限。若相应用户或组没有出现,则应手动添加,然后赋予
权限。
“访问权限”-->“编辑默认值(E)…”。
添加并设置 ANONYMOUS LOGON 的本地访问及远程访问权限为允许。
添加并设置 Everyone 的本地访问及远程访问权限为允许。
如图 3-9 所示。
北京亚控科技发展有限公司 13
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 3-9
“启动和激活权限”-->“编辑默认值(D)…”。
添加并设置 ANONYMOUS LOGON 的本地启动、本地激活、远程启动和远程激活
权限为允许。
添加并设置 Everyone 的本地启动、本地激活、远程启动和远程激活权限为允许。
如图 3-10 所示。
北京亚控科技发展有限公司 14
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 3-10
5)配置 OPCEnum 与 Kingview.view
双击“控制台根目录”下的“组件服务”展开“组件服务”文件夹,同样方式,展
开“计算机”-“我的电脑”-“DCOM 配置”-“OPCEnum”,点击右键“属性”,
打开 OPC 属性对话框。
选择“常规”标签页,“身份验证级别”选“默认”。
如图 3-11 所示。
北京亚控科技发展有限公司 15
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 3-11
北京亚控科技发展有限公司 16
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
选择“位置”标签页,勾选“在此计算机上运行应用程序”,如图 3-12 所示。
图 3-12
选择“安全”标签页,设置“启动和激活权限”和“访问权限”为“使用默认值”
如图 3-13 所示。
北京亚控科技发展有限公司 17
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 3-13
“配置权限”选择“自定义”,点击“编辑”,添加并设置 ANONYMOUS LOGON
和 Everyone 的完全控制和读取为允许。
如图 3-14 所示。
北京亚控科技发展有限公司 18
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 3-14
Kingview.view 设置与 OPCEnum 相似,区别在于 Kingview.view 需要配置“交互式
用户”。
选择 Kingview.view 属性的“标识”标签页,设置为“交互式用户”,如图 3-15 所
示。
北京亚控科技发展有限公司 19
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 3-15
6)完成以上设置后,重新启动计算机。
4. 补充说明:OPC Client 不能连接 OPC Server 时可以尝试的方法
以上所说的配置是基于域的计算机 DCOM 配置,但有些情况是在一个网络中有的计
算机在工作组中,有的计算机在域里,他们之间通过 OPC 如果不能访问,可以尝试用下
面的方法设置计算机。
1)OPC Server 的机器和 OPC Client 的机器用相同的用户名和密码登录,密码不能
为空。
2)在操作系统的控制面板-管理工具-本地安全策略里面的安全选项里面有两个关于
DCOM 设置的项,在该项属性编辑安全 -访问权限 -安全限制添加 everyone 和
ANONYMOUS LOGON 用户权限,如图 3-16、图 3-17、图 3-18。
北京亚控科技发展有限公司 20
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 3-16
图 3-17
北京亚控科技发展有限公司 21
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
图 3-18
3)在 OPC Client 端 PC 机上把 OPC Server 端 PC 机的用户加载到本地用户列表里。
4)在 DCOM 配置时,在“访问权限”、“启动和激活权限”、“配置权限”里添
加 Interactive、SYSTEM、Network、administrators 用户权限。
以下是用组态王做 OPC Server 和 OPC Client 测试的几种情况:
(1)工作组计算机和工作组计算机之间 OPC 通讯
当一个工作组的 PC 机连接到另外一台 PC 机时,除了按照上面说明进行 DCOM 配
置外,还要注意下面几种情况(以下是用组态王做测试的情况)。
1)其一:
PC1机属于WORKGROUP,操作系统Windows Server 2003 SP2,组态王6.53做Client
(或组态王 6.53 做 Server);
PC2 机属于 WORKGROUP,操作系统 Windows XP SP3,组态王 6.53 做 Server(或
组态王 6.53 做 Client);
配置好 DCOM 后,就可以通过 OPC 通讯。
2)其二:
北京亚控科技发展有限公司 22
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
PC1 机属于 WORKGROUP,操作系统 Windows XP SP3/ Server 2003 SP2,组态王
6.53 做 Client;
PC2 机属于 WORKGROUP,操作系统 Windows 2000,组态王 6.53 做 Server;
配置好 DCOM 后,两台 PC 机要以相同的用户名和密码登录,才可以通过 OPC 通
讯。
3)其三:
PC1 机属于 WORKGROUP,操作系统 Windows XP SP3/ Server 2003 SP2,组态王
6.53 做 Server;
PC2 机属于 WORKGROUP,操作系统 Windows 2000,组态王 6.53 做 Client;
配置好 DCOM 后,就可以通过 OPC 通讯。
(2)连接工作组计算机到域计算机
当一个工作组的 PC 机连接到另一个域的 PC 机时(即:域 PC 机做 OPC Server),
除了按照上面说明进行 DCOM 配置外,还要注意下面几种情况(以下是用组态王做测试
的情况)。
1)其一:
PC1 机属于 WORKGROUP,操作系统 Windows Server 2003 SP2,组态王 6.53 做
Client;
PC2 机属于域,操作系统 Windows XP SP3,组态王 6.53 做 Server;
配置好 DCOM 后,两台 PC 机要以相同的用户名和密码登录,才可以通过 OPC 通
讯。
2)其二:
PC1 机属于 WORKGROUP,操作系统 Windows XP SP3,组态王 6.53 做 Client;
PC2 机属于域,操作系统 Windows XP SP3,组态王 6.53 做 Server;
配置好 DCOM 后,两台 PC 机要以相同的用户名和密码登录,才可以通过 OPC 通
讯。
(3)连接域计算机到工作组计算机
当一个域的 PC 机连接到另一个工作组的 PC 机时(即:工作组 PC 机做 OPC Server),
除了按照上面说明进行 DCOM 配置外,还要注意下面几种情况(以下是用组态王做测试
的情况)。
3)其一:
北京亚控科技发展有限公司 23
“组态王通过网络 OPC 通讯时 DCOM 配置”说明文档
PC1 机属于 WORKGROUP,操作系统 Windows Server 2003 SP2,组态王 6.53 做
Server;
PC2 机属于域,操作系统 Windows XP SP3,组态王 6.53 做 Client;
配置好 DCOM 后,就可以通过 OPC 通讯。
4)其二:
PC1 机属于 WORKGROUP,操作系统 Windows XP SP3,组态王 6.53 做 Server;
PC2 机属于域,操作系统 Windows XP SP3,组态王 6.53 做 Client;
配置好 DCOM 后,就可以通过 OPC 通讯。
5. OPC 通讯同步和异步的差别
OPC 客户和 OPC 服务器进行数据交互可以有两种不同方式,即同步方式和异步方
式。同步方式实现较为简单,当客户数目较少而且同服务器交互的数据量也比较少的时
候可以采用这种方式;异步方式实现较为复杂,需要在客户程序中实现服务器回调函数。
然而当有大量客户和大量数据交互时,异步方式能提供高效的性能,尽量避免阻塞客户
数据请求,并最大可能地节省 CPU 和网络资源。
6. 网络 OPC 配置工具
组态王的安装程序里提供了一个网络 OPC 配置工具(路径:Value Pack->工具->网
络 opc 配置工具),在使用网络 OPC 模式前,需要配置充当 OPC 服务器的机器,即是
指对 dcomcnfg 程序进行配置,以前我们需要手动进入 dcomcnfg 程序进行配置,现在我
们只需使用 DCOM 配置工具对系统进行自动配置,实现手动配置的效果。
但目前测试的结果是有的机器用这个配置工具配置完成后可以实现 OPC 通讯,有的
机器配置后还是不能实现 OPC 通讯,如果出现不能通讯的情况,请手动配置 DCOM。
北京亚控科技发展有限公司 24
1. 概述
2. 基于Windows NT/2000操作系统域计算机的DCOM配置
3. 基于Windows XP SP2/Server 2003 SP1操作系统域计算机的DCOM配置
3.1 配置防火墙
3.2 DCOM配置
4. 补充说明:OPC Client不能连接OPC Server时可以尝试的方法
(1) 工作组计算机和工作组计算机之间OPC通讯
(2) 连接工作组计算机到域计算机
(3) 连接域计算机到工作组计算机
5. OPC通讯同步和异步的差别
6. 网络OPC配置工具