OPC技术的简介,第1张

COM是Component Object Model的缩写,是所有OLE机制的基础。COM是一种为了实现与编程语言无关的对象而制定的标准,该标准将Windows下的对象定义为独立单元,可不受程序限制地访问这些单元。这种标准可以使两个应用程序通过对象化接口通讯,而不需要知道对方是如何创建的。例如,用户可以使用C++语言创建一个Windows对象,它支持一个接口,通过该接口,用户可以访问该对象提供的各种功能,用户可以使用Visual Basic,C,Pascal,Smalltalk或其它语言编写对象访问程序。在Windows NT40操作系统下,COM规范扩展到可访问本机以外的其它对象,一个应用程序所使用的对象可分布在网络上,COM的这个扩展被称为DCOM(Distributed COM)。

通过DCOM技术和OPC标准,完全可以创建一个开放的、可互操作的控制系统软件。OPC采用客户/服务器模式,把开发访问接口的任务放在硬件生产厂家或第三方厂家,以OPC服务器的形式提供给用户,解决了软、硬件厂商的矛盾,完成了系统的集成,提高了系统的开放性和可互操作性。 由OPC Task Force制定的OPC(OLE for Process Control)规范于1996年8月正式诞生了,随着1997年2月Microsoft公司推出Windows95支持的DCOM技术,1997年9月新成立的OPC Foundation对OPC规范进行修改,增加了数据访问等一些标准,OPC规范得到了进一步的完善。

“OPC 基于Microsoft公司的 Distributed interNet Application (DNA) 构架和 Component Object Model (COM) 技术的,根据易于扩展性而设计的。OPC规范定义了一个工业标准接口,这个标准使得COM技术适用于过程控制和制造自动化等应用领域。”OPC 基础委员会主席Dave Rehbein是这样描述的

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

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

OPC Server:OPC启动服务器,获得其他对象和服务的起始类,并用于返回OPC Group类对象;

OPC Group:存储由若干OPC Item组成的Group信息,并用于返回OPC Item类对象。

OPC Item:存储具体Item 的定义、数据值、状态值等信息。

由于OPC规范基于OLE/COM技术,同时OLE/COM的扩展远程OLE自动化与DCOM技术支持TCP/IP等多种网络协议,因此可以将OPC客户、服务器在物理上分开,分布于网络不同节点上。

OPC规范可以应用在许多应用程序中,如它们可以应用于从SCADA 或者DCS系统的物理设备中获取原始数据的最低层,它们同样可以应用于从SCADA 或者DCS系统中获取数据到应用程序中。实际上,OPC设计的目的就是从网络上某节点获取数据。图422OPC的客户/服务器关系图同样描述了OPC在SCADA系统的应用。 在进行新型微机远动系统的研制中,各个计算机以及各个模块的数据交换应该按照OPC规范进行。这样做有以下好处:

OPC规范以OLE/DCOM为技术基础,而OLE/DCOM支持TCP/IP等网络协议,因此可以将各个子系统从物理上分开,分布于网络的不同节点上。

OPC按照面向对象的原则,将一个应用程序(OPC服务器)作为一个对象封装起来,只将接口方法暴露在外面,客户以统一的方式去调用这个方法,从而保证软件对客户的透明性,使得用户完全从低层的开发中脱离出来。

OPC实现了远程调用,使得应用程序的分布与系统硬件的分布无关,便于系统硬件配置以及,使得系统的应用范围更广。

采用OPC规范,便于系统的组态化,将系统复杂性大大简化,可以大大缩短软件开发周期,提高软件运行的可靠性和稳定性,便于系统的升级与维护。

OPC规范了接口函数,不管现场设备以何种形式存在,客户都以统一的方式去访问,从而实现系统的开放性,易于实现与其它系统的接口。

当大量现场信息由智能仪表或通过现场总线直接进入计算机控制系统后,存在着计算机内部应用程序对现场信息的共享与交互问题。由于缺乏统一的连接标准,工控软件往往需要为硬件设备开发专用的驱动程序。这样一旦硬件设备升级换代,就需要对相应的驱动程序进行更改,增加了系统的维护成本。即使计算机中的SCADA有独立的驱动程序,但一般也不允许同时访问相同的设备,否则很容易造成系统崩溃。可见,现场控制层作为企业整个信息系统的底层部分,必然需要与过程管理层和经营决策层进行集成,这样也存在着监控计算机如何与其它计算机进行信息沟通和传递的问题。由于控制系统往往是不同厂商开发的专用系统,相互之间兼容性差,与高层的商业管理软件之间又缺乏有效的通信接口,因此通信规范问题成为了制约控制系统突破“信息孤岛”的瓶颈。

