OPC服务器

OPC服务器,第1张

用程序的动态数据交换(DDE)》相关章节部分
里面有组态王与EXCEL,VB等应用程序的通讯和数据交换
VC没搞过,示例程序我用VB60调试过,能运行!!
先参照一下,VB的吧!!
VB访问组态王的数据
在本例中,假设VB访问“组态王”的数据,VB作为客户程序向“组态王”请求数据。“组态王”通过OMRON驱动程序从下位机采集数据,VB又向“组态王”请求数据。数据流向如下图所示。
在“组态王”中定义设备
在工程浏览器中,从左边的工程目录显示区中选择“设备”,然后在右边的内容显示区中双击“新建”图标,则d出“设备配置向导”(设备的配置请参见第六章 I/O设备管理,在这里比如建立了OMRON的PLC),已配置的设备的信息总结列表框如图1819所示。

图1819 利用设备安装向导定义设备
定义的连接对象名为OMRON(也就是连接设备名),定义I/O变量时要使用此连接设备。
在“组态王”中定义I/O变量
在工程浏览器左边的工程目录显示区中,选择“数据库\数据词典”,然后在右边的目录内容显示区中用左键双击“新建”图标,d出“变量属性”对话框,在此对话框中建立一个I/O实型变量。如图1820所示。

图1820 组态王定义IO变量
变量名设为FromViewToVB,这个名称由工程人员自己定义。项目名为OMRONHR001。选择“允许DDE访问”选项。变量名在“组态王”内部使用,项目名是供VB引用的,连接设备为OMRON,用来定义服务器程序的信息,已在前面定义。
创建画面
在组态王画面开发系统中建立画面test1,如图1821所示。

图1821 组态王中输出变量
为文本对象“%%%%%”设置“模拟值输出”动画连接如图1822所示。

图1822 组态王为变量输出建立动画连接
选择菜单“文件\全部存”,保存画面。选择菜单“数据库\主画面配置”,将画面test1设置为主画面。
运行可视化编程工具Visual Basic
继续使用上一节的例子,设计Form1如图1823所示。

图1823 VB中建立窗体和控件
编制Visual Basic程序
双击Form1窗体中任何没有控件的区域,d出“Form1frm”窗口,在窗口内书写Form_Load子例程,如图1824所示。

图1824 VB中为控件建立与组态王变量的连接
生成可执行文件
在VB中选择菜单“File\Save Project”保存修改结果。选择菜单“File\Make Exe File”生成vbddeexe可执行文件。激活OMRON驱动程序和“组态王”运行系统TouchVew。在Visual Basic菜单中选择“Run\Start”运行vbddeexe程序。窗口Form1的文本框Text2中显示出变量的值。如图1825所示。
图1825 VB接收组态王的数据
运行可视化编程工具Visual Basic
选择菜单“File\New Project”,显示新窗体Form1。设计Form1,将窗体Form1的LinkMode属性设置为1(source),如图1813所示。

图1813 VB中建立窗体和控件
修改VB中窗体和控件的属性:
窗体Form1属性:LinkMode属性设置为1(source);LinkTopic属性设置为FormTopic,这个值将在“组态王”中引用。
文本框Text1属性:Name属性设置为Text_To_View,这个值也将在“组态王”中被引用。
生成vbddeexe文件
在Visual Basic菜单中选择“File\Save Project”,为工程文件命名为vbddevbp,这将使生成的可执行文件默认名是vbddeexe。选择菜单“File\Make EXE File”,生成可执行文件vbddeexe。
在“组态王”中定义DDE设备
在工程浏览器中,从左边的工程目录显示区中选择“设备\DDE”,然后在右边的内容显示区中双击“新建”图标,则d出“设备配置向导”(DDE设备的配置请参见第六章 I/O设备管理),已配置的DDE设备的信息总结列表框如图1814所示。定义I/O变量时要使用定义的连接对象名VBDDE(也就是连接设备名)。

图1814 组态王中定义DDE设备
在工程浏览器中定义新变量
定义新变量,变量名为FromVBToView,项目名设为服务器程序中提供数据的控件名,此处是文本框Text_To_View,连接设备为VBDDE。“变量属性”对话框如图1815所示。

图1815 组态王中定义IO变量
新建组态王画面名为test,如图1816所示。

图1816 组态王中输出来自VB的数据
为对象“#####”设置“模拟值输出”的动画连接,如图1817所示。

