王莹莹 安维峥 乔婷婷 朱春丽 杨旭光 祝鸿山
(1. 中国石油大学(北京) 人工智能学院 北京 102249; 2. 中国石油大学(北京) 安全与海洋工程学院 北京 102249;3. 中海油研究总院有限责任公司 北京 100028)
水下控制模块(Subsea Control Module,SCM)是复合电液水下控制系统的关键设备,可实时监测水下井口和水下生产系统的工作状况,被称为水下生产系统的中枢神经系统[1]。水下电子模块(Subsea Electronic Module,SEM),主要用于接收水上控制单元的命令,同时将水下监测的数据实时发送给水上控制单元,是SCM数据交换中的核心部件。SEM的机械结构是一个外部抗压、内部充满氮气的密封壳体,其内部安装有可编程逻辑控制器(Programmable Logic Controller,PLC)模块、模拟量输入模块、数字量输入输出模块、传感器、工业以太网交换机等,顶部安装有电连接器和光纤连接器,用于连接外部传感器和控制阀的尾部电缆。SEM长期处于密闭环境中,内部PLC在运行时会产生自热现象,导致SEM内部温度升高,尽管通过热传导、热对流、热辐射等手段与介质进行热交换,会带走一定的热量,但因其长期在密闭环境中,加上外部海水温度基本恒定,温度散热到一定程度将会达到平衡,持续密闭温度产生的热应力将对 SEM内部传感器产生较大影响,容易引发SEM出现短路、开路、电气击穿、过热烧毁等问题,从而导致水下控制系统发生失效故障,甚至造成水下生产系统停工从而造成油气田停产等风险。尽管复合电液水下控制系统本身具备温度实时监测报警功能,但尚不具备温度预测预警功能。因此,开展SEM内部温度趋势预测与故障预警研究,对于后期运维阶段提高SEM的安全可靠性,减少SCM的检查维修时间十分必要。
近年来,已有不少学者针对水下控制系统故障诊断与可靠性等方面开展了一定的研究[2-6],但针对水下控制系统的SEM温度预测和预警方面的研究尚未见公开报道。目前,学者们利用人工智能方法进行温度预测的研究,主要集中在航空发动机尾气温度、车辆轴承温度、风力发电机等领域[7-12]。本文基于国内首套水下控制系统中的SEM内部温度预警早期微弱故障特征不敏感,抗异常值干扰能力差,以及温度变化具有非线性、季节性和周期性变化特征等问题,提出了一种基于长短期记忆网络(Long-short Term Memory,LSTM)的SEM温度趋势预测与预警模型,基于移动平均技术和二叉决策算法,实现了SEM温度健康状态的整体趋势预测和故障预警。
SEM与外部交互主要通过盖板上的电气及光纤接头,其主要工作原理如图1所示。通过电气接头得到电力供应,将电力单元输入的高压交流电转换成电路板芯片所需要的3 V、5 V直流电源以及各类传感器和电磁换向阀所需要的24 V直流稳压电源。通过电气或光纤接头接受主控站发送的控制命令,由通讯模块将电力载波信号解调成相应指令传输给主控板。主控板将主控站发出的控制命令分配并通过数字量输入输出模块(I/O口)发送至方向控制阀(DCV),从而控制水下生产设备上的各类功能阀门。同时,由数据采集模块采集压力、温度、湿度、高压交流电压及低压直流电流等传感器上的信号,处理后传送给主控板,再通过电气或光纤接头传至主控站,使平台工作人员能实时监测水下生产设备的运行状况并发出相关操作指令。
图1 SEM工作原理图[1]
SEM的温度传感器为电流型传感器,输出信号为标准的两线制4~20 mA信号,量程为-40~70 ℃,阈值为-20~40 ℃。量程范围比阈值范围相对大些,若温度超过量程,传感器将可能遭到永久性损坏,无法正常显示。若温度超过阈值,传感器不会立即损坏,而是发生性能下降,但若长期超出阈值,会逐渐影响其性能和使用寿命,进而导致永久性损坏。故若能预测出数据何时将到达阈值,进而发出相应预警提示信息,对延长SEM的使用寿命,提高水下控制系统的安全可靠性具有重要工程意义。
研究SEM硬件失效的模式特征与信息,经相应的接口采集到温度传感器的测试数据后,需要通过对数据的综合分析判断SEM的运行状态,建立基于硬件运行参数的SEM温度预测模型,开展SEM温度传感器的温度趋势预测和故障预警研究,算法路线如图2所示。
图2 SEM温度传感器温度趋势预测及预警算法路线图
由Hochreiter和Schmidhuber[14]在1997年首次提出的LSTM属于递归神经网络(Recurrent Neural Network,RNN)。LSTM在传统的RNN结构上做了相对复杂的改进,使得LSTM相对于经典的RNN能更好地解决梯度爆炸和梯度消失的问题,让循环神经网络具备更好更强的记忆功能。图3是t时刻下LSTM网络的实施过程[15]。
图3 t时刻的一个LSTM单元[15]
(1)
(2)
(3)
(4)
(5)
(6)
式(1)~(6)中:[at-1,xt]为两个向量相连接;Wf、Wu、Wo、Wc为待训练的参数矩阵;bf、bu、bo、bc为待训练的偏置项;Ct-1表示t-1时刻的细胞态,*表示矩阵中的每个相同位置的元素对应相乘。
综上所述,各个控制门的权重可通过对其相应的输入数据进行训练而得到。第n-1层所获得的输出yt的数据信息将作为 LSTM 模型下一层的输入信息,从而递归可得LSTM的预测模型。
基于LSTM的SEM温度预测模型(图4),由1个输入层、3个LSTM层、2个防止过拟合(Dropout)层和1个输出层组成。输入层将一定时间间隔内的温度测试数据输入至LSTM层,LSTM层学习数据规律进行下阶段温度数据预测,Dropout层防止模型训练效果过拟合,输出层输出温度预测数据。同时,输出层数据将进一步借助移动平均技术和二叉决策算法,从而实现SEM温度趋势预测和故障预警功能。
图4 基于LSTM的SEM温度预测模型
实现SEM温度趋势预测需要根据训练好的LSTM神经网络,由历史及实时温度数据给出温度数据变化预测,再利用移动平均技术,给出温度数据整体的变化走向或趋势,形成温度变化趋势图。移动平均对原序列有修匀或平滑的作用,使得原序列的上下波动被削弱,可以更直观地看出预测数据走势[16-17]。假设预测数据为x1,x2,…,xn,取m组数据(远小于n)按如下过程,对预测数据进行k次双向取均值操作,具体如下:
1) 正向移动平均,即
(7)
2) 反向移动平均,即
(8)
3) 重复前两个步骤,循环k次。
训练好的SEM温度预测模型输出预测数据后,借助移动平均技术进行平滑处理(本模型经调节优化最终取参数m=7,k=5),从而实现SEM温度趋势预测功能,完成SEM健康状态整体趋势预测。同时,模型输出预测数据可借助二叉决策算法实现后续SEM温度故障预警功能。
SEM的温度趋势预测算法主要用于解决温度数据的实时预测问题,同时实现波动浮度相对减少的预测数据整体走势,但当预测数据达到一定的阈值范围时需进行SEM温度故障预警实现。首先需确定SEM温度预测数据在某个时间段内超出阈值的频次,以及是否存在超出阈值较大的预测数据(用flag=1代表存在,flag=0代表不存在)。根据频次大小和是否有超出阈值较大的数据综合判断,给出相应的SEM预警消息。定义温度阈值大小为df,超出阈值较大的温度界限为maxdata,一定时间段内超出温度阈值df的频次大小为f,频次阈值为f0,其算法判断过程如图5所示。
图5 二叉决策算法流程图
由于目前缺少实际工况数据,为验证本文模型与算法的可行性,这里采用Max Planck Institute for Biogeochemistry[18]的大气温度数据作为SEM温度模拟数据源,该模拟数据源共包括4 764组数据。
SEM 内部温度传感器的量程为-40~70 ℃,阈值为-20~40 ℃,对温度模拟数据整体经适当变换,使温度数值大致分布在-20~40 ℃,但保留少量超出阈值的异常点(表1)。
表1 模拟温度数据源变换表
SEM温度趋势预测与故障预警算法实现分为5个步骤,数据准备、数据预处理、模型训练、模型评估、趋势预测及故障预警实现(图6)。
图6 SEM温度预测及预警算法实现框图
1) 数据准备。将温度模拟数据存储到相应的.csv文件中,后续将借助Pycharm平台进行后续预处理操作。
2) 数据预处理。首先,通过滑动窗口技术将时间序列问题转换为监督学习问题,创建滞后观察列和预测列是必需的,滞后观察列X作为模型数据输入,预测列Y作为模型期望输出,即有监督学习中的数据标签;其次,对温度模拟数据进行归一化处理,LSTM网络内部激活函数对数据比较敏感,将数据归一到0~1模型效果会更好;最后,划分数据集,将输入数据集划分为训练集、验证集及预测集,遵循6∶2∶2的划分比例,每个数据集在模型训练的不同阶段发挥不同的作用。
3) 模型训练。在此阶段,使用训练集和验证集作为模型输入数据,训练集用于训练优化模型,调试模型的参数;验证集阶段性查看模型训练的效果是否朝着坏的方向进行,不参与网络参数更新。首先借助Pycharm和Tensorflow平台构建LSTM神经网络模型,然后向构建好的LSTM模型中输入训练集和验证集数据,可以观察到输出数据集(即经过LSTM模型产生的预测值)与温度模拟数据值之间的损失逐步下降至平稳。
4) 模型评估。用预测集作为模型输入数据,验证模型泛化能力,选取均方根误差和拟合系数作为评估指标,评价所建立的LSTM网络模型的预测效果是否满足要求。
5) 趋势预测、故障预警。在此阶段,可以得到SEM温度预测数据整体趋势曲线,并利用移动平均达到趋势拟合,得到SEM温度实时数据预测曲线;若温度预测数据达到一定阈值范围,则SEM产生预警提醒。
采取均方根误差(RMSE)和拟合系数(R2)对SEM温度预测预警模型进行定量评价。利用模拟温度数据测试集试验得到RMSE为0.476 89,表明SEM的温度预测模型具有较高的计算精度。同时得到R2为0.792 775,表明SEM温度预测模型和模拟温度数据拟合程度较高,SEM温度预测模型处于强相关等级。
3.3.1SEM温度趋势预测曲线
图7为SEM温度预测数据波动走势图,可以看出,温度模拟数据与温度预测数据相差不大,但SEM温度预测数据波动幅度较大,不易观察数据整体的变化走向。
图8为温度预测数据平滑趋势图。对比图7,本文利用移动平均技术减弱了温度时间序列中的不规则变动,更易显示温度的变化趋势,其预测波动浮动也相对减少,更有利于判断温度预测数据的整体走势。
图7 SEM温度预测数据波动走势
图8 SEM温度预测数据平滑趋势
3.3.2SEM温度预警效果图
图9为SEM温度预警曲线,其中黑色虚线为设置的温度阈值上限df,将df设置为40 ℃,超出阈值较大的温度界限maxdata设置为45 ℃,超出阈值df的频次上限f0设置为3。图9中蓝色为温度模拟数据,该数据源划分为5段,前3段输入得到预测数据显示绿色,表明SEM温度正常,在该时间段内没有产生超出阈值df的预测数据;第4段预测显示黄色,表明SEM温度有异常迹象,在该时间段内出现超出阈值df的预测数据,但异常数据的数值大小尚未超过温度界限maxdata且出现频次小于f0;第5段预测显示红色,表明SEM温度异常,在该时间段内出现超出阈值df但尚未超过maxdata的预测数据,且异常数据的频次≥f0。
图9 温度预警效果
图10为SEM温度预测模型期望输出与SEM温度预测数据值之间的绝对误差图,其误差范围在-0.8~0.4 ℃,集中分布在-0.6~0.2 ℃,模型精确度较高。
图10 SEM温度预测模型期望输出与温度预测值误差
1) 通过划分不相交训练、验证、测试数据集对SEM内部温度进行预测,建立了基于LSTM的SEM温度预测模型,对其进行超参数网格优化及交叉验证,验证了SEM温度预测模型的精度和稳定性能。
2) 构建了一种基于LSTM和移动平均技术的SEM温度趋势预测方法,能够实现SEM内部的温度趋势整体预测。
3) 提出了一种基于二叉决策算法的SEM温度故障预警方法,用户可以实现不同预警级别的温度预警功能。同时,通过温度模拟数据与SEM温度预测数据值之间的绝对误差,用户可直观判断模型的故障预警效果。