异地机器上OPCClient连接OPCServer的问题
OPC DCOM配置过程中常见问题及其处理

OPC DCOM配置过程中常见问题及其处理OPC技术提供了一种互联、可靠、安全的通信平台。
然而,OPC技术依赖于DCOM架构,包括Windows安全和防火墙设置、访问控制列表、Server认证等。
本文给出了OPC DCOM配置过程中最常发生的5个问题、导致原因及解决方法。
1 不能浏览远程计算机的OPC Server浏览是指OPC Client应用程序能够察看到安装在远程计算机上的OPC Server。
OPC Client执行一次浏览操作实际是连接到驻留在远程计算机上的OPCEnum映像,并检索出可访问OPC Server列表。
这包括了每个OPC Server 的ProgID(用户接口名字)和GUID(Global unique identifier,全局唯一标识符),如图1所示。
OPC Client并不真正直接连接到OPC Server。
图1 OPC Client浏览远程计算机上的OPC Server示意图因此,浏览出的列表与OPC Server的状态无关,或者说与OPC Server的可操作与否无关,浏览OPC Server失败的直接原因是不能获得与远程计算机上的OPCEnum通信所需的参数,造成这个问题可能有如下原因。
1.1 OPCEnum没有安装OPC基金会负责创建和维护OPCEnum。
OPC基金会的成员能够从OPC基金会直接免费获得OPCEnum。
1.2 OPCEnum被禁止即使OPCEnum被安装在远程的计算机上,它也必须能够被执行,否则通信将会失败。
1.3 匿名访问权限没有被设置OPCEnum需要匿名访问权限才能正常的工作。
因此需要在Windows COM 缺省安全中添加匿名访问权限。
2 不能连接远程计算机的OPC Server能够浏览远程计算机的OPC Server和连接远程计算机的OPC Server是无关的。
即使远程计算机没有安装OPCEnum,也可以连接远程计算机的OPC Server。
远程第三方OPC Server连接

远程第三方OPC Server连接为解决OPC客户端程序对第三方OPC Server的接入,需要将BMS中的点信息同第三方OPC Server的ItemID建立对应关系;为尽量不影响配置文件,将该对应关系存储为另外一个配置文件中,文件后缀为.3rd;该文件在BMS配置文件加载时被加载,在BMS配置文件存储时被存储;I/O驱动配置在“管理与配置”根节点下添加“I/O驱动”节点以配置第三方驱动,1. 当焦点位于树视图中时,可以从菜单栏或者工具栏在该节点下添加一类驱动, 如图所示。
此时属性栏将显示该驱动的属性。
如图所示。
2. 当焦点位于树视图中时,可以从菜单栏或者工具栏在OPC驱动节点下添加具体厂家的OPC驱动程序,如图所示。
绑定到子系统:指出那一个被连接的子系统的驱动由该OPC驱动来实现。
如图所示。
只列出尚未配置的子系统:只显示未指定ProgID的子系统名称;列出全部子系统:显示全部子系统名称;搜索:单击该按钮将检索指定条件的子系统,名称将被列出在列表框中;确定:列表框中被选择的子系统被设置为被绑定的子系统;取消:不设置;OPC DA ProgID:指出该OPC数据访问服务器的ProgID。
如图所示。
连接到:可以从本地或远程计算机选择OPC数据访问服务器;版本:指定OPC数据访问服务器的版本;搜索:单击该按钮将检索指定条件的ProgID,名称将被列出在列表框中;确定:列表框中被选择的ProgID被设置为OPC数据访问服务器的ProgID;取消:不设置;OPC AE ProgID:指出该OPC数据访问服务器的ProgID。
如图所示。
操作同上;此时属性栏将显示该驱动的属性,可以修改名称,配置。
如图所示。
3. 当焦点位于树视图中时,可以从菜单栏或者工具栏在OPC驱动程序下添加映射变量,映射变量不添加到树的节点,只显示在列表中。
如图所示。
此时属性栏将显示OPC驱动程序中的点和SynchroBMS系统配置的点。
OPC常见问题处理