图1817 组态王中为变量输出建立动画连接
设置完成后,选择菜单“文件\全部存”。选择菜单“数据库\主画面配置”,将画面test设置为主画面。DDE连接设置完成。
执行应用程序
在VB中选择菜单“Run\Start”,运行vbddeexe程序,在文本框中输入数值。运行组态王,得到VB中的数值。如图1818所示。
图1818 组态王中为变量输出建立动画连接
如果画面运行异常,选择TouchVew菜单“特殊\重新建立未成功的DDE连接”,连接完成后再试一

ForeverCreditOPCServer服务器软件,简称OPCServer。
OPC客户端的使用方法:
建立和删除OPC设备:
组态王中支持多OPC服务器。
在使用OPC服务器之前,需要先在组态王中建立OPC服务器设备。
在组态王工程浏览器的设备”项目中选中OPC服务器”,工程浏览器的右侧内容区显示当前工程中定义的OPC设备和新建OPC”图标。
双击新建”图标,组态王开始自动搜索当前的计算机系统中已经安装的所有OPC服务器,然后d出查看OPC服务器”对话框。
OPC设备定义:
网络节点名”编辑框中为要查看OPC服务器的计算机名称,默认为本机”。
如果需要查看网络上的其它站点的OPC服务器,在编辑框中输入节点的UNC路径。
如计算机名称为数据采集站”,则输入数据采集站”,然后单击查找”按钮,如果查找成功,则在右边的OPC服务器”列表中显示目标站点的所有已安装的OPC服务器名称,如果没有查找到,则提示查找失败。
OPC服务器信息”文本框中显示OPC服务器”列表中选中的OPC服务器的相关说明信息,如选中KingViewView1”,则在信息中显示KingViewView”。
读写方式”是用来定义该OPC设备对应的OPC变量在进行读写数据时采用同步或异步方式,尝试恢复间隔”和最长恢复时间”用来设置当组态王与OPC服务器之间的通讯出现故障时,系统尝试恢复通讯的策略参数。
订阅频率”,目前组态王异步读是按照订阅的方式实现的,可以根据不同的需要进行设置,使用动态优化”是组态王对通讯过程采取动态管理的办法。
尝试恢复间隔”,最长恢复时间”,使用动态优化”的具体含义与IO设备定义向导中的相同。
用户可以在列表中选择所需的OPC服务器。
单击确定”按钮,查看OPC服务器”对话框自动关闭,OPC设备建立成功。
OPC服务器的建立:
对于已经建立的OPC设备,如果您确认不再需要,可以将它删除。
选中要删除的OPC设备,单击鼠标右键,在d出的快捷菜单中选择删除,d出的提示信息,如果选择是”,则将该设备从组态王中删除。

