VB和InTouch-的通信軟件的實(shí)現(xiàn)_第1頁
VB和InTouch-的通信軟件的實(shí)現(xiàn)_第2頁
VB和InTouch-的通信軟件的實(shí)現(xiàn)_第3頁
VB和InTouch-的通信軟件的實(shí)現(xiàn)_第4頁
VB和InTouch-的通信軟件的實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

淺談在VB和InTouch的通信軟件的實(shí)現(xiàn)文章出處:gfs0521發(fā)布時間:2011/09/01|1524次閱讀1、前言本文是以筆者參與的某啤酒廠的監(jiān)控系統(tǒng)實(shí)現(xiàn)的項(xiàng)目為背景。監(jiān)控系統(tǒng)主要由前端監(jiān)視設(shè)備、傳輸設(shè)備、后端控制顯示設(shè)備這三大部分組成,其中后端設(shè)備可進(jìn)一步分為中心控制設(shè)備和分控制設(shè)備。前、后端設(shè)備有多種構(gòu)成方式,它們之間的聯(lián)系(也可稱作傳輸系統(tǒng))可通過電纜、光纖或微波等多種方式來實(shí)現(xiàn)。由于現(xiàn)場的PLC或單片機(jī)控制系統(tǒng)的資源、功能有限,不能長期保存數(shù)據(jù),人機(jī)界面差,上位機(jī)豐富的資源可以對采集到的數(shù)據(jù)進(jìn)行分析,存盤,運(yùn)算、打印、報(bào)警并進(jìn)行各種相應(yīng)顯示。上位機(jī)形象的人機(jī)界面可使操作員更直觀,全面的了解現(xiàn)場的情況。采用Intouch、VB來實(shí)現(xiàn)。vb是VisualBasic的簡稱,是由美國微軟公司于1991年開發(fā)的一種可視化的、面向?qū)ο蠛筒捎檬录?qū)動方式的結(jié)構(gòu)化高級程序設(shè)計(jì)語言,可用于開發(fā)Windows環(huán)境下的各類應(yīng)用程序。它簡單易學(xué)、效率高,且功能強(qiáng)大可以與Windows專業(yè)開發(fā)工具SDK相媲美。在VisualBasic環(huán)境下,利用事件驅(qū)動的編程機(jī)制、新穎易用的可視化設(shè)計(jì)工具,使用Windows內(nèi)部的廣泛應(yīng)用程序接口(API)函數(shù),動態(tài)鏈接庫(DLL)、對象的鏈接與嵌入(OLE)、開放式數(shù)據(jù)連接(ODBC)等技術(shù),可以高效、快速地開發(fā)Windows環(huán)境下功能強(qiáng)大、圖形界面豐富的應(yīng)用軟件系統(tǒng)。2、系統(tǒng)結(jié)構(gòu)筆者參與的監(jiān)控系統(tǒng)呈兩層分布式體系結(jié)構(gòu):數(shù)據(jù)采集層和監(jiān)控層。數(shù)據(jù)采集層主要采用數(shù)據(jù)通信標(biāo)準(zhǔn)接口;監(jiān)控層屬于局域網(wǎng),遵循局域網(wǎng)的協(xié)議標(biāo)準(zhǔn)。數(shù)采層進(jìn)行數(shù)據(jù)的采集、處理將數(shù)據(jù)傳遞到上一層;監(jiān)控層共享數(shù)采層傳來的數(shù)據(jù)。該系統(tǒng)的數(shù)采層由多臺測控裝置組成。這些測控裝置采用RS-485標(biāo)準(zhǔn)總線與數(shù)采管理站通信。在軟件方面采用VB來實(shí)現(xiàn)測控裝置數(shù)采程序,它主要完成上位機(jī)與測控裝置之間的數(shù)據(jù)通信和所采集數(shù)據(jù)的DDE(動態(tài)數(shù)據(jù)交換)轉(zhuǎn)換功能。在工控機(jī)上的人機(jī)界面則采用監(jiān)控平臺軟件來實(shí)現(xiàn)。工控機(jī)即工業(yè)控制計(jì)算機(jī),但現(xiàn)在,更時髦的叫法是產(chǎn)業(yè)電腦或工業(yè)電腦,英文簡稱IPC,全稱IndustrialPersonal

