本发明涉及输卤管道检测技术领域,特别涉及一种输卤管道泄漏检测的智能终端与方法。
背景技术:
输卤管道随着管道使用的年限增长,管道泄漏的事故不断增多而其泄漏不仅对环境造成严重污染,还会给企业带来巨大的经济损失。因此,对管道进行实时监测,及时的确定故障的发生并精确定位泄漏点具有重要的研究意义。
目前,管道泄漏的检测方法主要有:1.负压波法;2.次声波法;3.分布式光纤预警法等。当管道发生微小泄漏时,信号变化的不明显。用这些方法检测微小泄漏时,普遍存在检测精度较低的问题。
技术实现要素:
发明目的:针对现有技术中存在的问题,本发明提供一种可以解决现有管道泄漏检测算法精度低的输卤管道泄漏检测的智能终端与方法。
技术方案:本发明提供了一种输卤管道泄漏检测的智能终端,包括stm32f7芯片、压电式复合传感器、滤波电路模块、高精度a/d转换电路、gps模块、外部sdram模块、sd卡模块、4g通讯模块;
所述压电式复合传感器,用来检测输卤管道内部的压力信号和振动信号,其采集的模拟信号经过滤波电路模块、高精度a/d转换电路转化成数字信号,并通过spi方式传输给stm32f7芯片,将采集的数据写入外部sdram模块中,所述stm32f7芯片对数据进行分析,将疑似泄漏的信号,存储到sd卡中,通过4g模块传输到上位机。
进一步地,所述智能终端通过gps模块的秒脉冲信号,同步采集输卤管道上下游某一时刻的振动信号和压力信号,并且利用gps模块给采集到的数据加上时间戳。
进一步地,高精度的a/d转换电路采用的是ads1274。
本发明还公开了一种输卤管道泄漏检测的方法,包含如下步骤:
sept1:获取输卤管道内壁的压力和振动信号的历史数据集h;
sept2:对历史数据集h进行离散s变换,记录s变换后的数据集d,将s变换后的数据集d分为训练集z和测试集t;
sept3:搭建lstm模型,选取sept2中训练集z对lstm模型进行训练类,并调整参数直至网络效果达到预想效果,确立lstm模型;
sept4:将sept2中测试集t作为lstm模型的输入,对模型准确性进行验证;
sept5:对输卤管道当前的振动和压力信号进行同步采样,将当前采样数据进行s离散变换;
sept6:将s变换后的当前数据输入到已经训练好的lstm模型中,进行是否发生泄漏的预测。
优选地,所述s变换的离散形式如下所示:
其中,n为信号的采样总点数,t为采用周期,x[kt](k=0,1,2…n-1)为采样后的信号,n为第n个点的序号,m为向左平移的频率点,j为虚数单位。
优选地,所述s变换的具体步骤如下:
step1.1:采集输卤管道内壁的压力信号x[kt];
step1.2:对压力信号x[kt]进行快速傅里叶变换,得到
step1.3:n=0时,转到step1.4,执行step1.4与step1.5;n不为0时,对于给定的频率点n,计算高斯窗函数的fft:
step1.4:根据n=0的公式计算给定时间点k对应的时间序列的s变换s[kt,0](k=0,1,2,…,n-1表示时间采样点);
step1.5:令k=k+1,重复step1.4,直至完成所有点的s变换,并结束s变换;
step1.6:将step1.2中的
step1.7:对进行傅里叶变换后的高斯窗函数和平移后的频谱函数进行卷积,得到
step1.8:令n=n+1,重复step1.6、step1.7,直到计算完所有的频率点的s变换。
优选地,所述lstm模型公式包括:
1)遗忘门:有条件地选择哪些信息从当前单元中抛弃,公式如下:
ft=σ(wf.[ht-1,xt]+bf)
其中ft∈[0,1],1表示“完全保留”,0表示“完全舍弃”,其中ht-1表示的是上一个时刻lstm的输出,xt表示的是细胞的当前输入,wf为遗忘门的权重矩阵,bf为偏置,σ是激活函数,通常选用sigmoid函数,即
2)输入门:有条件地决定在单元中存储哪些信息,公式如下:
it=σ(wi.[ht-1,xt]+bi)
其中,输入门it是由xt和ht-1经过sigmoid函数计算生成的,it同ft一样是一个介于[0,1]的向量;另一个是由xt和ht-1经过tanh激活函数生成的一个向量
3)输出门:有条件地决定哪些信息需要输出,并输出信息;公式如下:
ot=σ(wo.[ht-1,xt]+bo)
ht=ot*tanh(ct)
其中,运行一个sigmoid层来确定细胞状态的哪个部分将输出出去,接着,把细胞状态通过tanh进行处理,得到一个在-1到1之间的值,并将它和sigmoid门的输出相乘,最终仅会输出我们确定输出的那部分。
优选地,所述sept3中通过交叉熵损失函数,来刻画实际输出和期望输出的差距,并使用随机梯度下降法最小化交叉熵损失函数,对lstm模型进行参数调整,直至模型达到要求,其交叉熵损失函数公式为:
其中,
有益效果:
1.本发明通过s变换能充分的了解到输卤管道某一时刻数据时-频-模三维的特征,作为lstm模型的输入,使得模型能够更好的学习数据的特点,从而增加模型判断的准确性。
2.本发明通过lstm对输卤管道内部的压力信号和振动信号进行建模,解决了数据之间的时间相关性。
3.现有技术中,输卤管道的泄漏判断需要设置阈值,而采用本发明的检测方法可以避免人为设置阈值,增加泄露判断的准确性。
附图说明
图1为本发明的泄漏检测装置的方框结构示意图;
图2本发明智能终端的电路连接图;
图3为本发明的整体框图;
图4为本发明的s变换流程图;
图5为本发明的lstm模型流程图;
图6为本发明的仿真数据图;
图7为本发明的s变换后数据图。
具体实施方式
下面结合附图对本发明进行详细的介绍。
如图1所示一种输卤管道泄漏检测的智能终端,包括stm32f7芯片、压电式复合传感器、滤波电路模块、高精度a/d转换电路、gps模块、外部sdram模块、sd卡模块、4g通讯模块。该智能终端通过gps模块的秒脉冲信号,同步采集输卤管道上下游某一时刻的振动信号和压力信号,并且利用gps模块给采集到的数据加上时间戳,便于之后的数据处理。采集到的模拟数据通过滤波电路模块去除杂波干扰,将滤波后的模拟信号通过a/d转换电路进行模数转换。
高精度的a/d转换电路采用的是ads1274。ads1274是24位逐次逼近型的模拟数字转换器,其中包含四路ad转换电路。ads1274与stm32f7通过spi进行数据传输。stm32f7芯片先通过定时器的捕获功能接受gps的pps中断信号,当定时器捕获到上升沿时,此时在pps中断处理函数中检测ads1274的数据准备好信号
图2为电路的滤波电路图。本发明需要分析的是输卤管道内部振动所产生的交流信号,所以第一部分的滤波放大电路是将交流信号放大,直流信号作为载波信号,保持不变。第二部分为差分放大电路。对于直流信号来说,差分放大电路是共模输入,输出端的电压为0,避免了直流电压的干扰,同时也放大了所需要的交流信号。
本发明还公开了一种输卤管道泄漏检测的方法,其整体流程图如图3所示,设信号的采样总点数为n,采用周期为t。检测方法主要包括如下步骤:
sept1:获取输卤管道内壁的压力和振动信号的历史数据集h。
通过压电式复合传感器获取管道内壁的压力信号(振动信号做相同分析),设采样后的信号为x[kt](k=0,1,2…n-1)。
sept2:对历史数据集h进行离散s变换,记录s变换后的数据集d,将s变换后的数据集d分为训练集z(总数据的70%)和测试集t(总数据的30%)
s变换的离散形式如下所示:
其中,n为信号的采样总点数,t为采用周期,x[kt](k=0,1,2…n-1)为采样后的信号,n为第n个点的序号,m为向左平移的频率点,j为虚数单位。
对所有采集到信号(历史数据集h)进行离散s变换,记录s变换后的数据集。
s变换的具体步骤如图4所示:
step2.1:采集数据管道内壁的压力信号x[kt]。
step2.2:对输入信号的x[kt]进行快速傅里叶变换,得到
step2.3:n=0时,转到step2.4,并执行step2.4与step2.5;当n不为0时,对于给定的频率点n,计算高斯窗函数的fft:
step2.4:根据n=0的公式计算给定时间点k对应的时间序列的s变换s[kt,0](k=0,1,2,…,n-1表示时间采样点)。
step2.5:令k=k+1,重复step2.4,直至完成所有点的s变换。
step2.6:将step2.2中的
step2.7:对进行傅里叶变换后的高斯窗函数和平移后的频谱函数进行卷积,得到
step2.8:令n=n+1,重复step2.6,step2.7,直到计算完所有的频率点的s变换。
sept3:n个信号点的s变换后得到复数矩阵,利用该矩阵搭建lstm模型,选取sept2中训练集z对lstm模型进行训练类,并调整参数直至网络效果达到预想效果,确立lstm模型。
sept4:将sept2中测试集t作为lstm模型的输入,对模型准确性进行验证。
sept5:对输卤管道当前的振动和压力信号进行同步采样,将当前采样数据进行s离散变换。
sept6:将s变换后的当前数据输入到已经训练好的lstm模型中,进行是否发生泄漏的预测。
上述的lstm模型,其公式包括:
1)遗忘门:有条件地选择哪些信息从当前单元中抛弃,公式如下:
ft=σ(wf.[ht-1,xt]+bf)
其中ft∈[0,1],1表示“完全保留”,0表示“完全舍弃”,其中ht-1表示的是上一个时刻lstm的输出,xt表示的是细胞的当前输入,wf为遗忘门的权重矩阵,bf为偏置,σ是激活函数,通常选用sigmoid函数,即
2)输入门:有条件地决定在单元中存储哪些信息,公式如下:
it=σ(wi.[ht-1,xt]+bi)
其中,输入门it是由xt和ht-1经过sigmoid函数计算生成的,it同ft一样是一个介于[0,1]的向量;另一个是由xt和ht-1经过tanh激活函数生成的一个向量
3)输出门:有条件地决定哪些信息需要输出,并输出信息;公式如下:
ot=σ(wo.[ht-1,xt]+bo)
ht=ot*tanh(ct)
其中,运行一个sigmoid层来确定细胞状态的哪个部分将输出出去,接着,把细胞状态通过tanh进行处理,得到一个在-1到1之间的值,并将它和sigmoid门的输出相乘,最终仅会输出我们确定输出的那部分。
设“1”标记为发生泄漏,“0”表示管道未发生泄漏。通过随机梯度下降法最小化交叉熵损失进行模型参数调整,直到模型的准确性达到要求。其损失函数公式为:
其中,
图6是输卤管道仿真图,对采集信号附加白噪声信号从而模拟输卤管道的噪声。图7是将仿真数据进行s变换后的二维等高线图,即输卤管道的时-频-模图形。最后将s变换后的矩阵作为lstm模型的输入,输出为“1”时,则表发生泄漏,输出为“0”时,则表示未发生泄漏。
上述实施方式只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所做的等效变换或修饰,都应涵盖在本发明的保护范围之内。