電話遠(yuǎn)程監(jiān)控論文

時(shí)間:2022-09-02 09:00:00

導(dǎo)語:電話遠(yuǎn)程監(jiān)控論文一文來源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

電話遠(yuǎn)程監(jiān)控論文

摘要:闡述了由電話遠(yuǎn)程控制器與PLC、變頻器所組成的遠(yuǎn)程速度監(jiān)控系統(tǒng)中所采用的DDE動(dòng)態(tài)數(shù)據(jù)交換模式,通過采用該模式,可以實(shí)現(xiàn)應(yīng)用程序與組態(tài)軟件MCGS的數(shù)據(jù)交互,最終實(shí)現(xiàn)對(duì)無級(jí)調(diào)速系統(tǒng)的電話遠(yuǎn)程控制.文中較為詳細(xì)地討論了DDE技術(shù)的特點(diǎn)以及在MCGS組態(tài)軟件中的具體應(yīng)用,說明了采用DDE技術(shù)與掛接的設(shè)備進(jìn)行通信來獲取系統(tǒng)數(shù)據(jù)的方式,具有較好的實(shí)際應(yīng)用價(jià)值。

關(guān)鍵詞:電話;遠(yuǎn)程監(jiān)控;DOE

1DDE數(shù)據(jù)交換原理

DDE(DynamicDataExchange動(dòng)態(tài)數(shù)據(jù)交換)協(xié)議是一種開放的、與語言無關(guān)的、基于消息的協(xié)議,它允許多個(gè)應(yīng)用程序以任何人為約定的格式交換數(shù)據(jù)或命令。它是應(yīng)用程序通過共享內(nèi)存進(jìn)行進(jìn)程間通信的一種形式,也是目前不需要用戶干預(yù)的最好的數(shù)據(jù)交換方法。它將控制通信對(duì)象劃分為:服務(wù)名(DDEServer,又被稱做應(yīng)用程序名,由服務(wù)器應(yīng)用程序注冊(cè))、主題名(Topic,用以識(shí)別邏輯數(shù)據(jù)關(guān)聯(lián)的字符串)和項(xiàng)目名(item,用于標(biāo)識(shí)交換數(shù)據(jù)單位的字符串)。

當(dāng)兩個(gè)同時(shí)運(yùn)行的程序通過DDE方式進(jìn)行數(shù)據(jù)交換時(shí)是Client和Server的關(guān)系,如圖2所示。一旦Client和Server建立起連接關(guān)系,則當(dāng)Server中的數(shù)據(jù)發(fā)生變化后就會(huì)馬上通知Client。通過DDE方式建立的數(shù)據(jù)連接通道是雙向的,即Client不但能讀取Server中的數(shù)據(jù),且可對(duì)其進(jìn)行修改。DDEService名應(yīng)具有唯一性,當(dāng)一個(gè)DDEClient向一個(gè)DDEServer請(qǐng)求數(shù)據(jù)時(shí),DDEClient必須向系統(tǒng)報(bào)告DDEServer的Service名和Topic名,只有與DDEServer內(nèi)部設(shè)定的名稱一致時(shí),系統(tǒng)才將DDEClient的請(qǐng)求傳達(dá)給DDEServer。服務(wù)器應(yīng)用程序可支持一個(gè)或多個(gè)主題名。

1.1MCGS的DDE特性

MCGS軟件包是由McgsSet和McgsRun兩大部分組成的。其中McgsSet為畫面制作系統(tǒng),所有與界面設(shè)計(jì)、變量定義、動(dòng)畫連接等操作相關(guān)的設(shè)置均在McgsSet中實(shí)現(xiàn);McgsRun則是負(fù)責(zé)動(dòng)畫圖形顯示、數(shù)據(jù)庫(kù)與服務(wù)程序數(shù)據(jù)交換,并將變化效果通過動(dòng)畫的形式呈現(xiàn)出來。MCGS軟件提供了強(qiáng)有力的DDE客戶和服務(wù)器支持,其中DDE客戶支持允許把來自其它應(yīng)用程序的信息傳遞到MCGS軟件中,并將之用于數(shù)據(jù)庫(kù)和畫面中;服務(wù)器支持允許把MCGS軟件的過程信息傳遞到其它應(yīng)用程序中去處理。因此,為了建立DDE連接,首先需要在McgsRun部分的實(shí)時(shí)數(shù)據(jù)庫(kù)里建立一個(gè)變量作為DDE變量,而后在所建立變量的DDE連接管理里面中建立與DDE變量的連接,并將三個(gè)標(biāo)識(shí)名DDEServer、Topic、item進(jìn)行登記。MCGS運(yùn)行系統(tǒng)的程序名是“McgsRun”,主題規(guī)定為“DataCentre”,項(xiàng)目是在定義DDE變量時(shí)定義的項(xiàng)目名稱也就是DDE變量的名稱。

