罗代亮
(中原油田石油工程技术研究院,河南 濮阳 457001)
目前潜油电泵机组已经系列化,但每口油井的参数不同[1],潜油电泵在推荐范围以外工作可能会使电机过载或欠载,严重时可能损坏系统。通过开发软件进行潜油电泵选择优化,充分考虑井况和影响油泵选择的主要因素,高效率准确地计算出可靠的潜油电泵机组型式[2],采用简单易学的Visual Basic 语言,开发出潜油电泵选井设计软件[3,4],优化潜油电泵机组参数,满足现场需求。
软件包括基础数据、气体计算、产能预测、机组选型设计等多个部分(图1)。本文介绍产能预测部分设计功能,基础参数设置见表1。
图1 潜油电泵选井软件计算界面
表1 基础参数属性列表
在产能预测功能区,设置1 个Frame 控件、7 个Label 控件、2个ComboBox控件、5个TextBox控件。其中,分离器配用可选,油井渗流类型包括纯液硫、油气两相渗流、油气水渗流三种类型可选,设计泵吸入口气液比由“气体计算模块”得到,预测结果包括泵吸入口压力、油层中部流压、预测油井产能三项(图2)。各控件的属性及参数值设置如表2 所示。
图2 产能预测界面
表2 产能预测Frame中主要控件及属性列表
油、气、水渗流时流压由式1-4 确定。
式中:Qb为饱和压力下的油井产量(m³/d);Qmi为油气渗流时理论最大产量(m³/d);Jo为采油指数(m³/(MPa·d));Pb为饱和压力(MPa);PR为地层压力(MPa);Qmax为纯油渗流时的最大产量(m³/d);Q 为油井产量(m³/d);fw为含水率(%);Pwf为流压(MPa)。
(1)普通赋值语句:是把制定的参数值赋给某个变量或某个带有属性的对象,是为变量和控件属性赋值的主要方法。如式1 中对饱和压力下的油井产量计算,油井的基础数据中包括了采油指数、饱和压力、地层压力三个数据,在参数设置分别是cyzs.Text(假 设 为52m3/(MPa·d)),bhyl.Text(假 设 为8MPa),dcyl.Text(假设为11MPa),式1 的程序编辑为Qb=Val(cyzs.Text)(Val(dcyl.Text)-Val(bhyl.Text)),因为赋值语句兼有计算与赋值的双重功能,所以此例饱和压力下的油井产量的输出结果156m3/d。
(2)情况语句:一般格式采用“Select Case(测试表达式):Case(表达式表列):语句块:…:End Select”。
流压的计算就需要用到这一方法,在油、气、水三相渗流中,流压计算分为了三个区间,见式(4)(5)(6),在代码编写过程中以Select Case 开头,以End Select 结束。代码编写示例:
Select Case Q ′情况语句,提出测试值为Q
Case Is > 0 and≤Qb ′当0 <Q≤Qb,进行下一步处理
Pwf =PR-Q/Jo ′赋值语句,将式(4)右侧计算结果赋值给流压
Case Is > Qb and≤Qmi ′当Qb <Q≤Qmi,进行下一步处理…… ′赋值语句,将式(5)右侧计算结果赋值给流压
Case Else ′其他情况时,进行下一步处理
…… ′赋值语句,将式(6)右侧计算结果赋值给流压
End Select ′结束
(3)循环结构语句:比如For 循环结构、While 循环结构、Do循环结构,对复杂的需不断重复计算的部分,在程序设计中采用循环结构,体现出软件计算优势。
根据《SY/T 5904—2004 油井电泵选井原则及选泵设计方法》,附录有潜油电泵选井原则及选泵设计方法示例。已知条件:天然气相对密度0.6,原有相对密度0.86,饱和压力8MPa,地层压力11MPa,井底温度50℃,油层中部深度1120m,油压1.2MPa,泵挂深度950m,采油指数52m3/(MPa·d),含水率80%,天然气压缩系数0.86,生产气油比65m3/m3。示例中,取泵吸入口气液比25%,查图得到泵吸入口压力2.65MPa,油层中部流压4.3MPa,按油气水渗流类型计算产量为335m3/d。
软件计算结果见图3。
图3 软件计算结果
在配套分离器,设计泵吸入口气液比25%的条件下,利用软件进行不同渗流类型的产能预测,结果见表3。
表3 不同渗流类型预测结果
从计算结果看,软件计算出的各项参数准确,且利用软件计算节约人工,操作方便,计算结果对比见表4。
表4 计算结果对比表
相比常规计算方式,该软件可视化程度高,操作方便,可快速完成计算,结果准确,适用于潜油电泵选井选泵设计。但是,设计结果依赖于潜油电泵井基础数据的掌握,动态跟踪潜油电泵井生产数据是设计的关键。