动态数据交换(DDE)在ZJ19E机组数采编程中的使用
利用DDE进行动态数据交换

在数据库应⽤程序中,经常需要与外部的数据源进⾏数据交换。
通常我们会考虑利⽤开放式数据库互连标准ODBC。
ODBC由驱动程序管理器和⼀系列把SQL作为它们访问语⾔的驱动程序所组成。
当需要时,ODBC驱动程序翻译各种产品的SQL语⾔以使不同产品间的连接完美⽆缺,从⽽使得连接另外⼀个应⽤程序上的数据成为可能,甚⾄可以在Visual FoxPro并不直接⽀持的格式(例如电⼦表格)中提取和修改数据。
鉴于ODBC早已经被很多程序员所熟知,我们这⾥仅仅讨论⼀种不太常⽤的⽅法:DDE。
----DDE是⼀种动态数据交换机制(Dynamic Data Exchange,DDE)。
使⽤DDE通讯需要两个Windows应⽤程序,其中⼀个作为服务器处理信息,另外⼀个作为客户机从服务器获得信息。
客户机应⽤程序向当前所激活的服务器应⽤程序发送⼀条消息请求信息,服务器应⽤程序根据该信息作出应答,从⽽实现两个程序之间的数据交换。
在Visual FoxPro中,⼀共⼗⼀个常⽤的DDE函数,它们是: DDEAbortTrans() 删除异步的DDE处理 DDEAdvise() 建⽴与服务器应⽤程序的温或热连接 DDEEnabled() 设置或返回DDE状态 DDEExecute() 向服务器应⽤程序发送⼀条执⾏消息 DDEInitiate() 打开到服务器应⽤程序的DDE控制板 DDELastError() 返回DDE函数引起的最后⼀条错误信息 DDEPoke() 传送数据库到客户机或服务器应⽤程序 DDERequest() 服务器应⽤程序请求数据 DDESetOption() 修改或返回DDE设置 DDESetService() 添加、删除、修改服务名的状态 DDESetTopic() 连接服务名与标题名 DDETerminte() 关闭DDE控制板 ----Visual FoxPro既可以作为DDE客户机,也可以作为DDE服务器。
DDE和OPC方式实现MATLAB与MCGS数据交换比较研究

5.DDE与OPC方式比较 在MATLAB环境下,复杂控制算法的计算任务容易完成。 使用MCCS组态软件开发复杂、友好的人机界面,方便快捷。将 二者结合起来,能够完成各种控制算法以及将仿真结果动态地 显示在人机界面上,并且可以通过在人机界面上的操作控制 MATLAB应用程序。在工业控制中将MATLAB和组态软件相结 合,实现优势互补一直是自动控制领域研究的热门话题,具体 应用中,OPC以及DDE方式都可以实现MCGS与MATLAB两者 之间的数据交换。 DDE技术是绝大多数控制系统都支持的数据交换方式,但 是DDE方式进行两种软件之间的数据交换有时需要中间服务 器,加之由于DDE是基于windows信息传递而建立的技术,因 此,当通信量较大时,就会出现数据刷新速度慢、可靠性能低等 现象。 和DDE技术相比,OPC技术具有数据传送性能高、开发成 本低等特点,采用OPC连接不需要建立中间服务器,编程简单, 将系统复杂性大大简化,不管现场设备以何种形式存在,客户 都以统一的方式去访问,从而实现系统的开放性,易于实现与 其它系统的接口。 DDE作为一种较成熟的数据交换方式已拥有最全面的支 持,iiiiopc技术也越来越受众多自动化软硬件企业的支持与青 睐,所以,在将来很长的一段时间里,DDE与OPC将继续在各自
关键词:图像增强 Retinex 色彩恒常性 doe 10.39696.issn.1006-8554.2009.12.002
引言
、
传统的色彩视觉理论认为:人眼的色彩感觉主要取决于光 的波长,不同频率的光会给人不同的色彩感觉,物体的颜色是 由物体反射光的频率和强度决定的。然而,美国物理学家 Edwin Land在20世纪50年代发现有些现象是传统的色彩理论 无法解释的,经过近20多年的科学实验和分析,他发现在视 觉信息的传导过程中人类的视觉系统对这些信息进行了某种 处理,只保留了反映物体本质特征的信息,如反射系数等, 而去除了光源强度和照射不均匀等一系列不确定因素。当这 些描述物体本质特征的相关信息传递到大脑皮层后,经过更 加复杂的信息处理,才最终形成了人的视觉。基于这样的认 识,1977年,Edwin Land首次提出了一种被称为Retinex的色
LabVIEW与ForceControl组态软件DDE通讯的实现

