摘 要:針對(duì)鍋爐傳統(tǒng)水力除渣方式的諸多不足之處,依據(jù)正-負(fù)壓氣力聯(lián)合除渣方式的特點(diǎn),提出了應(yīng)用InTouch軟件設(shè)計(jì)鍋爐灰渣處理PLC控制系統(tǒng)的方法,即運(yùn)用InTouch設(shè)計(jì)監(jiān)控系統(tǒng)去監(jiān)控現(xiàn)場(chǎng)的PLC控制單元。本文詳細(xì)介紹了如何利用InTouch來(lái)創(chuàng)建上位機(jī)的操作界面、如何實(shí)現(xiàn)對(duì)系統(tǒng)的監(jiān)控功能以及如何實(shí)現(xiàn)與下位機(jī)PLC之間的數(shù)據(jù)通信。
關(guān)鍵詞:InTouch,人機(jī)界面,PLC,鍋爐灰渣
目前國(guó)內(nèi)大多數(shù)電站鍋爐都是采取傳統(tǒng)單一的水力除渣方式,這種除渣方式會(huì)導(dǎo)致每年有大量的鍋爐沖渣水排放入灰場(chǎng)繼而作為廢水排入長(zhǎng)江,這樣就造成了大量的能源浪費(fèi)同時(shí)還導(dǎo)致了環(huán)境污染,而且水力除渣還會(huì)降低灰渣的活性從而影響灰渣的綜合利用效益。而新近發(fā)展起來(lái)的正-負(fù)壓氣力聯(lián)合除渣方式則能很好的解決這些問題,它不僅節(jié)約水資源、減少環(huán)境污染、提高灰渣的綜合利用價(jià)值,還能節(jié)約為沖渣水設(shè)置灰場(chǎng)所占用的寶貴的土地資源。不難看出,這種新興的灰渣處理方式滿足了當(dāng)今對(duì)環(huán)保的高要求,有良好的現(xiàn)實(shí)意義,而且還能從根本上降低電廠的生產(chǎn)成本,提供經(jīng)濟(jì)效益,因此推廣前景非常廣闊。
1、鍋爐灰渣控制系統(tǒng)簡(jiǎn)介
正-負(fù)壓氣力聯(lián)合除渣系統(tǒng)是先利用負(fù)壓系統(tǒng)將各灰斗中的灰渣收集起來(lái),即將管道抽成真空將灰渣抽吸出來(lái)并集中到中轉(zhuǎn)灰?guī)?,再利用倉(cāng)泵等設(shè)備將灰渣正壓壓送到廠外灰?guī)爝M(jìn)行綜合利用。這種聯(lián)合除渣系統(tǒng)雖然能很好的節(jié)約水資源、土地資源,減少環(huán)境污染,并大大提高灰渣的綜合利用價(jià)值,但也對(duì)系統(tǒng)控制提出了更高的要求,以往傳統(tǒng)的繼電器控制顯然無(wú)法滿足這種聯(lián)合處理方式的要求,所以我們決定采用可編程控制器(PLC)技術(shù)。所以我們決定采用可編程控制器(PLC)技術(shù)。下面我們就以某電廠為例介紹一下正-負(fù)壓氣力聯(lián)合除渣PLC控制系統(tǒng)。
該電廠共有三臺(tái)機(jī)組,每臺(tái)鍋爐的灰渣都各自采取負(fù)壓除渣系統(tǒng)進(jìn)行收集,但為了節(jié)省管道和相關(guān)設(shè)備,我們將三臺(tái)機(jī)組收集到的所有灰渣集中在一起再共用同一輸送系統(tǒng)輸送至煤粉公司處理后綜合利用。針對(duì)現(xiàn)場(chǎng)情況,我們決定除了每臺(tái)機(jī)組設(shè)置一個(gè)單元機(jī)組PLC外,還設(shè)置一個(gè)公用PLC以負(fù)責(zé)三臺(tái)機(jī)組灰渣壓送的管道切換。除此之外,我們還需設(shè)置一臺(tái)PC機(jī)作為上位機(jī),并利用InTouch設(shè)計(jì)操作界面以監(jiān)控PLC。整個(gè)系統(tǒng)的結(jié)構(gòu)示意圖見圖1。
[align=center]