(1)VB的DDE屬性、DDE事件和DDE方法:VB中能夠支持DDE的對(duì)象有5類:窗體、多文檔窗體、標(biāo)簽、文本框和圖片框。其中,窗體和多文檔窗體可作為DDE服務(wù)器,即數(shù)據(jù)的提供者;Label、TextBox和PictureBox等可以作為DDE服務(wù)器,即數(shù)據(jù)的接收者。VB為發(fā)送端對(duì)象提供了兩種DDE屬性和4種DDE事件,為接收端對(duì)象提供了4種DDE屬性、4種DDE事件和4種DDE方法(如表1所示)。

(2)利用VB開發(fā)DDE客戶/服務(wù)器應(yīng)用程序:

1.3通用DDE“軟通道”的建立

為了便于開發(fā)與校驗(yàn),采用VB開發(fā)了應(yīng)用程序VBServer。VBServer應(yīng)用程序是一個(gè)起橋梁作用的接口程序,用來和硬件設(shè)備打交道,然后通過DDE與MCGS進(jìn)行數(shù)據(jù)交換,把從電話遠(yuǎn)程控制器采集的實(shí)時(shí)數(shù)據(jù)傳輸?shù)組CGS,實(shí)現(xiàn)實(shí)時(shí)顯示和趨勢(shì)圖制作兩種功能。VB作為DDE服務(wù)器、MCGS作為DDE客戶,實(shí)際鏈接數(shù)據(jù)流向如圖3所示。

為了具有通用性,需要考慮到不同的設(shè)備具有不同的通信方式與協(xié)議,要想使不同的現(xiàn)場(chǎng)設(shè)備共用相同的“軟通道”,就必須留出的可設(shè)置窗口,使用戶根據(jù)不同的現(xiàn)場(chǎng)設(shè)備設(shè)置不同的通信參數(shù)如波特率等,通過“軟通道”實(shí)現(xiàn)自動(dòng)化設(shè)備MCGS的數(shù)據(jù)交換。2基于VB的應(yīng)用程序的設(shè)計(jì)

作為與硬件設(shè)備打交道的接口程序,必然涉及到硬件的通訊協(xié)議。為了適應(yīng)不同設(shè)備的協(xié)議情況,建立一個(gè)通用的“軟通道”,這里留出了相應(yīng)的設(shè)置窗口進(jìn)行設(shè)置。

2.1設(shè)置界面程序的設(shè)計(jì)

基于VB的通信參數(shù)設(shè)置界面如圖4所示:

(1)在“通信協(xié)議設(shè)置區(qū)”設(shè)置硬件相應(yīng)通訊協(xié)議,如通訊端口、波特率、數(shù)據(jù)位、奇偶校驗(yàn)、停止位都可以在這個(gè)區(qū)里設(shè)置,此設(shè)置區(qū)的“操作對(duì)象”選項(xiàng)是對(duì)三菱PLC設(shè)備設(shè)計(jì)的,對(duì)于自定義協(xié)議的自動(dòng)化設(shè)備,這項(xiàng)不需要設(shè)置;

(2)在“控制參數(shù)設(shè)置”區(qū)設(shè)置操作方式和字節(jié)數(shù),此設(shè)置區(qū)是針對(duì)此三菱PLC設(shè)計(jì)的,所以其他的自動(dòng)化設(shè)備不需要設(shè)置這個(gè)區(qū)的參數(shù);

(3)在“發(fā)送數(shù)據(jù)區(qū)”輸入特定設(shè)備的幀格式,即在文本框Text1中輸入自定義自動(dòng)化設(shè)備的幀格式(比如此三菱PLC讀對(duì)象Y的幀格式是STX000A002ETX66,只要在文本框中輸入就可以了)。如果手動(dòng)采集,單擊發(fā)送數(shù)據(jù),現(xiàn)場(chǎng)設(shè)備的數(shù)據(jù)就會(huì)在“接受數(shù)據(jù)區(qū)”Text2中顯示出來;自動(dòng)采集則需在程序中使用一個(gè)定時(shí)器控件,采用分時(shí)采集的方式實(shí)現(xiàn)自動(dòng)采集。

