我们需要使用上位机的其他软件和HMIBUILDER通讯,需要用HMIBUILDER控制其他软件的设备,想用OPC远程访来做,但是连接的时候为什么总是提示服务器拒绝访问啊?
关于远程访问OPC服务器主要问题是对WINDOWS进行设置。要求权限全开。
具体设置方法如下:
一. 运行OPC客户端的计算机和运行OPC服务器的计算机需要彼此能互相访问。
1.1 要保证其物理连接,也就是网线正确的连接着两台计算机。
1.2 在这两台计算机上分别建立同一个账号及密码,比如用户名【opcuser】,密码【123456】(注意:用户密码最好不要设置为空),在这两台计算上使用这个账户都可以登录系统。关于增加账号及密码请参考对应Windows操作系统的帮助文档。
1.3 启用各自Windows操作系统的Guest权限。
完成上面几步后,应该达到的效果是:从任何一台计算机搜索另一台计算机,都可以搜索到,并且可以访问对方计算机的共享目录及共享打印机等资源
即便用户没有共享任何东西,也会显示空的共享文件夹,而不会产生诸如”不能访问”等信息。
如果不能访问对方的计算机,首先用ping命令来保证网络的连通,如果必要的情况下,可以关闭这两台计算机的防火墙(无论是winxp xp2自带的防火墙还是专用的防火墙)以及杀毒软件,以杜绝可能产生的问题。
如果访问另一台计算机产生”拒绝访问”的错误,可从网络查找相关资源进行解决。
二. 配置OPCServer所在的计算机
2.1 注册OPCEnum.exe。
opcenum.exe是运行在服务器端的用于枚举本机OPC服务器的服务程序,由OPC基金会提供。注册opcenum有如下几种方式:a)将opcenum.exe拷贝到系统目录下,然后用命令行运行 opcenum /regserver 来注册它。b)安装一些OPC服务器程序时会自动安装并注册这个服务程序,比如iconics的模拟OPC服务器程序。c)运行OPC基金会的OPC Core Redistributable安装包,其中包含必要的模块程序。
考虑到远程访问OPC服务器应用较少,以及opcenum.exe对一般用户在系统安全方面带来的混淆,在HMIBuilder中的OPC服务器本身不带OPCEnum.exe,用户根据自己的需要自行注册。
2.2 配置本机的DCOM安全
2.2.1 在命令行运行dcomcnfg, 点开左侧树形列表【组件服务->计算机】,在右侧的【我的电脑】图标上右键点击快捷菜单的<属性>在上面的【默认属性】页面中,将<默认身份验证级别>设置为<无>在【COM安全】属性页中,将<访问权限>和<启动和激活权限>都增加Everyone用户,并选中其所有权限。
配置opcenum的安全权限
2.2.1点开左侧树形列表【组件服务->计算机->我的电脑->DCOM配置】,在左侧的DCOM程序中找到opcenum,右键点击<OpcEnum>,弹出的右键菜单,点击<属性>,设置身份验证级别。将<身份验证级别>设置为<无>,配置安全。全部选择<自定义>并将<启动和激活权限>、<访问权限>、<配置权限>都增加Everyone用户,并配置全部权限。配置标识。选择<交互式用户>
2.3 配置OPC服务器程序
配置OPC服务器程序的流程与配置opcenum的流程一致,在左侧的DCOM程序中找到需要配置的OPC服务程序,以HMIBuilder OPC Server为例,然后进行与opcenum类似的配置即可
三、本地安全策略-à管理工具à控制面板>本地策略->安全选项:将“网络访问:本地帐户的共享和安全模式”项设置为:”经典—本地用户以自已的身份验证”;
配置OPC客户端所在的计算机
配置OPC客户端所在的计算机的安全设置与配置OPC服务器的安全设置基本一致,主要是将<默认身份验证级别>设为<无>,在命令行运行dcomcnfg,点开左侧树形列表【组件服务->计算机】,在右侧的【我的电脑】图标上右键点击快捷菜单的<属性>,在 【默认属性】页面中,将<默认身份验证级别>设置为<无>
至此WINDOWS配置完毕,可以运行OPC测试软件进行测试了