圖1 鍋爐灰渣控制系統(tǒng)結(jié)構(gòu)示意圖[/align]
2、InTouch軟件介紹
InTouch軟件是Wonderware的FactorySuite工業(yè)集成套裝軟件的一個(gè)核心組件,能簡(jiǎn)單快捷的在Microsoft Windows 2000/NT操作系統(tǒng)上創(chuàng)建人機(jī)界面。
InTouch包含三個(gè)主要程序:InTouch應(yīng)用程序管理器 用于創(chuàng)建新程序和管理已有的應(yīng)用程序;WindowMaker 一種開發(fā)環(huán)境,在其中可以使用面向?qū)ο蟮膱D形來(lái)創(chuàng)建富于動(dòng)感的觸控式顯示窗口;WindowViewer 一種運(yùn)行時(shí)環(huán)境,用于顯示在WindowMaker中創(chuàng)建的圖形窗口。
除此之外,InTouch還提供標(biāo)記名字典和QuickScript腳本功能。設(shè)計(jì)InTouch程序通常需要?jiǎng)?chuàng)建許多不同類型的變量,標(biāo)記名字典就是用來(lái)輸入變量相關(guān)詳細(xì)信息的機(jī)制。QuickScript腳本功能則是供用戶自己編寫新的腳本函數(shù)或調(diào)用已有的腳本函數(shù),在滿足指定條件的情況下執(zhí)行特定的命令或邏輯運(yùn)算,例如,鍵被按下、窗口被打開、值發(fā)生改變等。
InTouch具有世界領(lǐng)先的MMI(人機(jī)界面)和面向?qū)ο蟮膱D形開發(fā)環(huán)境,能高效、快捷地配置用戶的應(yīng)用程序。同時(shí),它在報(bào)警和歷史趨勢(shì)方面的功能也極大地方便了對(duì)系統(tǒng)的監(jiān)控。除此之外,它還具有強(qiáng)大的網(wǎng)絡(luò)功能,通過傳統(tǒng)的DDE和擴(kuò)展的NetDDE的方式,可與本機(jī)和其它計(jì)算機(jī)中的應(yīng)用程序?qū)崟r(shí)交換數(shù)據(jù)。更重要的是,它提供了廣泛的通訊協(xié)議轉(zhuǎn)換接口——I/O Server,能方便地連接到各種控制設(shè)備,包括:Siemens、Modicon、Opto 22、square D等,甚至還可以利用第三方Server。在性能上,InTouch對(duì)核心代碼進(jìn)行了優(yōu)化,運(yùn)行效率比較高。同時(shí),它還經(jīng)過了嚴(yán)格的測(cè)試,并擁有大量的客戶,應(yīng)該說具有相當(dāng)高的可靠性和穩(wěn)定性。正是由于這些優(yōu)勢(shì),InTouch已經(jīng)廣泛應(yīng)用于包含食品加工、半導(dǎo)體、石油、汽車、電力、化工、制藥、紙漿和造紙、交通等在內(nèi)的全球眾多縱向市場(chǎng)。
3、InTouch監(jiān)控系統(tǒng)設(shè)計(jì)
3.1 創(chuàng)建窗口并設(shè)置動(dòng)畫鏈接
InTouch應(yīng)用程序通常是由一系列窗口組成,所以,我們首先要在WindowMaker中創(chuàng)建所需要的窗口。WindowMaker程序本身提供了許多圖形符號(hào)供我們選擇,簡(jiǎn)單的有線條、按鈕,復(fù)雜的有趨勢(shì)圖、組合符號(hào)等,除此之外,我們還可以自定義一些圖形符號(hào)。用這些圖形符號(hào)形象的表示泵、閥門等設(shè)備并按邏輯關(guān)系連接擺放從而形象的表示出整個(gè)系統(tǒng)。
創(chuàng)建好系統(tǒng)圖形,我們還需要通過動(dòng)畫鏈接來(lái)賦予圖形“生命”。InTouch支持兩種類型的鏈接:觸動(dòng)鏈接和顯示鏈接。觸動(dòng)鏈接是供操作員向系統(tǒng)執(zhí)行輸入。顯示鏈接則是給操作員顯示輸出結(jié)果。雙擊圖形中的任個(gè)對(duì)象或符號(hào),都會(huì)出現(xiàn)一個(gè)窗口,見圖2(鏈接窗口)。
[align=center]

