SCADA系統(tǒng)在石化生產過程中的報警管理淺析
1 引言
石油化工生產過程具有易燃、易爆、有毒、有害的特點。為了確保企業(yè)生產安全、穩(wěn)定、長周期生產,保護國家財產,保障職工人身安全和健康,提高經(jīng)濟效益,必須加強安全生產管理,不斷提高安全生產監(jiān)督水平。
隨著生產過程自動化水平不斷提高,設備綜合管理和重要性與日俱增。在廣州石化的生產實踐中,近年來,大量采用scada(supervisory control and data acquistion)系統(tǒng)作為生產過程管理自動化控制系統(tǒng)。作為監(jiān)督控制與數(shù)據(jù)采集系統(tǒng),scada系統(tǒng)將先進的計算機技術、工業(yè)控制技術和通訊技術有機地結合在一起,既具有強大的現(xiàn)場測控功能,又具有極強的組網(wǎng)通訊能力,是自動化領域中廣泛應用的重要系統(tǒng)之一。結合我廠的生產特點,生產過程中的報警和事件的監(jiān)督管理是一個極為重要的環(huán)節(jié)。因此本文將scada系統(tǒng)的報警和事件管理作為重點來論述。
2 scada系統(tǒng)在廣州石化的應用簡介
scada系統(tǒng)在廣州石化的成功應用實例很多,最典型的應用包括原油碼頭、油庫及輸油管線監(jiān)控系統(tǒng)、原油罐區(qū)監(jiān)控系統(tǒng)、液烴罐區(qū)監(jiān)控系統(tǒng)、水處理控制系統(tǒng)和煙機機組控制系統(tǒng)等。雖然這些系統(tǒng)所監(jiān)控的生產工藝過程各有不同,而且所使用的系統(tǒng)硬件及scada軟件也有區(qū)別,但它們一般都具有如圖1所示的基本結構:基于pc機windows平臺的scada上位機系統(tǒng),通過通訊網(wǎng)絡連接到各主流廠家plc系統(tǒng)平臺作為下位機系統(tǒng)。
上位機系統(tǒng)的scada軟件主要是采用wonderware的intouch和西門子公司的wincc。下位機系統(tǒng)平臺則是各主流廠家的各種型號的plc控制系統(tǒng),它們既有自己封閉的網(wǎng)絡又有開放接口。上位機通常通過i/o接口卡或標準串口運行專用的上層采集模塊,從下位機中實時地采集設備的各種參數(shù)。上位機系統(tǒng)在接受這些信息后,以適當?shù)男问饺鐖D形、圖象或聲音等方式顯示給用戶,以達到監(jiān)視的目的;同時數(shù)據(jù)經(jīng)過處理后,告知用戶設備各種參數(shù)的狀態(tài)(報警、正?;驁缶謴停?上位機同時還可以接受操作人員的指示,將控制信號發(fā)送到下位機中,以達到控制的目的。
對于設備的操作方式, scada系統(tǒng)能夠方便地實現(xiàn)三種操作方式:
“遠程操作”—也就是在現(xiàn)場控制室操作員站上能對現(xiàn)場設備、閥門等的啟停、開關進行操作,即在計算機屏幕上操作。
“就地操作”—某些設備也可以實現(xiàn)就地操作,在現(xiàn)場電氣柜或機旁操作箱上的按鈕進行操作。
“自動操作”—某些工藝過程比如由于液位低等外部原因引起,通過plc系統(tǒng)直接輸出停泵等操作,以保護現(xiàn)場設備和工藝安全。
3 scada系統(tǒng)的報警和事件管理
3.1 系統(tǒng)的軟硬件的組成
作為本節(jié)所引用的實例,其系統(tǒng)的軟硬件組成結構和圖1相同。其中系統(tǒng)的上位機采用的scada軟件包,包括wonderware公司的intouch8.0和rockwell公司的rslogix5等,它們可以在pc-base的任何平臺上運行,每單項功能設計均為模塊化設計,用戶可以在系統(tǒng)中進行各種新的開發(fā)和修改而不影響系統(tǒng)的正常運行;而系統(tǒng)的下位機采用allen-bradley公司的plc5控制系統(tǒng)。
3.2 系統(tǒng)的報警和事件
intouch有兩種方式來通知操作員過程活動:報警與事件。報警是過程狀態(tài)出現(xiàn)問題時發(fā)出的警告,同時要求操作人員做出響應。當一過程值超出用戶自定義的極限時,譬如模擬量超出了上限值,報警即被觸發(fā)。它觸發(fā)了未確認報警狀態(tài),可以通知操作人員發(fā)生了什么問題。如果加入配置,intouch能夠將報警寫入到磁盤文件中,并將它打印出來。一旦操作人員確認了報警,系統(tǒng)返回確認狀態(tài)。事件表示了系統(tǒng)正常狀態(tài)時的消息,當某一系統(tǒng)條件滿足時,事件即被觸發(fā),它不要求操作人員響應,其查詢和記錄方法與報警相同。
3.3 報警和事件的顯示與查詢
intouch提供兩種報警顯示系統(tǒng):標準報警顯示和分布式報警顯示。由于分布式報警顯示系統(tǒng)界面更豐富、功能更為強大,而且在運行時進行各種查詢更為方便靈活,因此即使在獨立式應用程序系統(tǒng)中亦推薦使用分布式報警顯示對象。圖2所示就是一個典型應用的報警顯示畫面示意圖。
為了在系統(tǒng)運行中方便操作員進行各種分類查詢和操作,在圖2的報警顯示畫面中設置了許多功能按鈕(用戶可根據(jù)各系統(tǒng)的實際要求不同而進行增減)。在這一實例中過程系統(tǒng)只劃分為:a1,a2,a3三個單元(在intouch中亦稱為報警組)。下面是具體的實施要點:
首先,在標記名字典中創(chuàng)建消息標記名alarm_group和querytype。alarm_group用來定義報警組名:在圖2畫面中,如按下單元報警按鈕“a1”執(zhí)行acTIon腳本:alarm_group=“a1”;
按下單元報警按鈕“a2”執(zhí)行acTIon腳本:alarm_group=“a2”;
按下“返回系統(tǒng)報警總匯”執(zhí)行acTIon腳本:alarm_group=“$system”等。querytype用來定義查詢類型:按下“報警摘要”按鈕執(zhí)行acTIon腳本:querytype=“summ”;
按下“報警歷史”按鈕執(zhí)行action腳本:querytype=“hist”。按下以上按鈕及“a3”按鈕均要執(zhí)行共同的action腳本:almquery(“almobj_main”,“intouch!”+alarm_group, 1, 999,“all”,querytype),以動態(tài)地切換報警顯示畫面,腳本中almobj_main為在圖2中嵌入的報警對象名稱。
為了確認系統(tǒng)中發(fā)生的報警,在“確認全系統(tǒng)報警”按鈕上鏈接action腳本:$system.ack=1;在“確認當前報警組報警”按鈕上鏈接action腳本:groupvar.name=alarm_group,groupvar.ack=1;其中groupvar報警組組變量。此外,為了方便操作員操作,根據(jù)對應報警組是否存在未確認的報警在單元報警按鈕a1,a2,a3上添加顏色動畫鏈接,讓操作員直觀了解系統(tǒng)單元報警狀態(tài)并能直接進入有未確認報警的單元細目顯示畫面,確認該單元的報警。
3.4 報警確認的操作站通知
intouch的設計支持創(chuàng)建獨立式和分布式應用程序。分布式應用系統(tǒng)通常有好幾層網(wǎng)絡,而且分布式應用程序亦要復雜得多,但其分布式報警功能在各操作站和服務器之間能自動實現(xiàn)報警確認的“通知”功能。相反,獨立式應用程序一般較容易配置,需最少網(wǎng)絡,只需要簡單的維護,各工作站獨立工作,自動實現(xiàn)操作站冗余功能。因此,在中、小型scada系統(tǒng)中大多都將上位機系統(tǒng)配置成獨立式應用程序。
但是,對于獨立式應用,系統(tǒng)中各操作站的報警確認在intouch應用程序中與其他操作站是無關的。為了實現(xiàn)類似分布式應用程序報警確認的“通知”功能,需要在獨立式應用系統(tǒng)中手工增加報警確認的操作站通知功能。
以單元a1的報警確認為例,該單元所有的報警屬于報警組a1。首先在標記名字典創(chuàng)建離散i/o標記名:a1alarm-ack,其dde訪問項目為:b3:301/1。并在apllication script中添加腳本:a1alarm-ack = a1.ack。而在plc梯形圖程序中添加圖3所示的梯級。
這樣,不論系統(tǒng)中哪一個操作站觸發(fā)a1單元的報警確認:a1.ack=1,則有a1alarm-ack=1,均會使plc處理器中的位b3:301/1=1,通過dde自動更新其他操作站的標記名a1alarm-ack的值,從而確認系統(tǒng)所有工作站a1單元的所有報警(a1.ack=1)。圖3中的定時器t48:1的作用是當觸發(fā)報警確認后2秒鐘,自動解鎖plc位b3:301/1,以接受a1單元的新報警。
3.5 現(xiàn)場設備的報警顯示
在裝置的控制系統(tǒng)改造中,工藝往往會要求保留現(xiàn)場報警指示燈?,F(xiàn)以儀表位號tag1為例說明一個現(xiàn)場報警指示燈的實現(xiàn)方法:首先在標記名字典創(chuàng)建離散i/o標記名:tag1-unack,tag1-lamp,其dde訪問項目分別為b3:301/2,o:101/1。在plc梯形圖程序中添加以下梯級:
在圖4中,tag1是報警指示燈tag1-lamp的報警源,o:101/1為報警指示燈的輸出通道。標記名square-wave-signal是系統(tǒng)共用的頻率為1hz的方波信號源(它是采用定時器方式在plc梯形圖的其他梯級中實現(xiàn))。圖4梯級的功能是:當系統(tǒng)存在位號tag1的未確認報警時,tag1-unack=1,報警指示燈tag1-lamp輸出頻率1hz的閃光信號到現(xiàn)場報警指示面板顯示;當tag1報警已確認時,tag1=1和tag1-unack=0,那么tag1-lamp輸出報警常亮信號;正常時o:101/1=0,tag1-lamp輸出報警滅燈信號。test是現(xiàn)場報警指示燈面板上的公用試燈按鈕。
為了不斷地掃描該儀表位號是否存在新的未確認報警狀態(tài),需apllication script的運行時腳本中添加語句:tag1-unack=tag1.unack。
4 結束語
本文所論述的報警與事件管理方法綜合了目前廣州石化多套運行中的scada系統(tǒng)的相關方法和技巧,在多年的生產實踐中已經(jīng)證明是行之有效的,對于其他中、小型系統(tǒng)的scada-plc改造具有普遍性的參考意義。