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

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

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

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