OPC(OLE for Process Control)的出现,建立了一套符合工业控制要求的通信接口规范,使控制软件可以高效、稳定地对硬件设备进行数据存取操作,应用软件之间也可以灵活地进行信息交互,极大提高了控制系统的互操作性和适应性

从软件的角度来说,OPC可以看成是一个“软件总线”的标准。首先,它提供了不同应用程序间(甚至可以是通过网络连接起来的不同工作站上的应用程序之间)实现实时数据传输的通道标准;其次,它还针对过程控制的需要定义了在通道中进行传输和交换的格式。OPC标准的体系结构为客户/服务器模式,即将软件分为OPC服务器和OPC 客户。OPC服务器提供必要的OPC数据访问标准接口;OPC客户通过该标准接口来访问OPC数据。

运用OPC标准开发的软件由于都基于共同的数据及接口标准,因此相互之间具有很强的通用性。这在工业控制领域中,具有十分现实的意义。OPC服务器可由不同供应商提供,其代码决定了服务器访问物理设备的方式、数据处理等细节。但这些对OPC客户程序来说都是透明的,只需要遵循相同的规范或方法就能读取服务器中的数据。同样,软件供应商则只需将自己的软件加上OPC接口,即能从OPC服务器中取得数据,而不需关心底层的细节。通过OPC接口,OPC客户程序可以和一个或多个不同的OPC服务器连接。如图34,同时一个OPC服务器也可以与多个客户程序相连,形成多对多的关系。任何支持OPC的产品都可以实现与系统的无缝集成。由于OPC技术基于DCOM,所以客户程序和服务器可以分布在不同的主机上,形成网络化的监控系统。

OPC技术的发展和应用,无论供应商还是最终用户都可以从中得到巨大的益处。首先,OPC技术把硬件和应用软件有效地分离开,硬件厂商只需要提供一套软件组件,所有OPC客户程序都可以使用这些组件,无需重复开发驱动程序。一旦硬件升级,只需修改OPC服务器端I/O接口部分,无需改动客户端程序。其次,工控软件只要开发一套OPC接口就可采用统一的方式对不同硬件厂商的设备进行存取操作。这样,软硬件厂商可以专注于各自的核心部分,而不是兼容问题。

对于最终用户而言,由于无需担心互操作性,在选择和更换软硬件时有了更多的余地,使异构计算机系统集成将变得很简单。用户可以将重点放在整个系统的功能及应用上,这也意味着成本的降低。此外,OPC组件的使用也十分方便,用户只需进行简单的组态即可。

OPC服务器在底层控制系统中采用统一的标准,实现了应用程序与现场设备的有效连接,发挥着重要的桥梁作用,同时也促进了企业现场控制层和生产过程管理层、经营决策层的集成。

1、安装ifix 在服务端计算机、客户端计算机安装ifix

2、配置Dcom 需要配置opc 服务器端的opc,具体配置可百度,有很多,起始主要是开放几个权限;

3、配置计算机密码,xp的话最好要配置一样的用户名密码;

4、先用客户端网上邻居访问一次服务端,输入好用户名密码,

5、启动服务器端的ifix,测试的话可以在服务器端建立几个内部变量,

6、启动客户端的opc client进行数据读取测试,opcclinet可以是任意支持opc的组态软件或者vb程序或者可以用kepware、wincc opc等进行测试,测试的时候选择网络的服务器的计算机然后选择这个服务器上的ifix 的opc server程序

7、浏览数据,

关键点是配置dcom和设置统一的用户名密码;win2000的话opc,不需要设置一样的用户名密码,因为2000的安全机制要低,xp的话最好设置一样的用户名密码,不然很可能通讯有问题,设置一样的用户名密码是最简单的过程。

转:

OPC (OLE for Process Control) 用于过程控制的OLE

OLE是 object linking and embedding (对象链接与嵌入)的缩写

