高 峰, 李曉升, 李北群, 謝靜遠, 張 然, 倪崇本
(1.中國船舶集團有限公司,上海 200011;2.海洋石油工程股份有限公司 a.安裝分公司;b.特種設(shè)備分公司,天津 300452;3.上海船舶工藝研究所,上海 200032;4.上海交通大學(xué) a.海洋工程國家重點實驗室;b.船舶海洋與建筑工程學(xué)院,上海 200240)
油井產(chǎn)出流體可能含有非烴類氣體,如氮、二氧化碳和硫化氫等;可能含有液態(tài)或半液態(tài)物質(zhì),如水和蠟等;可能含有鉆井液、泥砂和鹽類等固體雜質(zhì)。海洋油氣平臺油井產(chǎn)出流體含原油、凝析油、天然氣、水及各種雜質(zhì);伴隨原油和天然氣一起產(chǎn)出的水可能為蒸汽或液體;液態(tài)水可能為自由水或乳化水;自由水在到達地面后可從液態(tài)烴中分離;乳化水以液滴狀分散在液態(tài)烴中。在海洋油氣平臺油井產(chǎn)出流體輸入生產(chǎn)系統(tǒng)前,需要將混合物各組分分離,獲得純凈的原油[1]。
油氣分離方式分為3種:一次分離、連續(xù)分離和多級分離。多級分離是指在系統(tǒng)中保持氣液兩相接觸,在每次系統(tǒng)壓力降低至某一數(shù)值時,將析出的天然氣排掉,重復(fù)該過程,直至壓力降為常壓。在實際生產(chǎn)中,油氣分離常用多級分離。由于儲存罐中的壓力最大,在儲存罐中總有天然氣析出,因此常將儲存罐作為最后一級;排氣1次,為一級分離;1個分離罐和1個儲存罐組成二級分離,2個分離罐和1個儲存罐組成三級分離,以此類推。
海洋油氣平臺油氣分離中控系統(tǒng)是用戶關(guān)注的重點,負責(zé)維持油氣分離系統(tǒng)的穩(wěn)定作業(yè)。以某海洋油氣平臺為對象,進行基于Unity3D的油氣分離中控系統(tǒng)仿真與開發(fā),為平臺研發(fā)提供支持。
分離罐與儲存罐是油氣分離系統(tǒng)中的主要容器,罐體模型如圖1所示。
圖1 罐體模型
分離罐運行原理:混合液自進液口進入罐內(nèi),隨著流向和流速突然改變,油氣初步分離;原油在重力作用下流入分離器集液部分;集液部分具有足夠容量,使原油在流出分離罐前具有足夠停留時間,原油攜帶的氣泡有機會上升至液面并進入氣相;集液部分提供緩沖容積,均衡進出分離罐原油流量波動;原油經(jīng)控制液位的排油口流出分離罐。為得到最大的氣液界面面積,通常在分離罐內(nèi)充滿二分之一的液體。
從降低計算負荷的需求出發(fā),油氣分離中控系統(tǒng)對罐體需要進行簡化建模,僅提取控制邏輯所關(guān)注的參數(shù)指標。通過對油氣分離作業(yè)流程進行研究,總結(jié)儲存罐和分離罐的控制模型所關(guān)注的參數(shù)。
(1)固有參數(shù)
固有參數(shù)在仿真過程中不會發(fā)生變化。第一類參數(shù)為儲存罐內(nèi)液體體積V與液位h的關(guān)系函數(shù)h=F(V)。F(V)是由罐體形狀決定的復(fù)雜函數(shù),從簡化建模的角度出發(fā),油氣分離中控系統(tǒng)僅關(guān)心若干關(guān)鍵液位對應(yīng)的液體體積,因此采用分段線性函數(shù)F*(V)進行近似,由F(V)可得出罐內(nèi)最大容積Vmax[2]。容積液位函數(shù)F(V)與分段線性函數(shù)F*(V)如圖2所示。第二類參數(shù)為油氣分離中控系統(tǒng)控制邏輯所關(guān)注的液位參考值。油氣分離中控系統(tǒng)關(guān)注影響儲存罐進液排液閥門開合程度的3個參考值:最低液位Lmin、最高液位Lmax和平衡液位Lw;由于無法排除特殊情況的存在,因此應(yīng)包含排液口高度Lout,大部分儲存罐排液口位于罐底,可設(shè)Lout=0。第三類參數(shù)與泄壓控制邏輯相關(guān),包括泄壓壓力Pr1和停止壓力Pr2。儲存罐控制模型固有參數(shù)如表1所示。
圖2 容積液位函數(shù)F(V)與分段線性函數(shù)F*(V)
表1 儲存罐控制模型固有參數(shù)
(2)狀態(tài)參數(shù)
狀態(tài)參數(shù)是反映罐內(nèi)物理狀態(tài)的指標,在仿真過程中實時更新計算[3]。儲存罐控制模型狀態(tài)參數(shù)如表2所示,其中:V*、Vair*和Pair*分別為前一時間步的液體體積、氣體體積和氣壓。狀態(tài)參數(shù)計算按時間步迭代,因此每次計算需要前一時間步的狀態(tài)。
(3)初始參數(shù)
在仿真開始前,需要設(shè)置儲存罐控制模型初始參數(shù),如表3所示。
表2 儲存罐控制模型狀態(tài)參數(shù)
表3 儲存罐控制模型初始參數(shù)
(1)固有參數(shù)
與儲存罐相比,分離罐中間設(shè)置1個堰板將罐體分為左右兩側(cè),左側(cè)為流入的油水混合物,大量浮油通過重力將油脂分離出來浮于表面,高出堰板的油脂流向堰板右側(cè)。左右兩側(cè)各設(shè)置1個排液口,因此其控制模型固有參數(shù)需要區(qū)分左右兩側(cè),如表4所示。
表4 分離罐固有參數(shù)
(2)狀態(tài)參數(shù)
分離罐需要監(jiān)控左右兩側(cè)液位,罐內(nèi)的氣體體積和氣壓與兩側(cè)液位同時相關(guān)。分離罐控制模型狀態(tài)參數(shù)如表5所示,其中:VL*、VR*、Vair*和Pair*分別為前一時間步的左側(cè)液體體積、右側(cè)液體體積、氣體體積和氣壓。狀態(tài)參數(shù)計算同樣需要前一時間步的數(shù)據(jù)。
表5 分離罐控制模型狀態(tài)參數(shù)
(3)初始參數(shù)
在開始仿真前,需要設(shè)置分離罐控制模型初始參數(shù),如表6所示。
表6 分離罐控制模型初始參數(shù)
通常管路流仿真基于分離罐與儲存罐控制模型建立管路模型,設(shè)定管路流場進液口和排液口的邊界條件,通過計算流體動力學(xué)(Computational Fluid Dynamics,CFD)計算得出管路流流量。但油氣分離中控系統(tǒng)并不關(guān)注管路內(nèi)的流場狀況,不應(yīng)在CFD求解上耗費算力,需要將管路流進行簡化。
在油氣分離中控系統(tǒng)仿真過程中,由于管路內(nèi)的流場形狀固定,僅進液口和排液口邊界的壓強出現(xiàn)變化,因此根據(jù)經(jīng)驗數(shù)據(jù),采用壓降-流量函數(shù)
Q(ΔP)代替管路內(nèi)的流場計算。由于壓降-流量函數(shù)一般為復(fù)雜函數(shù),因此在系統(tǒng)仿真中采用分段線性函數(shù)Q*(ΔP)進行近似。壓降-流量函數(shù)Q(ΔP)與線性函數(shù)Q*(ΔP)如圖3所示。
圖3 壓降-流量函數(shù)Q(ΔP)與線性函數(shù)Q*(ΔP)
壓降-流量函數(shù)作為每條管路的固有參數(shù)參與計算,在仿真過程中根據(jù)管路上下游的連接位置計算該處壓強,將壓差代入壓降-流量函數(shù)得出管路內(nèi)的流量。對于設(shè)置調(diào)節(jié)閥的部分管路,仿真軟件將調(diào)節(jié)閥作為額外阻力加入計算。
油氣分離中控系統(tǒng)的目的在于維持油氣分離系統(tǒng)的平穩(wěn)作業(yè),將分離罐和儲存罐的液位控制在目標水位附近。在工業(yè)上,比例積分微分(Proportion Integration Differentiation,PID)算法在該類問題中獲得廣泛應(yīng)用。PID算法流程如圖4所示。
圖4 PID算法流程
PID算法的關(guān)鍵在于3個調(diào)節(jié)項KP、KD和KI。
(1)比例調(diào)節(jié)項KP。KP考慮當(dāng)前誤差,將誤差值和1個正值常數(shù)相乘得出需要的控制量。油氣分離中控系統(tǒng)仿真關(guān)注的是罐內(nèi)水位,一般采用線性函數(shù)關(guān)系,計算水位當(dāng)前值與目標值的誤差再與KP相乘。KP越大,調(diào)節(jié)作用越激進,KP調(diào)小會使調(diào)節(jié)作用更保守。
(2)微分調(diào)節(jié)項KD。KD考慮將來誤差,計算誤差的一階導(dǎo),并與1個正值常數(shù)相乘。若油氣分離中控系統(tǒng)僅由比例調(diào)節(jié),則罐內(nèi)水位會在目標值附近來回振蕩,而KD的作用在于使受控物理量穩(wěn)定,即類似阻尼的作用。KD越大,調(diào)節(jié)過程越穩(wěn)定,但調(diào)節(jié)至目標值所需要的時間越長。
(3)積分調(diào)節(jié)項KI。KI考慮過去誤差,將誤差值過去一段時間和(誤差和)與1個正值常數(shù)相乘。KI的作用在于減小靜態(tài)情況下的誤差,使受控物理量盡可能接近目標值。KI越大,在積分時所乘的系數(shù)越大,積分效果越明顯,但在仿真過程一開始需要設(shè)定KI的限制,避免初始狀態(tài)不穩(wěn)定造成的物理量飄散[4]。
在上述研究的基礎(chǔ)上,建立油氣分離系統(tǒng)主要部件的控制模型,并采用Unity3D進行建模仿真。利用Unity編輯器將罐體、管路及閥門組件模型導(dǎo)入為對象進行管理;控制模型采用C#編寫,作為腳本加載于對象?;赨nity3D的仿真開發(fā)如圖5所示。
圖5 基于Unity3D的仿真開發(fā)
考慮油氣分離系統(tǒng)各部件的控制模型兼具控制邏輯相似和關(guān)鍵參數(shù)不同的特點,對控制模型進行設(shè)計,其固有參數(shù)和初始參數(shù)普遍采取讀取配置文件的方法而非固化于腳本代碼,這樣整個仿真過程具有更好的靈活性,通過調(diào)節(jié)參數(shù)配置文件即可模擬不同海洋油氣平臺的油氣分離中控系統(tǒng)作業(yè)過程;開發(fā)完成,在Unity3D中進行編譯調(diào)試,即可生成軟件的可執(zhí)行文件[5]。油氣分離中控系統(tǒng)運行界面如圖6所示。
圖6 油氣分離中控系統(tǒng)運行界面
從海洋油氣平臺油氣分離中控系統(tǒng)的需求出發(fā),提出將系統(tǒng)復(fù)雜的油-水-氣三相流問題進行抽取簡化,僅保留系統(tǒng)關(guān)注的固有參數(shù)和狀態(tài)參數(shù),可大幅降低仿真過程的實現(xiàn)難度。對系統(tǒng)的主要部件(分離罐、儲存罐、管路和閥門)分別提出建模方法,并在Unity3D上完成開發(fā),可為海洋油氣平臺的相關(guān)開發(fā)研究提供技術(shù)支持。