1 引言
通常泵站(如輸水泵站、污水泵站)配置有動力、電氣、檢測等機電設(shè)備系統(tǒng),控制邏輯復(fù)雜,管理要求嚴(yán)格,體系結(jié)構(gòu)龐大。借助計算機監(jiān)控技術(shù)實現(xiàn)對泵站監(jiān)控,不僅對泵站的安全運行提供了強有力的保障,而且為泵站的集中管理與經(jīng)濟調(diào)度打下了基礎(chǔ)。為了實現(xiàn)設(shè)備監(jiān)測和控制,必須建立信息管理系統(tǒng),對信息進行管理和使用。監(jiān)控系統(tǒng)通常包括監(jiān)測和控制兩部分,根據(jù)泵站控制系統(tǒng)規(guī)模和控制要求,泵站計算機控制系統(tǒng)可以采用PLC(可編程序控制器)、DCS(集散控制系統(tǒng))和FCS(現(xiàn)場總線控制系統(tǒng))等;在軟件開發(fā)方面有用各種編程語言通過編制大量的指令和代碼來實現(xiàn)和基于工控組態(tài)軟件平臺開發(fā)等多種方式。本文介紹一個基于InTouch開發(fā)平臺的泵站計算機監(jiān)控系統(tǒng),敘述了系統(tǒng)的架構(gòu),并對InTouch平臺下的系統(tǒng)各功能模塊的開發(fā)進行了研究,尤其對數(shù)據(jù)通訊功能中存在的問題和對策進行了重點表述。
2 InTouch簡介
2.1 InTouch概要
InTouch組態(tài)軟件是美國Wonderware公司FactorySuite套裝軟件的一個主要組成部分,它為以工廠和操作人員為中心的制造信息系統(tǒng)提供了可視化工具,為制造信息系統(tǒng)集成了操作人員所需的各種信息,在食品加工、半導(dǎo)體、石油和天然氣、汽車、化工、醫(yī)藥、紙漿和造紙、運輸及公共設(shè)施等行業(yè)都有著廣泛應(yīng)用。
2.2 InTouch特性和優(yōu)點
(1)開放、易用的開發(fā)環(huán)境。利用目前通信技術(shù)中的現(xiàn)有標(biāo)準(zhǔn),為應(yīng)用開發(fā)人員提供了一個開放和易用的開發(fā)環(huán)境,并支持ActiveX、OPC(OLE for Process Control)、開放數(shù)據(jù)庫互連(ODBC)及標(biāo)準(zhǔn)的動態(tài)數(shù)據(jù)交換(DDE),為用戶自行開發(fā)外掛程序提供接口。
(2)集成的I/O通信。Wonderware公司與100多家第三方開發(fā)公司(包括Allen-Bradley,Siemens,Modincon等)合作,提供各種32位I/O Server,目前主流的通信協(xié)議(例如以太網(wǎng)Modbus、串口Modbus)都有現(xiàn)成的I/O通信驅(qū)動。
(3)豐富的圖形用戶界面。InTouch允許應(yīng)用開發(fā)人員使用易于理解和配置的工具快速開發(fā)定制圖形,并提供了一個常用圖符庫。應(yīng)用開發(fā)人員可以輕易地創(chuàng)建生動的圖形界面,通過易用的配置向?qū)崿F(xiàn)實時信息的鏈接,并可調(diào)用內(nèi)嵌的腳本編輯器擴展圖形功能。運行時畫面切換的響應(yīng)速度也是一般組態(tài)軟件無法相比的。
(4)靈活的腳本支持。InTouch軟件的腳本分為畫面、應(yīng)用程序、鍵、條件、數(shù)據(jù)改變及QuickFunction等多種,采用類Basic的語法,并提供豐富、易用的腳本函數(shù),適用于多種場合,為應(yīng)用開發(fā)人員制作功能強大、畫面豐富的系統(tǒng)提供了有力保障。
(5)分布式的歷史數(shù)據(jù)系統(tǒng)。允許用戶動態(tài)地為趨勢圖的每支筆指定不同的歷史文件數(shù)據(jù)源,允許操作員在同一個趨勢圖中查看本地InTouch的歷史數(shù)據(jù)和Industrial SQL Server的歷史數(shù)據(jù)。
(6)便捷的測點遠(yuǎn)程引用。InTouch軟件通過簡易的向?qū)渲茫蓪崿F(xiàn)不同節(jié)點上測點的遠(yuǎn)程引用,為建立分層分布式系統(tǒng)提供基礎(chǔ)。
3 泵站系統(tǒng)結(jié)構(gòu)分析
泵站計算機監(jiān)控系統(tǒng)是集監(jiān)視、測量、控制、保護、管理等于一體的計算機綜合自動化系統(tǒng),主要對全站泵組、電氣系統(tǒng)、公用油、水、氣系統(tǒng)、閘門控制系統(tǒng)、勵磁系統(tǒng)及直流系統(tǒng)進行有效監(jiān)視和控制,保證泵站更加安全、可靠、經(jīng)濟地運行,實現(xiàn)泵站“無人值班”(少人值守)的目標(biāo),并能夠通過計算機網(wǎng)絡(luò)實現(xiàn)將泵站運行數(shù)據(jù)和狀態(tài)實時上傳至上級主管部門。
本文介紹的系統(tǒng)采用分層結(jié)構(gòu),共兩層,分別是廠級監(jiān)控層和現(xiàn)地單元(LCU)監(jiān)控層,其中廠級監(jiān)控層由兩臺廠級計算機組成,可實現(xiàn)對全廠信息的管理,包括對各LCU設(shè)備的運轉(zhuǎn)進行監(jiān)控,對采集的模擬量、開關(guān)量進行存儲,對歷史數(shù)據(jù)進行查詢,對報表進行查詢和打印等。兩臺計算機采用一臺運行一臺備份的工作方式,當(dāng)一臺發(fā)生故障停機時另一臺自動轉(zhuǎn)入運行。LCU層由多個LCU組成,各LCU中控制設(shè)備采用Quantum系列的PLC,實現(xiàn)對現(xiàn)場設(shè)備的控制,計算機采用Magelis終端,通過Modbus連接PLC,實現(xiàn)對現(xiàn)場數(shù)據(jù)的監(jiān)視、控制參數(shù)的修改等。此外,為了對其他參數(shù)如電量、水位等進行監(jiān)測,各LCU還配有多功能表。LCU的功能是獨立的,互不影響,自成系統(tǒng)。兩層之間用通訊速率為1Mbps的Modbus Plus(MB+)網(wǎng)絡(luò)連接,該網(wǎng)絡(luò)是一種主從網(wǎng)絡(luò),允許一個主計算機和一個或多個從機通訊,以完成編程、數(shù)據(jù)傳送、程序上裝/下裝及其主機操作,通過它可以實現(xiàn)廠級計算機和各LCU的PLC和多功能表的快速的數(shù)據(jù)通訊。系統(tǒng)結(jié)構(gòu)如圖1所示。

