基于小波变换的油气管道泄露信号检测

采用分布式控制系统、负压波检测法 , 根据泄漏产生的瞬态压力信息传播到上、下游的时间差 , 以及管 内压力波的传播速度, 即可计算出泄漏点的位置 ; 但由于工业现场的电磁干扰、输油泵振动等因素 , 使采集到的压力波形序列夹杂着大量噪声. 要实现负压波准确定位 , 关键在于捕捉压力波形的奇异点 , 为此采用小波变换技术 . 阐述了基于小波变换的测漏原理及定位方法, 并在 Matlab 中利用 db 小波分析验证 . 经过处理 , 图形可以在开始时 产生较大的差值, 以便准确判断泄漏时刻 .
关键词 : 管道泄漏 ; 负压波 ; 小波多分辨率分解 ; Matlab; db 小波
在石油工业中 , 输油管道安全是系统运行的基本条件 . 由于距离长、地形复杂 , 加上人为盗油等因素 , 要 求管道监测系统能够及时准确地发现泄漏, 以便采取措施 , 避免经济损失 .
管道测漏方法有多种分类 , 根据对象不同 , 分为直接测漏法和间接测漏法 ; 根据检测位置不同 , 分管内 检测和管外检测; 从应用性质角度划分 , 有不影响输油工艺操作的在线检测和停运检测 [ 1] . 其中间接测漏法 较常用, 又细分为流量平衡法、水力坡降线法、音频测漏法、超声波检测法、统计测漏法、基于神经网络的测漏 法、压力波检测法等, 其中负压波检测法被越来越多地采用 [ 2] .

clc;close all;clear
data = xlsread('data.xlsx');
t=1:length(data);
error=data(:,1)-data(:,2);
figure(1)
plot(t,data(:,1))
title 泄露信号
figure(2)
plot(t,data(:,1))
title 正常信号
figure(3)
plot(t,error)
title 泄露信号与正常信号的误差
data2 = xlsread('data2.xlsx');
t1=1:length(data2);
figure(4)
plot(t1,data2)
title 泄露信号
%% 小波去噪音
y=data2;%故障信号的
y=y';
%小波函数sym6 5层分解
[C,L] = wavedec(y,7,'sym6'); %%db3小波变换。分解到4层
sigma = wnoisest(C,L,2);%通过谐调参数选择信号的全局阈值
alpha = 8;
thr = wbmpen(C,L,sigma,alpha);%用软阈值和近似信号对信号去噪
keepapp = 1;
xd = wdencmp('gbl',C,L,'sym6',7,thr,'s',keepapp);
t=1:length(y);
figure(4)
subplot(211)
plot(t,y)
title('泄露信号')
subplot(212)
plot(t,xd)
title('去噪音后的信号')
%% 小波变换
[C1,L1] = wavedec(xd,4,'db3'); %%db3小波变换。分解到4层
LS1 = length(y);
sla4 = wrcoef('a',C1,L1,'db3',4);%%小波变换的系数
figure(5)
subplot(511)
plot(sla4)
%% 
m = 0;n = 0;
max1 = zeros(1,4);
min1 = zeros(1,4);
for i = 1:4
    decmp = wrcoef('d',C1,L1,'db3',5-i);
    subplot(5,1,i+1)
    plot(decmp)
    max1(i) = max(decmp);
    min1(i) = min(decmp);
    for j = 1:LS1 %%寻找分解信号的极值,输出
        if decmp(j) == max1(i)
            m = m+1;
            s1_min(i,m) = j;
        end
        if decmp(j) == min1(i)
            n = n+1;
            s1_min(i,n)=j;
        end
    end
end
%% 
t1 = s1_min(1,1);t2 = s1_min(2,2);
t3 = s1_min(3,3); %平均求到极值的信号
t_xiaobo = t(round(mean([t1,t2,t3])));%%小波变换得到的泄露时间
disp('小波变换得到的泄露的位置(第几个节点)')
disp([num2str(t_xiaobo)])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值