什么是opc?,第1张

OPC(OLE for Process Control), 用于过程控制的OLE,是一个工业标准。

OPC全称是Object Linking and Embedding(OLE) for Process Control,它的出现为基于Windows的应用程序和现场过程控制应用建立了桥梁。在过去,为了存取现场设备的数据信息,每一个应用软件开发商都需要编写专用的接口函数。

由于现场设备的种类繁多,且产品的不断升级,往往给用户和软件开发商带来了巨大的工作负担。通常这样也不能满足工作的实际需要,系统集成商和开发商急切需要一种具有高效性、可靠性、开放性、可互操作性的即插即用的设备驱动程序。

在这种情况下,OPC标准应运而生。OPC标准以微软公司的OLE技术为基础,它的制定是通过提供一套标准的OLE/COM接口完成的,在OPC技术中使用的是OLE 2技术,OLE标准允许多台微机之间交换文档、图形等对象。

扩展资料:

OPC有以下3个特点:

1、计算机硬件厂商只需要编写一套驱动程序就可以满足不同用户的需要。硬件供应商只需提供一套符合OPC Server规范的程序组,无需考虑工程人员需求。

2、应用程序开发者只需编写一个接口程序便可以连接不同的设备。软件开发商无需重写大量的设备驱动程序。

3、工程人员在设备选型上有了更多的选择。对于最终用户而言,可以根据实际情况的不同,选择符合实际的设备。

-opc(工业标准OLE for Process Control)

-OPC技术

通过OPC自定义接口来实现客户端数据的读取步骤如下。

1:使用OPC DA进行Client的读写操作时,我们使用Custom接口,出此之外还有Automation接口。以下是Custome接口开发时涉及到的三个关键对象:OpcServer、OpcGroup、OpcItem。

2:在客户端开发时,要使用OpcServer对象来实现客户端与Opc服务器之间的连接。一个OpcServer对象下有多个OpcGroup,一个OpcGroup下有多个OpcItem,在自定义接口下的Client开发,是以Group为单位的操作,数据读写都是通过OpcGroup进行的。  

3:我们可以不写OPC Client程序来测试,如何通过OPCServer与PLC之间的交互。首先当我们安装完毕SimaticNet之后,需要对Station Configuration Editor进行配置。

4:当我们组态完毕时,如何判断组态是否正确,在SimaticNet的目录上有个叫Opc Scout(Opc Scout V10)的软件,列出来了本机所有的Server,我们能使用名为OPCSimaticNET的Server。

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

opc既不是硬件也不是软件。OPC是一种通讯规范,OPC基金会组织规定的一套规范,按照这个规范去把程序写出来,包括一个OPC服务器程序和一个OPC客户端程序,只要是按规范写的,不管是谁写的,就能保证OPC服务器能被OPC客户端访问。

opc服务器向下可以读取设备的数据,比如PLC、DCS等等,但这部分OPC规范是不管的,只要厂家用任意接口任意方法把设备数据读到就OK,然后OPC服务器程序把这些读到的数据按规范要求开放在网络上,其他任意OPC客户端程序,可以远程浏览这些数据,并选择读取这些数据中需要的。

扩展资料

OPC的工作原理

OPC以OLE/COM机制作为应用程序的通信标准,而OLE/COM是一种客户端/服务器模式,具有语言无关性、代码重用性、易于集成性等优点。

OPC服务器中的代码确定了服务器所存取的设备和数据、数据项的命名规则和服务器存取数据的细节,不管现场设备以何种形式存在,客户都以统一的方式去访问,从而保证软件对客户的透明性,使得用户完全从低层的开发中脱离出来。

客户应用程序仅须使用标准接口和服务器通信,而并不需要知道底层的实现细节。通过OPC服务器,OPC客户既可以直接读写物理VO设备的数据,也可操作SCADA,DCS等系统的端口变量(只要该系统提供OPC服务)。

你好,于远程访问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相关的各项配置在注册表中的位置、名称都是一致的。

  二者只是配置界面不同

OPC

server和OPC

client的区别:

1、执行的功能不同:

OPC

Server/Client

是一套利用微软的

COM/DCOM

技术达成工业自动化资料取得的架构。OPC

Server

提供了许多的接口,Client

端通过这些接口,可以取得与

OPC

Server

相连的硬件装置的信息,而无须了解这些硬件装置的细节信息。

2、开发环境不同:

当开发OPC

Client程序时,最好使用Windows桌面程序方式,这种方式可兼容OPC

Server程序运行在Windows桌面程序方式和Windows

NT服务方式,而当开发OPC

Server程序时,最好使用Windows

NT服务方式。

3、运行的标准不同:

可以将OPC

Server看作是协议转换器,OPC

Server使用设备的专用协议与设备通信,然后使用OPC

Classic和OPC

UA规范定义的标准化格式提供对该数据的访问。通常情况下,OPC

Server在OPC

Client请求读取或写入数据之前不会执行任何操作。

搜狗百科-OPC

Server

搜狗百科-开放平台通信

1创建opc服务端,并启动opc服务端。i

2打开组态王开发,创建与opc服务器的连接。如何创建连接请参考手册。创建与opc服务端的连接的时候组态王会自动列出可用的opc。

3创建组态王变量以读取opc的数据。这一步很关键。变量名自己取,变量类型选择io字符串或io整数,这个看你opc发过来的是什么数据类型,按实际选择。连接设备选择你的创建的opc服务器连接。寄存器会自动列出,按照实际选择。数据类型按实际选择。

4组态王创建了与opc连接的变量后,组态王就可以对变量进行操作了,你就可以把变量通过组态王命令语言写进数据库了。

5数据库操作得先创建记录体。

6说太多如果没有基础也很难搞懂,组态王有很详细的帮助,多看手册会大有帮助。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 什么是opc?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情