田家興 梁建青 王海峰 馬鐵量
(中國(guó)石油西氣東輸管道公司壓縮機(jī)處,武漢 430073)
防呆是一種預(yù)防矯正的行為約束手段,通過運(yùn)用一系列的自動(dòng)保護(hù)手段,即使操作者沒有專業(yè)知識(shí)和相關(guān)經(jīng)驗(yàn),甚至不需要花費(fèi)注意力,就能憑直覺而正確無(wú)誤地完成操作。在工業(yè)設(shè)計(jì)上,為了避免誤操作(包括無(wú)意識(shí)的動(dòng)作、下意識(shí)的誤動(dòng)作或不小心的肢體動(dòng)作)而損壞機(jī)器或造成人身傷害,可以采用防呆系統(tǒng)的設(shè)計(jì),進(jìn)行恰當(dāng)?shù)念A(yù)防。
筆者在分析設(shè)計(jì)防呆系統(tǒng)的必要性與可行性的基礎(chǔ)上,以關(guān)閉出站閥門為例,將防呆程序與腳本邏輯成功應(yīng)用于中國(guó)石油西氣東輸站場(chǎng)的數(shù)據(jù)采集與監(jiān)控系統(tǒng)(SCADA)中,降低了操作人員的誤操作,并給出了合理的操作建議,以期提高管道輸氣的生產(chǎn)效率。
中國(guó)石油西氣東輸管道站場(chǎng)設(shè)有獨(dú)立的站控自控系統(tǒng),對(duì)其生產(chǎn)工藝進(jìn)行控制管理。西氣東輸站控自控系統(tǒng)采用Allen-Bradley系列PLC系統(tǒng)(以下簡(jiǎn)稱AB PLC),對(duì)站場(chǎng)的工藝數(shù)據(jù)進(jìn)行采集、監(jiān)控與管理。操作員通過使用Honeywell的HS上位機(jī)操作系統(tǒng)對(duì)站場(chǎng)設(shè)備進(jìn)行監(jiān)控[1]。西氣東輸站場(chǎng)SCADA系統(tǒng)架構(gòu)如圖1所示。
站場(chǎng)設(shè)備的自動(dòng)控制邏輯主要由AB PLC實(shí)現(xiàn)。操作員通過HS上位機(jī)對(duì)現(xiàn)場(chǎng)設(shè)備進(jìn)行監(jiān)控與操作,當(dāng)HS上位機(jī)對(duì)現(xiàn)場(chǎng)設(shè)備下發(fā)指令后,動(dòng)作信號(hào)會(huì)通過以太網(wǎng)下發(fā)給AB PLC,由AB PLC邏輯運(yùn)算后,將動(dòng)作結(jié)果通過硬線下發(fā)給現(xiàn)場(chǎng)設(shè)備,實(shí)現(xiàn)操作員的遠(yuǎn)程自動(dòng)控制功能[2]。
圖1 西氣東輸站場(chǎng)SCADA系統(tǒng)架構(gòu)簡(jiǎn)圖
在中國(guó)石油西氣東輸管道日常生產(chǎn)輸氣運(yùn)行中存在很多風(fēng)險(xiǎn),站場(chǎng)操作人員必須經(jīng)過大量的培訓(xùn),作業(yè)操作之前必須進(jìn)行風(fēng)險(xiǎn)識(shí)別,維護(hù)檢修過程中要提前做好保護(hù)等工作。如果站場(chǎng)人員誤操作,可能會(huì)造成管道天然氣壓力異常波動(dòng)、壓縮機(jī)停機(jī)及流量計(jì)損壞等,嚴(yán)重時(shí)甚至?xí)斐商烊粴馔]?。?duì)于分輸不能間斷的場(chǎng)站,停輸很有可能給下游化工廠及電廠等企業(yè)造成嚴(yán)重的經(jīng)濟(jì)損失。防呆系統(tǒng)的應(yīng)用可以有效避免操作人員的誤操作,防止異常操作給生產(chǎn)運(yùn)行帶來(lái)的不必要的損失[3]。
站場(chǎng)操作以閥門控制為例,站場(chǎng)關(guān)閥控制流程首先由操作員在HS上位機(jī)上下發(fā)關(guān)閥命令,命令下發(fā)給AB PLC的閥門控制模塊;在閥門控制模塊中,分析閥門狀態(tài),計(jì)算控制邏輯,然后將結(jié)果進(jìn)行輸出到現(xiàn)場(chǎng)閥門,對(duì)閥門進(jìn)行關(guān)閥操作。整個(gè)流程中,閥門控制模塊只對(duì)閥門狀態(tài)進(jìn)行判斷,根據(jù)閥門情況決定是否能進(jìn)行關(guān)閥操作,并未對(duì)整個(gè)工藝情況進(jìn)行分析[4]。
加入防呆系統(tǒng)后,當(dāng)操作員在HS上位機(jī)上下發(fā)命令給AB PLC后,首先進(jìn)行判斷是否投用了防呆功能,若防呆系統(tǒng)未投用,則指令進(jìn)入閥門控制模塊并進(jìn)行正常關(guān)閥流程。若防呆系統(tǒng)投用,則進(jìn)入防呆條件判斷邏輯,判斷此時(shí)的工藝條件是否可以執(zhí)行此項(xiàng)操作,若可以執(zhí)行此操作,則邏輯跳轉(zhuǎn)到閥門控制模塊中;若判斷當(dāng)前環(huán)境下不適合此項(xiàng)操作,則返回給上位機(jī)HS一個(gè)數(shù)值,在上位機(jī)畫面中彈出提示,警告操作員執(zhí)行當(dāng)前操作會(huì)造成的后果并詢問操作員是否繼續(xù)執(zhí)行此操作。當(dāng)操作員選擇仍要執(zhí)行此動(dòng)作后,命令直接進(jìn)入閥門控制模塊,進(jìn)行閥門動(dòng)作;若當(dāng)操作員看到提示后,知道進(jìn)行了誤操作,即可取消當(dāng)前操作,關(guān)閥命令被取消,閥門保持現(xiàn)在的運(yùn)行狀態(tài)不變[5]。防呆系統(tǒng)的邏輯流程如圖2所示。
在現(xiàn)有的SCADA系統(tǒng)中實(shí)現(xiàn)防呆功能,一方面需要在AB PLC中增添防呆程序邏輯功能,實(shí)現(xiàn)防呆邏輯判斷;另一方面需要在上位機(jī)HS系統(tǒng)中增加腳本邏輯,對(duì)AB PLC返回的防呆信號(hào)進(jìn)行處理,并彈出窗口提示操作員相關(guān)信息。
圖2 防呆系統(tǒng)的邏輯流程
在例程欄中新增防呆邏輯例程,命名為fangdai。在主例程MainRoutine中添加fangdai例程的跳轉(zhuǎn)。在fangdai例程中,可以對(duì)站場(chǎng)中所有工藝相關(guān)的防呆保護(hù)邏輯進(jìn)行編寫。新增防呆例程跳轉(zhuǎn)的界面如圖3所示。
圖3 新增防呆例程跳轉(zhuǎn)的界面
以關(guān)閉出站閥門為例編寫防呆邏輯。當(dāng)上位機(jī)下發(fā)關(guān)閥命令后,首先判斷防呆保護(hù)是否投用,若未投用,則直接進(jìn)入關(guān)閥邏輯;當(dāng)防呆保護(hù)投用后,則判斷防呆條件是否滿足,如果滿足就給上位機(jī)返回防呆信號(hào),上位機(jī)根據(jù)返回信息給出操作員提示,不滿足則繼續(xù)進(jìn)行關(guān)閥邏輯[6]。關(guān)閉出站閥門的防呆判斷主要有工作調(diào)壓閥是否關(guān)到位、分輸路中的兩路流量計(jì)的流量是否小于100m3/s,若流量計(jì)流量過大,瞬間關(guān)斷出站閥會(huì)造成流量波動(dòng),打壞流量計(jì)。防呆判斷邏輯流程如圖4所示。
根據(jù)防呆邏輯流程圖對(duì)AB PLC的fangdai子例程進(jìn)行邏輯編寫,如圖5所示,其中LXO為上位機(jī)下發(fā)的關(guān)閥命令,N7[5].0關(guān)聯(lián)的是2102#閥門模塊的關(guān)閥命令,discription2012為給上位機(jī)的防呆返回值。
圖4 防呆判斷邏輯流程
防呆保護(hù)邏輯編寫完成后,需要在上位機(jī)對(duì)HS系統(tǒng)添加新的數(shù)據(jù)點(diǎn)并進(jìn)行腳本編輯,實(shí)現(xiàn)操作員在進(jìn)行不規(guī)范操作時(shí),給出提示警告的功能。
對(duì)HS服務(wù)器進(jìn)行設(shè)置,首先需要在Quick Builder數(shù)據(jù)庫(kù)軟件中建立3個(gè)新數(shù)據(jù)點(diǎn),分別映射AB PLC中的關(guān)閥命令LXO、操作員確認(rèn)的confirm數(shù)據(jù)點(diǎn)與邏輯運(yùn)算生成的防呆返回值discription2102。對(duì)3個(gè)數(shù)據(jù)點(diǎn)進(jìn)行創(chuàng)建并將地址與AB PLC中的數(shù)據(jù)點(diǎn)進(jìn)行地址映射后,下裝到數(shù)據(jù)庫(kù)服務(wù)器中,完成數(shù)據(jù)庫(kù)新增數(shù)據(jù)點(diǎn)的編輯[7]。
圖5 AB PLC的fangdai子例程邏輯
在數(shù)據(jù)庫(kù)設(shè)置完成后,要對(duì)HS上位機(jī)畫面進(jìn)行編輯。使用HMI Display Builder打開組態(tài)畫面并進(jìn)行編輯,繪制兩個(gè)數(shù)據(jù)點(diǎn)畫面并進(jìn)行隱藏,然后分別映射到對(duì)應(yīng)的操作員確認(rèn)confirm數(shù)據(jù)點(diǎn)與邏輯生成的防呆返回值,圖形分別命名為“fanhuizhi”與“queren”。添加腳本程序如下:
if fanhuizhi.value=0 then
if MsgBox("工作調(diào)壓閥還未關(guān)到位,不建議進(jìn)行關(guān)出站閥操作,是否繼續(xù)關(guān)閉出站閥",vbYesNo+vbExclamation,"防呆提示")=vbYes Then
queren.value=1
end if
else
if MsgBox("當(dāng)前還在分輸中,不建議進(jìn)行關(guān)出站閥操作,是否繼續(xù)關(guān)閉出站閥",vbYesNo+vbExclamation,"防呆提示")=vbYes Then
queren.value=1
end if
end if
當(dāng)fanhuizhi圖形中對(duì)應(yīng)的數(shù)據(jù)點(diǎn)discription2102的值為0時(shí),彈出對(duì)話框提示“工作調(diào)壓閥還未關(guān)到位,不建議進(jìn)行關(guān)出站閥操作,是否繼續(xù)關(guān)閉出站閥”,如果操作員選擇“yes”則將queren圖形對(duì)應(yīng)的confirm值置1,繼續(xù)關(guān)閥,否則不動(dòng)作。當(dāng)fanhuizhi圖形中對(duì)應(yīng)的數(shù)據(jù)點(diǎn)discription2012的值為1時(shí),彈出對(duì)話框提示“當(dāng)前還在分輸中,不建議進(jìn)行關(guān)出站閥操作,是否繼續(xù)關(guān)閉出站閥”,如果操作員選擇“yes”則將queren圖形對(duì)應(yīng)的confirm值置1,繼續(xù)關(guān)閥,否則不動(dòng)作。
編輯完成后保存,在Station中進(jìn)行測(cè)試,測(cè)試根據(jù)返回值彈出對(duì)話框,如圖6所示。
圖6 防呆提示對(duì)話框
此處所列為中國(guó)石油西氣東輸SCADA系統(tǒng)中的一個(gè)關(guān)閥防呆邏輯事例,對(duì)SCADA系統(tǒng)中操作員重要操作依次建立防呆模型并編程組態(tài),完成防呆系統(tǒng)的實(shí)現(xiàn)與應(yīng)用。
中國(guó)石油西氣東輸管道公司通過防呆系統(tǒng)功能的使用,防止了操作人員由于疏忽或者認(rèn)知不足造成的不合理、不規(guī)范操作,避免了不良后果。同時(shí)給出合理的操作建議,使站場(chǎng)操作人員進(jìn)行二次判斷并重新確認(rèn)操作,從而減少誤操作的發(fā)生。在保證安全生產(chǎn)的同時(shí)提高了生產(chǎn)效率,提高了西氣東輸?shù)淖詣?dòng)化程序和管理水平。
[1] 彭太翀,王海峰,王多才,等.關(guān)于西氣東輸ESD系統(tǒng)報(bào)錯(cuò)的探討和可行性優(yōu)化建議[J].工業(yè)控制計(jì)算機(jī),2011,(11):28~30.
[2] 趙廉斌,田家興,王海峰,等.站場(chǎng)無(wú)人值守功能在西氣東輸管道的應(yīng)用[J].油氣儲(chǔ)運(yùn),2012,31(4):314~317.
[3] SY/T 5922-1994,天然氣輸送管道運(yùn)行管理規(guī)范[S].北京:石油工業(yè)出版社,1994.
[4] 馬鐵量,劉洋,梁懌,等.忠武管道與西氣東輸二線調(diào)壓系統(tǒng)自控方式對(duì)比分析[J].中國(guó)石油和化工標(biāo)準(zhǔn)與質(zhì)量,2014,(7):146~147.
[5] 趙毅,李曉暉.PLC控制系統(tǒng)可靠性的研究[J].煤礦機(jī)械,2006,27(4):584~586.
[6] 程子華,劉小明.PLC原理與編程實(shí)例分析[M].北京:國(guó)防工業(yè)出版社,2010:10.
[7] 田家興,王海峰,趙廉斌,等.HS與ViewStar兩種HMI系統(tǒng)在西氣東輸?shù)膽?yīng)用[J].自動(dòng)化與儀器儀表,2011,(4):107~109.