OPC基础应用知识
OPC技术及其应用 - OPC
OPC技术及其应用 - OPC当大量现场信息由智能仪表或通过现场总线直接进入计算机控制系统后,存在着计算机内部应用程序对现场信息的共享与交互问题。
由于缺乏统一的连接标准,工控软件往往需要为硬件设备开发专用的驱动程序。
这样一旦硬件设备升级换代,就需要对相应的驱动程序进行更改,增加了系统的维护成本。
即使计算机中的SCADA有独立的驱动程序,但一般也不允许同时访问相同的设备,否则很容易造成系统崩溃。
可见,现场控制层作为企业整个信息系统的底层部分,必然需要与过程管理层和经营决策层进行集成,这样也存在着监控计算机如何与其它计算机进行信息沟通和传递的问题。
由于控制系统往往是不同厂商开发的专用系统,相互之间兼容性差,与高层的商业管理软件之间又缺乏有效的通信接口,因此通信规范问题成为了制约控制系统突破“信息孤岛”的瓶颈。
opc(OLE for Process Control)的出现,建立了一套符合工业控制要求的通信接口规范,使控制软件可以高效、稳定地对硬件设备进行数据存取操作,应用软件之间也可以灵活地进行信息交互,极大提高了控制系统的互操作性和适应性从软件的角度来说,OPC可以看成是一个“软件总线”的标准。
首先,它提供了不同应用程序间(甚至可以是通过网络连接起来的不同工作站上的应用程序之间)实现实时数据传输的通道标准;其次,它还针对过程控制的需要定义了在通道中进行传输和交换的格式。
OPC 标准的体系结构为客户/服务器模式,即将软件分为OPC服务器和OPC客户。
OPC服务器提供必要的OPC数据访问标准接口;OPC客户通过该标准接口来访问OPC数据。
运用OPC标准开发的软件由于都基于共同的数据及接口标准,因此相互之间具有很强的通用性。
这在工业控制领域中,具有十分现实的意义。
OPC服务器可由不同供应商提供,其代码决定了服务器访问物理设备的方式、数据处理等细节。
但这些对OPC客户程序来说都是透明的,只需要遵循相同的规范或方法就能读取服务器中的数据。
OPC详细说明
OPC概述1.什么是OPC?OPC是一种利用微软的COM/DCOM技术来达成自动化控制的协定。
OPC全称是Object Linking and Embeding(OLE)for Process Control,它的出现为基于Windows 的应用程序和现场过程控制应用建立了桥梁。
在现今的工业自动化中,我们需要一套整合的信息系统,由底层的各项装置采集信息(Field Management),中层的控制系统或图控应用程序进行程序的控制(Process Management),再由最上层的整合软件将这些信息整合起来以供企业决策或效能提升,如下图所示:OPC 为硬件制造商与软件开发商提供了一条桥梁,透过硬件厂商提供的OPC Server 接口,软件开发者不必考虑各项不同硬件间的差异,便可自硬件端取得所需的信息,所以软件开发者仅需专注于程序本身的控制流程的运作。
此外,由于COM/DCOM 实作并隐藏了网络的细节,透过OPC 可以很容易地达成远程控制的理想。
2.OPC是如何工作的?在说明OPC Server/Client 运作方式之前,我们先简单介绍一下Microsoft 发展的COM/DCOM 是什么?COM 是一种发展软件组件的方法,所谓的软件组件,是指一个可以提供应用程序、操作系统、以及其它组件服务的二进制可执行程序。
事实上,发展自订的COM 对象就好象是在建构一套可以动态执行的对象导向API 一般。
你可以在应用程序执行的时期随意拼上或移除所需要的组件。
依据COM 这样的概念,发展应用程序就像是堆积木一样,每一个COM 组件就是一块积木,你可以利用各式各样不同的积木,拼凑出你所需要的应用程序。
在实作上,COM 透过一组一组的接口(Interface) 提供服务,所有COM 组件的使用者,都必须透过这些Interface 来使用组件提供的功能。
OPC 的规格中便定义了许多OPC Server 应该提供的Interface,要撰写一个OPC Server 的COM 组件,你必须在你的组件中加入这些接口,并提供它们的实作,Client 便可以透过这些接口,操作连接到OPC Server 的硬件装置,这也就是OPC Server/Client 运作的方式。
opc基础学习
only between nodes
OPC基金会
• 管理OPC标准的组织是OPC基金会。其
前身由一个Fisher-Rosemount、 Rockwell Software、Siemens、 Opto22、Intellution和Intuitive Technology等著名大公司组成专门的工 作组,仅仅用了短短的一年时间便开发 出一个基本的可运行的OPC技术规范。 在1996年8月发布了简化的、一步到位 的解决方案。
FB agent PLC
Accessing a server in another node
client application (OPC client) stub DCOM
TCP/IP
DCOM
TCP/IP
TCP/IP
Limitation: does not work over firewalls. Solution: OPC XML (see later)
OPC as a hub
source: Siemens WinCC
OPC connection to databases
Tools allow to build an OPC DA interface to any ODBC equipped database. The database internal structure (exposed through queries) is reflected as a hierarchy of OPC items. This allows to give a unified access to simple items.
OPC server
aspect directory
OPC client
OPC重点知识总结
1、OPC的基本原理定义:OPC是用于过程控制的OLE(OLE for Process Control)的首字母缩写词,在今天已经理所然地被自动化组件的制造商逐步发展成一个事实上的新技术标准。
而所谓OLE(Object linking and embedding)含义是对象链接及嵌入,用于过程控制。
OPC 是以 OLE/COM 机制作为应用程序的通讯标准。
OLE/COM 是一种客户/服务器模式,具有语言无关性、代码重用性、易于集成性等优点。
OPC 规范定义了一个工业标准接口,这个标准使得 COM 技术适用于过程控制和制造自动化等应用领域。
COM技术简述:*所谓COM并不是一种计算机语言,与运行的机器、机器的操作系统(只要支持COM)以及软件开发语言均无关,是任意的两个软件组件之间都可以相互通信的二进制和网络的标准。
*COM服务器是根据COM客户的要求提供COM的服务的执行可能的程序,可以作为Win32服务器上可执行的文件发布。
*COM客户程序和COM服务器可以用完全不同的语言开发。
这样使利用C++,Visual Basic,以及Excel中作为宏使用的应用程序的Visual Basic等不同语言所开发的程序可以相互连接。
*COM组件可以以二进制的形式发布给用户。
*与过去DLL(动态链数据库)的版本管理非常困难的问题相比,COM技术可以提供不同版本的COM服务器和COM客户程序之间的最大的兼容性。
*作为COM技术扩展的分布式COM(Distributed Component Object Model,DCOM)技术,更可以使COM组件分布在不同的计算机上,并通过网络互相连接并互相交换数据。
所以对于COM客户程序来说,同样像连接本地计算机上的COM服务器一样,去连接远程计算机上的COM服务器,当然通信的速度不太一样,但是重要的是不必对服务器程序进行修正就可以在网络上自由构成利用COM和DCOM(分布式COM)达成的组件的互相连接。
原花青素(OPC)知识解析讲解(二)
原花青素(OPC)知识解析讲解(二)若干年后,马斯魁勒偶然读了一本有关Jacquer Carter美洲探险的书,了解到发生在400多年前的那件事。
他脑中闪过一个念头是:挽救了船员们的松树皮中除了含有维生素C外,很可能还含有原花青素(OPC)。
花生仁包衣中的原花青素(OPC)可保护花生仁中的油脂不被氧化腐烂,松树中也有大量的松脂,从这一点看,每一棵松树就是一粒“巨大的花生”。
激动不已的马斯魁勒亲自去了加拿大魁北克地区进行研究。
结果证实了他的推想:松树皮提取物除含有维生素C之外,确实还有“维生素C伴随剂-原花青素(OPC)”它们二者协同对付坏血病,原花青素(OPC)的作用之一就是保护维生素C在到达起效部位之前不被氧化失活。
这就是有人也将原花青素(OPC)称为维生素C增效剂的原因。
此后不久,马斯魁勒又发现法国海岸的树皮中也含有大量的原花青素(OPC)。
这一发现的意义在于找到了大量提取原花青素(OPC)的新资源。
此时是50年代。
不久,松树皮提取物(其中含有约85%的原花青素(OPC))在法国被注册为药物,其商品名为Pycnogenol,用于提高血管的抵抗力,降低毛细血管的脆性和通透性。
这是原花青素(OPC)的第一个明确适应症。
在随后的实际应用中,欧洲的医生们从他们的病人所反馈的信息中获得,原花青素(OPC)的功能并不仅仅局限于血管系统疾病,它对诸如花粉过敏、关节炎、胃溃疡等疾病同样也具有明显的疗效。
20世纪70年代,马斯魁勒又发现了获得原花青素(OPC)另一个更好的资源-葡萄籽。
用葡萄籽提取的原花青素(OPC)含量高达95%,并且,他还用葡萄籽中的原花青素(OPC)系统地做了一系列实验,如生物利用度试验、毒性实验、三致实验(致畸、致癌、致突变)等,这一切都是为了将原花青素(OPC)打入美国市场。
80年代,自由基对健康的影响日益为人们所认识。
由于原花青素(OPC)具有强烈的抗氧化作用,而自由基也是通过氧化损伤来危害健康,马斯魁勒做了原花青素(OPC)的自由基除活性实验,实验结果证明原花青素(OPC)是迄今为止所发现的最强效的自由基清除剂,其抗自由基氧化能力是维生素C的20倍,维生素E的50倍,尤其是其体内活性,更是其他抗氧化剂无法比拟的。
OPC入门精品PPT课件
什么是OPC?
OPC(OLE for Process Control,用于过程控制 的OLE)是为过程控制专门设计的OLE技术,由一 些世界上技术占领先地位的自动化系统和硬件、 软件公司与微软公司(Microsoft)紧密合作而建 立的,并且成立了专门的OPC基金会来管理,OPC 基金会负责OPC规范的制定和发布。OPC提出了一 套统一的标准,采用典型的CLIENT/SERVER模式, 针对硬件设备的驱动程序由硬件厂商或专门的公 司完成,提供具有统一OPC接口标准的SERVER程序, 软件厂商只需按照OPC标准编写CLIENT程序访问 (读/写)SERVER程序,即可实现与硬件设备的通 信
OPC服务器的对象—组
OPC组对象提供了OPC客户程序用来组织数据的一 种方法。例如一个组对象代表了一个PLC(可编程 控制器)中的需要读写的寄存器组。一个客户程 序可以设置组对象的死区,刷新频率,需要组织 的项等。OPC规范定义了2种组对象:公共组和私 有组。公共组由多个客户共享,局部组只隶属于 一 OPC客户。全局组对所有连接在服务器的应用 程序都有效,而私有组只能对建立它的CLIENT有 效。在一个SERVER中,可以有若干个组。
OPC技术优势
硬件厂商 熟悉自己的硬件设备,因而设备驱动程序性能
更可靠、效率更高 软件厂商
可以减少复杂的设备驱动程序的开发周期,只需 开发一套遵循OPC标准的程序就可以实现与硬件设 备的通信,因此可以把人力、物力资源投入到系 统功能的完善中 可以实现软硬件的互操作性 ,提高效率
OPC把软硬件厂商区分开来,使得双方的工作效 率有了很大的提高
OPC服务器的对象—项
OPC 简介及应用
OPC 概念在OPC之前,需要花费很多时间使用软件应用程序控制不同供应商的硬件。
存在多种不同的系统和协议;用户必须为每一家供应商和每一种协议订购特殊的软件,才能存取具体的接口和驱动程序。
因此,用户程序取决于供应商、协议或系统。
而OPC具有统一和非专有的软件接口,在自动化工程中具有强大的数据交换功能。
OPC (OLE for Process Control)是嵌入式过程控制标准,规范以OLE/DCOM为技术基础,是用于服务器/客户机连接的统一而开放的接口标准和技术规范。
OLE是微软为Windows系统、应用程序间的数据交换而开发的技术,是Object Linking and Embedding的缩写。
OPC从数据来源提供数据并以标准方式将数据传输至任何客户机应用程序的机制。
供应商现在能够开发一种可重新使用、高度优化的服务器,与数据来源通信,并保持从数据来源/设备有效地存取数据的机制。
为服务器提供OPC接口允许任何客户机存取设备。
OPC将数据来源提供的数据以标准方式传输至任何客户机应用程序。
OPC(用于进程控制的OLE)是一种开放式系统接口标准,可允许在自动化/PLC应用、现场设备和基于PC的应用程序(例如HMI或办公室应用程序)之间进行简单的标准化数据交换。
定义工业环境中各种不同应用程序的信息交换,它工作于应用程序的下方。
您可以在PC机上监控、调用和处理可编程控制器的数据和事件。
服务器与客户机的概念OPC数据项是OPC服务器与数据来源的连接,所有与OPC数据项的读写存取均通过包含OPC项目的OPC群组目标进行。
同一个OPC项目可包含在几个群组中。
当某个变量被查询时,对应的数值会从最新进程数据中获取并被返回,这些数值可以是传感器、控制参数、状态信息或网络连接状态的数值。
OPC的结构由3类对象组成:服务器、组和数据项。
OPC服务器:提供数据的OPC元件被称为OPC服务器。
OPC服务器向下对设备数据进行采集,向上与OPC客户应用程序通信完成数据交换。
OPC_应用程序入门
我从北京买了一本《OPC应用程序入门》,在此之前基本上只是知道有OPC,在五月四日开始,我学了七天。
其中有苦有甜。
我写下来,权做休息或是练练打字。
第一天安装了《入门》提供的东西,包括是下面几个文件。
还有个批处理文件,是一个注册过程。
opccomn_ps.dllopcproxy.dllopcdaauto.dllOPCTrend.ocxOPCBar.ocxOpcServer.exeOPCJDADemoServer.exe看了一阵书,知道了前三个是:通用接口,PROXY-STUB,自动化接口。
不明白。
后面两个是demo 服务器。
上网,用GOOGLE,查OPC,很自然就找到了.,又下了个free服务器。
安装了(注册)。
到了工控网,看到有人在推荐clienttools,就下了一个,叫WXOPC。
运行一下,点击连接服务器图标,立即出现了三个:OPCJ.SAMPLESERVER.1OPCJ.DADEMOSERVER.1HEXATEC.PCDATA第三个是opcconnect上download的计算机基本情况的简单程序。
点击他们,还出现了一些“item”,“value"的内容还在变,有意思。
我就想这工具还真不错,不知我能不能做到,但一想,如果这些功能都做不到,这OPC就没多少人敢学,也就没有市场。
有一段时间没用VB了,先热了热身,看了自己过去编过的code。
第二日今天先看书。
《OPC应用程序入门》,40元,我花了48元,从汇款到收到用了12天,拿到手上,感觉很单薄。
我的看书观点是:在看的过程中迷信书,看完后怀疑书,然后忘记书。
尽管这本书上我立即就发现有错误。
我还是仔细地看下去。
这是一本教人们用VB编应用客户端程序的书,希望让一般工控技术员认识OPC其实不复杂,最起码编用户程序(客户端)不难。
在这之前,我对COM和DCOM技术有所了解,也是很模糊的,OPC以COM和DCOM技术为基础,主要是在服务器端(server),而在用户端并不要很在意它们。
OPC内容介绍(全)
数据采集方案及其比较
动态数据交换法(DDE) DDE即动态数据交换(Dynamic Data Exchange),是OLE技术的前身,是在微软的 Win32应用程序接口(API)上所开发的应用程 序之间动态地移动数据的一种方法。 DDE协 议在应用程序间传送信息,使得应用程序共享 数据和采用共享的内存交换数据。
结束语
OPC规范把硬件供应商和应用软件开发者 分离开来,使得双方的工作效率都有了很 大提高。软件开发商无需了解硬件的实质 和操作过程,只要遵循OPC规范进行开发, 就能够访问OPC服务器中的数据。OPC十分 适应过程控制的需要,开发商可用高级语 言编写OPC客户程序,能够发挥OPC服务器 的最佳性能,完全可以满足过程控制领域 对数据的实时、高效的要求。
OPC接口
OPC规范提供了两套接口方案: 定制接口(Custom Interface); 自动化接口(Automation Interface)。
OPC对象
OPC Server对象 对象
OPC Server级别有多种属性,其中包含一个OPC服务器对象的状态和版本等信 息。
OPC Group对象 对象
OPC方式
OPC这个标准为过程控制和工厂自动化提供真正的即插即用软件 技术,使得过程控制和工厂自动化的每一系统、每一设备、每一驱动 器能够自由地连接和通讯,有了这样一个标准,使得系统及设备之间, 包括从车间到MES(制造执行系统)或更远距离,完全无缝地、真 正开放和方便地进行企业级的通讯的通讯成为可能。
OPC内容介绍
目录
OPC概念 数据采集方案及其比较 OPC产生的原因 OPC方式 OPC数据通讯 OPC优点 OPC对象 对设备厂商要求
OPC概念
OPC(OLE for Process Control,用于过程 控制的对象链接与嵌入)是一个工业标准,它是 许多世界领先的自动化软、硬件公司与微软公 司合作的结晶。它由一系列用于过程控制和制 造业自动化应用领域的标准接口、属性以及方 法组成。
OPC开发人员需掌握的基本知识
1.3 OPC对象接口定义·································6
1.4 OPC同步异步通讯·································9
1.5 OPC服务器开发方式······························ 10
第二章ATL简介········································12
2.1COM基础··········································13
2.2用ATL应用程序向导创建应用程序···················18
2.3源文件说明·······································20
Trackback: /TrackBack.aspx?PostId=247343
目录前言第一章opc概述111opc技术的本质comdcom212opcda204规范简述413opc对象接口定义614opc同步异步通讯915opc服务器开发方式10第二章atl简介1221com基础1322用atl应用程序向导创建应用程序1823源文件说明2024添加组件对象2325添加组件对象的属性和方法函数3026测试组件34第三章atl开发opc服务器3631opcserver对象定义3732opcgroup对象定义4133用于客户端的回调定义4634opc服务器的设计及初步实现4835opc服务器的编程实现5036opc服务器的异步通讯实现6837opc服务器的浏览地址空间实现8438opc服务器的注册101第四章opc客户程序实例10341opc客户程序vc同步篇10342opc客户程序vc异步篇12443opc客户程序vb同步14044opc客户程序vb异步篇14645opc客户程序vc多个组篇15546opc客户程序vb浏览地址空间篇16247opc客户程序vc浏览地址空间篇170第五章opc服务器的远程访问17351opc服务器远程访问的dcom配置17452dcom的远程连接管理17653远程访问opc服务器的客户程序实现vc177附录
OPC应用技术简介
OPC是Object Linking and Embedding(OLE)for Process Control的缩写,它是微软公司的对象链接和嵌入技术在过程控制方面的应用。
由一些世界上占领先地位的自动化系统和硬件、软件公司与微软(Microsoft)紧密合作而建立的,OPC基金会负责OPC规范的制定和发布。
OPC提出了一套统一的标准,采用CLIENT/SERVER模式,针对硬件设备的驱动程序由硬件厂商或专门的公司完成,提供具有统一OPC接口的SERVER程序,软件厂商按照OPC标准访问SERVER程序,即可实现与硬件设备的通信。
OPC全称是OLE for Process Control,它的出现为基于Windows的应用程序和现场过程控制应用建立了桥梁。
在过去,为了存取现场设备的数据信息,每一个应用软件开发商都需要编写专用的接口函数。
由于现场设备的种类繁多,且产品的不断升级,往往给用户和软件开发商带来了巨大的工作负担。
通常这样也不能满足工作的实际需要,系统集成商和开发商急切需要一种具有高效性、可靠性、开放性、可互操作性的即插即用的设备驱动程序。
在这种情况下,OPC标准应运而生。
OPC标准以微软公司的OLE技术为基础,它的制定是通过提供一套标准的OLE/COM接口完成的,在OPC技术中使用的是OLE 2技术,OLE标准允许多台微机之间交换文档、图形等对象。
COM是Component Object Model的缩写,是所有OLE机制的基础。
COM是一种为了实现与编程语言无关的对象而制定的标准,该标准将Windows下的对象定义为独立单元,可不受程序限制地访问这些单元。
这种标准可以使两个应用程序通过对象化接口通讯,而不需要知道对方是如何创建的。
例如,用户可以使用C++语言创建一个Windows对象,它支持一个接口,通过该接口,用户可以访问该对象提供的各种功能,用户可以使用Visual Basic,C,Pascal,Smalltalk或其它语言编写对象访问程序。
OPC入门
IOPCServer接口及成员函数主要用于对组对象进行创建、
标准OPC组对象及接口
OPC组接口说明一
OPC组接口说明二
IOPCItemMgt接口及成员函数用于OPC客户程序添加、
删除和组对象中组员等控制操作 IOPCGroupStateMgt接口及其成员函数允许OPC客户程 序操作或获取用户组对象的全部状态(主要是组对象的刷 新率和活动状态,刷新率的单位为毫秒) IOPCPublicGroupStateMgt为任选接口,用于将私有组 对象(private group)转化为公有组对象(public group),这个接口一般不用 可选接口IOPCAsyncIO和IdataObject接口用于异步数 据传输(在OPC数据访问规范1.0中定义,现在其功能已 经被IOPCAsyncIO2和IConnectionPointContainer接口 取代) IOPCSyncIO用于同步数据访问。IOPCAsyncIO2用于异 步数据访问 。这两个接口是数据访问最重要的接口
一个OPC 客户可以连接一个或多个OPC 服务器,而多个OPC 客户 也可以同时连接同一个OPC 服务器
OPC服务器的对象组成
一个OPC服务器由三个对象组成:服务器(Server),组(Group),项 (Item)
OPC服务器的对象—服务器
OPC服务器对象用来提供关于服务器对象自身的相关信息,并且作为 OPC组对象的容器。OPC组对象用来提供关于组对象自身的相关信息, 并提供组织和管理项的机制。
异步流程:服务组项alizeEx 创建客户端服务对象--CoCreateInstanceEx 创建所属服务组对象--AddGroup 添加组对象管理的项--AddItems 删除步骤与添加步骤相反
opc学习资料
OPC(OLE for process control)是一个工业标准。
它是由一些世界上占领领先地位的自动化系统和硬件、软件公司和微软合作而建立的、满足开放性的和互操作性接口标准。
OPC标准的建立基于微软的COM技术规范,并由OPC基金会这个国际组织管理。
OPC为不同的厂商的硬件设备、软件和系统定义了公共的接口,使得过程控制和工厂自动化中的不同的系统、设备和软件之间能够互相连接、通信、操作。
一般在控制系统中,包含过程画面的软件(如SCADA软件)在与现场设备通信的时常采用如下的方法:(1)采用标准通信协议,如profibus、modbus、HART、CAN总线等,因为监控管理软件与现场的设备采用同样的通信协议,所以,监控管理软件不需要对现场设备的驱动程序。
(2)对于没有采用标准通信协议的设备,监控管理软件需要在设备制造商的配合下为这些设备开发驱动程序。
这种方式虽然执行效率比较高,但兼容性差,软件供应者必须对没一种接入的设备开发驱动程序,设备制造商也必须提供设备的通信协议。
(3)通过OPC这个开放性的协议和过程控制或其他系统软件进行通信。
这种方式的优点在于:不管硬件设备是否使用标准的通信协议,制造商只需要提供一套OPC服务器,就可以支持大部分的监控等软件,也不需要将自己的通信协议细节提供给软件商。
OPC服务器的设计和实现目前的小型DCS控制系统使用了OPC服务器后,实现了对主流的监控软件(一般都有OPC接口)的兼容性,监控软件等OPC客户程序可以很方便的访问和设置DCS中的数据。
OPC服务器需要实现的主要功能就是根据控制系统的组态信息,实现OPC服务器对象、组对象等,并通过OPC驱动程序实现与DCS系统中主控器的通信,获得现场数据或设置现场数据项等。
OPC服务器软件主要分为OPC服务器对象模块、服务器界面模块和OPC驱动程序模块,三个模块通过同一块主内存数据区来共享数据,通过线程的同步和互斥等技术的使用,可以解决共享数据的保护问题。
和利时OPC基础应用知识.ppt
1、与现场I/O数据的连接;2、与应用程序之间的连接
OPC的概要--组成
OPC服务器:由硬件提供商或独立软件供应商提供, 主要是提供过程数据。 OPC代理-占位DLL:利用操作系统提供的通信功能进 行数据交换,以实现应用程序和服务器之间的格式变 换。 OPC自动化包装DLL:将OPC定制接口变换成OPC自 动化接口,从而更方便地实现对OPC服务器的访问。 OPC应用程序:对OPC服务器提供的数据源进行访问, 实现用户特定目的而开发的应用程序。
作为工业标准定义的COM接口
优点: 1、设备开发者:使设备驱动器开发唯一 2、应用程序开发:使用通用工具,不必开发特定的接口。 3、用户:可以自由选择各种商业软件包,使系统成本大大 降低
7 2019/4/3
OPC标准
标准
Data Access
版本
1.0、2.0
内容
数据访问标准
Alarm and Event Batch Security
OPC 设备A
OPC 设备BBiblioteka OPC 设备COPC
设备D
1、OPC是为了不同供应厂商的设备和应用程序之间的软件接口标准化,使其数据交换 更加简单化的目的而提出的;从而可以向用户提供不依靠于特定开发语言和开发环境的 可以任意组合使用的过程控制软件组件产品。 2、OPC系统是由提供数据采集服务的OPC服务器、OPC接口,以及OPC应用程序所构成。 3、OPC服务器按照硬件厂商提供的硬件所开发,使之不依赖于硬件产品;同时利用 VARIANT数据类型,可以不依存于硬件要求的数据类型
OPC Custom I/F
Server Data Cache Local Data Cache
OPC技术介绍一
OPC技术介绍一OPC技术介绍一OPC(OLE for Process Control)是一种用于工业过程控制的通信和数据交换标准。
它是基于OLE(Object Linking and Embedding)技术开发而来,旨在为工业过程控制系统提供高效可靠的通信和数据交换方式。
OPC技术的主要特点是其开放性和互操作性。
首先,OPC是开放的,允许不同厂商的过程控制设备和应用软件进行通信和数据交换,无需依赖厂商特定的通信协议。
这使得用户可以在多种不同设备和软件平台之间进行集成和协同工作,提高了系统的灵活性和可扩展性。
其次,OPC是互操作的,可通过标准化的接口和协议在不同的系统之间进行数据交换,实现数据共享和信息集成。
这意味着不同的系统可以共享和利用彼此的数据,在实时监控、数据分析和决策支持等方面提供更强大的功能。
OPC技术使用了一种称为OPC服务器的软件模块作为通信和数据交换的中间件。
OPC服务器可以被视为一个数据“枢纽”,它在过程控制设备和应用软件之间传输数据,并处理数据的转换和解析。
OPC服务器采用了面向对象的编程模型,将过程控制设备的数据表示为对象,通过标准化的接口和方法对外提供访问。
这样,应用软件可以通过简单的编程接口来访问和操作过程控制设备的数据。
同时,OPC服务器还负责管理通信连接、数据缓存和安全机制等,确保数据的可靠性和保密性。
目前,OPC技术已经广泛应用于各个工业领域,包括制造业、能源、化工、石油、电力等。
它被用于实时监控和控制系统、数据采集和采集系统、生产调度和优化系统等。
OPC技术的应用可以实现工业过程的自动化、数字化和智能化,提高生产效率和质量,降低运营成本和风险。
在实际应用中,OPC技术的主要优势有:1.简化系统集成:OPC技术提供了一个统一的通信接口,不同的过程控制设备和应用软件可以通过该接口进行集成。
这样,用户可以将不同厂家的设备和软件组合在一起,构建一个集成的系统,而无需关注不同设备之间的通信细节。
opc技术介绍与应用
13
OPC简介
OPC架构
OPC Client OPC Server
Agent
PLC
14
OPC简介
现场自动化网络
与EMOS的通讯都 是通过OPC完成
通过以太网的操
作监视 和基于现场总线 的现场级控制
15
OPC简介
现场OPC应用
CIMPLICITY
EMOS服 务器
Applicom OPC SERVER
安装通讯器件 组态网络,建立 通讯 下载到本机
建立本机与PLC的联系
使用OPC自带的客户端或者HMI系统测试
18
使用客户端进行 测试
OPC组态过程
组态过程一(1)
安装文件不能位于中文目录 下,否则出错。
安装完毕 后,再次重 启机器时,会自动弹出此画面。
19
OPC组态过程
组态过程一(2)
44
在OPC中使用S7符号
现在,符号可以在任何OPC客户端使用;
New leave “SYM”;
45
在OPC中使用S7符号
通过VB编写的程序读取底层PLC的数据
46
在OPC中使用S7符号
在EXCEL中通过VBA编写的程序读取底层PLC的数据
47
在OPC中使用S7符号
注意OPC的下载与通常程序的下载不同; OPC为下载到本机服务器; 而平常的下载则为下载到现场的PLC;
供商协作制定的。OPC是一个基于COM技术的接口标准,OPC提供了一种从不
同数据源(包括硬件设备和应用软件)获得数据的标准方法。 OPC采用客户/服务器结构。一个OPC客户程序可与多个厂商提供的OPC
服务器连接,并通过OPC服务器,从不同的数据源存取数据。OPC服务器是一
OPC应用总结归纳技术简介
精心整理OPC是Object Linking and Embedding(OLE)for Process Control的缩写,它是微软公司的对象链接和嵌入技术在过程控制方面的应用。
由一些世界上占领先地位的自动化系统和硬件、软件公司与微软(Microsoft)紧密合作而建立的,OPC基金会负责OPC规范的制定和发布。
OPC提出了一套统一的标准,采用CLIENT/SERVER模式,针对硬件设备的驱动程序由硬件厂商或专门的公司完成,提供具有统一OPC接口的SERVER程序,软件厂商按照OPC标准访问SERVER程序,即可实现与硬件设备了实现与编程语言无关的对象而制定的标准,该标准将Windows下的对象定义为独立单元,可不受程序限制地访问这些单元。
这种标准可以使两个应用程序通过对象化接口通讯,而不需要知道对方是如何创建的。
例如,用户可以使用C++语言创建一个Windows对象,它支持一个接口,通过该接口,用户可以访问该对象提供的各种功能,用户可以使用Visual Basic,C,Pascal,Smalltalk或其它语言编写对象访问程序。
在Windows NT4.0操作系统下,COM规范扩展到可访问本机以外的其它对象,一个应用程序所使用的对象可分布在网络上,COM的这个扩展被称为DCOM (Distributed COM)。
通过DCOM技术和OPC标准,完全可以创建一个开放的、可互操作的控制系统软件。
OPC采用客户/服务器模式,把开发访问接口的任务放在硬件生产厂家或第三方厂家,以OPCOPC动化接口(Automati on interface);自定义接口(言而定义的标准接口,可以使用VisualBasic、Delphi而自定义接口是专门为C++业监控编程带来了便利,如果它不能全方位地支持OPC,则必将被历史所淘汰。
OPC由规范于1996年8月正式诞生了,随着1997年2月年9月新成立的OPC Foundation对OPC规范进行修Application (DNA) 构架和 Component Object Model (COM) COM技术适用于过Dave Rehbein是这样描述的OPC是一种客户/服务器模式,具有语言无关性、代应用程序与OPC服务器之间必须有OPC接口,OPC规范提供了两套标准接口:Custom标准接口,OLE自动化标准接口。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
15 2018/11/24
OPC的访问方式-异步访问
调用开始 调用结束 事件发生
事件结束 OPC应用程序 其他处理 通信 时间
调用异步访问方法
异步访问完成事件
OPC服务器
时间
1、读取/写入指定OPC标签,应用程序发出更新请求后立即返回,更新数据完成后发生 数据变化事件! 2、发出请求与访问完成事件处理是独立完成,因此需要使用事务管理,开发较难!
13 2018/11/24
OPC Group对象接口
IUnknown IOPCItemMgt IOPCGroupStateMgt [IOPCPublicGroupStateMgt] IOPCSyncIO IOPCAsyncIO IDataObject IOPCItemMgtDisp IOPCGroupStateMgtDisp [IOPCPublicGroupStateMgtDisp] IOPCSyncIODisp IOPCAsyncIODisp
监视应用程序 OPC 趋势应用程序 OPC 报表应用程序 OPC
OPC 设备A
OPC 设备B
OPC 设备C
OPC
设备D
1、OPC是为了不同供应厂商的设备和应用程序之间的软件接口标准化,使其数据交换 更加简单化的目的而提出的;从而可以向用户提供不依靠于特定开发语言和开发环境的 可以任意组合使用的过程控制软件组件产品。 2、OPC系统是由提供数据采集服务的OPC服务器、OPC接口,以及OPC应用程序所构成。 3、OPC服务器按照硬件厂商提供的硬件所开发,使之不依赖于硬件产品;同时利用 VARIANT数据类型,可以不依存于硬件要求的数据类型
16 2018/11/24
OPC的访问方式-订阅方式
事件发生 事件处理结束 事件发生
事件结束 OPC应用程序 通知 时间
其他处理
通知
数据变化事件
数据变化事件
OPC服务器 时间
1、服务器定时更新OPC服务器的数据缓冲区。如果数据超出敏感区DeadBand则 发生数据变化事件! 2、降低数据精度!
17 2018/11/24
OPC Custom I/F
Server Data Cache Local Data Cache
I/O
Physical Device Device Data
12 2018/11/24
OPC Server对象接口
IUnknown
IOPCServer [IOPCServerPublicGroups] [IOPCServerBrowseServerAddressSpace] [IPersistFile]
22 2018/11/24
连接OPC服务器和建立OPC组
Private Sub Command1_Click() If MyOPCServer Is Nothing Then Set MyOPCServer = New OPCServer End If If MyOPCServer.ServerState = OPCDisconnected Then MyOPCServer.Connect strProgID, strNode End If If MyOPCGroups Is Nothing Then Set MyOPCGroups = MyOPCServer.OPCGroups End If If MyOPCTestgrp Is Nothing Then Set MyOPCTestgrp = MyOPCGroups.Add("TESTGRP") End If End Sub
OPC Group OPC Group 组 (OPC Group)
项集合(OPC Items)
OPC Item OPC Item 项(OPC Item)
18 2018/11/24
OPC数据访问对象模型
名称
OPC服务器 OPC组集合 OPC组 OPC项集合 OPC项
对象名
OPCServer OPCroups OPCGroup OPCItems OPCItem
Field Management
4 2018/11/24
OPC的基本定义
监视应用程序 趋势应用程序 报表应用程序
驱动器A 设备A
驱动器B 设备B
驱动器C 设备C
驱动器D 设备D
1、各设备厂商接口不统一,则应用开发花费多 2、系统共存驱动太多,导致系统维护困难。
5 2018/11/24
OPC的基本定义
2 2018/11/24
词汇
OPC:OLE For Process Control FA:Factory Automation PA:Process Automation COM:Component Object Model DCOM:Distributeed Component Object Model DDE:Dynamic Data Exchange DLL:Dynamic Link Library
23 2018/11/24
添加OPC标签
Private Sub Command2_Click() Dim stritemids(8) As String Dim iclienthandles(8) As Long Dim ierror() As Long Dim i As Integer If MyOPCTestgrp Is Nothing Then Exit Sub End If If Not MyOPCItems Is Nothing Then If MyOPCItems.Count > 0 Then Exit Sub End If End If MyOPCTestgrp.IsSubscribed = False MyOPCTestgrp.IsActive = True Set MyOPCItems = MyOPCTestgrp.OPCItems For i = 1 To 8 strItemids(i) = "MyTAG" & i iClienthandles(i) = i Next Call MyOPCItems.AddItems(8, strItemids, iClienthandles, iServerhandles, ierror) 24 2018/11/24 End Sub
6 2018/11/24
OPC的基本定义
基于COM技术的OPC
– COM是一种软件组件之间相互数据交换的有效方法。它不是一种计算机语 言,而是于运行计算机、操作系统以及软件开发语言无关的,任意软件组 件之间可以相互通信的二进制和网络通信标准 – DCOM:可以使COM组件分布在不同计算机上,并通过网络互相连接并互 相交换数据。
3 2018/11/24
OPC的基本定义
Windows 3.1 Windows-95 Windows NT Client Applications
Business Management
Windows NT Operator Console RT/History Data Server Windows NT Operator Console Windows NT RT/History Data Server
员工内部培训系列之三
OPC基础应用知识
主讲人:熊辉
2018/11/24
工业自动化事业部SmartPro技术支持组
1
概述
OPC的基本定义 OPC的概要 OPC的数据访问对象模型 自动化接口开发OPC应用程序的基本步骤 RDK开发OPC服务器的基本步骤 OPC的配置 OPC在SmartPro系统中的应用组态
说明
必须生成opcserver。其自动包含一个opc组集合 以及opc浏览器对象 OPC服务器中添加的所有OPC组的集合 OPC组对象是用于组的状态管理以及利用项集 合为单位的数据访问。 在对应OPC组中添加的所有的OPC项的集合 含有项的定义,当前值,状态以及最后更新时 间信息的对象。
19 2018/11/24
作为工业标准定义的COM接口
优点: 1、设备开发者:使设备驱动器开发唯一 2、应用程序开发:使用通用工具,不必开发特定的接口。 3、用户:可以自由选择各种商业软件包,使系统成本大大 降低
7 2018/11/24
OPC标准
标准
Data Access
版本
1.0、2.0
内容
数据访问标准
Alarm and Event Batch Security
9 2018/11/24
1、与现场I/O数据的连接;2、与应用程序之间的连接
OPC的概要--组成
OPC服务器:由硬件提供商或独立软件供应商提供, 主要是提供过程数据。 OPC代理-占位DLL:利用操作系统提供的通信功能进 行数据交换,以实现应用程序和服务器之间的格式变 换。 OPC自动化包装DLL:将OPC定制接口变换成OPC自 动化接口,从而更方便地实现对OPC服务器的访问。 OPC应用程序:对OPC服务器提供的数据源进行访问, 实现用户特定目的而开发的应用程序。
1.0 1.0 1.0
报警和事件标准
历史数据访问
Historical Data Access 1.0
批处理标准 安全标准
8 2018/11/24
OPC使用范围
HMI/SCADA OPC应用程序
历史数据库 批处理 OPC应用程序
OPC服务器
OPC服务器
OPC服务器
OPC服务器
PLCLeabharlann 设备A设备B 设备C 设备D
10 2018/11/24
OPC的概要--组成
OPC应用程序 OPC自动化接口 包装DLL OPC定制接口 OPC应用程序 OPC自动化接口 包装DLL OPC定制接口