當(dāng)前位置: 首頁(yè) > 工業(yè)控制產(chǎn)品 > 自動(dòng)化控制 > 工業(yè)軟件
發(fā)布日期:2022-07-20 點(diǎn)擊率:102
背景: DDE技術(shù)通信原理: DDE有三種數(shù)據(jù)交換方式,即 (1)冷連接(Cool link):數(shù)據(jù)交換是一次性數(shù)據(jù)傳輸,與剪貼板相同。當(dāng)服務(wù)器中的數(shù)據(jù)發(fā)生變化后不通知客戶(hù),但客戶(hù)可以隨時(shí)從服務(wù)器讀寫(xiě)數(shù)據(jù); (2)溫連接(Warm link):當(dāng)服務(wù)器中的數(shù)據(jù)發(fā)生變化后馬上通知客戶(hù),客戶(hù)得到通知后將數(shù)據(jù)取回; (3)熱連接(Hot link):當(dāng)服務(wù)器中的數(shù)據(jù)發(fā)生變化后馬上通知客戶(hù),同時(shí)將變化的數(shù)據(jù)直接送給客戶(hù)。 DDE 客戶(hù)程序向DDE 服務(wù)器程序請(qǐng)求數(shù)據(jù)時(shí),它必須首先知道服務(wù)器的名稱(chēng)(即DDE Service名)、DDE主題名稱(chēng)(Topics名),還要知道請(qǐng)求哪一個(gè)數(shù)據(jù)項(xiàng)的項(xiàng)目名稱(chēng)(Items名)。DDE Service名應(yīng)該具有唯一性,否則容易產(chǎn)生混亂。通常DDE Service就是服務(wù)器的程序名稱(chēng),但不是絕對(duì)的,它是由程序設(shè)計(jì)人員在程序內(nèi)部設(shè)定好的,并不是通過(guò)修改程序名稱(chēng)就可以改變的。Topics名和 Items名也是由DDE Service在其內(nèi)部設(shè)定好的,所有服務(wù)程序的Service名、Topics名都是注冊(cè)在系統(tǒng)中,當(dāng)一個(gè)客戶(hù)向一個(gè)服務(wù)器請(qǐng)求數(shù)據(jù)時(shí),客戶(hù)必須向系統(tǒng) 報(bào)告服務(wù)器的Service名和Topics名。只有當(dāng)Service名、Topics名與服務(wù)器內(nèi)部設(shè)定的名稱(chēng)一致時(shí),系統(tǒng)才將客戶(hù)的請(qǐng)求傳達(dá)給服務(wù)器。 當(dāng)服務(wù)名和Topics名相符時(shí),服務(wù)器馬上判斷Items名是否合法。如果請(qǐng)求的Item名是服務(wù)器中的合法數(shù)據(jù)項(xiàng),服務(wù)器即建立此項(xiàng)連接,建立連接的數(shù)據(jù)發(fā)生數(shù)值變化后,服務(wù)器會(huì)及時(shí)通知客戶(hù)。一個(gè)服務(wù)器可以有多個(gè)Topics名,Items名的數(shù)量也不受限制。 注:需啟動(dòng)DdeServer.exe 參數(shù):/v/nohold/no/confirm/i在使用DDE采集WinCC中的數(shù)據(jù)時(shí),需要將Ddeserv.exe添加到啟動(dòng)項(xiàng)中 設(shè)置Ddeserv.exe 打開(kāi)工程中的“計(jì)算機(jī)屬性”,如下: 點(diǎn)擊“添加”按鈕 填寫(xiě)完成如上設(shè)置。這樣在WinCC工程運(yùn)行之后就可以使用打開(kāi)的“DDE服務(wù)”對(duì)話(huà)框中選擇所要共享的數(shù)據(jù)。 設(shè)置iFix DDE服務(wù)程序DMDDE.exe 需要將iFix軟件自帶的DMDDE.exe添加到工程啟動(dòng)項(xiàng)里,才能利用DDE采集iFix工程中的數(shù)據(jù)。打開(kāi)iFix系統(tǒng)配置(SCU-FIX)中的任務(wù)配置,如下 找到iFix安裝目錄下的DMDDE.exe程序,增加到任務(wù)列表里,選擇后臺(tái)啟動(dòng)的方式。 采集組態(tài)王工程中的數(shù)據(jù)時(shí),必須保證該數(shù)據(jù)允許“DDE訪(fǎng)問(wèn)” 允許“DDE訪(fǎng)問(wèn)”設(shè)置 選中上圖標(biāo)示處,即可共享該數(shù)據(jù)。 結(jié)論: DDE交換可以發(fā)生在單機(jī)或網(wǎng)絡(luò)中不同計(jì)算機(jī)的應(yīng)用程序之間。開(kāi)發(fā)者還可以定義定制的DDE數(shù)據(jù)格式,進(jìn)行應(yīng)用程序之間特別目的IPC,它們有更緊密耦合的通信要求。大多數(shù)基于Windows的應(yīng)用程序都支持DDE。但DDE有個(gè)明顯的缺點(diǎn)就是,通信效率低下,當(dāng)通信量較大時(shí)數(shù)據(jù)刷新速度慢,在數(shù)據(jù)較少時(shí)DDE較實(shí)用。
動(dòng)態(tài)數(shù)據(jù)交換(Dynamic Data Exchange,DDE)也是一種進(jìn)程間通信形式。它最早是隨著Windows 3.1由美國(guó)微軟公司提出的。
兩個(gè)同時(shí)運(yùn)行的程序間通過(guò)DDE方式交換數(shù)據(jù)時(shí)是客戶(hù)/服務(wù)器關(guān)系,一旦客戶(hù)和服務(wù)器建立起來(lái)連接關(guān)系,則當(dāng)服務(wù)器中的數(shù)據(jù)發(fā)生變化后就會(huì)馬上通知客戶(hù)。通過(guò)DDE方式建立的數(shù)據(jù)連接通道是雙向的,即客戶(hù)不但能夠讀取服務(wù)器中的數(shù)據(jù),而且可以對(duì)其進(jìn)行修改。
下一篇: PLC、DCS、FCS三大控
上一篇: 索爾維全系列Solef?PV