圖2 鏈接窗口[/align]
在鏈接窗口中,我們選擇需要的鏈接方式,將圖形符號(hào)與相應(yīng)的表達(dá)式鏈接起來(lái),從而使圖形符號(hào)的外觀、位置等屬性能隨著表達(dá)式值的變化而改變。例如,我們可以讓一個(gè)泵符號(hào)關(guān)閉時(shí)顯示為紅色,打開時(shí)為綠色;也可以把這個(gè)泵符號(hào)做成一個(gè)觸動(dòng)按鈕,通過單擊它來(lái)打開或關(guān)閉泵。
3.2 系統(tǒng)監(jiān)控
上位機(jī)操作界面最主要的功能就是對(duì)系統(tǒng)進(jìn)行監(jiān)控。InTouch是利用標(biāo)記名字典為每個(gè)數(shù)據(jù)定義它的報(bào)警信息:對(duì)于離散型變量,我們可以設(shè)置報(bào)警狀態(tài)是對(duì)應(yīng)于變量的TRUE或FALSE狀態(tài)以及相關(guān)的報(bào)警優(yōu)先級(jí),報(bào)警優(yōu)先級(jí)是表示報(bào)警的嚴(yán)重程度,范圍從1到999,其中1表示最為嚴(yán)重;對(duì)于模擬型變量,我們可以從數(shù)值、偏差和變化率三個(gè)方面來(lái)定義變量的正常操作范圍。
在運(yùn)行過程中,當(dāng)變量的值發(fā)生變化時(shí),InTouch內(nèi)部的子程序報(bào)警邏輯就會(huì)被激活。它通過檢查報(bào)警類型、比較新值與給定的極限,來(lái)確定變量是否在報(bào)警狀態(tài)下。一旦確定是在報(bào)警狀態(tài),程序就會(huì)立即發(fā)出警報(bào)通知操作人員。除了利用InTouch程序本身提供的這套通知系統(tǒng)外,我們還可以自己編寫一些條件腳本或動(dòng)作腳本來(lái)處理相關(guān)的報(bào)警信息,如彈出報(bào)警窗口或聲音提示。。例如,監(jiān)控管道真空度時(shí),我們可以定義一個(gè)條件腳本vacuum.status,并在On True腳本框中寫上:
Show vacuum _alarm_window; (彈出報(bào)警窗口)
PlaySound( e:\alarmsound\管道真空?qǐng)?bào)警.wav ); (聲音報(bào)警)
3.3 數(shù)據(jù)通信
在InTouch中,數(shù)據(jù)主要分為內(nèi)存型和I/O型。內(nèi)存型數(shù)據(jù)為InTouch程序內(nèi)部定義的變量,在程序內(nèi)部就可直接進(jìn)行訪問;I/O型變量的值則一般來(lái)自其它計(jì)算機(jī)結(jié)點(diǎn)或本機(jī)運(yùn)行的其它程序,這類數(shù)據(jù)通常是由InTouch以DDE(動(dòng)態(tài)數(shù)據(jù)交換,Dynamic Data Exchange)或NetDDE的協(xié)議方式訪問而得。
在控制系統(tǒng)中,上位機(jī)需要采集下位機(jī)中來(lái)自現(xiàn)場(chǎng)的數(shù)據(jù),經(jīng)過處理后再將控制命令傳給下位機(jī),以此監(jiān)控運(yùn)行過程。然而,通常InTouch程序無(wú)法直接從下位機(jī)中取得數(shù)據(jù),這時(shí)需要一個(gè)通訊接口——I/O Server。由于本控制系統(tǒng)上、下位機(jī)是通過基于Modbus通信協(xié)議的以太網(wǎng)進(jìn)行連接,所以我們選用Modicon MODBUS Ethernet型號(hào)的I/O Server。
InTouch是使用三個(gè)部分組成的命名慣例來(lái)識(shí)別I/O Server程序中的數(shù)據(jù)元素,這三個(gè)部分分別是:
Application Name(應(yīng)用程序名)是指InTouch直接訪問的程序或服務(wù)器(如I/O Server);
Topic Name(主題名)是指InTouch通過I/O Server要訪問的設(shè)備或程序在I/O Server的Topic Definition中定義的主題名;
Item Name(項(xiàng)目名)是指InTouch要訪問的那個(gè)數(shù)據(jù)的識(shí)別符號(hào),可以是名稱,也可以是存儲(chǔ)地址。
確定I/O Server類型后,要想建立InTouch與下位機(jī)PLC之間的數(shù)據(jù)通信,還需要進(jìn)行兩方面的設(shè)置工作。首先,我們要在I/O Server中Topic Definition中定義下位機(jī)PLC。假設(shè)上位機(jī)、下位機(jī)(如#1 PLC)和運(yùn)行I/O Server的計(jì)算機(jī)在整個(gè)以太網(wǎng)中的IP地址分別為192.168.10.01、192.168.10.10、192.168.10.04,則I/O Server中Topic Definition我們應(yīng)該設(shè)置:
Topic Name——PLC1(可以任意定義);
IP Adrress——192.168.10.10(PLC1的地址)。
這樣,I/O Server就可以從下位機(jī)PLC1中取得數(shù)據(jù)了。
另外,要讓InTouch從I/O Server中取到正確的數(shù)據(jù),還必須在標(biāo)記名字典中為每個(gè)I/O變量定義Access Name(訪問名)和Item Name(項(xiàng)目名)。
Access Name可任意定義,如IOStatue,它實(shí)際包括了Application Name 和Topic Name,其相關(guān)定義參數(shù)為:
Node Name(節(jié)點(diǎn)名)——192.168.10.04(I/O Server所在結(jié)點(diǎn)的IP地址);
Application Name——mbenet(Modicon MODBUS Ethernet I/O Server的程序名);
Topic Name——PLC1(I/O Server中定義的Topic Name)。
Item Name,我們?cè)谶@里使用的是存儲(chǔ)地址。在PLC的組態(tài)Concept程序中,變量的地址是State RAM地址,而PLC與所有的輸入和輸出都是與State RAM相連接的,所以InTouch程序可以通過I/O Server直接訪問這個(gè)地址單元,從而對(duì)變量進(jìn)行讀寫。
一旦這兩方面的設(shè)置工作完成,上位機(jī)的InTouch監(jiān)控系統(tǒng)就可以與下位機(jī)PLC相互進(jìn)行數(shù)據(jù)通訊了。
3.4 系統(tǒng)安全
系統(tǒng)安全是我們?cè)谠O(shè)計(jì)操作界面時(shí)需重點(diǎn)考慮的一個(gè)問題,它直接關(guān)聯(lián)著系統(tǒng)是否能安全順利的運(yùn)行。InTouch可以通過帳號(hào)管理機(jī)制,即給每個(gè)操作員配置用戶名(Operator)、口令(Password)及訪問級(jí)別(Accesslevel),來(lái)限制不同人員的訪問權(quán)限以實(shí)現(xiàn)系統(tǒng)安全。
[align=center]

