技术频道

怎样通过OPC Client与世纪星交互

1 OPC简介

  OPC是 OLE for Process Control 的缩写,即把 OLE 技术应用于工业控制领域。

  OPC的出现为基于Windows的应用程序和现场过程控制应用建立了桥梁。在过去,为了存取现场设备的数据信息,每一个应用软件开发商都需要编写专用的接口函数。由于现场设备的种类繁多,且产品的不断升级,往往给用户和软件开发商带来了巨大的工作负担。通常这样也不能满足工作的实际需要,系统集成商和开发商急切需要一种具有高效性、可靠性、开放性、可互操作性的即插即用的设备驱动程序。在这种情况下,OPC标准应运而生。OPC标准以微软公司的 OLE技术为基础,它的制定是通过提供一套标准的OLE/COM接口完成的,在OPC技术中使用的是 OLE2技术,OLE标准允许多台微机之间交换文档、图形等对象。

  OPC是以OLE/COM机制作为应用程序的通讯标准。OLE/COM是一种客户/服务器模式,具有语言无关性、代码重用性、易于集成性等优点。OPC规范了接口函数,不管现场设备以何种形式存在,客户都以统一的方式去访问,从而保证软件对客户的透明性,使得用户完全从低层的开发中脱离出来。

  应用程序与OPC服务器之间必须有 OPC 接口,OPC 规范提供了两套标准接口:Custom 标准接口,OLE 自动化标准接口。通常在系统设计中采用OLE自动化标准接口,OLE 自动化标准接口,及采用 OLE 自动化技术进行调用,其技术为上节所述的 OLE 自动化技术。OLE 自动化标准接口定义了以下三层接口,依次呈包含关系:

  1)OPC Server:OPC 启动服务器,获得其他对象和服务的起始类,并用于返回 OPC Group 类对象。
  2)OPC Group:存储由若干 OPC Item 组成的 Group 信息,并用于返回 OPC Item 类对象。
  3)OPC Item:存储具体 Item 的定义、数据值、状态值等信息。


2 采用OPC规范设计系统的优势

  1)OPC规范以 OLE/DCOM 为技术基础,而 OLE/DCOM 支持 TCP/IP 等网络协议,因此可以将各个子系统从物理上分开,分布于网络的不同节点上。
  2)OPC按照面向对象的原则,将一个应用程序(OPC 服务器)作为一个对象封装起来,只将接口方法暴露在外面,客户以统一的方式去调用这个方法,从而保证软件对客户的透明性,使得用户完全从低层的开发中脱离出来。
  3)OPC实现了远程调用,使得应用程序的分布与系统硬件的分布无关,便于系统硬件配置以及使得系统的应用范围更广。
  4)采用OPC规范,便于系统的组态化,将系统复杂性大大简化,可以大大缩短软件开发周期,提高软件运行的可靠性和稳定性,便于系统的升级与维护。
  5)OPC 规范了接口函数,不管现场设备以何种形式存在,客户都以统一的方式去访问,从而实现系统的开放性,易于实现与其它系统的接口。


3 使用VB6.0编写OPC Client访问世纪星

  世纪星同时提供OPC Client和OPC Server两种功能,想要通过OPC方式和世纪星交换数据,必须要编写OPC Client和OPC Server其中的任意一种。由于编写OPC Server程序具有一定难度,所以我们建议工程技术人员开发OPC Client来和世纪星的OPC Server交互。

  1)世纪星工程

  使用OPC Client访问世纪星是不需要在世纪星中做任何特殊配置的,我们在世纪星中创建如下类型变量。在应用程序命令语言中让这些变量发生变化。

世纪星组态软件

图1 变量列表

世纪星组态软件

图2 应用程序命令语言脚本

世纪星组态软件

图3 世纪星运行画面

  2)VB6.0编写OPC Client

A、脚本

世纪星组态软件


B、画面

世纪星组态软件

图4 OPC Client界面


  3)示例说明

  A、使用OPC之前可能需要安装OPC Data Access 2.0 Components。
  B、联网运行需要配置DCOM,配置的详细情节请参考世纪星帮助或世纪星安装光盘中的《世纪星OPC Server配置指南》。
  C、本例只演示从世纪星中读取数据,读者可自行研究回写数据的例子。

4 世纪星 OPC Server 配置指南

  由于Windows XP SP2操作系统的安全特性非常高,所以配置也相对其他系统而言是最复杂的。下面以 Windows XP SP2操作系统为例来说明CenturyStar OPCServer的配置方法。

  1) CenturyStar OPCServer的安装
  在安装CenturyStar的过程中,CenturyStar OPCServer和OPC的核心组件会自动被安装到计算机上。安装成功后,计算机上会注册有一个服务器: CenturyStar. OPCServer。

  2)Windows安全性配置
  1.防火墙
  第一种方法是关闭防火墙。在控制面板中打开Windows防火墙,在“常规”页面中选择关闭。
  第二种方法是不关闭防火墙,添加一个例外到防火墙并开放DCOM端口。在控制面板中打开安全中心,选择Windows防火墙,在“例外”页面中选择添加程序。需要“添加的程序”有Microsoft Management Console(即:mmc.exe,目录:C:\Windows\System32), OPCServer.exe(目录:C:\CenturyStar),OPCClient.exe(目录:C:\CenturyStar),OPCEnum.exe(目录:C:\Windows\System32)。选择“添加端口”,名称:DCOM,端口:135,类型:TCP。
  2.启用文件共享
  在控制面板中打开网络安装向导,在“文件和打印机共享”页面选择启用。

  3)DCOM配置
  在开始菜单中选择“运行”,输入dcomcnfg,回车。打开“组件服务——计算机”,右键“我的电脑”——属性,在“默认”属性页面,“在此计算机上启用分布式COM”上打勾;“默认身份级别”选择无,“默认模拟级别”选择标识;在“默认协议”页面,将“面向连接的TCP/IP”移到最上方;在“COM安全”页面里,“访问权限”中“编辑限制”添加Everyone并附给所有权限,附给Anonymous Logon所有权限,“编辑默认值”添加Everyone并附给所有权限,附给System所有权限;“启动和激活权限”中“编辑限制”添加Everyone并附给所有权限,“编辑默认值”添加Everyone并附给所有权限,附给Interactive,System所有权限。
  展开我的电脑——DCOM配置,选择CenturyStar.OPCServer,“常规”页面“身份验证”选择无;“位置”页面“在此计算机运行应用程序”上打勾;“安全”页面在“配置权限”中添加Everyone并附给所有权限,附给System所有权限;在“标识”页面中选择“交互式用户”。
  OPCEnum的DCOM配置参考CenturyStar.OPCServer。
  注意:配置完必须重起计算机才能生效,客户机可配置参考服务器配置。


5 小结

  如果需要世纪星和第三方软件通讯尽量使用OPC方式,这种方式的优点是效率较高,容易实现网络连接。

文章版权归西部工控xbgk所有,未经许可不得转载。