5.力控OPC客户端当力控作为客户端访问其它OPC服务器时,是将OPC服务器当作一个I/O设备,并专门提供了一个OPCClient驱动程序实现与OPC服务器的数据交换。通过OPCClient驱动程序,可以同时访问任意多个OPC服务器,每个OPC服务器都被视作一个单独的I/O设备,并由工程人员进行定义、增加或删除,如同使用PLC或仪表设备一样。下面具体说明OPCClient驱动程序的使用过程:1.定义OPC设备在力控开发系统导航器窗口中双击“IO设备组态”,启动IoManager。选则“OPC”类中的“MICROSOFTOPCCLIENT”并展开,然后选择“OPCCLIENT3.6”并双击弹出“设备配置”对话框:图3-27在“设备名称”中输入逻辑设备的名称(可以随意定义),在“数据更新周期”中指定采集周期,原理见I/O驱动相关章节。然后单击按钮“继续”,出现OPC设备定义对话框:图3-281)服务器节点:当OPC服务器运行在网络上其它计算机时,需要在此处指定网络计算机的名称或IP地址。如果OPC服务器运行在本机,该参数设置为空。2)服务器名称:指定OPC服务器的名称。可以单击“刷新”按钮,自动搜索计算机系统中已经安装的所有OPC服务器。3)OPC服务器版本:指定OPC服务器的DA规范版本。目前可选择1.0和2.0。4)重连时间:跟OPC服务器建立连接后,在设定的时间内如果没有数据变化,则重新连接OPC服务器。该参数单位为秒。5)OPC组名称:在OPC服务器创建的组名称。创建的所有项均加载到这个组中。6)刷新时间:指定OPC服务器的刷新周期。对于大多数OPC服务器,这个参数用于控制对设备的扫描周期,并以该时间周期向OPC客户端发送数据。对某些通信性能较低的OPC服务器,该参数不宜设置过小。7)数据读写方式:可选择同步方式或异步方式。关于同步和异步的概念请参阅上一节。由于异步方式在有大量客户和大量数据交互时能提供高效的性能,因此建议在通常情况下尽量选用异步方式。2.数据连接对OPC数据项进行数据连接与其它设备类似。下面以Schneider公司的一个仿真OPC服务器“OPCFactorySimulatorServer”(服务器名:Schneider-Aut.OFSSimu)为例,说明对OPC数据项进行数据连接的过程。1)首先在PC机上安装OPCFactorySimulatorServer程序,然后按照上文所述的过程定义一个OPCFactorySimulatorServer的OPC设备,假设设备名为“OPC”。2)启动数据库管理工具DbManager,然后创建一个“模拟I/O点”,并切换到“数据连接”页,如图3-29所示:图3-29在“连接I/O设备”的“设备”下拉框中选择设备OPC1。单击“增加”按钮,出现对话框:图3-30OPC项连接/OPC路径:OPC路径(AccessPath)是OPC服务器端提供的一个参数,用于指定对应的OPC项的数据采集方式。例如,OPC服务器在采集某个RTU上的数据时,可以通过COM1上的高速MODEM进行,也可以通过COM2上的低速MODEM进行。通过OPC路径参数,可以指定采用COM1还是COM2进行采集。对于没提供该功能的OPC服务器,可将该参数置为空。OPC项连接/OPC项:OPC服务器中的基本数据项。一般用字符串表示,可唯一标识一个数据项。OPC项连接/过滤字符:用于指定浏览OPC项的过滤字符。例如:“A*”,表示浏览所有以字母“A”开头的OPC项。OPC项浏览:该部分列出全部OPC项以供选择。左侧对话框内容为OPC项的树形层次结构,右侧对话框内容为具体的OPC项,单击OPC项,会自动将形成的OPC项的标识填到“OPC项连接/OPC项”输入框内。对于不支持浏览功能的OPC服务器,无法进行OPC项浏览,此时只能手工在“OPC项连接/OPC项”输入框内指定OPC项标识。OPC项属性/数据类型:指定所选的OPC项的数据类型。OPC项属性/读写属性:指定所选的OPC项的读写属性。OPC项属性/坏值处理:指定所选的OPC项出现坏值(由质量戳确定)时的处理方式。如果选择“显示其它值”,可指定一个固定值表示坏值。如果选择“保持原值”,则保持为上一次采集到的值。OPC项属性/显示值:当“OPC项属性/坏值处理”指定为“显示其它值”时,该参数用于指定表示坏值的固定值。6力控OPC服务器力控软件提供了一个自有的OPC服务器:力控OPCServer。其它OPC客户程序通过力控OPCServer可以访问力控实时数据库。力控OPCServer是一个可以独立运行的组件。它可以与力控数据库安装、运行在同一计算机上,也可以单独安装、运行在其它计算机上通过网络与力控数据库通信。在安装力控时自动完成对力控OPCServer的注册。在使用力控OPCServer前,要保证力控实时数据库已经正常启动运行。当启动力控运行系统时,运行系统可自动启动力控OPCServer。如果发现力控OPCServer不能自动启动,需要检查开发系统DRAW中“系统配置\初始启动程序”中的设置,如下图所示,“OPCServer”项要确定被选中:力控OPCServer也可以手工启动。选择开始菜单中“力控6.0\扩展组件\OPCServer”命令可以启动OPCServer。力控OPCServer没有程序窗口,仅以程序图标形式显示在任务栏上,在任务栏上显现的图标形式为:。在任务栏上用鼠标右键单击该图标,弹出OPCServer菜单:配置数据源:选择该菜单命令,弹出“DB数据源设置”对话框:图3-33其中“数据源”可指定“本地”或“远程”两种方式,如果力控实时数据库与力控OPCServer都运行在本机,选择“本地”方式。如果力控实时数据库运行在其它网络节点上,选择“远程”方式,并在“数据源IP”参数项中指定力控实时数据库所在的网络节点的IP地址,在“数据源端口”参数项中指定网络端口,缺省为2006。注册:选择该菜单命令,对力控OPCServer进行OPC注册。注销:选择该菜单命令,对力控OPCServer进行OPC注销。退出:选择该菜单命令,退出力控OPCServer程序。不同厂家提供的OPC客户端程序数据项定义的方法和界面都可能有所差异。下面以某厂家的OPC客户端为例说明力控OPCServer的使用。1.启动力控OPCServer(首先要保证力控实时数据库已经启动运行)。2.运行某厂家提供的OPC客户端,弹出画面如图3-34所示:3.选择“OPC”菜单中的“connect”项,弹出服务器选择对话框:选择列表中的力控OPCServer,英文名称为:“PCAuto.OPCServer”,点击“OK”按钮。4.选择菜单中的OPC选项,选择“AddItem”如图3-36所示对话框:“Browseitems”中,左边是力控数据库中的所有点,右边是点参数,选择要连接的点及其参数,单击“AddItem”按钮加入到OPC客户端,OPC客户端便按照给定的采集频率对力控OPCServer的数据进行采集。如图3-37所示:5.选择菜单“OPC”下的“WriteValuetoItem”项,可以对可读写变量的可读写的域进行修改。7网络OPC当OPC服务器与OPC客户运行在不同的网络节点上,服务器与客户程序之间通过DCOM方式进行通信。DCOM是Windows操作系统提供的一种组件通信技术。OPC程序在实现DCOM通信时,需要对运行OPC服务器与客户端的Windows操作系统的DCOM进行配置,下面以力控OPCServer为例介绍配置过程。1.第三方防火墙设置。如果运行OPC程序的Windows系统(包括OPC服务器端和客户端)启用了第三方防火墙产品。必须首先对防火墙产品进行正确的设置,才能保证OPC网络通信正常。下面以天网防火墙为例,说明设置过程。1)启动天网防火墙设置界面。2)添加svchost.exe。2.OPC服务器端采用Windows2000Professional系统。1)在windows菜单“开始”中选择“运行”,在编辑框中输入“dcomcnfg”,如图3-43所示。对“默认访问权限”,“默认启动权限”和“默认配置权限”进行设置,将everyone用户设置为“允许访问”,“允许调用”和“完全控制”。3)回到首页“应用程序”页,然后选中“opcEnum”,单击“属性”按钮,弹出如下对话框:在“安全性”属性页中选中“使用自定义访问权限”,“使用自定义启动权限”,“和使用自定义配置权限”,并分别进行编辑,全部设置为“everyone”允许访问,允许设置,完全控制等。然后在“身份标识”属性页中选中“交互式用户”。4)再回到“分布式com配置属性”对话框中,选中PCAutoOPCServer如图3-48,进行属性配置,同样,在“安全性”属性页中选中“使用自定义访问权限”,“使用自定义启动权限”,“和使用自定义配置权限”,并分别进行编辑,全部设置为“everyone”允许访问,允许设置,完全控制等。然后在“身份标识”属性页中选中“交互式用户”。对于OPC客户端,如果采用了Windows2000Professional系统,也要采用上述配置方法。3.OPC服务器端采用Windows2000Server系统。1)在windows菜单“开始”中选择“运行”,在编辑框中输入“dcomcnfg”,如图3-49所示。2)点击“确定”后,弹出“分布式com配置属性”对话框,如图3-50:3)保持“默认属性”页的缺省设置,如图3-51:“默认修改权限”设置如图3-53:5)保持“默认协议”为缺省设置。6)回到首页“应用程序”页,选择“OPCServerlistClass”,单击“属性”按钮。保持“常规”页参数为缺省设置,如图3-55:选择“安全性”页,分别编辑各项“使用自定义访问权限”。分别添加everyone用户,访问类型是“允许访问”。在“身份标识”选项中,选择“交互式用户”。7)回到首页“应用程序”页,选择“PCAutoOPCServer”,单击“属性”按钮。4.OPC服务器端采用WindowsXP系统。5.防火墙配置由于WindowsXP自带防火墙,很多情况下,只有正确设置防火墙,才能保证OPC通信。1)启动防火墙设置,如图3-62:在“常规”属性页中,按缺省方式选择启用即可。选择“例外”属性页,如图3-63在这个属性页中,用户可以添加程序,允许这些程序访问网络。单击“添加程序”按钮,出现如下对话框:2)添加端口添加一个DCOM要用到的端口,“例外”属性页的“添加端口”按钮,在对话框中添加135端口6.DCOM设置1)在windows菜单“开始”中选择“运行”,在编辑框中输入“dcomcnfg”,如图3-66所示。2)单击“确定”,启动“组件服务”窗口,选中左侧导航器中“我的电脑”,在右键菜单中选择“属性”项,如图3-67:弹出“我的电脑属性”对话框,然后切换到“COM安全”页。其它页中的参数可采用缺省设置。如图3-68:访问权限:单击“编辑限制”按钮,弹出“访问权限”对话框,将其中“ANONYMOUSLOGON”用户的“本地访问”、“远程访问”权限都设为允许,如图3-69:单击“编辑默认值”按钮,弹出“访问权限”对话框,将其中“ANONYMOUSLOGON”用户的“本地访问”、“远程访问”访问权限都设为允许。启动权限和激活权限:单击“编辑限制”按钮,弹出“安全限制”对话框,将其中“ANONYMOUSLOGON”用户的访问权限全部设置为允许,如图3-70:单击“编辑默认值”按钮,弹出“安全限制”对话框,将其中“ANONYMOUSLOGON”用户的访问权限全部设置为允许。3)OPCEnum配置在“组件服务”窗口左侧导航器中展开“我的电脑”,选择下面的“DCOM配置”,在右侧列表中选中“OpcEnum”,单击右键,在右键菜单中选择“属性”项,如图3-71:在弹出的“OpcEnum属性”中选择“常规”属性页,将其中的“身份验证级别”设置为“无”,如图3-72:切换到“安全”属性页,将所有的权