李亚平,张华德,高炜欣
(1.中国石化管道储运分公司,江苏徐州 221008;2.西安石油大学电子工程学院,陕西西安 710065)
管道输油是现代油品运输的重要方式,大型油库的操作在管道输油操作中起着核心作用。油库的操作一般是指在调度任务下达后,根据当前工况,快速确定合理的输油流程,保证输油系统的生产效率。对现场操作人员而言,在选择动作装置时不仅要保证油品的入库或出库,还需特别注意避免串油操作。由于大型油库工艺复杂,多个进油和出油的流程可能同时发生,目前串油是大型油库操作中最易发生的失误。
针对长输管道中大型油库的工艺流程,国内外有学者开展了具有针对性的研究。文献[1]利用动态规划法优化管道运行;文献[2]将研究重点放在仿真系统构成上;文献[3]分析已有的软件,对未来软件开发提出有益的建议。更多的还是针对各种管道参数的计算,如压力流量等[4-8]。
从安全运行的角度来说,较少有文献研究操作流程的计算和如何防止串油的发生。本文分析大型油库的特点,提出将油库视为一连通图。在此基础上,利用基于图论的搜索方法,自动计算出针对任意具体调度任务的操作步骤。特别是通过设置节点属性提出避免发生串油的计算方法。通过对某大型油库的调度计算表明,本文提出的算法可行、有效。
油库的操作是现场运行人员根据调度指令和当前工况,确定各个阀组和泵的开关状态,以此来引导油品流过正确的管道。操作人员在这一过程中需避免由于阀门开关不当引起的串油和憋泵的问题。
当油库规模较小时,工艺流程简单,操作人员仅凭肉眼就可以确定恰当的输入输出流程。但当油库规模较大,管道流程复杂时,仅凭人工确定阀和泵的状态容易出现憋泵和串油的问题。有时,面对复杂的工艺流程,经验不足的操作人员甚至无法确定一条可行的油品输入、输出流程。图1所示为国内一大型油库的部分工艺流程。
图1 某大型油库工艺流程示意
分析图1可以发现,如果将油库工艺流程的阀、泵、换热器和罐等装置以及管道和管道的交接点作为 “节点”处理,整个油库的工艺流程图可以等效为一个连通图。这样,调度任务下达后,根据调度任务自动计算操作步骤的过程可以等效为计算连通图中最简树 (辐射状子图)的过程。
在明确油库结构可以用一个连通图表示后,可以对各个 “节点”进行连续编号,建立如表1和表2所示的节点表和管道表来存储整个油库的结构信息。
表1 节点表
一般而言,下达到油库的调度任务仅仅指明来油位置和存储位置。例如:“1号入口来油至G-1”就是一典型的调度任务。根据表1和表2,在调度任务下达后,确定完成调度任务的操作步骤可以利用广度搜索的方法直接寻找明确了起点和终点的最简树。
不同于普通的搜索过程,大型油库在搜索操作步骤时需特别注意避免发生串油现象。因为节点为“装置”时,可以通过表1获得该节点是否为运行状态的信息,但节点为 “交汇点”时,则需要通过判断与其相连的装置的状态来确定交汇点的状态。
在给出避免发生串油操作的搜索算法之前,首先定义节点最简结构如下:
Type RW=Record//节点结构
Style:Integer;//节点类型 1为装置,0为交汇点
Find:Boolean;//True为搜索过,False为未搜索
ID:Integer;//节点编号
Up: Integer; //上级节点编号
End
因此,本文给出如下搜索算法来实现操作步骤的安全搜索:
(1)将输油工艺流程图作为一张连通图,将输油系统中各个装置及输油管道的交叉点均作为连通图中的节点进行编号,并对每个节点设置至少“Find——是否搜索”和“Style——节点类型”两个属性,节点的属性应反映出该节点是实际装置还是输油管道的交叉点,所述的装置包括输油系统中的泵、加热炉、换热器、计量器和罐等。
(2)通过读取表2将步骤 (1)中所有节点间实际存在的路径进行编号,同时记录各个路径两端节点的编号。
(3)通过SCADA系统,或实时数据库读取所有设备的状态,所有正在运行设备和检修设备所对应节点的“Find——是否搜索”属性设置为“True——已搜索”,其他节点的“Find——是否搜索”属性设置为“False——未搜索”。
(4)通过逐个检查实际存在的路径两端节点的编号,判断输油管道交叉点是否和属性为 “已搜索”的节点直接相连,若是,则该输油管道交叉点的 “是否搜索”属性被设置为 “已搜索”,重复本步骤至少2次或以上,以确保所有和运行及检修装置直接相连或通过输油管道交叉点相连的节点属性被设置为 “已搜索”。
(5)逐个检查连通图每一条路径两端节点的“是否搜索”属性,若任一节点的 “是否搜索”属性为 “已搜索”,则在连通图中删去该路径。
(6)根据调度任务,确定两个端点的节点编号,利用 “广度搜索”或 “深度搜索的方法”在删去部分路径的连通图中确定调度任务两个端点之间的最短路径。
上述算法通过将调度任务转化为在连通图中搜索最简的树状图,实现了对油库和泵站的调度任务自动计算操作流程的算法;通过设置节点的属性,并反复执行判断节点是否与 “已搜索”的节点相连,可以保证搜索出的最简操作流程不会发生串油和憋泵等生产事故。计算过程不受输油站或油库规模及复杂程度限制,可对任意油库或输油站进行操作。
利用本文所提算法,我们利用组态王搭建了油库操作指导系统的工控界面,将各个工控组件变量与后台数据库绑定。利用面向对象的编程语言实现操作流程的计算。整个系统的结构如图2所示。
图2 系统结构
我们应用所研发的系统对超过100个实际调度任务进行了操作流程计算,正确率为100%,而且完全避免了串油和憋泵。
(1)油库工艺流程图可以用一个连通图进行描述,针对调度任务,通过搜索连通图的辐射状子图可以确定操作流程。
(2)通过对各个节点设置搜索的属性,可以利用广度搜索的方法快速确定辐射状子图,进而确定操作流程,使得计算出的操作流程能够避免串流和憋泵事故的发生。
[1]梁永图,宫敬,康正凌,等.成品油管道优化运行研究[J].石油大学学报自然科学版,2004, 28(4):97-101.
[2]邹祥文,宫敬,于达.油库仿真系统设计[J].计算机仿真,2004,21(1):127-129.
[3]欧阳忠滨,吴长春,艾慕阳.输油管道仿真技术及其应用[J].油气储运,2004, 23(8):1-4.
[4] 张其敏.原油管道工况仿真[J].天然气与石油,2002,20(4):7-10.
[5]江国业,吴先策,崔艳雨.输油管道的水击仿真[J].中国民航学院学报,2005,23(2):16-19.
[6]张国忠.管道瞬变流动分析[M].东营:石油大学出版社,1994.
[7]李长俊,陈鑫.迦辽金法在管道不稳定流动分析中的应用[J].油气储运,2002,21(4):31-34.
[8]Lorris T Covington.Transient Models Permit Quick Leak Identification[J].Pipeline Industry,1979,51(2):71-73.