异地机器上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服务,并获取到点的实时值,成功。
OPC通讯配置详解
O P C通讯配置详解标准化管理处编码[BBX968T-XBB8968-NNJ668-MM9N]OPC通讯协议解析1 通讯步骤第一问OPC Client和OPC Server之间通讯谁是主动的答:当然是OPC Client。
第二问OPC Client第一次动作做了什么答:从大多数OPC Client行为来看,一是自动遍历本机已注册的OPC Server列表名称,二是等待用户定义预访问的OPC Server的信息。
第三问OPC Client第二次动作做了什么答:OPC Client的第一步动作会产生分支,访问本地OPC Server的这个分支就不再说了。
要分析的是网络方式访问OPC Server这个分支。
第二个动作是根据用户指定的IP地址或计算机名去查询远程计算机上已注册的OPC Server列表名称。
从这步开始就比较复杂了。
第四问OPC Client是用什么协议去和远程计算机交流的答:用的是TCP/IP这个协议。
OPC Client用TCP/IP 135端口去打开远程计算机的那一扇门。
简单解释下:在Windows操作系统中,135端口主要用于使用PRC协议并提供DCOM (分布式组件对象模型)服务,通过RPC可以保证在一台计算机上运行的程序可以顺利地执行远程计算机上的代码。
使用DCOM可以通过网络直接进行通信,能够跨包括HTTP协议在内的多种网络传输。
多年来,135端口一直被人利用。
第五问OPC Client去访问远程计算机的TCP135这扇门时,第一道关卡是谁答:网络安全防火墙是第一关卡,网络安全放火墙中,如果不允许远程计算机的TCP 135端口,那么连接就被掐断了。
后续的通讯就无法进行。
要想能向下进行,网络安全防火墙必须允许对TCP 135这扇门的访问。
这里需要在防火墙中将135端口例外操作。
第六问各系统的安全策略有什么不同答:(一)Windows 2000的安全策略:支持来访者以自己的身份进行验证,且不拒绝来宾用户从网络中访问,来宾用户默认启用。
OPC服务器问题解决
OPC服务器问题解决
手头正在处理的winform项目经过三个月左右的设计和开发,终于进行了测试和验收阶段。
今天在给测试小组部署测试环境时遇到问题,就是按照OPC配置手册配置了OPC服务器(我们读取的是力控6.0软件)和OPC客户端(也是我们的应用服务器)后,OPC客户端仍然无法找到服务器,大概分析了一下原因,觉得是有一些dll没有注册的原因,因为以前也有遇到过这种情况,但是在安装了力控6.0的试用版后,这个错误就消失了,所以我认为是在安装力控测试程序时,力控自动注册了一些dll文件,但现在的测试环境并没有安装力控软件,所以导致一些dll没有注册。
既然原因找到了,就简单了。
从另一个安装过了力控的机器上将需要的dll拷出来,运用regsvr32命令进行注册。
一般来说需要注册的文件有
opcproxy.dll
opccomn_ps.dll
opc_aeps.dll
opchda_ps.dll
opcdaauto.dll
aprxdist.exe
OPCENUM.exe
注册过后,再用OPC客户端(也是我们的应用服务器)去连接OPC服务器(我们读的是力控6.0)就可以找到OPC服务器并正常读取了。
OPC Client按照指定的用户角色与OPC Server通讯(试用版)
5. 二、
1.
OPC Client 配置 修改“本地安全策略”设置 ⑴ . 启动“本地安全策略”管理器,在“开始”菜单的“运行”选项,输入:secpol.msc
(回车),如图:
图 22 ⑵ 修改“本地策略\用户权利指派”的“拒绝从网络访问这台计算机”,将限制访
问列表内的“Guest”删除,如图:
图 23 ⑶ 修改“本地策略\安全选项”的“网络访问:本地账户的共享和安全模式”设置,
1 Administrators 允许 允许 允许 允许
系统内置账户
2
Everyone
允许 允许 允许 允许
系统内置账户
如图
图 34 ⑶ 修改 OPCENUM 的属性设置
“常规”属性设置,如图:
图 35 选择“安全”标签页,如图:
图 36
在“启动和激活权限”项目,选择“自定义”,点击“编辑”按钮,在弹出的“启
图 40 在出现的“UserInfo”设置用户信息,如图:
图 41 鼠标点击“OK”按钮确认输入,退出程序,重新运行程序,先前设置的用户信息才 会生效。
2. 再次运行程序,使用菜单“OPC\connect”连接指定的 OPC Server,此时就会使用指 定的用户帐户访问 OPC Server。
3.
修改成“仅来宾-本地用户以来宾身份验证”,如图:
图 24 ⑷ 修改“本地策略\安全选项”的“系统对象:由 Administrators 组成员所创建的
对象默认所有者”设置,修改成“Administrators group”,如图:
图 25 ⑸ 修改“本地策略\安全选项”的“帐户:使用空白密码的本地帐户只允许进行控
图4 ⑶ .修改“本地策略\安全选项”下的项目“系统对象:由 Administrators 组成员所
opc 连接 不上,错误: RPC服务器不可用
opc 连接不上,错误:RPC服务器不可用
现在在做一个opc客户端,在自己的机子上(xpsp3)装了wincc6.2,编好的程序在本机访问winccopc的数据没有问题,在进行局域网测试时,公司服务器上(server2003)装了wincc6.2,都设置DCOMok且RPC等服务已经开通,防火墙关闭,测试连接时报错误:”failedtoexecuteOPCENUM”。
在网上看了很多网友的方法,都不行,后来下了一个软件MatrikonOPCserver,连接服务器时报错:ANerrorencounterwhileusingCOMservices。
错误详细信息为COM/OPCerror0x800706BAonCoCreateInstanceEx()Errorstrin g:RPC服务器不可用。
我的机子和公司服务器的机子在同一个windows域中但不在同一个网段,子网掩码不同,在条目管理器中不能看到服务器机子。
问题补充:
现在能够连上server了,但是是将两台电脑放在一个网段且用条目管理器的network能看到server的机子,是不是必须在network的树状目录能看到的机子才能连?
最佳答案
通过把一个网卡设置双ip和网关,把需要的电
脑弄到一个网段再试试!。
opc 连接 不上,错误: RPC服务器不可用
opc 连接不上,错误:RPC服务器不可用
现在在做一个opc客户端,在自己的机子上(xpsp3)装了wincc6.2,编好的程序在本机访问winccopc的数据没有问题,在进行局域网测试时,公司服务器上(server2003)装了wincc6.2,都设置DCOMok且RPC等服务已经开通,防火墙关闭,测试连接时报错误:”failedtoexecuteOPCENUM”。
在网上看了很多网友的方法,都不行,后来下了一个软件MatrikonOPCserver,连接服务器时报错:ANerrorencounterwhileusingCOMservices。
错误详细信息为COM/OPCerror0x800706BAonCoCreateInstanceEx()Errorstrin g:RPC服务器不可用。
我的机子和公司服务器的机子在同一个windows域中但不在同一个网段,子网掩码不同,在条目管理器中不能看到服务器机子。
问题补充:
现在能够连上server了,但是是将两台电脑放在一个网段且用条目管理器的network能看到server的机子,是不是必须在network的树状目录能看到的机子才能连?
最佳答案
通过把一个网卡设置双ip和网关,把需要的电
脑弄到一个网段再试试!。
OPC DCOM 问题处理
OPC DCOM 问题处理Troubleshooting DCOMhttps:///cs/cn/zh/view/109481341IA&DT Service & SupportPage 2-12摘要本文档介绍如何解决OPC 通讯中的DCOM 的问题关键词 OPC DCOMKey Words OPC DCOMIA&DT Service & SupportPage 3-12目录1.不能浏览远程计算机的OPC Server2. 不能连接到远程计算机的OPC Server3. 所有的Item 显示为Bad4. OPC Client 不能接收更新的数据5. OPC Sever 所在的计算机有高的CPU 利用率IA&DT Service & SupportPage 4-12OPC 技术提供一种互联的, 可靠的和安全的通讯平台。
然而, OPC 是非常依赖于DCOM 架构.这包括了Windows 的安全和防火墙的设置, 访问控制列表, server 认证, 等等.因此,OPC 不能向期望的那样正常工作,而且最终解决这些问题是很困难,原因是一个问题会导致多个症状. 本文讨论最常发生的5问题,导致问题的原因,和如何解决。
一个结构化的方法快速的解决这5问题:1.不能浏览远程计算机的OPC Server2. 不能连接到远程计算机的OPC Server3. 所有的Item 显示为Bad4. OPC Client 不能接收更新的数据5. OPC Server 所在的计算机有高的CPU 利用率当出现了上面所描述的问题后,下面将介绍出现问题原因及解决的办法。
1.不能浏览远程计算机的OPC Server首先遇到的问题是不能浏览远程计算机的OPC Servers . 浏览的功能是OPC Client 应用程序能够查看安装在远程计算机的OPC Servers. 当OPC Client 执行了一次浏览实际上是它连接到驻留在远程计算机上的OpcEnum 的映像, 并检索出可访问OPC Server 的列表. 这包括了每个OPC Server 的ProgID (友好的用户接口名字) 和GUID (数字形式的识别号). 从这一点看出, OPC Client 并不是真正直接连接到OPC Server. 因此, 检索出的列表是与OPC Server 的状态是无关的或者说是与OPC Server 的可操作与否是无关. 浏览OPC Servers 失败导致的直接结果是不能获得远程计算机OpcEnum 中通讯所需参数. 造成这个问题可能有几个原因,如下所述.1.1OpcEnum 没有安装OPC 基金会负责创建和维护OpcEnum. OPC 基金会的成员能够从OPC 基金会直接免费获得OpcEnum OpcEnum 一般会在安装OPC Client 或者OPC Server 时安装; 然而,并非都如此. 因IA&DT Service & SupportPage 5-12此,可能出现没有安装 OpcEnum 的情况. OpcEnum 仅能浏览运行它所在计算机上的OPC Servers ,因此, OpcEnum 不能浏览远程的计算机. 即使是安装了OpcEnum 在你的计算机上,也不能浏览远程的计算机.用Windows Explorer 去查找一下OpcEnum 是否安装在你期望浏览的计算机上.文件名为OpcEnum.exe. 如果OpcEnum 没有安装, 需要安装.1.2OpcEnum 被禁止即使是OpcEnum 被安装在了远程的计算机上,它也必须能够被执行,否则,通讯将会失败.如果在“Startup Type” OpcEnum 被设置成为“Disabled” 那么Windows 将不能运行OpcEnum.因此, 必须使能able OpcEnum.检查OpcEnum 启动的类型,按下列步骤:•单击开始, 再单击控制面板. 在单击性能和维护, 单击管理工具,然后双击计算机管理.在计算机管理窗口里的控制树的根目录下显示"Computer Management (Local)"• 在面板树里, 展开服务和应用并单击服务•在右面的window 面板里. 如果启动类型被设置为 “Disabled”,那么OpcEnum 实际是关闭的需要选择使能 (下面). 如果在列表里没有 OpcEnum ,那么可能是像步骤 “1.1 OpcEnum 没有被安装启动类型已被设置为手动或者自动,那么需要跳到步骤“1.3 匿名登陆权限没有设置。
OPC DCOM连接不稳定的解决方案
OPC DCOM连接不稳定的解决方案广州虹科自动化团队1简介在工业物联网(IIoT)时代,OPC/OPC UA作为一种统一的通信架构,解决了互通性和标准性的问题。
OPC Classic的访问规范都是基于微软的COM/DCOM技术,这会给新增层面的通信带来不可根除的弱点。
本文概述了目前使用DCOM时可能会遇到的几种问题,并提供可能的解决方法。
最后通过一个和Tunneller连接的对比实例来给出一个新的选择。
2常见问题通常来说,OPC Server与OPC Client建立DCOM连接时可能会有各种各样的问题和麻烦,这些问题一般可以分为两类。
第一类就是配置上的问题,如果发现OPC Client和OPC Server无法建立通讯,那么你可能需要检查Windows服务里OPC Server是否被禁止、用户名密码是否匹配或者OPC Enum 是否有匿名访问权限等,这类问题都是二者建立起连接的要素不全引起的,可以通过查看设置来排查错误建立连接。
第二类就是操作不当以及DCOM本身的缺陷造成的问题,例如当OPC Client和OPC Server无法建立通讯时,可能是因为OPC Server先从当前登录用户启动运行,然后OPC Client 是以Windows服务方式在System账户空间内运行,此时Client检查不到Server在运行所以建立不了通信。
还有可能是因为两台远程相连的PC的网络曾经断线后又重连,这时二者建立的连接被断开后无法复原了,这都是比较常见的问题。
针对上述网络断线重连导致连接不稳定的问题,这里给出一个对比实例,观察使用Tunneller连接来进行通信与DCOM通信在网络断线重连时受到的影响。
3工具硬件:●两台PC(OPC-1和OPC-2),一台做客户端,一台做服务器端。
软件:●MatrikonOPC Explorer●Matrikon OPC UA Tunneller●Server for Simulation等做服务器的软件4实例步骤1.首先确保可以通过在OPC-1上打开OPC Explorer连接到Network Neighborhood->OPC-2->Matrikon.OPC.Simulation.1serve r的方式将OPC-1和OPC-2建立起DCOM连接,反之亦然,如图4-1所示。
OPCDCOM配置过程中常见问题及其处理
O P C D C O M配置过程中常见问题及其处理集团文件发布号:(9816-UATWW-MWUB-WUNN-INNUL-DQQTY-O P C D C O M配置过程中常见问题及其处理OPC技术提供了一种互联、可靠、安全的通信平台。
然而,OPC技术依赖于DCOM架构,包括Windows安全和防火墙设置、访问控制列表、Server认证等。
本文给出了OPCDCOM配置过程中最常发生的5个问题、导致原因及解决方法。
1不能浏览远程计算机的OPCServer浏览是指OPCClient应用程序能够察看到安装在远程计算机上的OPCServer。
OPCClient执行一次浏览操作实际是连接到驻留在远程计算机上的OPCEnum映像,并检索出可访问OPCServer列表。
这包括了每个OPCServer的ProgID(用户接口名字)和GUID (Globaluniqueidentifier,全局唯一标识符),如图1所示。
OPCClient并不真正直接连接到OPCServer。
图1OPCClient浏览远程计算机上的OPCServer示意图因此,浏览出的列表与OPCServer的状态无关,或者说与OPCServer的可操作与否无关,浏览OPCServer失败的直接原因是不能获得与远程计算机上的OPCEnum通信所需的参数,造成这个问题可能有如下原因。
1.1OPCEnum没有安装OPC基金会负责创建和维护OPCEnum。
OPC基金会的成员能够从OPC基金会直接免费获得OPCEnum。
1.2OPCEnum被禁止即使OPCEnum被安装在远程的计算机上,它也必须能够被执行,否则通信将会失败。
1.3匿名访问权限没有被设置OPCEnum需要匿名访问权限才能正常的工作。
因此需要在WindowsCOM缺省安全中添加匿名访问权限。
2不能连接远程计算机的OPCServer能够浏览远程计算机的OPCServer和连接远程计算机的OPCServer是无关的。
OPCClient和OPCServer在Windows上运行方式的恩怨
OPCClient和OPCServer在Windows上运行方式的恩怨近段时间,遇到不少人都被opcClient与OPCServer之间的通讯搞得头大,通过几次远程帮助后,总结了OPCClient和OPCServer在Windows 上运行方式的恩怨,盼望对各位有用。
目前市场上的OPCClient和OPCServer软件在Windows上的运行方式有Windows 桌面程序和Windows NT服务。
原来也没啥。
但由于OPCCLient是一个厂家的软件,而OPCServer是另外一个厂家的软件,由于软件的多样性,也就导致了如下一些现象:1. OPCCLient连接目标OPCServer,发觉无法连接,但在OPCServer计算机上明明观察OPCServer进程已经启动。
2. OPCCLient连接目标OPCServer,能连接,也能观察测点,但无法猎取到数据。
经过多次现场的积累后,发觉此类问题多消失在OPCClient和OPCServer软件在Windows上的运行方式不同导致的。
也就是说,OPCClient和OPCServer软件的运行方式不一样。
譬如,OPCCLient是Windows NT服务方式,而OPCServer是桌面程序方式(多是组态软件的OPCServer都是桌面程序方式吧!!)。
而当OPCCLient是Windows 桌面程序方式,OPCServer时Windows NT服务时,发觉上面的现象基本不消失。
这是为什么呢?缘由如下:OPCClient和OPCServer都是基于DCOM的应用,DCOM的特点是OPCServer无需先运行或启动,等待OPCCLient恳求时,由操作系统在将OPCServer拽起来。
这种机制的好处就是随用随启。
但这种机制假如处理不好吧,就会导致一些问题。
当OPCCLient是Windows NT 服务时,OPCServer被拽起来后,是运行在System这个系统账户下面的。
- 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地址,点击刷新