现在随着OLE2的发行,其范围远远超过了 对象链接与嵌入这个概念,现在的OLE包涵了数据传输,结构化储存和自动化等。

说人话就是,OPC为工业控制软件中不同的现场设备之间提供了一个公共接口

OPC采用客户端/服务器的结构,作为中心数据源的OPC服务器负责向各种客户端提供来自现场设备的数据

作者:你瞅啥

链接:https://wwwzhihucom/question/34005308/answer/62817282

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

对于远程访问OPC服务器,需要在客户和服务器计算机上都进行DCOM设置,本文提供一些具体配置方法。(by Kevin,2007-9-20)

DCOM配置与windows操作系统的安全体系结合在一起,而各版本操作系统(9x、NT、2000、XP、2003等)的安全体系又或多或少地有所区别。同时,OPC服务器运行的方式也不尽相同(进程内、进程外、系统服务、有无界面……)。而且,不同的应用系统对安全的要求也可能不一样。总之,要想根据具体情况合理地完成OPC DCOM配置并不是一件很轻松的事。

本文暂不考虑OPC客户及服务器计算机在NT域中的情况。

要进行DCOM安全配置,操作者通常必须拥有客户和服务器计算机的管理员权限。

以下是大致的配置过程:

(1) 用户的建立及配置

最简单的用户配置是在客户和服务器计算机上建立名称、密码都相同的用户(Administrator权限不是必需的),并用此用户登录系统、运行OPC服务器程序。这种方式适用于系统调试期间,或对安全要求不高的场合。

在有一定安全要求的系统中,可按如下方式配置:

在服务器计算机上建立一个用户,如OPCUser,可以是一般用户,服务器计算机在运行OPC服务器时必须以这个用户登录。

在服务器计算机上建立一个用户组,如OPCClients。

(客户端不需要用户切换的情况下可以不建立,建这个组的目的是管理方便)

在OPC客户计算机中,建立OPCUser用户,口令也要与服务器上的一致,可以设为普通用户以保证安全。(建这个用户的目的是保证服务器回调时的权限,如OnDataChange)

在客户和服务器计算机上都建立ClientA、ClientB等用户,且密码一致。

在服务器计算机上将ClientA、ClientB等用户都加入到OPCClients组中。客户计算机用这些用户登录。

(2) OPC服务器计算机的DCOM设置

运行dcomcnfg,进行如下设置:

默认属性:

启用DCOM;

默认身份验证级别:连接

默认模拟级别:标识

默认安全机制:

默认访问权限:

至少要保证OPCClients组允许访问,也可放宽至Everyone;

默认启动权限:至少保证允许INTERACTIVE用户调用;

默认配置权限:一般情况下不需修改。

默认协议:保证面向连接的TCP/IP在最上。

OPC服务器配置:

常规:身份验证级别为默认值;

位置:在这台计算机上运行;

安全性:使用默认的访问和启动权限,配置权限不要修改;

身份标识:交互式用户。

终结点:不修改。

(3) 客户计算机的DCOM配置

为了保证OPC数据订阅等回调机制能正常运行,需要对客户计算机的DCOM权限进行配置。

默认属性、默认协议的配置和服务器端基本一致;

默认安全机制只需要修改默认访问权限。保证允许OPCUser访问。也可放宽至Everyone。

(4) 系统设置

防火墙:

对于安装了第三方防火墙软件的计算机,可尝试配置允许OPC客户及服务器程序通过,或直接停止防火墙服务。

对于启用了操作系统(XP SP2、Server 2003等)自带防火墙的情况,可按OPC基金会提供的文档《Using OPC via DCOM with XP SP2》中描述的进行配置,或直接关闭防火墙。

注意:客户、服务器计算机都要配置。

安全策略:(XP、Server 2003等)

“控制面板 -> 管理工具 -> 本地安全策略 -> 本地策略 -> 安全选项”中,

“网络访问:本地帐户的共享和安全模式”项设置为:

“经典 - 本地用户以自己的身份验证”

(5) 其它注意事项

连不通时首先检查网络是否正常;(比如在关闭了防火墙的情况下ping服务器计算机)

用户密码不要设置为空;

跑步机什么牌子好:http://wwwluckteacom/

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » OPC技术的简介

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情