圖 1 泵站計算機監(jiān)控系統(tǒng)結(jié)構(gòu)圖
4 監(jiān)控軟件實現(xiàn)
4.1 監(jiān)控軟件功能模塊
監(jiān)控軟件是運行在廠級計算機上的,主要包括如下功能模塊:數(shù)據(jù)采集及處理、統(tǒng)計及計算、設(shè)備運行狀態(tài)顯示和控制、設(shè)備安全運行監(jiān)視及事件報警、參數(shù)越限報警與記錄、溫度趨勢分析判斷、泵組停/啟過程監(jiān)視、故障報警顯示記錄、實時控制與調(diào)節(jié)、設(shè)備運行統(tǒng)計記錄及生產(chǎn)管理、語音報警、自診斷功能、歷史數(shù)據(jù)查詢與報表、對外網(wǎng)絡(luò)接口。采用InTouch軟件,可以方便地實現(xiàn)以上功能,只需建立一個標(biāo)記名字典并作簡單設(shè)置,再利用bbbbbbMaker的圖形功能把被控對象形象的畫出來,就能在PC機上就可以把整個對象描繪出來。其中數(shù)據(jù)的采集是監(jiān)控系統(tǒng)的重要部分之一,是不可或缺的,下面重點討論InTouch與外界設(shè)備的通訊方法和模式。
4.2 InTouchI/O服務(wù)器通訊
InTouch軟件與外界設(shè)備之間的通訊是通過一個通訊接口——I/O服務(wù)器(I/O Server)來實現(xiàn)的,I/O服務(wù)器可以理解為能和外界設(shè)備通訊的程序,InTouch只要能和I/O服務(wù)器通訊,就可以達(dá)到和外界設(shè)備通訊的目的,如圖2所示。這樣做的好處是避開了硬件協(xié)議等繁瑣的細(xì)節(jié),讓使用InTouch進行二次開發(fā)的人員可以把精力放在控制和數(shù)據(jù)處理上,有效地提高工作效率。目前Wonderware公司已經(jīng)與多家第3方著名開發(fā)公司合作,提供了各種I/O服務(wù)器,支持目前主流的通信協(xié)議。而二者的通訊是兩個應(yīng)用程序之間的數(shù)據(jù)交換,InTouch使用DDE、FastDDE、NetDDE以及 Wonderware Suibbbink協(xié)議完成。在本系統(tǒng)中,使用的是Modbus網(wǎng)絡(luò),所以需要安裝Modicon設(shè)備驅(qū)動程序MBE(Modicon Modbus Ethernet),進行簡單的TOPICS配置后(打開Wonderware FactorySuite->IO Servers->Modicon Modbus Ethernet進行配置),然后在INTOUCH中,增加標(biāo)記名,設(shè)置I/O數(shù)據(jù)類型,并設(shè)置訪問名、節(jié)點名、應(yīng)用程序名、主題名和項目名,就可以實現(xiàn)和Modbus網(wǎng)絡(luò)上的設(shè)備通訊了。