2.15
2.2 客户端采集快,Mcgs采集慢
2.16 2.17 2.18 2.19 2.20 3.1 3.2 3.3
2.2.1 简单工程速度快
2.2.2 简单工程速度慢
1 本地采集不成功
OPC 专 项 服 务 指 南
一、 OPC常
序号 分类 问题
现象
不知道 不知道怎么用OPC 1 怎么用
OPC 询问OPC通讯?
客户用通用版6.2mcgs软件,想配置成opc服 务器,不知如何操作,想要一些说明文档
询问OPC通讯? 下位机S7-200,怎么用?
咨询OPC相关知识
想使用OPC进行通讯,咨询相关知识
安排调试开发
确定是否软件部处理
<--通知客服中心决策
<--
<--暂时不需处理-->
软件部记入Bug 库
通过标准客户端或者客户软件查出
审核备档-->
名称 登记,备档资
料
确定采集数据刷新时间
给客户反馈正常
该数据需要实际测试一下
按照步骤2.6处理
提供客户端程序测试采集 速度
反馈客户,需用户调整服 务器 安排最简工程验证速度, 排除组态原因 分析客户工程,找速度慢 原因
反馈客户,继续测试Mcgs
在技术部备份第三方客户端程序
(可以是Mcgs标准客户端) 如没有客户软件,则索要或者查找
软件 登记,备档资
料
反馈客户测试方法 提交报告给管理组--> 告知客户,跟踪开发计划 告知客户,无法处理 手动添加完整变量名测试 反馈客户,报告管理组 按照步骤2.6处理
现场OPC SERVER服务器与OPC 客户端远程连接设置方法

现场OPC SERVER服务器与OPC客户端远程连接设置方法目录概述 (2)1 硬件连接 (2)2 电脑用户名及网段设置 (2)2.1 OPC Server服务器端PC查询 (2)2.2 OPC Client客户端PC设置 (3)3 电脑DCOM配置 (3)3.1 OPC服务器电脑上DCOM配置 (3)3.2 OPC SERVER 服务器上的防火墙做如下设置: (8)3.3 客户端机器上DCOM配置 (11)3.4 本地安全策略配置 (16)4 OPC Server与Client软件调试 (17)5 如何对电脑添加用户名和密码后自动重启 (19)概述现场测试OPC SERVER服务器,需要清楚现场中控系统组态软件,如何去查询变量,下面以亚控组态王6.55版本为例,简述一下测试OPC SERVER服务器的操作流程。
测试OPC Server服务器最麻烦的是双方电脑DCOM的配置,本身调试非常简单。
测试OPC SERVER服务器工具及软件,如表11硬件连接现场查看中控组态系统工控机网线接口,有的现场会配置一台交换机,只需要测试用的PC与工控机在同一个局域网内即可。
如图1OPC Server中控主机图12电脑用户名及网段设置2.1OPC Server服务器端PC查询现场查看工控机电脑的登陆用户名及密码,登陆用户名一般为Administrator,如果工控机电脑登陆用户名没有密码,还需要设置一个密码。
查看一下工控机电脑的IP,如:192.168.1.112。
2.2OPC Client客户端PC设置测试用的PC登陆用户名以及登陆密码需要跟OPC Server服务器所在的电脑设置一样。
两台PC之间的电脑IP处于同一个网段内。
3电脑DCOM配置3.1OPC服务器电脑上DCOM配置1. 在服务器工控电脑上开始—>运行—>输入:dcomcnfg,进行DCOM配置。
弹出下面的界面:2.按照上面的画面,进行操作弹出DCOM的总体默认属性页面,将“在这台计算机上启用分布式COM”打上勾,将默认身份级别改为“无”。
OPCClient远程连接OPCSERVER服务器配置

