文档详情

数据交换方式(opc及dde)

豆浆
实名认证
店铺
DOCX
89.13KB
约6页
文档ID:19495608
一、概念介绍:1 .OLE及 DDE操作系统流行以来,“剪贴板”(Clipboard)首先解决了不同程序间的通信问题(由剪贴板作为数据交换中心,进行复制、粘贴的操作),但是剪贴板传递的都是“死”数据,应用程序开发者得自行编写、解析数据格式的代码,于是动态数据交换(Dynamic Data Exchange,DDE)的通信协定应运而生,它可以让应用程序之间自动获取彼此的最新数据,但是,解决彼此之间的“数据格式”转换仍然是程序员沉重的负担。对象的链接与嵌入(Object Linking and Embedded,OLE)的诞生把原来应用程序的数据交换提高到“对象交换”,这样程序间不但获得数据也同样获得彼此的应用程序对象,并且可以直接使用彼此的数据内容,其实 OLE是 Microsoft的复合文档技术,它的最初版本只是瞄准复合文档,但在后续版本 OLE2中,导入了 COM。 2 .OPCOPC(OLE for Process Control)是一个软件标准,它可以使自动化应用程序方便地读取工业企业的工厂级数据。OPC 是基于 Microsoft的组件对象建模(COM)技术定义一个标准接口,允许自动化和控制应用程序、控制设备、以及商业和办公应用软件之间相互操作。3 .ODBC开放式数据库连接 (ODBC) 技术为访问不同种类的 SQL 数据库提供了通用接口。ODBC 是基于结构查询语言 (SQL) 的,以此作为访问数据的标准。此接口提供了最大的互操作性:一个应用程序可以通过一组公用代码访问不同的 SQL 数据库管理系统 (DBMS)。4 .SCADA数据采集与监控系统(SCADA)是一种软件应用程序,它用于远程实时遥控数据采集过程,以实现对设备和条件的控制。SCADA 可用于电场、石油和天然气精炼、通信、运输以及水和废物控制。二、OPC 及 DDE的工作机制和差别1.DDE技术的工作机制 dde是为在同一台计算机或不同计算机上运行的程序提供动态数据交换,最早由 microsoft 公司提出的。动态数据交换(dde)技术由于其具有实时性好、网络通信连接实现方便等特点,在控制软件与信息网络集成中得到了广泛应用。动态数据交换基于 windows消息机制,各应用程序间通过传递消息进行对话交换信息。windows dde消息传递采用 client/server模式,客户(client)是数据的请求和接受者,而服务器(server)是数据的提供者,两者之间通过请求、应答、传输三个步骤来完成数据的传送。dde 协议使用服务(service) 、主题(topic)和数据项(item)三级命名来标识 dde所传递的数据单元。一般情况下,服务(service)就是应用程序的文件名,主题是对服务器有意义的信息单元。每次 dde客户与服务程序之间的对话都是先由客户启动的,所以在每次客户启动之前,dde 服务器应当首先投入运行。当客户程序需要向服务器程序请求数据时,客户程序发送一条 wm-dde-initiate消息给当前运行的所有 windows应用程序,这条消息不但包含了它所需要的服务器名(service)和主题名(topic) ,而且指明了它所希望的数据类型,收到 wm-dde-initiate消息的应用程序通过判别服务器名和会话主题决定是否应答,一旦 dde服务器响应了这条被传播的消息,dde会话就开始了。dde的工作方式有冷连接(cool link) 、温连接(warm link)和热连接(hot link)等3种。在冷连接方式下,当 server中的数据发生变化后不主动通知 client,但 client可以随时从 server读写数据;在温连接方式下,当 server中的数据发生变化后马上通知client,client 得到通知后将数据取回;在热连接方式下,当 server中的数据发生变化后马上通知 client,同时将变化的数据直接送给 client。dde的网络形式称为 netdde,它包含了 dde的全部特征,是动态数据交换(dde)的扩充,可以在跨越网络的计算机之间使用。采用 netdde后,两个或更多网络上的应用能够通过 dde共享来建立网络上不同工作站之间的连接,从而实现站站之间的动态信息共享。2. opc技术的工作机制 在 opc技术出现以前,dde 技术是绝大多数控制系统都支持和采用的数据交换方式。但是,由于 dde是基于 windows信息传递而建立的技术,因此,当通信量较大时,就会出现数据刷新速度慢、安全性管理机制差、可靠性能低等现象,从而就有可能致使 dde客户程序在较长时间内得不到回应。和 dde 技术相比,基于 com和 dcom技术的 opc技术具有数传送性能高、 安全性管理性能好、开发成本低等特点。最初阶段的 opc规范是由 opc基金会的先 fisher-rosemount、rockwell、opto 22、intellution、intuitive technology 公司于 1996年 8月发布的,目前 opc基金会成员在全球已超过 300多个,其中包括世界上几乎所有主要的控制系统、仪器仪表、过程控制系统生产厂家。opc以 ole/com/dcom技术为基础,是 ole(object linking and embedding)for process control的缩写,是微软公司的对象链接和嵌入技术在过程控制方面的应用。与dde一样,opc 也采用 client/server模式。opc 服务器是数据源的提供者,数据源可以是plc、dcs、条形码读取器等控制设备,随控制系统的构成不同,作为数据源的 opc服务器既可以是和 opc应用程序在同一台计算机上运行的本地 opc服务器,也可以是在另外计算机上运行的远程 opc服务器。opc 客户是数据的使用者,它按照 opc接口规范从 opc服务器获取所需要的数据。opc服务器主要包括三部分:服务器(server)、组(group)和数据项(item)。服务器对象保存服务器和服务器作为 opc组对象容器的所有信息。opc 组对象包括公共组和局部组(私有组)两种,公共组由多个客户共享,局部组只隶属于一个 opc客户。一个组可能代表一个特殊设备的数据项,opc 客户可以通过组对象来读写数据,并可以设定 opc服务器应该提供给 opc client数据的更新速率。opc 数据项是读写数据的最小逻辑单位(在实际应用中,可能是物理设备的寄存器或寄存器的某一位),其数据值以 variant形式表示,每个数据项包括值(value)、品质(quality)和时间戳(time stamp)3 个变量。在一个组对象中,opc 客户可以加入多个 opc数据项。opc客户与 opc服务器的接口有自定义接口(custom interface)和自动化接口(automation interface)两种形式。自定义接口是一组 com接口,主要用于采用 c++语言的应用程序开发;自动化接口是自动化的 ole接口,主要用于采用 vb,delphi 等基于脚本编程语言的应用程序开发。对于客户端应用程序的开发,采用自定义接口的方式运行效率高,但开发难度较大;采用自动化接口的方式运行效率低,但开发简单。这两种接口与opc服务器的通信方式可用 1图所示。图 1自定义接口和自动化接口与 opc服务器通信方式示意图对于分布式计算机上的 opc客户程序的开发,opc 标准采用 dcom技术实现服务器和客户程序的通讯。opc 的数据访问主要有同步数据访问和异步数据访问两种方式。同步数据访问时,opc 服务器在将按照 opc应用程序要求的数据返回之前,opc 应用程序一直处于等待状态,也就是说,同步方式的数据访问在要求的动作没有完成前不能执行任何 opc应用程序侧的处理。与之相比,异步方式的数据访问在对 opc服务器提出数据访问要求后,立即返回到 opc应用程序侧的主处理程序中,opc 服务器完成数据访问时通知 opc应用程序,opc应用程序从而得到数据访问结果。当 opc应用程序采用自动化接口访问 opc服务器时,同步和异步数据操作分别由 syncread、syncwrite 和 asyncread、asyncwrite 四个 opc组对象的方法函数来实现。3.opc 和 dde 的差别DDE动态数据交换机制是需要两个 Windows应用程序,其中一个作为服务器处理信息,另外一个作为客户机从服务器获得信息。客户机应用程序向当前所激活的服务器应用程序发送一条消息请求信息,服务器应用程序根据该信息作出应答,从而实现两个程序之间的数据交换。OPC(bject Linking and Embeding for Process Control)是以 OLE/COM机制作为应用程序的通讯标准。OPC 是一种基于开放标准的开放式连结,允许在自动化/控制应用、现场设备和商业/办公室应用之间进行简明的、标准化的数据交换。OPC 标准以微软公司的 OLE技术为基础,它的制定是通过提供一套标准的 OLE/COM接口完成的,在 OPC技术中使用的是 OLE2技术,OLE 标准允许多台微机之间交换文档、图形等对象。OPC 规范了接口函数,不管现场设备以何种形式存在,客户都以统一的方式去访问,从而保证软件对客户的透明性,使得用户完全从低层的开发中脱离出来。 OPC取代 DDE的原因:DDE 使客户应用能够独立于数据源的供应方,开发商不必再象以往那样定义专用的接口。于是 DDE成为许多类型的自动化设备的标准接口。DDE 的出现使人们以为数据访问的问题得到了有效解决,但在使用过程中,用户才发现采用 DDE来在设备和控制系统之间传递实时信息并非理想的办法,因为它在传输性能和可靠性等方面都存在许多限制。为此开发商不得不对 DDE标准进行扩展,他们开发出各种专用的信息格式,以提高客户应用程序的性能和通信吞吐量。于是出现了 DDE的多种演化版本。多种版本的DDE违背 DDE最初的宗旨,因为不同的 DDE格式使得客户在选择时又不得不受开发商所用格式的限制,也最终使得 DDE不能够再称为统一的标准。另外 DDE不适用于大量数据的高速数据采集,并且 DDE从来没有为不同计算机之间的数据交换提供可靠的机制。上述这些原因促使工业界不得不重新制订更为高效、可靠的数据访问标准,这就是 OPC。OPC 比 DDE更好,所提供的功能也更为强大。此外,OPC 提供的是一个标准的通信协议,而不象 DDE那样存在不同的 DDE格式。OPC 时代的到来使数据的交换与通信变得开放、高效、安全、可靠,同时也为信息的集成提供了更为合理和简便的方法。与 DDE相比,OPC 最主要的优势体现在数据传输速率上。由于 OPC服务器每秒能管理成百上千个事务,而且与 DDE不同的是它的每个事务能包含多个数据项,因此采用 OPC传输数据要比 DDE快得多。三、DDE 与 OPC技术在自动化领域中的应用当前,dde、opc 技术在许多世界著名的自动化厂家的 i/o 通讯服务器、scada 等自动化软件中都得到了体现。例如 wonderware 公司的 daserver 和 intouch、siemens 公司的simatic net 和 wincc、 rockwell-ab 公司的 rslinx 和 rsview32 等。其中 daserver 和 rslinx 既可作为 opc server,又可作为 dde server;wincc 和 rsview32 则既可以作为 opc client,又可作为 dde client。同时,由于各家的软件接口都合乎 dde、opc 接口规范标准,所以,不同厂家的 i/o 通讯、scada 等软件产品也可以很方便的实现互连。 以太网数据访问的服务器软件,支持 dde、opc、suitlink、fastdde 等通讯方式。当客户程序通讯接口与 dassidirect 的连接采用 dde
下载提示
相似文档
正为您匹配相似的精品文档