L abV IEW与Fo rce Con tro l组态软件DD E通讯的实现A pp lica tion of DD E C omm un ica tionB e t w e e n L a bV I E W a ndC onfigura tion S oft w a reFo rce C on tro l裴 锋 汪翠英 邓永强(江西省电力试验研究院 江西南昌 330006)[摘 要] 文章阐述了利用DD E通讯技术,将L abV IE W强大的数据处理能力、丰富的函数库资源与工业组态软件力控(Fo rce Con tro l)的易用性结合起来的方法,从而解决工业组态软件对复杂算法支持的不足,实现测控系统软件功能的扩展。
[关键词] DD E技术 组态软件 Fo rce Con tro l L abV IE W 数据通讯[中图分类号] T P393 [文献标识码] B 力控(Fo rce Con tro l)作为一款优秀的国产组态软件,它提供了良好的开发界面和简捷的工程实现方法,只要进行简单的“组态”,便可以轻松实现现场数据采集与过程控制。
当需要较复杂的控制算法时,可以使用力控提供的策略生成器作为开发工具。
然而,由于控制现场和控制对象的多样性,当直接使用力控内置的函数库资源无法完成时,如何与其它软件进行数据共享便成为急需解决的问题。
美国国家仪器公司(N ati onal In strum en ts,简称N I)的创新软件产品L abV IE W是目前应用最广、发展最快、功能最强的图形化软件开发集成环境之一。
L abV IE W面向没有编程经验的用户,提供了丰富的函数库和功能强大的工具包,适合于从事科研、开发的科学家和工程技术人员,被誉为工程师和科学家的语言。
鉴于此,本文介绍了一种仅需编写少量的L abV IE W程序就可实现与力控DD E数据通讯的方法。
使用此方法,用户可以充分利用L abV IE W提供的优秀函数库和工具包进行各种先进算法的快速开发。
e算量dde数据模式

e算量dde数据模式1. 什么是e算量?e算量是一种用于度量计算机程序的复杂度的概念。
它可以衡量程序在处理输入数据时所需的计算资源,例如处理器时间、内存使用和网络带宽等。
e算量通常用于评估和优化程序的性能,以确保其在各种情况下都能够高效地运行。
2. 数据模式数据模式是指在特定情境下数据出现的规律或者模式。
在e算量中,数据模式可以用来描述输入数据的特点和规律,从而帮助我们更好地理解程序在不同输入情况下的表现。
2.1 单一数据模式单一数据模式是指输入数据具有明显的统一规律。
这意味着程序需要处理相似类型或结构的数据,并且针对这种类型或结构进行相同的操作。
例如,在一个简单的排序程序中,如果输入数据是一个已经按照升序排列好的数组,那么程序只需要进行少量比较操作就可以确定数组已经有序。
这种情况下,e算量较低,程序执行时间较短。
2.2 随机数据模式随机数据模式是指输入数据没有明显的规律或者统一性。
这种情况下,程序需要对不同类型或结构的数据进行不同的操作。
例如,在一个搜索程序中,如果输入数据是一个无序的数组,那么程序需要逐个比较数组中的元素才能找到目标值。
这种情况下,e算量较高,程序执行时间较长。
2.3 增长数据模式增长数据模式是指输入数据的规模逐渐增加。
这意味着程序需要处理更多的数据量,并且可能需要进行更多的计算操作。
例如,在一个图像处理程序中,如果输入是一张小尺寸的图片,程序可以很快地完成图像处理任务。
但如果输入是一张大尺寸的图片,那么程序可能需要花费更多时间来处理每个像素点。
这种情况下,e算量随着输入数据规模的增加而增加。
3. 如何优化e算量?优化e算量可以提高程序的性能和效率。
以下是一些常见的优化方法:3.1 算法优化选择合适的算法可以显著减少计算资源的使用。
一些高效的排序、查找和计算算法可以在相同时间内处理更多数据。
例如,在排序任务中,快速排序算法通常比冒泡排序算法具有更低的e算量。
因此,选择合适的排序算法可以提高程序的性能。
动态数据交换DDE的实现原理及实例