OPCClient远程连接OPCSERVER服务器配置OPC Client远程连接OPC SERVER服务器配置一、操作系统用户1、在OPC服务器上用Administrator用户建立一个拥有管理员权限的用户并设置密码,一定要设置密码,不能为空,如:用户名:OPCClientUser 密码:1232、在OPCClient服务器上用Administrator用户建立一个相同的拥有管理员权限的用户并设置相同密码,一定要设置密码,不能为空,如:用户名:OPCClientUser 密码:123,并用OPCClientUser用户登入。
二、防火墙设置(OPC 服务器和客户端上都要进行设置)1、关闭window自带的防火墙。
2、如果不关闭windows自带的防火墙,则需要在window防火墙管理界面上配置允许客户端程序访问权限和开放OPC通讯135端口。
三、DCOM配置(OPC 服务器和OPC Client服务器都要进行设置)1.开始->运行->输入:dcomcnfg进入DCOM的总体默认属性页面,将“在这台计算机上启用分布式COM”打上勾,将默认身份级别改为“无”。
如下面画面:2.打开属性—>切换到“安全”属性页,分别编辑如下4个选项。
3.以上4个选项分别添加everyone,administrators,anonymous user三个用户用户,并勾选上所有权限选项。
【请注意是三个用户,如果少了一个有可能出现找不到服务器的情况】设置DTC在msdtc标签下,点击“安全性配置”4.在OPC服务器上,还要回到“组件服务”界面,打开DCOM配置,找到注册的OPC服务器的名称选项,打开它的属性。
设置加密设置位置启用交互式用户(注:有时做好dcom配置后,需要重新启动电脑才起作用。
所以为了安全起见,建议最好重新启动一下电脑,再做下一步)。
四、本地安全策略1、O PC服务器和OPCClient服务器都要设置:打开“控制面版”->“管理工具”->打开“本地安全策略”2、安全选项—>”网络访问:本地帐户的共享和安全模式”->属性3、选择“经典—本地用户以自己的身份验证”注意一点不能忘了这一步,否则会在连接Opc服务器时报“拒绝访问”的错误!五、其它设置关闭操作系统运行的其他防火墙,杀毒软件等。
OPC远程连接系统配置手册

OPCClient远程连接OPC服务器操作系统配置手册--------吕林波 2008-8-6一,操作系统用户1、在OPC服务器上用Administrator用户建立一个拥有管理员权限的用户并设置密码,一定要设置密码,不能为空,如:用户名:OPCClientUser 密码:1232、在OPCClient服务器上用Administrator用户建立一个相同的拥有管理员权限的用户并设置相同密码,一定要设置密码,不能为空,如:用户名:OPCClientUser 密码:123,并用OPCClientUser用户登入。
二、防火墙设置(OPC服务器和上都要进行设置)1、关闭window自带的防火墙。
2、如果不关闭windows自带的防火墙,则需要在window防火墙管理界面上配置允许客户端程序访问权限和开放OPC通讯135端口。
步骤如下:1)2)3)4)5)三、DCOM配置(OPC服务器和OPCClient服务器都要进行设置)1、开始—>运行—>输入:dcomcnfg2、打开属性—>切换到“安全”属性页,分别编辑如下4个选项。
3、以上4个选项分别添加everyone用户,并勾选上远程访问选项。
4、在OPC服务器上,还要回到“组件服务”界面,打开DCOM配置,找到注册的OPC 服务器的名称选项,打开它的属性。
→启用交互式用户四、本地安全策略配置1、OPC服务器和OPCClient服务器都要设置:打开“控制面版”→“管理工具”→打开“本地安全策略”2、 安全选项—>”网络访问:本地帐户的共享和安全模式”->属性3、选择“经典—本地用户以自己的身份验证”五、其他设置1、关闭操作系统运行的其他防火墙,杀毒软件等,下面这个程序必须关闭消失在任务栏。
关闭可能需要密码,请与公司IT部门联系。
OPC测试常用的OPCClient和OPCServer软件推荐