2.2VB服務(wù)程序中DDE的設(shè)置

接口程序編寫完成后,按照DDE服務(wù)器所需要的三要素一一建立DDEServer、Topic和item:服務(wù)器DDEServer參數(shù):在VB開發(fā)環(huán)境里把窗口的Linkmode屬性設(shè)置為Source;主題名Topic的設(shè)置:在VB開發(fā)環(huán)境里把窗口的Linktopic屬性設(shè)置為Form1;數(shù)據(jù)項(xiàng)item的設(shè)置:它為要接收數(shù)據(jù)的載體,在這里是Text2。按照以上步驟,DDE服務(wù)器建立完成。

2.3MCGS中DDE的設(shè)置

在MCGS組態(tài)軟件中設(shè)置所需要的DDE服務(wù):

進(jìn)入MCGS組態(tài)軟件的開發(fā)環(huán)境中,打開“工具”菜單下的DDE連接管理選項(xiàng),設(shè)置要進(jìn)行動(dòng)態(tài)數(shù)據(jù)連接的數(shù)據(jù)項(xiàng);服務(wù)器名設(shè)置為所生成的應(yīng)用程序名(電話遠(yuǎn)程控制器采集程序);主題名設(shè)置為Form1;數(shù)據(jù)項(xiàng)設(shè)置為Text2。按照以上步驟,基于MCGS的DDE服務(wù)建立完成。

2.4DDE數(shù)據(jù)交換程序的調(diào)試

運(yùn)行生成的基于VB的電話遠(yuǎn)程控制器接口程序服務(wù)器;運(yùn)行MCGS-DDE工程客戶端;在服務(wù)器端采集數(shù)據(jù),通過雙方數(shù)據(jù)項(xiàng)的變化來驗(yàn)證DDE方式數(shù)據(jù)通訊的正確性。在一切運(yùn)行正常的情況下,可看到當(dāng)現(xiàn)場(chǎng)設(shè)備的數(shù)據(jù)變化時(shí),基于VB應(yīng)用程序的窗口中的數(shù)據(jù)同步變化,在MCGS上位界面中的數(shù)據(jù)也同步變化,說明通過DDE通道的數(shù)據(jù)鏈接成功。

2.5VB作為DDE客戶與DDE服務(wù)器MCGS的實(shí)際鏈接

以上論述的是參數(shù)經(jīng)過VB-Server應(yīng)用程序流向MCGS(DDEClient),即MCGS上位組態(tài)軟件采集現(xiàn)場(chǎng)的數(shù)據(jù)。當(dāng)需要實(shí)現(xiàn)MCGS上位組態(tài)軟件控制現(xiàn)場(chǎng)設(shè)備時(shí),檢測(cè)信號(hào)和參數(shù)的流向是從MCGS傳輸?shù)絍B開發(fā)的應(yīng)用程序VB-Server,再由VB-Server以命令形式經(jīng)MCGS下達(dá)給遠(yuǎn)程現(xiàn)場(chǎng)的自動(dòng)化設(shè)備。在VB-Server中,把各個(gè)設(shè)定參數(shù)相應(yīng)的Text-Box的Link-item屬性設(shè)置為對(duì)應(yīng)的MCGS的點(diǎn),然后把從MCGS的點(diǎn)傳輸?shù)綄?duì)應(yīng)Text-Box中的內(nèi)容下達(dá)給遠(yuǎn)程現(xiàn)場(chǎng)設(shè)備。此時(shí),VB應(yīng)用程序?yàn)閂B-Server客戶,MCGS為服務(wù)器。作為通用的“軟通道”,需要給用戶提供命令格式設(shè)定窗口等,其編程的思想方法同上,不再贅述。

參考文獻(xiàn)

[1]鄭萍主編.現(xiàn)代電氣控制技術(shù)[M].重慶:重慶大學(xué)出版社,2003.

[2]張毅剛等編著.單片機(jī)應(yīng)用設(shè)計(jì)[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2002,(7).