圖 2 InTouch與I/O設(shè)備通訊框架示意圖
4.3 DDE協(xié)議通訊
對于沒有第三方公司提供I/O服務(wù)器的外設(shè),可以用VB、VC等編程工具開發(fā)DDE程序,采用DDE協(xié)議,實現(xiàn)和InTouch的通訊。DDE(Dynamic Data Exchange),即動態(tài)數(shù)據(jù)交換,是Microsoft開發(fā)的一種通訊協(xié)議,可供bbbbbbs環(huán)境下的應(yīng)用程序彼此發(fā)送/接收數(shù)據(jù)與指令[4]。它在同時運行的兩個應(yīng)用程序之間實現(xiàn)一種客戶端與服務(wù)器關(guān)系。服務(wù)器應(yīng)用程序提供數(shù)據(jù),并接受對這些數(shù)據(jù)感興趣的任何其它應(yīng)用程序的請求。發(fā)出請求的應(yīng)用程序被稱作客戶端,接受請求的應(yīng)用程序叫做服務(wù)器,有些應(yīng)用程序(如InTouch與MicrosoftExcel)可以同時作為客戶端與服務(wù)器。
4.4 DDE協(xié)議通訊案例
下面舉例說明如何用VB開發(fā)DDE應(yīng)用程序作為DDE服務(wù)器,該程序使用MSComm控件,實現(xiàn)通過串口和外部檢測設(shè)備的串行通訊。VB提供了動態(tài)數(shù)據(jù)交換的bbbb Topic(連接主題),bbbb Item(連接項),bbbb Timeout(連接等待時問)和bbbbmode(連接模式)四項屬性。在應(yīng)用程序編制時,根據(jù)DDE原理,把應(yīng)用程序的可執(zhí)行文件名去掉EXE后綴,則成為DDE中的Topic。bbbbmode有Manual(手工),Notify(通知),和Automatic(自動)三種方式,同一時刻只能有一個DDE連接有效,這里采用Automatic(自動)方式,它建立“熱連接”鏈路,作為服務(wù)器一方總是在數(shù)據(jù)變化時主動發(fā)送數(shù)據(jù)給客戶端。VB中只有窗體(Form)、多文檔窗體(MDI Form)能夠成為DDE服務(wù)器,在程序的初始化部分應(yīng)進行DDE設(shè)置,設(shè)置Form1的bbbbMode屬性為1,即自動連接,即當(dāng)數(shù)據(jù)改變時,自動通知客戶端,bbbbTopic屬性設(shè)置在DDE對話中服務(wù)器窗體需響應(yīng)的主題,這里為Forml。
在窗體上放置了mscomm控件,用于控制串行端口傳輸和接受數(shù)據(jù),為應(yīng)用程序提供串行通信功能,并用如下代碼設(shè)置通訊格式:
MSComm1.Commport=1‘設(shè)定串行通信端口號’
MSComm1.Settings =“9600,n,8,1”‘設(shè)定該通信口的波特率、奇偶校驗、數(shù)據(jù)位、停止位’
MSComm1.bbbbbLen = 0 ‘讀取接收緩沖區(qū)中全部的內(nèi)容’
MSComm1.PortOpen‘打開端口’
當(dāng)有數(shù)據(jù)到達(dá)時觸發(fā)MSComm1控件的OnComm事件,在此事件處理子程序中完成讀入數(shù)據(jù)的功能,并用文本框Text1顯示
Private Sub MSComm1_OnComm()
Bufferbbbbbb=MSComm1.bbbbb‘讀入緩沖區(qū)內(nèi)容’
If Bufferbbbbbb<>’’ then
Text1.Text= Bufferbbbbbb+Text1.Text
End If
End Sub
在InTouch中,DDE用應(yīng)用程序名、主題名、項目名三個層次來標(biāo)識客戶與服務(wù)器之間傳遞的數(shù)據(jù)單位,通常表示為:應(yīng)用程序名|主題名!項目名。對于客戶,應(yīng)按三個層次去連接相應(yīng)的數(shù)據(jù),在InTouch的標(biāo)簽庫中提供了DDE設(shè)置框,使得DDE組態(tài)簡便、易行,在本例中的層次標(biāo)識為:dde1|Form1!Text1.Text(ddel為VB應(yīng)用程序名)。
5 結(jié)束語
本文通過介紹泵站計算機監(jiān)控系統(tǒng),重點討論了InTouch在監(jiān)控軟件開發(fā)中的功能,并對其與外部設(shè)備的通訊方式展開了敘述。基于InTouch的系統(tǒng)開發(fā),具有開發(fā)周期短、通用性強、擴充性好、可靠性高等特點,在控制系統(tǒng)開發(fā)中具有十分良好的應(yīng)用發(fā)展前景。










