动态数据交换(Dynamic Data Exchange,DDE)也是一种进程间通信形式。它最早是随着Windows 3.1由美国微软公司提出的。
DDE技术通信原理:
两个同时运行的程序间通过DDE方式交换数据时是客户/服务器关系,一旦客户和服务器建立起来连接关系,则当服务器中的数据发生变化后就会马上通知客户。通过DDE方式建立的数据连接通道是双向的www.cechina.cn,即客户不但能够读取服务器中的数据,而且可以对其进行修改。
DDE有三种数据交换方式,即
(1)冷连接(Cool Link):数据交换是一次性数据传输,与剪贴板相同。当服务器中的数据发生变化后不通知客户,但客户可以随时从服务器读写数据;
(2)温连接(Warm Link):当服务器中的数据发生变化后马上通知客户,客户得到通知后将数据取回;
(3)热连接(Hot Link):当服务器中的数据发生变化后马上通知客户,同时将变化的数据直接送给客户。
DDE 客户程序向DDE 服务器程序请求数据时CONTROL ENGINEERING China版权所有,它必须首先知道服务器的名称(即DDE Service名)、DDE主题名称(Topics名),还要知道请求哪一个数据项的项目名称(Items名)。DDE Service名应该具有唯一性,否则容易产生混乱。通常DDE Service就是服务器的程序名称,但不是绝对的www.cechina.cn,它是由程序设计人员在程序内部设定好的,并不是通过修改程序名称就可以改变的。Topics名和 Items名也是由DDE Service在其内部设定好的,所有服务程序的Service名、Topics名都是注册在系统中,当一个客户向一个服务器请求数据时控制工程网版权所有,客户必须向系统 报告服务器的Service名和Topics名。只有当Service名、Topics名与服务器内部设定的名称一致时,系统才将客户的请求传达给服务器。
当服务名和Topics名相符时,服务器马上判断Items名是否合法。如果请求的Item名是服务器中的合法数据项控制工程网版权所有,服务器即建立此项连接,建立连接的数据发生数值变化后,服务器会及时通知客户。一个服务器可以有多个Topics名,Items名的数量也不受限制。
常用组态软件DDE配置说明:
注:需启动DdeServer.exe 参数:/v/nohold/noconfirm
在使用DDE采集WinCC中的数据时,需要将Ddeserv.exe添加到启动项中
设置Ddeserv.exe
打开工程中的“计算机属性”,如下:
点击“添加”按钮
填写完成如上设置。这样在WinCC工程运行之后就可以使用打开的“DDE服务”对话框中选择所要共享的数据。