您好,欢迎光临济南达索机电科技有限公司!
全国咨询热线:0531-85554311

联系我们

济南达索机电科技有限公司

地 址:济南市天桥区无影山中路153号香港国际6号楼2-702A

电 话:0531-85554311

传 真:0531-85554537

   QQ:1149156245

微 信:18663708113

Email:jndassaw@163.com



免责声明:达索机电非本网站所推荐制造商的授权经销商,本网站上推荐制造商品牌名称及商标归其权属人所有。

OPC事业部

所在位置:首页  > 新闻资讯OPC事业部

OPC DCOM配置过程中常见问题及其处理

更新时间:2017-09-05 点击数:5090

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。

因此,浏览出的列表与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的GUID。导致不能连接远程计算机的OPC Server可能有如下原因。

2.1 OPC Server被禁止

如果OPC  Server被设置以Windows服务的方式运行是不能够禁止的,故需要检查一下OPC Server是否被禁止。

2.2 用户身份认证的问题

认证是验证用户身份的流程。Windows系统会比较用户名和密码,如果是操作系统不能识别的用户,就会拒绝访问从而不能与OPC  Server建立连接。下面两种情况可能导致用户身份认证失败:

l   用户的账户在远程的计算机上并不存在;

l  关闭Simple  File Sharing(简单文件共享)会去掉远程访问计算机的用户名和密码,导致用户不能被正确的认证。

2.3 访问控制列表问题

当认证了一个来访问的用户账户后,系统将检查用户账户是否有启动或者访问OPC  Server的权限,这是利用ACL(访问控制列表)来完成的。每个应用程序的ACL包括了用户账户的信息,操作权限等。因此,可能由于账户在ACL中没有相应的操作权限而被操作系统拒绝访问。

3 所有的Item显示为Bad

当与一个OPC  Server建立连接时,必须能够识别远程计算机的账户并且给予它适当的访问权限。这就需要与OPC Server建立同步的通信连接,而且能够轮询到OPC  Server的数据。如果所有的OPC Server项的数据属性指示为bad quality,可能是由于下面两个原因引起的。

3.1 在OPC Server里的数据实际就是bad

即OPC Server没有正确的获得数据,这时需要检查一下OPC  Server和数据源之间的通信。

3.2 回调失败

由于OPC  Client采用订阅的方式来更新,故可能由于回调失败导致所有的Item显示为Bad。

4 OPC Server所在计算机的CPU利用率高

4.1 OPC Client使用同步读时的问题

在这种情况下,OPC Client没有使用优化的读取方式,使得OPC  Server花费更多的计算机CPU周期处理OPC通信,可以考虑采用异步或订阅的方式改进。

4.2 OPC Client使用异步读时的问题

在这种情况下,可能是由于OPC  Server本身没有优化使得对OPC通信的响应慢。

4.3 OPC Client使用读设备的问题:

在这种情况下,OPC Client不断地通过OPC  Server与设备进行直接的数据交换,这会明显的减慢OPC Server。如果是这种情况,可把所有的读设备改成读Cache。

5.OPC Client不接收更新的数据

由于安全配置的问题会导致OPC  Client不能接收更新的数据。OPC支持基于时间“subscription(订阅)”机制,当数据发生了变化时,OPC  Server会通过异步回调把订阅的数据更新,同时发送更新的数据到OPC Client。在此过程中OPC Client不知道OPC  Server将会在什么时候发送数据,如果不能正确配置安全属性,数据的更新就会失败。在OPC Client应用程序指示为“Bad.”若发现从OPC  Server中取得的数据不更新,可以尝试用同步的方式从OPC Server读数据。若此时数据读到了,那么可以确定是异步回调失败导致,这可能是由下面的原因造成:

5.1防火墙

如果OPC Client在计算机防火墙之外,则从OPC  Server发出的回调请求可能被防火墙阻塞,到达OPC Client可能失败,此时应关闭防火墙。

5.2身份认证失败

当回调到达OPC  Client所在的计算机后,操作系统会试图认证这个用户的账号和密码,与存在的列表进行比较,如果组合与列表不一样Windows会拒绝访问,原因如下:

5.2.1用户名和密码的组合

在回调的情况,可能出现OPC Client和OPC  Server所在的两台计算机上的用户和密码不匹配导致身份认证失败,必须保证在两台计算机的用户名和密码组合一致。

5.2.2 Guest

在Windows  XP或者后期的版本,当使用工作组,缺省的情况下会把远程的用户账号强制为本地的Guest用户。这是由Simple File  Sharing完成的,这种缺省的设置使得的认证不能正常工作。因此,需要关闭这个项。

5.2.3 OPC Server身份识别的问题

回调要对OPC Server作身份认证,这个身份认证由OPC  Server的身份认证的设置管理。

OPC  Server以交互的用户认证,这个账户是当前登陆此计算机且驻留在OPC Server的计算机上,也就是必须有账户登陆,否则不能启动OPC  Server,当此用户注销时,OPC Server就会关闭,即使是计算机的重新启动,也会造成OPC Server的短暂的关闭。

OPC  Server以访问的用户认证,操作系统会为每个访问的用户创建一个实例,这样会有三个问题出现,若OPC  Server只允许一个用户访问时,当系统中已经有了一个实例,再有其它用户就无法访问。若是OPC  Server允许多个用户访问时,那么带来的问题是随着不同用户的访问,就会打开多个实例,这样就会占用更多的计算机的资源。另外的一个问题是硬件的抢占,如串口,当一个使用了,其它的用户就无法再使用。

OPC Server以指定的用户账户认证,这种情况需要在OPC  Server的计算机上存在着要指定的账户,而且对于OPC Client必须知道此用户。否则无法访问。

OPC  Server以操作系统账户认证,对于工作组还是域,系统账户都能被识别,也不需要有用户登陆。但OPC server必须以服务的方式启动。

5.3访问控制列表的问题

当Windows认证用户账号初始化了回调,接下来就会检查OPC  Client的账户的访问控制列表里的访问权限,必须确保OPC Client的账户可以被访问。 


OPC DCOM配置过程中常见问题及其处理_济南达索机电科技有限公司

联系我们

济南达索机电科技有限公司

地 址:济南市天桥区无影山中路153号香港国际6号楼2-702A

电 话:0531-85554311

传 真:0531-85554537

   QQ:1149156245

微 信:18663708113

Email:jndassaw@163.com



免责声明:达索机电非本网站所推荐制造商的授权经销商,本网站上推荐制造商品牌名称及商标归其权属人所有。

扫描二维码,关注我们

0531-85554311

全国客户服务热线
备案号:

济南达索机电科技有限公司  鲁ICP备14030587号-1免责声明:达索机电非本网站所推荐制造商的授权经销商,本网站上推荐制造商品牌名称及商标归其权属人所有。