你好,于远程访问OPC服务器,需要在客户和服务器计算机上都进行DCOM设置,以前我们采用的方式是: 客户、服务器都建立一个名字、密码相同的具有管理员权限的帐号,并分别以次登录,在服务器端将OPC服务器的启动方式设为交互式用户。这种方法虽然方便,但安全性较差,不利于在实际应用中推广。这里提供一些较合理的解决方案。(假定都是在工作组里)
(1) 序言
在使用了OPC技术,并有网络数据访问的应用系统中,不可避免地要进行OPC DCOM权限配置。
DCOM配置与windows *** 作系统的安全体系结合在一起,而各版本的 *** 作系统(9x、NT、2000、XP等)的安全体现又或多或少地有所区别;同时,OPC服务器运行的方式也不尽相同(进程内、进程外、系统服务、有无界面……);而且,不同的应用系统对安全的要求也不同。总之,要想根据具体情况尽量合理地完成OPC DCOM配置并不是一件很轻松的事。
本文档根据各种不同的情况,讲述如何进行OPC DCOM配置。
(2) 准备
要进行DCOM安全配置, *** 作者通常必须拥有客户和服务器计算机的管理员权限。
注意一般情况下,DCOM通信是基于TCP/UDP的,所使用的端口不固定,很可能被一些防火墙软件屏蔽。如果本文下述配置不成功的话,请尝试关闭客户和服务器计算机上的防火墙,或者以带网络连接的安全模式启动系统(这时防火墙软件一般不被自动运行)。
(3) 最简单的情况
如果用户对网络安全基本上没有要求,或者处于客户、服务器程序开发阶段,
(4) 服务器计算机始终有用户登录的情况(NT/2000)
这也是实际应用中比较常见的情况,但对于以NT服务方式运行的OPC服务器不适合。设置方法如下:
Ø 在服务器计算机上建立一个用户,如OPCUser,可以是管理员,也可以是一般用户,服务器计算机在运行OPC服务器时必须以这个用户登录。
Ø 在服务器计算机上建立一个用户组,如OPCClients。
(单一客户情况下可以不建立,建这个组的目的是管理方便)
Ø 在各个OPC客户计算机中,分别建立OPCUser用户,口令也要与服务器上的一致,可以设为普通用户以保证安全。
Ø 客户计算机运行时不必以OPCUser登录,比如使用ClientA登录,就要在服务器上建立相同的用户ClientA及相同的密码。并在服务器计算机上将ClientA加入到OPCClients组中。ClientA在客户和服务器计算机上都可以是普通用户。
Ø 服务器端DCOM配置
运行dcomcnfg,进行如下设置:
默认属性:
启用DCOM;
默认身份验证级别:连接
默认模拟级别:标识
默认安全机制:
默认访问权限:
至少要保证OPCClients组允许访问,也可放宽至Everyone;
默认启动权限:至少保证允许INTERACTIVE用户调用;
默认配置权限:一般情况下不需修改。
默认协议:保证面向连接的TCP/IP在最上,其它可以删除。
具体的服务器配置:
常规:身份验证级别为默认值;
位置:在这台计算机上运行;
安全性:使用默认的访问和启动权限,配置权限不要修改;
身份标识:交互式用户。
终结点:不修改。

OPCEnum程序配置:
在dcomcnfg程序的应用程序列表里找到opcenumexe,对其按照上面具体服务器的配置进行设置。
Ø 客户计算机的配置:
为了保证OPC数据订阅等回调机制能正常运行,需要对客户计算机的DCOM权限进行配置。
默认属性、默认协议的配置和服务器端基本一致;
默认安全机制只需要修改默认访问权限。保证允许OPCUser访问。也可放宽至Everyone。
注意
在服务器没有用户登录的情况下,远程将无法启动OPC服务器;
对于有用户界面,并需要界面交互的OPC服务器,建议(可能必须)采用这种方式。
(5) OPC服务器为后台程序的情况(NT/2000)
这种情况下,服务器计算机可以没有用户登录。
做为后台程序,OPC服务器有两种运行方式:系统服务(service)方式和普通用户程序。
这里只介绍普通程序方式,系统服务方式的配置说明以后添加。
OPC服务器做为普通方式运行的后台程序,一般没有用户界面。完全可以按照(1)中有界面的方式进行配置,即设置为交互式用户启动。
但是(1)的配置方式限定了服务器计算机必须有用户登录,而且登录用户必须在客户计算机上有DCOM访问权限。所以,无界面的后台OPC服务器可以用另一种更灵活的方式运行。
配置方法:(未明确说明的部分与(1)相同)
在服务器端按照(1)中所述建立一个OPCUser用户,专门用来运行OPC服务器。然后在OPC服务器属性配置中,将启动方式改为指定用户,注意要输入用户密码。
这样,OPC服务器计算机可以用任意用户登录,当客户计算机发出连接请求时,系统负责以OPCUser的身份运行OPC服务器,如果已经运行则使用已有的OPC服务器。
注意还有一种启动方式,是“启动”用户。即系统以发连接请求的用户的身份启动OPC服务器,这可能造成服务器计算机上同时运行多个OPC服务器的实例,显然不妥。所以一般情况下不建议设置为“启动”用户,虽然它是缺省选项。
(6) Windows XP系统下的配置说明
在XP *** 作系统(SP1,不包括SP2及其以后版本)下,OPC的配置实际上和NT/2000基本一样,这体现在OPC DCOM相关的各项配置在注册表中的位置、名称都是一致的。
二者只是配置界面不同

不同系统间通过远程桌面登陆的用户和在本机上登陆的同一账户的权限是不一样的,所以可能出现能浏览计算机及OPCServer,但不能连接OPCServer,要把OPCServer的DCOM中的配置的改为Interactive的启动方式。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13479783.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-15
下一篇 2023-08-15

发表评论

登录后才能评论

评论列表(0条)

保存