宋曉云 田文德 馮海東
(青島科技大學(xué)化工學(xué)院,山東 青島 266042)
精餾塔的開停車操作是化工領(lǐng)域最復(fù)雜的操作之一,是典型的動態(tài)變化過程,具有動態(tài)特性復(fù)雜、操作工況變化大和過程變量之間關(guān)聯(lián)性強的特點[1]。因此,精餾塔的操作不僅步驟繁瑣、需要操作人員具有深厚的相關(guān)的專業(yè)知識,而且要求操作人員長時間密切關(guān)注裝置的運行狀態(tài)[2]。人的失誤,設(shè)備、工藝及控制系統(tǒng)等因素等非正常狀況都可能引發(fā)事故[3],所以必須保證精餾塔開停車過程操作中的絕對正確性。
精餾過程的研究經(jīng)歷了相當長的發(fā)展時期。在國內(nèi)較早時期的化工原理仿真軟件中,浙江工業(yè)大學(xué)的鄭祖銘老師在20世紀90年代開發(fā)的精餾實驗仿真系統(tǒng)比較具有代表性[4],2009年北京東方仿真軟件公司和天津大學(xué)合作開發(fā)了化工原理實驗仿真軟件[5],兩款軟件都有側(cè)重點,但單純把人工智能應(yīng)用到精餾過程的DCS仿真系統(tǒng)中,開發(fā)可移植的智能指導(dǎo)系統(tǒng)卻未見報道。
筆者提出的精餾過程智能指導(dǎo)系統(tǒng)是以專家系統(tǒng)CLIPS語言為基礎(chǔ),用于技術(shù)人員在進行開停車操作練習(xí)時的實時指導(dǎo)。該指導(dǎo)系統(tǒng)利用CLIPS強大的推理和表示功能開發(fā)專家系統(tǒng)的知識庫和推理機部分,利用VC2005開發(fā)人機交互界面和與外界進行數(shù)據(jù)交換,給操作人員在操作過程的任一時刻提出指導(dǎo)和解釋,在開停車過程中較好地輔助工藝人員操作,確保開停車過程的順利進行。主要介紹精餾塔智能指導(dǎo)系統(tǒng)的開發(fā)方法和過程,給出軟件的組成和每部分的功能,規(guī)則和規(guī)則庫的創(chuàng)建,對規(guī)則庫修改、增加和刪除管理,并以以脫丙烷精餾塔為例,說明其實際應(yīng)用情況。
精餾塔智能指導(dǎo)系統(tǒng)由CLIPS知識庫、實時數(shù)據(jù)采集及專家指導(dǎo)意見等組成,如圖1所示。知識庫中存儲了大量以規(guī)則形式存在的領(lǐng)域?qū)<业慕?jīng)驗知識和已知事實,通過采集的實時數(shù)據(jù)決定在每個控制信息下要觸發(fā)的規(guī)則,并給出相應(yīng)的指導(dǎo)意見。運行該操作指導(dǎo)系統(tǒng),首先要運行精餾塔的DCS仿真系統(tǒng);其次加載專家系統(tǒng)引擎和CLIPS文件;然后從DCS仿真系統(tǒng)中獲取實時數(shù)據(jù);最后系統(tǒng)會判斷需觸發(fā)的規(guī)則并給出指導(dǎo)信息。
圖1 精餾塔智能指導(dǎo)系統(tǒng)整體結(jié)構(gòu)框圖
精餾塔智能指導(dǎo)系統(tǒng)的主要功能是實現(xiàn)對精餾塔開停車過程中設(shè)備開啟順序和工況參數(shù)的監(jiān)視和指導(dǎo),這就需要把開停車步驟條理化,如果用諸如C語言等編程,過程會非常復(fù)雜,而且也達不到預(yù)期的理想效果。而基于規(guī)則的CLIPS專家系統(tǒng)的設(shè)計開發(fā),則可以滿足這些需要。
CLIPS采用的是產(chǎn)生式規(guī)則系統(tǒng),每條規(guī)則都是“if(某條件成立),then(某結(jié)論成立)”的形式[6]。這就要求把精餾塔的開停車步驟整理成“條件-行動”式。精餾塔的開車過程包括4部分:系統(tǒng)(儲罐和精餾塔)氮氣置換;儲罐進料;精餾塔進料和升溫;精餾塔出料并使之運行平穩(wěn)。以儲罐氮氣置換為例,建立規(guī)則,這時所有閥門和泵處于關(guān)停狀態(tài)。根據(jù)工藝和操作經(jīng)驗,把充氮過程整理成“if…then…”形式,具體如下:
Rule1 如果放空管線手閥打開,那么可以打開充氮閥
Rule2 如果充氮閥和放空手閥打開,那么充氮開始,注意氧氣變化
Rule3 如果氧氣含量小于1%,那么可以關(guān)閉氮氣閥和放空閥
Rule4 如果氮氣閥和放空閥關(guān)閉,那么充氮結(jié)束,可以進行下一步
Error1 如果充氮閥關(guān)或原料閥開,那么就給出錯誤警告,提示關(guān)閉充氮閥
前4個規(guī)則是順序執(zhí)行的,也就是說,只有Rule1被激發(fā),且滿足Rule2的條件時,才會執(zhí)行Rule2。通過這種規(guī)則的建立,使得操作提示也按順序完成。如果充氮過程中打開放空手閥后,沒有打開充氮閥,而是打開了原料閥,這時便會觸發(fā)Error1,給出相應(yīng)的警告。錯誤規(guī)則沒有嚴格的觸發(fā)順序,只有在進行錯誤操作時才會給出相應(yīng)的提示。
精餾塔操作指導(dǎo)中的主要變量包括進料泵、回流泵、采出泵、預(yù)熱器、冷凝器、再沸器、進料閥、塔頂回流閥、塔釜采出閥、儲罐充氮閥、塔充氮閥、儲罐放空閥、回流罐放空閥、儲罐瓦斯手閥、回流罐瓦斯手閥,皆為開/關(guān)量;其余為高/適中狀態(tài),包括儲罐液位、精餾塔液位和回流罐液位。充氮過程的規(guī)則如下:
Rule1 儲罐充氮閥關(guān)/儲罐放空閥關(guān),準備對進料罐充氮氣
Rule2 儲罐充氮閥關(guān)/儲罐放空閥開,可以打開儲罐充氮閥開始充氮氣
Rule3 儲罐充氮閥開/儲罐放空閥開,開始充氮氣,注意儲罐中氧氣的含量變化;充氮結(jié)束時需關(guān)閉儲罐充氮閥和儲罐放空閥
Rule4 儲罐充氮閥關(guān)/儲罐放空閥開,則關(guān)閉儲罐放空閥
Rule5 儲罐充氮閥關(guān)/儲罐放空閥關(guān),則第一階段充氮完成,可以開始下一階段的氮氣置換,先打開塔頂?shù)姆趴臻y和回流罐放空閥
Rule6 塔充氮閥關(guān)/回流罐放空閥開,則打開塔充氮閥,精餾塔開始充氮
Rule7 塔充氮閥開/回流罐放空閥開,注意觀察塔頂和回流罐中的氧氣含量變化,精餾塔充氮結(jié)束先關(guān)閉塔充氮閥
Rule8 塔充氮閥開/回流罐放空閥關(guān),關(guān)閉回流罐放空閥
Rule9 塔充氮閥關(guān)/回流罐放空閥關(guān),充氮完成
在CLIPS中,規(guī)則的開頭包括3個部分,即關(guān)鍵詞defrule、規(guī)則名和可選的注釋字符串,其一般格式為:
(defrule
=>
例如,充氮過程的rule2可表示為:
(defrule rule 2
(phase-state(type Gchongdanf)(state off))
(phase-state(type TGfangkongf)(state on))
=>
(printout t"可以打開儲罐充氮閥開始充氮氣"crlf)
)
知識庫是實現(xiàn)系統(tǒng)高智能運行的關(guān)鍵,用于存放由知識獲取程序所獲取的專家知識[7]。為了實現(xiàn)推理機和解釋機的快速高效運行,知識庫分為便于解釋機讀寫的專家知識數(shù)據(jù)庫主便于推理機推理的專家系統(tǒng)規(guī)則庫。專家系統(tǒng)規(guī)則庫為用于存儲CLIPS規(guī)則的.clp文件,方便推理機進行規(guī)則的調(diào)用。
精餾塔開停車指導(dǎo)系統(tǒng)設(shè)計的重點在于設(shè)置CLIPS規(guī)則庫,建立規(guī)則庫之前必須先進行模板的自定義。如,開車規(guī)則庫的模板定義為:
(deftemplate phase-state
(slot type)
(slot state)
)
CLIPS知識庫觸發(fā)規(guī)則實現(xiàn)推理的過程不能缺少輸入輸出,輸入是觸發(fā)規(guī)則的前提條件,輸出的則是推理結(jié)果。而在CLIPS知識庫中這種能被有效識別的輸入則稱為事實。沒有事實的輸入,CLIPS知識庫就無法啟動推理。因此,事實的建立是進行CLIPS推理的前提條件。事實以deffacts開頭,其定義格式如下:
(deffacts initial-state
(phase-state(type jinliaob)(state off))
)
在規(guī)則庫中,有時一個事實可以同時觸發(fā)多個規(guī)則,為此需要對已觸發(fā)的規(guī)則進行標記,然后修改其觸發(fā)狀態(tài),使之成為觸發(fā)其他規(guī)則的一個條件。標志變量的模板定義如下:
(deftemplate phase-flags
(slot rule)
(slot flags(type INTEGER))
)
比如,對充氮過程的rule1進行標記,并對其觸發(fā)狀態(tài)進行修改,語句如下:
?phase<-(phase-flags(rule 1)(flags 0))
=>
(modify?phase(flags 1))
其中flags 0表示rule1未觸發(fā),flag1表示已觸發(fā)。
精餾塔智能指導(dǎo)系統(tǒng)采用Visual和CLIPS語言混合編程技術(shù),并不依賴具體精餾塔開停車的數(shù)學(xué)模型,對于不同的化工裝置和物料,只需更新知識庫即可實現(xiàn)對開停車過程的智能指導(dǎo),具有很好的可移植性。此指導(dǎo)系統(tǒng)是基于仿真軟件開發(fā)的,現(xiàn)以脫丙烷精餾塔仿真為例來介紹其具體應(yīng)用。
脫丙烷精餾是氣體分餾裝置的一部分,其功能是將液化石油氣中的C2、C3組分與C4組分分離,其工藝流程如圖2所示。
圖2 脫丙烷流程簡圖
來自催化裂化裝置的液化石油氣經(jīng)脫硫處理后進入脫丙烷流程,來料首先進入儲罐D(zhuǎn)-701,由脫丙烷塔進料泵P-701A/B抽出,流經(jīng)脫丙烷塔進料加熱器E-701時,用來自催化裂化裝置吸收-穩(wěn)定系統(tǒng)的穩(wěn)定汽油加熱至79℃,之后進入脫丙烷塔C-701,從塔頂?shù)玫紺2和C3的混合物,塔釜得到各種C4的混合物。塔頂汽相物料經(jīng)脫丙烷塔頂空冷器EC-701冷凝后進入回流罐D(zhuǎn)-702,罐內(nèi)的液體一部分用脫丙烷塔回流泵P-702A/B抽出作為回流液送回塔頂,另一部分用采出泵P-703A/B抽出送至脫乙烷塔。C-701塔釜液相物料一部分流經(jīng)再沸器E-702被低壓蒸汽加熱汽化后返回塔釜,另一部分液相物料則作為塔釜產(chǎn)品由塔壓送往脫丁烷塔。
智能指導(dǎo)系統(tǒng)的界面要求簡潔友好,這就要求把復(fù)雜的DCS圖轉(zhuǎn)化為簡單的流程圖,只保留關(guān)鍵設(shè)備、泵和閥門,并對其進行組態(tài),組態(tài)框中輸入其對應(yīng)設(shè)備的ID號,并且每個設(shè)備都必須有對應(yīng)的ID號。
使用智能指導(dǎo)系統(tǒng)時,首先打開精餾塔的DCS仿真軟件,將指導(dǎo)系統(tǒng)與DCS相連接,獲取仿真實時數(shù)據(jù),獲取成功后的畫面如圖3所示,因為此時所有的閥還處于關(guān)閉狀態(tài),所以界面出現(xiàn)第一步指導(dǎo)信息,提示操作人員應(yīng)該先打開儲罐放空閥,準備充氮氣。操作人員執(zhí)行之后,接著提示開始充氮氣,請注意D-701中氧氣的含量變化。這樣,在指導(dǎo)信息的詳細提示下,操作人員即可快速準確地完成精餾塔的開車過程。
圖3 仿真實時數(shù)據(jù)界面
圖4為操作指導(dǎo)信息界面,操作人員在DCS中每執(zhí)行一步,指導(dǎo)系統(tǒng)就會有相應(yīng)的提示。如果操作錯誤,就會給出警告,并提出相應(yīng)的處理措施。例如,操作人員在還沒有進行系統(tǒng)充氮時,就打開了原料閥,這時就會給出相應(yīng)的報警提示:警告請不要打開原料閥,先進行設(shè)備充氮,執(zhí)行上一步驟。進行氮氣置換時,氧氣含量達到1%以下才算置換合格,如果氧氣含量達標之前就關(guān)閉充氮閥,也會觸發(fā)報警提示:充氮未完成,請不要關(guān)閉充氮閥。只有當一切符合條件之后,才會提示下一步的動作。
圖4 操作指導(dǎo)信息界面
精餾塔的進料溫度要穩(wěn)定在79℃左右,這就需要對預(yù)熱器E-701有嚴格的控制。當打開預(yù)熱器時,指導(dǎo)系統(tǒng)會時刻監(jiān)視原料溫度的變化,當溫度還未達到79℃就打開D-702的瓦斯手閥,這時指導(dǎo)系統(tǒng)就會給出錯誤提示:原料溫度未達到79℃,請關(guān)閉瓦斯手閥。如果溫度超過了79℃,系統(tǒng)就會馬上給出警告:原料溫度已超過79℃,請減少熱量輸入。只有當溫度穩(wěn)定在79℃左右時,指導(dǎo)系統(tǒng)才會給出正確的提示,繼續(xù)執(zhí)行開車步驟。
筆者以脫丙烷塔為例,設(shè)計精餾過程智能指導(dǎo)系統(tǒng),將精餾開停車過程轉(zhuǎn)換為以CLIPS語言表達的規(guī)則庫,實現(xiàn)了用戶界面與CLIPS推理機間的信息傳遞,完成了對精餾裝置開停車過程的智能指導(dǎo)。仿真測試結(jié)果表明:該指導(dǎo)系統(tǒng)簡單方便,反饋效果準確,能夠及時指出錯誤操作,并給予正確的指導(dǎo)信息,達到了實時安全指導(dǎo)的目的。但是,軟件還有待完善,需補充多方位錯誤操作提示功能,同時進一步擴充規(guī)則庫。
[1] 付饒,穆彥軍.精餾操作技術(shù)的研究[J].山東化工,2013,42(5):137~138.
[2] 王振恒.化工過程開車過程故障診斷方法研究[D].北京:北京化工大學(xué),2009.
[3] 謝慧明.基于人工智能的精餾實驗導(dǎo)師系統(tǒng)[D].杭州:浙江工業(yè)大學(xué),2011.
[4] Fan X H,Wang Y,Chen X L,et al.Mathematical Models and Expert System for Grate-kiln Process of Iron Ore Oxide Pellet Production(Part Ⅱ):Rotary Kiln Process Control[J].中南大學(xué)學(xué)報(英文版),2012,19(6):1724~1727.
[5] 肖應(yīng)旺.基于軟測量的化工精餾過程推斷控制策略[J].控制工程,2012,19(2):301~306.
[6] 譚大鵬,李培玉,潘曉弘,等.基于CLIPS的故障診斷專家系統(tǒng)開發(fā)環(huán)境[J].浙江大學(xué)學(xué)報(工學(xué)版),2009,43(2):240~243,393.
[7] 韋洪龍,田文德,李傳坤,等.基于CLIPS的開停車指導(dǎo)系統(tǒng)研究與應(yīng)用[J].化工自動化及儀表,2014,41(2):191~194.