摘 要:針對鍋爐傳統(tǒng)水力除渣方式的諸多不足之處,依據(jù)正-負(fù)壓氣力聯(lián)合除渣方式的特點,提出了應(yīng)用InTouch軟件設(shè)計鍋爐灰渣處理PLC控制系統(tǒng)的方法,即運用InTouch設(shè)計監(jiān)控系統(tǒng)去監(jiān)控現(xiàn)場的PLC控制單元。本文詳細(xì)介紹了如何利用InTouch來創(chuàng)建上位機(jī)的操作界面、如何實現(xiàn)對系統(tǒng)的監(jiān)控功能以及如何實現(xiàn)與下位機(jī)PLC之間的數(shù)據(jù)通信。
關(guān)鍵詞:InTouch,人機(jī)界面,PLC,鍋爐灰渣
目前國內(nèi)大多數(shù)電站鍋爐都是采取傳統(tǒng)單一的水力除渣方式,這種除渣方式會導(dǎo)致每年有大量的鍋爐沖渣水排放入灰場繼而作為廢水排入長江,這樣就造成了大量的能源浪費同時還導(dǎo)致了環(huán)境污染,而且水力除渣還會降低灰渣的活性從而影響灰渣的綜合利用效益。而新近發(fā)展起來的正-負(fù)壓氣力聯(lián)合除渣方式則能很好的解決這些問題,它不僅節(jié)約水資源、減少環(huán)境污染、提高灰渣的綜合利用價值,還能節(jié)約為沖渣水設(shè)置灰場所占用的寶貴的土地資源。不難看出,這種新興的灰渣處理方式滿足了當(dāng)今對環(huán)保的高要求,有良好的現(xiàn)實意義,而且還能從根本上降低電廠的生產(chǎn)成本,提供經(jīng)濟(jì)效益,因此推廣前景非常廣闊。
1、鍋爐灰渣控制系統(tǒng)簡介
正-負(fù)壓氣力聯(lián)合除渣系統(tǒng)是先利用負(fù)壓系統(tǒng)將各灰斗中的灰渣收集起來,即將管道抽成真空將灰渣抽吸出來并集中到中轉(zhuǎn)灰?guī)?,再利用倉泵等設(shè)備將灰渣正壓壓送到廠外灰?guī)爝M(jìn)行綜合利用。這種聯(lián)合除渣系統(tǒng)雖然能很好的節(jié)約水資源、土地資源,減少環(huán)境污染,并大大提高灰渣的綜合利用價值,但也對系統(tǒng)控制提出了更高的要求,以往傳統(tǒng)的繼電器控制顯然無法滿足這種聯(lián)合處理方式的要求,所以我們決定采用可編程控制器(PLC)技術(shù)。所以我們決定采用可編程控制器(PLC)技術(shù)。下面我們就以某電廠為例介紹一下正-負(fù)壓氣力聯(lián)合除渣PLC控制系統(tǒng)。
該電廠共有三臺機(jī)組,每臺鍋爐的灰渣都各自采取負(fù)壓除渣系統(tǒng)進(jìn)行收集,但為了節(jié)省管道和相關(guān)設(shè)備,我們將三臺機(jī)組收集到的所有灰渣集中在一起再共用同一輸送系統(tǒng)輸送至煤粉公司處理后綜合利用。針對現(xiàn)場情況,我們決定除了每臺機(jī)組設(shè)置一個單元機(jī)組PLC外,還設(shè)置一個公用PLC以負(fù)責(zé)三臺機(jī)組灰渣壓送的管道切換。除此之外,我們還需設(shè)置一臺PC機(jī)作為上位機(jī),并利用InTouch設(shè)計操作界面以監(jiān)控PLC。整個系統(tǒng)的結(jié)構(gòu)示意圖見圖1。
[align=center]
圖1 鍋爐灰渣控制系統(tǒng)結(jié)構(gòu)示意圖[/align]
2、InTouch軟件介紹
InTouch軟件是Wonderware的FactorySuite工業(yè)集成套裝軟件的一個核心組件,能簡單快捷的在Microsoft Windows 2000/NT操作系統(tǒng)上創(chuàng)建人機(jī)界面。
InTouch包含三個主要程序:InTouch應(yīng)用程序管理器 用于創(chuàng)建新程序和管理已有的應(yīng)用程序;WindowMaker 一種開發(fā)環(huán)境,在其中可以使用面向?qū)ο蟮膱D形來創(chuàng)建富于動感的觸控式顯示窗口;WindowViewer 一種運行時環(huán)境,用于顯示在WindowMaker中創(chuàng)建的圖形窗口。
除此之外,InTouch還提供標(biāo)記名字典和QuickScript腳本功能。設(shè)計InTouch程序通常需要創(chuàng)建許多不同類型的變量,標(biāo)記名字典就是用來輸入變量相關(guān)詳細(xì)信息的機(jī)制。QuickScript腳本功能則是供用戶自己編寫新的腳本函數(shù)或調(diào)用已有的腳本函數(shù),在滿足指定條件的情況下執(zhí)行特定的命令或邏輯運算,例如,鍵被按下、窗口被打開、值發(fā)生改變等。
InTouch具有世界領(lǐng)先的MMI(人機(jī)界面)和面向?qū)ο蟮膱D形開發(fā)環(huán)境,能高效、快捷地配置用戶的應(yīng)用程序。同時,它在報警和歷史趨勢方面的功能也極大地方便了對系統(tǒng)的監(jiān)控。除此之外,它還具有強(qiáng)大的網(wǎng)絡(luò)功能,通過傳統(tǒng)的DDE和擴(kuò)展的NetDDE的方式,可與本機(jī)和其它計算機(jī)中的應(yīng)用程序?qū)崟r交換數(shù)據(jù)。更重要的是,它提供了廣泛的通訊協(xié)議轉(zhuǎn)換接口——I/O Server,能方便地連接到各種控制設(shè)備,包括:Siemens、Modicon、Opto 22、square D等,甚至還可以利用第三方Server。在性能上,InTouch對核心代碼進(jìn)行了優(yōu)化,運行效率比較高。同時,它還經(jīng)過了嚴(yán)格的測試,并擁有大量的客戶,應(yīng)該說具有相當(dāng)高的可靠性和穩(wěn)定性。正是由于這些優(yōu)勢,InTouch已經(jīng)廣泛應(yīng)用于包含食品加工、半導(dǎo)體、石油、汽車、電力、化工、制藥、紙漿和造紙、交通等在內(nèi)的全球眾多縱向市場。
3、InTouch監(jiān)控系統(tǒng)設(shè)計
3.1 創(chuàng)建窗口并設(shè)置動畫鏈接
InTouch應(yīng)用程序通常是由一系列窗口組成,所以,我們首先要在WindowMaker中創(chuàng)建所需要的窗口。WindowMaker程序本身提供了許多圖形符號供我們選擇,簡單的有線條、按鈕,復(fù)雜的有趨勢圖、組合符號等,除此之外,我們還可以自定義一些圖形符號。用這些圖形符號形象的表示泵、閥門等設(shè)備并按邏輯關(guān)系連接擺放從而形象的表示出整個系統(tǒng)。
創(chuàng)建好系統(tǒng)圖形,我們還需要通過動畫鏈接來賦予圖形“生命”。InTouch支持兩種類型的鏈接:觸動鏈接和顯示鏈接。觸動鏈接是供操作員向系統(tǒng)執(zhí)行輸入。顯示鏈接則是給操作員顯示輸出結(jié)果。雙擊圖形中的任個對象或符號,都會出現(xiàn)一個窗口,見圖2(鏈接窗口)。
[align=center]
圖2 鏈接窗口[/align]
在鏈接窗口中,我們選擇需要的鏈接方式,將圖形符號與相應(yīng)的表達(dá)式鏈接起來,從而使圖形符號的外觀、位置等屬性能隨著表達(dá)式值的變化而改變。例如,我們可以讓一個泵符號關(guān)閉時顯示為紅色,打開時為綠色;也可以把這個泵符號做成一個觸動按鈕,通過單擊它來打開或關(guān)閉泵。
3.2 系統(tǒng)監(jiān)控
上位機(jī)操作界面最主要的功能就是對系統(tǒng)進(jìn)行監(jiān)控。InTouch是利用標(biāo)記名字典為每個數(shù)據(jù)定義它的報警信息:對于離散型變量,我們可以設(shè)置報警狀態(tài)是對應(yīng)于變量的TRUE或FALSE狀態(tài)以及相關(guān)的報警優(yōu)先級,報警優(yōu)先級是表示報警的嚴(yán)重程度,范圍從1到999,其中1表示最為嚴(yán)重;對于模擬型變量,我們可以從數(shù)值、偏差和變化率三個方面來定義變量的正常操作范圍。
在運行過程中,當(dāng)變量的值發(fā)生變化時,InTouch內(nèi)部的子程序報警邏輯就會被激活。它通過檢查報警類型、比較新值與給定的極限,來確定變量是否在報警狀態(tài)下。一旦確定是在報警狀態(tài),程序就會立即發(fā)出警報通知操作人員。除了利用InTouch程序本身提供的這套通知系統(tǒng)外,我們還可以自己編寫一些條件腳本或動作腳本來處理相關(guān)的報警信息,如彈出報警窗口或聲音提示。。例如,監(jiān)控管道真空度時,我們可以定義一個條件腳本vacuum.status,并在On True腳本框中寫上:
Show vacuum _alarm_window; (彈出報警窗口)
PlaySound( e:\alarmsound\管道真空報警.wav ); (聲音報警)
3.3 數(shù)據(jù)通信
在InTouch中,數(shù)據(jù)主要分為內(nèi)存型和I/O型。內(nèi)存型數(shù)據(jù)為InTouch程序內(nèi)部定義的變量,在程序內(nèi)部就可直接進(jìn)行訪問;I/O型變量的值則一般來自其它計算機(jī)結(jié)點或本機(jī)運行的其它程序,這類數(shù)據(jù)通常是由InTouch以DDE(動態(tài)數(shù)據(jù)交換,Dynamic Data Exchange)或NetDDE的協(xié)議方式訪問而得。
在控制系統(tǒng)中,上位機(jī)需要采集下位機(jī)中來自現(xiàn)場的數(shù)據(jù),經(jīng)過處理后再將控制命令傳給下位機(jī),以此監(jiān)控運行過程。然而,通常InTouch程序無法直接從下位機(jī)中取得數(shù)據(jù),這時需要一個通訊接口——I/O Server。由于本控制系統(tǒng)上、下位機(jī)是通過基于Modbus通信協(xié)議的以太網(wǎng)進(jìn)行連接,所以我們選用Modicon MODBUS Ethernet型號的I/O Server。
InTouch是使用三個部分組成的命名慣例來識別I/O Server程序中的數(shù)據(jù)元素,這三個部分分別是:
Application Name(應(yīng)用程序名)是指InTouch直接訪問的程序或服務(wù)器(如I/O Server);
Topic Name(主題名)是指InTouch通過I/O Server要訪問的設(shè)備或程序在I/O Server的Topic Definition中定義的主題名;
Item Name(項目名)是指InTouch要訪問的那個數(shù)據(jù)的識別符號,可以是名稱,也可以是存儲地址。
確定I/O Server類型后,要想建立InTouch與下位機(jī)PLC之間的數(shù)據(jù)通信,還需要進(jìn)行兩方面的設(shè)置工作。首先,我們要在I/O Server中Topic Definition中定義下位機(jī)PLC。假設(shè)上位機(jī)、下位機(jī)(如#1 PLC)和運行I/O Server的計算機(jī)在整個以太網(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)記名字典中為每個I/O變量定義Access Name(訪問名)和Item Name(項目名)。
Access Name可任意定義,如IOStatue,它實際包括了Application Name 和Topic Name,其相關(guān)定義參數(shù)為:
Node Name(節(jié)點名)——192.168.10.04(I/O Server所在結(jié)點的IP地址);
Application Name——mbenet(Modicon MODBUS Ethernet I/O Server的程序名);
Topic Name——PLC1(I/O Server中定義的Topic Name)。
Item Name,我們在這里使用的是存儲地址。在PLC的組態(tài)Concept程序中,變量的地址是State RAM地址,而PLC與所有的輸入和輸出都是與State RAM相連接的,所以InTouch程序可以通過I/O Server直接訪問這個地址單元,從而對變量進(jìn)行讀寫。
一旦這兩方面的設(shè)置工作完成,上位機(jī)的InTouch監(jiān)控系統(tǒng)就可以與下位機(jī)PLC相互進(jìn)行數(shù)據(jù)通訊了。
3.4 系統(tǒng)安全
系統(tǒng)安全是我們在設(shè)計操作界面時需重點考慮的一個問題,它直接關(guān)聯(lián)著系統(tǒng)是否能安全順利的運行。InTouch可以通過帳號管理機(jī)制,即給每個操作員配置用戶名(Operator)、口令(Password)及訪問級別(Accesslevel),來限制不同人員的訪問權(quán)限以實現(xiàn)系統(tǒng)安全。
[align=center]
圖3登錄與注銷界面[/align]
在本系統(tǒng)中,系統(tǒng)登錄的畫面如圖3所示。當(dāng)操作員按下登錄熱鍵(如Ctrl+Shift),將彈出此窗口。 登錄之后的操作員擁有自己的訪問級別,當(dāng)他訪問應(yīng)用程序中任何受保護(hù)的功能時,系統(tǒng)均會根據(jù)鏈接到該功能的內(nèi)部安全性變量指定的值去驗證操作員的訪問級別,以確定是否授予訪問權(quán)。比如,某些重要設(shè)備(如電機(jī))的開關(guān)按鈕只能讓工程師以上級別的人($AccessLevel>5000)操作,則可在按鈕動畫鏈接的Disable(on)屬性的條件表達(dá)式中寫上$AccessLevel<5000,這樣沒有登錄或訪問級別不夠的人就無法觸發(fā)此按鈕了。又比如,在顯示控制面板窗口的動作鏈接時,我們可以使用由IF語句進(jìn)行限定的QuickScript(腳本):
IF $Operator ==“DayShift” THEN
Show “Control Panel Window”;
?。约皟H給“日班”操作員執(zhí)行的其它代碼行}
ENDIF;
這樣就可以防止“日班”以外的操作人員看到控制面板窗口或執(zhí)行一些其它相關(guān)的命令。
4、方案總結(jié)
以上是鍋爐灰渣控制系統(tǒng)中上位機(jī)監(jiān)控系統(tǒng)設(shè)計的基本流程。應(yīng)用InTouch程序,我們不僅能簡單方便的設(shè)計出操作界面,還能實現(xiàn)監(jiān)控、數(shù)據(jù)通信以及系統(tǒng)安全等多方面的功能,同時還具有較高的可靠性和穩(wěn)定性,并且對軟件的維護(hù)和升級也比較方便。目前,該套系統(tǒng)已被應(yīng)用于某電廠鍋爐灰渣控制系統(tǒng)的運行中,并且工作穩(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在靜電除塵自動控制系統(tǒng)中的應(yīng)用,李文國、董為民、郭瑜、許立梓,《微計算計信息》(測控自動化)2005年第21卷第8-1期,132-134。