Ab t a t sr c
T i r ce man y i t d c s t e t e r n t o b u o o r aie DDE i l h ,n r s ns a c in h s a t l il n r u e h o y a d me d a o th w t e l i o h h z n Dep i d p e e t l t a e
维普资讯
2 2 8月 0 年 0
电 脑 学 习
第4 期
动 态 数 据 交换 D E 的实 现 原 理 及 实例 D
丁祝 寿
摘 要 介 绍 D E在 D lh D ep i中的 实 现 机 制 。 通 过 实 例 介 绍 D E客 户程 序 的 实 现 方 法 。 并 D
D E会 话由客 户程序 来 启动,他 把一条 消息 传给 当前 D
运 行 的所 有 Wid w 程 序 ,拥 有 这 些 消 息 的 程 序 可 以 相 应 no s
D lh 的 D E客 户程 序 由 D e l n o v 件 来实 现, e i p D dci t n eC 它启动 D DE会 话,广服 务器 发 请求 并从服务 器 【 收数 u j 接
并命名 :
D e l nh m:j 建 客户 程序和 维护数 据交换通 道; dCi te 片 于 e D e l nC n : 于 客户 程序建 立 和维 护一 个 D E会 dCi tov用 e D
话。
( 把 D e l nC n 2 ) dCi to v部 什 的 D e o v属性 设 为 D e e dCn d—
进 行 D E会 话 的 ,并 以 此 完 成 数 据 的 请 求 、 应 答 和 传 输 工 D 作 。 这 两 个 应 用 程 序 则 相 应 的 被 称 作 服 务 器 程 序 sre — ev rP o rm) rga 和 客 户 程 序 (l n rga 。 ci tp r e o m)
在控制系统中实现组态王与MATLAB 的DDE 通讯