Computer.工控機(jī)通俗的說就是專門為工業(yè)現(xiàn)場而設(shè)計(jì)的計(jì)算機(jī)。工業(yè)控制軟件系統(tǒng)主要包括系統(tǒng)軟件、工控應(yīng)用軟件和應(yīng)用軟件開發(fā)環(huán)境等三大部分。其中系統(tǒng)軟件是其他兩面者的基礎(chǔ)核心,因而系統(tǒng)軟件設(shè)計(jì)的開發(fā)質(zhì)量。工控應(yīng)用軟件主要是根據(jù)用戶工業(yè)控制和管理的需求而生成的,因此具有專用性。目前較為流行的監(jiān)控平臺軟件有Heuristics公司的ONSPEC、InTouch公司的FIX和Wonderare公司的InTouch等。Intouch一種工業(yè)自動化組態(tài)軟件,Wonderware公司產(chǎn)品。InTouchHMI軟件用于可視化和控制工業(yè)生產(chǎn)過程。它為工程師提供了一種易用的開發(fā)環(huán)境和廣泛的功能,使工程師能夠快速地建立、測試和部署強(qiáng)大的連接和傳遞實(shí)時信息的自動化應(yīng)用。InTouch軟件是一個開放的、可擴(kuò)展的人機(jī)界面,為定制應(yīng)用程序設(shè)計(jì)提供了靈活性,同時為工業(yè)中的各種自動化設(shè)備提供了連接能力。它具有開發(fā)周期短、可以生成復(fù)雜的、友好的交互式圖形界面,組態(tài)靈活的優(yōu)點(diǎn),是目前工業(yè)控制領(lǐng)域中簡便易用的"快速應(yīng)用程序生成器".但它必須采用DDE的數(shù)據(jù)交換方式與DDE服務(wù)器連接來獲得數(shù)據(jù)。如圖一所示。將VB和Intouch結(jié)合起來,協(xié)同工作,可以發(fā)揮各自優(yōu)點(diǎn)。3、系統(tǒng)DDE實(shí)現(xiàn)該啤酒長系統(tǒng)在Windows環(huán)境下以動態(tài)數(shù)據(jù)交換機(jī)制實(shí)現(xiàn)系統(tǒng)的實(shí)時數(shù)據(jù)共享。如圖2所示:首先,數(shù)采層采集處理后的數(shù)據(jù)送到數(shù)采管理站,轉(zhuǎn)換成DDE型數(shù)據(jù);然后,借助于NETDDE機(jī)制,數(shù)采管理站把實(shí)時數(shù)據(jù)送至工程師站。工程師站作為NT域控制器,再借助于NETDDE機(jī)制實(shí)現(xiàn)與其他各監(jiān)視站之間的動態(tài)數(shù)據(jù)交換。netdde.exe是微軟Windows的網(wǎng)絡(luò)動態(tài)數(shù)據(jù)Exchange服務(wù)。它用于幫助exchange數(shù)據(jù)在網(wǎng)絡(luò)傳輸。這不是純粹的系統(tǒng)程序,但是如果終止它,可能會導(dǎo)致不可知的問題。在用戶安裝了某些分布式控制系統(tǒng)軟件(DCS)通用監(jiān)控軟件來說后,系統(tǒng)中會出現(xiàn)netdde.exe或netdde進(jìn)程服務(wù),但此處netdde或netdde.exe為是通過網(wǎng)絡(luò)借助DDE(DYNAMICDATAEXCHANGE)進(jìn)行數(shù)據(jù)交互的一種方式。由于各站之間建立了"熱連接"鏈路,作為服務(wù)器一方總是在數(shù)據(jù)變化時主動發(fā)送數(shù)據(jù)給客戶方。即當(dāng)數(shù)采管理站采集的數(shù)據(jù)發(fā)生變化時自動反應(yīng)到工程師站。在現(xiàn)場實(shí)時數(shù)據(jù)的傳送上,工程師站既作為數(shù)采管理站的客戶,又作為其它各監(jiān)視站的服務(wù)器。測控裝置采用RS-485接口標(biāo)準(zhǔn),因此某一時刻只能有一個站發(fā)送數(shù)據(jù),其余站只能接口。在該測控裝置的通信協(xié)議中,由主機(jī)以召喚方式向測控裝置發(fā)送送數(shù)命令和相應(yīng)機(jī)號,只有與主機(jī)發(fā)送的機(jī)號一致的測控裝置才允許發(fā)送數(shù)據(jù)。此VB程序作為DDE服務(wù)器,在VB中只有窗體可以作為服務(wù)器,在程序的初始化部分應(yīng)進(jìn)行DDE設(shè)置,程序段如下:form1.linkmode=1form1.linktopic=form1在窗體上放置了mscomm控件用于控制串行端口傳輸和接受數(shù)據(jù),為應(yīng)用程序提供串行通信功能。Mport=2Mscomm1.settings='9600n81''設(shè)定該通信口的波特率、奇偶校驗(yàn)、奇偶校驗(yàn)是一種校驗(yàn)代碼傳輸正確性的方法。根據(jù)被傳輸?shù)囊唤M二進(jìn)制代碼的數(shù)位中"1"的個數(shù)是奇數(shù)或偶數(shù)來進(jìn)行校驗(yàn)。采用奇數(shù)的稱為奇校驗(yàn),反之,稱為偶校驗(yàn)。采用何種校驗(yàn)是事先規(guī)定好的。通常專門設(shè)置一個奇偶校驗(yàn)位,用它使這組代碼中"1"的個數(shù)為奇數(shù)或偶數(shù)。若用奇校驗(yàn),則當(dāng)接收端收到這組代碼時,校驗(yàn)"1"的個數(shù)是否為奇數(shù),從而確定傳輸代碼的正確性。數(shù)據(jù)位、停止位Mscomm1.inputlen=0'使用Input將使Mscomm控件讀取接收緩'沖區(qū)中全部的內(nèi)容Mscomm1.Portopen窗體上的定時器控件timer1,用于定時兩秒,當(dāng)定時到時,發(fā)送FE命令,要求測控裝置發(fā)送數(shù)據(jù)。其程序?qū)崿F(xiàn)如下:mscomm1.output=″fe″+chr$13'輸出FE命令mscomm1.output=″tank″'tank為機(jī)號當(dāng)數(shù)據(jù)由測控裝置送到數(shù)采站時將觸發(fā)mscomm控件的oncomm事件,在此事件處理句柄中完成讀入數(shù)據(jù)的功能。Bufferstring=mscomm1.input'讀入緩沖區(qū)內(nèi)容IfBufferstring<>'ff'thenText2.text=Bufferstring+text2.text這樣讀入的數(shù)據(jù)就顯示在Text2文本框中。3.2監(jiān)控層應(yīng)用程序的DDE組態(tài)監(jiān)控層應(yīng)用程序主要執(zhí)行InTouch中的WonderViewer,而InTouch正是借助DDE與其它軟件聯(lián)合工作。InTouch是用于建立人機(jī)接口的一種軟件包。它包括WonderViewer和WonderMaker兩大部分。使用InTouch軟件只需建立一個標(biāo)記名字典,再利用WonderMaker的圖形功能把被控對象形象的畫出來,在PC機(jī)上就可以把整個對象描繪出來。InTouch只需在標(biāo)記名字典中指明標(biāo)記名為DDE特性,同時指定應(yīng)用程序的服務(wù)名和話題名,WonderViewer可自動執(zhí)行獲取數(shù)據(jù)點(diǎn)的全部操作。InTouch既可以作為客戶又可以作為服務(wù)器。通過NETBIOSDDE的網(wǎng)絡(luò)接口,可使機(jī)制建立起3個層次,因此監(jiān)控層應(yīng)用程序的DDE組態(tài)分為兩大部分:①工程師站的DDE組態(tài)DDE用項(xiàng)名、主題名、應(yīng)用程序名三個層次來標(biāo)識客戶與服務(wù)器之間傳遞的數(shù)據(jù)單位,通常表示為:應(yīng)用程序名|主題名項(xiàng)名;對于客戶,應(yīng)按三個層次去連接相應(yīng)的數(shù)據(jù)。工程師站作為數(shù)采站的DDE客戶。在InTouch的標(biāo)簽庫中,提供了DDE設(shè)置框,使得DDE組態(tài)簡便、易行。工程師站中的層次標(biāo)識為:\\shucai\dde1|form1text2.text數(shù)采站的節(jié)點(diǎn),dde1為數(shù)采站上的VB應(yīng)用程序名。②其它各監(jiān)視站的DDE組態(tài)這主要是建立各監(jiān)視站與工程師站的DDE連接。此時工程師站作為DDE服務(wù)器,其它各監(jiān)視站作為客戶從工程師站上取數(shù)據(jù)。建立DDE連接的過程與上述類似。4、結(jié)論VB是一種優(yōu)秀的面向?qū)ο蟪绦蛟O(shè)計(jì)語言,采用它編

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論