APP下载

动态数据交换技术的简单讲解

2015-09-10辅小荣朱家骥何坚强

考试周刊 2015年82期
关键词:组态王

辅小荣 朱家骥 何坚强

摘 要: 作者针对动态数据交换技术的概念抽象、晦涩、不易掌握的情况,采用理论与实际相结合的教学方法,以组态王访问Excel的例子讲解动态数据交换技术的概念与原理,使其生动形象,帮助学生掌握动态数据交换技术的相关知识,并灵活应用。

关键词: 计算机测控 动态数据交换 组态王

1.引言

计算机及测控技术是为高等教育自动化专业本科生开设的一门专业选修课,课程的主要教学内容是计算机测控系统设计开发方面的专业知识,该课程集理论性、工程性和实践性于一体。随着工业生产规模不断扩大,使得测控系统复杂程度大大提高,系统需要交换的数据种类和数量不断增加,不同系统的设备具有不同的通信机制,造成测控软件相互之间不能通信。为了该问题,动态交换技术(DDE,Dynamic Data Exchange)应运而生,解决测控系统之间通信的一系列问题[1]。DDE技术较抽象,学生理解较困难,本文以理论与实例相结合的方式讲解该技术,使学生更好地理解和掌握该技术。

2.动态数据交换技术基本原理

2.1 DDE基本概念

动态数据交换DDE(Dynamie data exchange)是Mierosoft Window所制定的程序间通信的一种常用协议。动态数据交换已经成为Windows的一部分,并且许多应用程序都采用DDE技术,DDE作为一种基本机制已经应用于对象链接和嵌入OLE(Object Linking and Embedding)中。近年来,随着OLE及COM技术的逐渐成熟和发展,使用DDE方式的程序间通信有所减少,但是这并不意味着使用DDE方式进行程序间的通信不再有价值,DDE在MicrosoftOffice和众多的组态软件等许多应用程序中得到普遍支持。例如,Excel、QQ、组态王等。

DDE应用程序可以分为四种类型:客户、服务器、客户/服务器和监视器。DDE会话发生在客户应用程序和服务器应用程序之间。

DDE应用程序采用三层识别系统:应用程序名(Application)、主题名(Topic)和项目名(Item):(1)应用程序名位于层次结构的顶层,用于指出特定的DDE服务器应用程序名。(2)主题名更深刻地定义了服务器应用程序会话的主题内容,服务器应用程序可支持一个或多个主题名。(3)项目名更进一步确定了会话的详细内容,每个主题名可拥有一个或多个项目名。

2.2 DDE通信原理

确切地讲,Windows下应用程序间的DDE通信的实现基础是Windows消息机制,DDE通信的基本原理如图1所示。

(1)运行DDE服务器端和客户端;(2)DDE客户端向服务器提出连接请求;(3)DDE服务器响应客户端的连接请求建立DDE会话连接;(4)DDE客户端与服务器端的通信;(5)结束DDE会话。

建立DDE会话后,客户应用程序和服务器应用程序可通过三种链接方式进行数据交换。三种链接方式为:冷链接(ColdLink)、温链接(Warm Link)和热链接(Hot Link)。

冷链接:客户程序申请数据,服务器程序立刻给客户程序发送数据,一次会话就此结束。

温链接:客户程序在与服务器程序建立连接后,每次数据发生变化时服务器程序都会通知客户程序。

热链接:客户程序在与服务器程序建立连接后,每次数据发生变化时服务器程序立即把变化后的值发送给客户程序。

3.实例讲解

本文以组态王访问Excel的例子讲解动态数据交换技术。

3.1定义DDE设备

首先在组态王中定义DDE设备,具体步骤如下:

3.1.1在工程浏览器的目录显示区,单击大纲项设备下的成员DDE,则在目录内容显示区出现“新建”图标,如图2所示[2]。

3.1.2选中“新建”图标后双击,安装设备配置向导进行相关配置,最后得到一个新建的DDE设备,如图3所示。

从图3可知,新建的DDE设备逻辑名为:ExcelToView,服务程序名就是DDE三层识别系统中的最顶层,应用程序名,用于指出特定的DDE服务器应用程序名。在本文中组态王访问Excel,从Excel中获取数据,Excel即为服务器应用程序,因此在信息汇总表中服务程序名为:Excel。话题名即对应DDE三层识别系统的主题名,定义服务器应用程序会话的主体内容。本文中服务器应用程序为Excel,因此我们定义话题名为:sheet1。组态王与Excel的数据交换方式为:标准WindowsDDE交换。

3.2定义变量与动画连接

在定义DDE设备以后,需要在数据词典中定义变量,具体信息如图4所示。

我们将变量名定义为:FromViewToExcel,变量类型定义为:I/O实数,因为组态王与Excel进行数据交换,故必须将其定义为I/O型变量。该变量连接的设备为已经定义的DDE设备:ExcelToView。项目名即为DDE三层识别系统的项目名,更进一步确定会话的详细内容。从图2已知,我们将话题名定义为sheet1,但是sheet1中有无数数据,组态王变量具体访问哪一个不确定。为了确定具体的访问数据,我们将项目名定义为:r1c2,即第一行第二列的数据。

接下来将开发界面中的文本与已定义的变量FromViewToExcel进行动画连接,具体信息如图5所示。

由图5可知,我们对文本进行模拟值输出连接,连接变量为FromViewToExcel。

3.3组态运行

动画连接结束以后,进入到运行状态。将Excel打开,同时组态王切换到运行状态,这样组态王就可以访问Excel,获取Excel中的数据,如图6所示。

4.结语

动态数据交换技术是测控系统中一种非常重要的数据交换技术,由于其概念较为抽象,不便于学生掌握。本文以一实例组态王访问Excel,详细生动地讲解动态数据交换技术的概念及原理,使学生很快掌握DDE技术的基本原理,并灵活应用。

参考文献:

[1]何坚强,徐顺清,张春富等.计算机测控系统设计与应用[M].北京:中国电力出版社,2012(9).

[2]何坚强,薛迎成,徐顺清.工控组态软件及应用[M.北京:北京大学出版社,2014(3)

猜你喜欢

组态王
基于组态王软件和泓格PIO-D64 板卡的流水灯控制
轮胎厂污水处理系统的自动监控系统设计
基于组态王的恒压供水监控系统设计
MATLAB实现组态王中TCP/IP读卡器监控方法
基于组态技术的PLC系统开发
基于PLC与组态王煤矿压风机的设计研究
基于PLC的飞机轮胎充放气控制在组态王中的实现
组态王的SQL访问功能在某舰船模拟器中的应用