在控制系统中实现组态王与MATLAB 的DDE 通讯董新利[1] 王景景[2](1中国海洋大学,计算机科学系,山东青岛 266071;2 青岛科技大学,信息学院,山东青岛 266042)摘要:在试验控制系统的改造设计中,提出把组态王与MATLAB 相结合设计监控系统的思想,并成功的解决了二者之间结合的关键技术:DDE 数据通讯。
组态王与MATLAB 二者结合的优点及DDE 技术的引入,极大丰富了控制系统功能。
经试验DDE 通讯在控制系统取得良好的效果,该设计方法具有广阔的实用价值。
关键词:组态王;MATLAB;动态数据交换;控制试验系统中图分类号:TP273 文献标识码:AThe Communication of DDE between Kingview and PLC designed in control testsystemDONG Xinli [1], WANG Jingjing [2](1 Department of Computer Sciences, Ocean University of China, Qingdao 266071, China; 2 Information College,Qingdao University of Science & Technology, Qingdao 266042,China)Abstract: In design of the control test system, we present a design project of based on Kingview and MATLAB, and solve the primary technical difficulty: Dynamic data exchange (DDE) between Kingview and MATLAB. By uniting Kingview and MATLAB and joining DDE technique, the functions of control test system are enriched largely. DDE communication has a good effect by examination, so the design project has been of great value.Keywords: Kingview; MATLAB; dynamic data exchange (DDE); control test systemIntroductionThe process control test system can achieve the process control of the minitype boiler system by using industry components ,for example, intelligent meter, PLC , sensor, executive parts, etc. This test system can achieve real time引言过程控制实验系统利用工业生产中实际使用的智能仪表、PLC、传感器和执行机构等工业元件,在一个微型锅炉系统上实现过程控制,利用组态软件开发上位机监控系统,实现实时监控。
DDE使用方法完整版
DDE使用方法完整版DDE(动态数据交换)是一种微软开发的机制,用于在Windows操作系统中的应用程序之间共享数据和命令。
DDE的使用方法有很多,下面将介绍一些常见的DDE使用方法。
首先,DDE有两种角色,分别是DDE服务器和DDE客户端。
DDE服务器通常是提供数据或命令的应用程序,而DDE客户端则是接收并处理这些数据或命令的应用程序。
在使用DDE之前,首先需要确保已经创建了DDE通道。
可以通过在应用程序中调用DdeInitialize函数来创建DDE通道。
DdeInitialize函数接受一个指向DDEML实例的指针,以及一个回调函数的指针作为参数。
回调函数用于处理DDE事件和消息。
接下来,可以使用DdeCreateStringHandle函数创建DDE字符串句柄。
DDE字符串句柄用于标识应用程序中的字符串,以便在DDE通信中引用它们。
DdeCreateStringHandle函数接受一个DDEML实例的指针、应用程序标识符(APPID)和要创建句柄的字符串作为参数,并返回一个句柄。
一旦创建了DDE字符串句柄,就可以使用DdeConnect函数建立与DDE服务器的连接。
DdeConnect函数接受一个DDEML实例的指针、DDE字符串句柄、DDE服务器的应用程序标识符和连接ID作为参数,并返回一个连接句柄。
连接ID是一个用于标识连接的唯一数值。
建立与DDE服务器的连接后,可以使用DdeClientTransaction函数进行数据交换。
DdeClientTransaction函数接受一个连接句柄、一个数据句柄(用于标识要发送的数据)、一个字符串句柄(用于标识要发送的命令)、一个服务标识符和一个事务标识符作为参数,并返回一个事务标识符。
要接收DDE服务器发送的数据或命令,可以在回调函数中处理DDE事件。
使用DdeGetData函数可以获取从DDE服务器接收到的数据。
DdeGetData函数接受一个连接句柄、一个数据句柄、一个接收缓冲区和一个缓冲区大小作为参数,并返回接收到的数据的长度。
RSLINX CLASSIC 说明书
1 • 欢迎使用 RSLinx Classic
3
什么是 RSLinx Classic? .............................................................................................................. 3 不同类型 RSLinx Classic 的区别................................................................................................ 3
RSLinx Classic for FactoryTalk View .................................................................................. 5
快速入门.......................................................................................................................................... 6 步骤 1 - 配置驱动程序 ........................................................................................................ 6 步骤 2 - 配置主题 ................................................................................................................. 7 步骤 3 - 复制链接到剪贴板............................................................................................... 8 步骤 4 - 从剪贴板粘贴链接............................................................................................... 9
C#中应用DDE技术实现动态数据交换
C#中应用DDE技术实现动态数据交换DDE是个很老的东西了,基本已经被淘汰。
但有些地方还在使用这个东西,最近遇到个问题要使用这个东西,比如MT4就运用DDE让自己成为服务端,程序可利用DDE获取MT4的外汇报价数据实现实时更新。
[csharp]view plaincopying NDde.Client;2.3.private void MainForm_Load(object sender, EventArgs e)4.{5.try6.{7.//申明并实例化一个DdeClient对象8.client = new DdeClient("MT4", "BID", this);9.client.Advise += client_Advise;10.//连接到DDE服务器11.client.Connect();12.//循环获取数据13.client.StartAdvise("USDCHF", 1, true, 60000);14.}15.catch (Exception ex)16.{17.displayTextBox.Text = "MainForm_Load: " + ex.Me ssage;18.}19.}20.21.private void client_Advise(object sender, DdeAdvi seEventArgs args)22.{23.//显示更新数据24.displayTextBox.Text = "OnAdvise: " + args.Text;25.}这样就能实时获取MT4服务器的数据了。
21.2 利用DDE通信协议对现场数据采集并写入到Excel[共3页]
第21章InTouch数据采集应用║类型是DDE,这样当InTouch软件转入运行方式时,就会向DDEML申请服务,与服务器建立连接,一个DDE会话活动开始了。
会话连接建立后,每当有数据变化,服务器就会将数据发送给客户。
客户发送数据到服务器:在数据库的组态中,定义输出数据点的类型和设备地址,驱动类型是DDE,这样当InTouch软件转入运行方式时,就会向DDEML申请服务,与服务器建立连接。
DDE会话活动开始后,每当输出点数据有变化,InTouch就会将输出点数据的值发送给服务器。
DDE数据交换的速度在点数很多时会受到限制,一般是每秒200个点的交换信息量。
当点数很多又要求更快地交换信息时,会丢失信息,甚至会发生连接中断。
此时,必须对故障进行恢复或重发。
VBA是应用程序自动化语言(过去常常称为宏语言),在办公自动化软件中常用。
将PLC 中数据通过InTouch采集并写入到Excel中,按一定格式显示或定时执行某些操作时,需要用VBA编写相应的程序。
21.2 利用DDE通信协议对现场数据采集并写入到Excel1.配置InTouch要利用DDE通信协议让InTouch访问Execl数据,先要配置InTouch,具体方法如下。
①配置InTouch访问名,应用程序名输入Excel,主题名输入Excel文件的完整路径,例如:C:\test.xls。
如果要使用sheet2表里面的数据,那么主题名就输入:C:\test.xls\sheet2。
②建立标记名的时候,标记类型必须是I/O型,访问名输入刚才新建的访问名。
③项目名输入Excel中每个单元格的编号,例如:R1C1表示第一行第一列,即A1;R2C1表示第二行第一列,即A2,依次类推。
④在与Excel通信时,必须先打开对应的Excel表(即DDE服务端)。
2.Excel中访问InTouch在表格中输入 =VIEW|TAGNAME!'ActualTagname',“VIEW”是应用程序的名称,“TAGNAME”是主题名,“ActualTagname”是实际InTouch标记名。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4 W W. i e. t 电工技术 4 l W c n te ha n l
维普资讯
组 态 软件
序 响应D E D 会话 。() D E e re 4T D S eI m:用于服 务器 程 序 t
个访问名,使用访问名来引用实时 I / O数据。每个访问
名相当于一个旧 地址,对于本机数据,访问名定义包含应 用程序名和主题名 。定义完访问名后,除了进行变量类型
的设 置 外 ,还 要定 义一 个 “ 目” “ 目”是Wi o 项 。 项 n ws d
个服务程序,服务程序同时进行组态软件的数据通讯和 网络数据的收发,这样就可以不通过购买组态软件的 网 络插件解决数据 网络传输的问题 。
参考文献
【 1 】罗亚非 . 凌阳1 位 单 片机应 用 基础. 6 北京航 空航 天大 学,
2 01 1 7~ 3 0 :3 2 8
[ =4 i j r: 】
CAL a s } L Xin h R r : F
.
[ 胡汉才. 2 ] 单片机原理及其接 口技术. : 北京 清华 大学 出版社 ,
插件 之外 ,难道 没有 更好 的办法 来解 决这 个 问题 了吗 ?
收 稿 日 :0 70 —8 期 2 0 —32
例 ̄ D l i 所有 的 D E 能做 到4 T p把 le h D功 个部 件 中, 它们
是:() D E In o v 1T D Ci t n :用于客户程序建立和维护一个 e C D E D 会话。()D E In e 2 T D Ci t m:用于客户程序建立和维 e n 护数据交换通道 。() D E e , C n :用于服务器程 3T D S n rov e 对检测结果进行 自动分析,从而控制燃料电池稳定、可 靠 的运行 。设计中程序都 已经软件调试,调试结果证实
1组态软件的介绍
组态软件是近年来发展起来的用于工业 自动化 、过
程控 制和管理监控的强大的图形 人机界面软件 ( M ) H I。 它为工程师提供 了一个易用的开发环境和广 泛的功能,
使 工程 师 能够快 速地 建立 、测 试和 部署 复杂 的 自动化 应
2D E D 软件编程的实现
应用程序引用相同值时使用的名称。由此可见,I T U H N0 C 中变量的命名机制完全遵循D E D 的服务名 ( 又称应用程序 名) 、主题名和项 目名的命名机制, ̄IT C 对于外部 p OU H N 数据的访问就是利用D E D 进行的。所以,;z 1 E  ̄ J 机组上, 9 利用D l i B eh p ,V 等面向对象编程的高级语言所提供的网络 控件进行数据采集、系统网络数据的传输后,再利用D E D 进行与组态软件的数据交换是完全可行的。
19 2 ~ 5 9 6: 3 4
ENDP
[ 雷丽文. 3 ] 微机原理 与接 口技 术. 北京 : 电子工业出版社,9 7 19
() 1 3 1 6 2 :1~ 7
3结束语
该设计实现了对燃料电池的单池电压 的巡 回检测,
[ C 0 1 0 xF mi aa h e, e io .C p r h‘c 4 8 5 4 a I D ts e t v in 1 .o yi t ( ] F y R s Po i r=[ B D t ; 3 P I — aa O ]
/ / 用B口8 位控 制点亮报警发光二
极 管 [ IB D t = P O aa : ]
r 4=0 0 01 x 0 :
了该方案的实用性和可靠性,能够满足实 际工程 的需 要,具有很好的应用价值。
现在 通 过分 析IT C 对 于 输入 输 出变量 ( / 型 N OU H 即I ) (
标记) 访问定义的要求,来探讨 用D E D 与组态软件进行 数据传输方案的可行性。
对于 定义 任意一个] 型 标记 ,IT U H 先要指 定 / O NO C 首
一
用 ,通过进行 网络配 置,可 以轻松 的实现网络数据传 输,但是, 由于需要额外购买网络插件,增加 了工程成 本 。其实,可以利用Wi o 所支持的D E n ws d D 协议开发一
维普资讯
瑟圈
组 态软 件
动态数据交换( D ) J E D E在Z 机组数采编程 中的使用 1 9
陈 霖
( 昌烟机 公司 电控 室,许昌 许 4 10 ) 6 00
[ 摘要] 通过 分析组态软件进行外部 变量读写时所使 用的动态数据 交换 ( D ) D E 协议 ,提 出了用面向对 象语言开
程序终止前显式释放。在人工模式下,即使存在一个D E D—
Ci te lnI m部 件 且 与 D E InC n相 联 接 , 数据 更 新 后 e t D Ci to v e D E InI m部件的T x、 i s 『的值也不会改变 。 D Ci le e t et L e屙 生 n
发D E D 协议 网络通讯服 务程序 的方案 ,成功解决 了问题 。并给 出了D lh e i p 程序 的示例。 关键词 动态数据 交换 组 态软件 Z 1 E J 9 卷接机组
0 引 言
许 昌烟机 公司生产 的Z 1 E J 9 卷接机组 采用 了美 国
Wo d r r公 司 的IT C 组态 软 件 。组 态 软件 的使 n eWae N OU H
不论是D l i eh p ,还是V ,通过利用其对D E B D 的支持 使开发一个D E D 应用程序 同开发一个普通程序一样地快
捷 、方便 。
用,来连接和传递实时信息 。为用户的应用设计提供 了
灵活性,同时为工业中的各种 自动化设备提供 了连接能
力 {。目前 流行 的组态软件有Wo d aWae 2 l n e r r公司的I — N T U H IME S O C ;SE N 公司的Wi C n 和国产的组态王等。 C 如果进行 网络数据传输,除了购买组态软件的网络