圖3登錄與注銷界面[/align]
在本系統(tǒng)中,系統(tǒng)登錄的畫面如圖3所示。當(dāng)操作員按下登錄熱鍵(如Ctrl+Shift),將彈出此窗口。 登錄之后的操作員擁有自己的訪問級(jí)別,當(dāng)他訪問應(yīng)用程序中任何受保護(hù)的功能時(shí),系統(tǒng)均會(huì)根據(jù)鏈接到該功能的內(nèi)部安全性變量指定的值去驗(yàn)證操作員的訪問級(jí)別,以確定是否授予訪問權(quán)。比如,某些重要設(shè)備(如電機(jī))的開關(guān)按鈕只能讓工程師以上級(jí)別的人($AccessLevel>5000)操作,則可在按鈕動(dòng)畫鏈接的Disable(on)屬性的條件表達(dá)式中寫上$AccessLevel<5000,這樣沒有登錄或訪問級(jí)別不夠的人就無(wú)法觸發(fā)此按鈕了。又比如,在顯示控制面板窗口的動(dòng)作鏈接時(shí),我們可以使用由IF語(yǔ)句進(jìn)行限定的QuickScript(腳本):
IF $Operator ==“DayShift” THEN
Show “Control Panel Window”;
{以及僅給“日班”操作員執(zhí)行的其它代碼行}
ENDIF;
這樣就可以防止“日班”以外的操作人員看到控制面板窗口或執(zhí)行一些其它相關(guān)的命令。
4、方案總結(jié)
以上是鍋爐灰渣控制系統(tǒng)中上位機(jī)監(jiān)控系統(tǒng)設(shè)計(jì)的基本流程。應(yīng)用InTouch程序,我們不僅能簡(jiǎn)單方便的設(shè)計(jì)出操作界面,還能實(shí)現(xiàn)監(jiān)控、數(shù)據(jù)通信以及系統(tǒng)安全等多方面的功能,同時(shí)還具有較高的可靠性和穩(wěn)定性,并且對(duì)軟件的維護(hù)和升級(jí)也比較方便。目前,該套系統(tǒng)已被應(yīng)用于某電廠鍋爐灰渣控制系統(tǒng)的運(yùn)行中,并且工作穩(wěn)定可靠。
參考文獻(xiàn):
1、Wonderware FactorySuite InTouch用戶指南,Invensys SystemsInc., 修訂版B, Mar. 2004;
2、Wonderware FactorySuite InTouch參考指南,Invensys Systems,Inc., 修訂版A, Nov. 2002;
3、Wonderware Modicon MODBUS Ethernet I/O Server User’s Guide, Wonderware Corporation, Revision F, Dec. 2002。
4、InTouch在靜電除塵自動(dòng)控制系統(tǒng)中的應(yīng)用,李文國(guó)、董為民、郭瑜、許立梓,《微計(jì)算計(jì)信息》(測(cè)控自動(dòng)化)2005年第21卷第8-1期,132-134。