OPC测试常⽤的OPCClient和OPCServer软件推荐各位在进⾏OPC通讯时,常会遇到两种情况:1)使⽤⼀个OPCClient在同⼀台计算机上连接远程计算机上的多个OPCServer时,发现某个OPCServer是通畅的,但其他的OPCServer却⽆论如何都不通。
不知该如何定位问题了?2)多个⼚家的OPCClient连接同⼀计算机上的OPCServer,发现有的OPCClient通了,有的不通,有的能获取数据,有的不能获取数据。
基于以上情况,将⼀直以来常⽤的OPCClient和OPCServer推荐⼏款,以备⼤家不时之需。
不是最好,但可能是恰好!1. OPC DA Client推荐推荐的理由(此标准仅仅代表个⼈意见):1)单⽂件;携带⽅便,⽆需安装,绿⾊环保。
2)遵循OPC标准,稳定。
3)功能⽆需多,但适⽤功能有⼀个或多个。
推荐的第⼀位:OPCClient.exe把它放在第⼀位并不是有多好,⽽是100KB的体积,单⽂件,也很符合OPC标准,所以是个超便携的OPCClient。
推荐的第⼆位:Matrikon公司的OPCClient.很不错的⼀个OPCClient,标准,稳定,单⽂件,通讯过程的信息还⽐较丰富,我是⽐较喜欢⽤它在创建OPC组时定义同步⽅式或异步⽅式来验证远程计算机的OPC配置是否正确。
缺点就是⼤了点,2M多。
推荐的第三位:Kepware公司的OPCClient功能很强⼤,标准,稳定,⽇志信息很丰富,最推荐的功能是⽀持对OPCServer中点名的条件过滤,⽀持点表的导⼊导出,⽀持⾃动导⼊OPCServer的所有点,根据点表识别好点坏点,按照列排序,⽤它可以弥补很多国产组态软件不能在线遍历OPCServer点表的功能、不能过滤OPCServer点的功能、不能识别OPCServer中好点坏点的功能等。
缺点就是⾮单⽂件。
其实还有其他很多的很好的OPCClient软件,欢迎各位推荐分享。
异地机器上OPC Client连接OPC Server的问题

最近研究了一下OPC 工业协议,发现点注意的地方,记忆之!
不在OPC Server宿主机器上获取OPC Server的点表,需要注意两个地方:
1、OPC Client所用机器的用户名、密码要与OPC Server宿主机的相同。
2、若上一步设置后,还不能刷新出OPC Server服务,则需要对DCOM进行设置,具体情况
还有待研究,因为我没有碰到。
在局域网中进行模拟如下:
1、假设OPC Server1如下
OPC Server1
OPC Server2如下:
使用自带的OPC Client在本机上测试如下图:
2、OPC Client软件如下图。
打开OPC Client软件,选中OPC 下拉中的Connect,连接服务器。
如下图,在Server 节点中输入OPC Server宿主机的IP地址,点击刷新
OPC客户端会把OPC Server宿主机上的OPC 服务刷出来,如下图:
选中要连接的OPC Server,单击OK,则成功连接服务,如下
连接成功后,才可以激活如下几个子菜单,添加Item点表。
如下图
选择设备,会在右侧显示所包含的所有点表,注意下面的类型,点太对的话,可以用于过滤点表。
最终成功连接OPC服务,并获取到点的实时值,成功。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
选中要连接的OPCServer,单击OK,则成功连接服务,如下
连接成功后,才可以激活如下几个子菜单,添加Item点表。
如下图
选择设备,会在右侧显示所包含的所有点表,注意下面的类型,点太对的话,可以用于过滤点表。
最终成功连接OPC服务,并获取到点的实时值,成功。
最近研究Server宿主机器上获取OPCServer的点表,需要注意两个地方:
1、OPCClient所用机器的用户名、密码要与OPCServer宿主机的相同。
2、若上一步设置后,还不能刷新出OPCServer服务,则需要对DCOM进行设置,具体情况还有待研究,因为我没有碰到。
在局域网中进行模拟如下:
1、假设OPCServer1如下
OPCServer1
OPCServer2如下:
使用自带的OPCClient在本机上测试如下图:
2、OPCClient软件如下图。
打开OPCClient软件,选中OPC下拉中的Connect,连接服务器。
如下图,在Server节点中输入OPCServer宿主机的IP地址,点击刷新