(浙江理工大學 機械與自動控制學院,浙江 杭州 310018)
管道運輸是物料長距離運輸方式之一,特別是油氣的長距離運輸[1]。但由于管道腐蝕、地質(zhì)災害、第三方破壞等多方面因素,管道泄漏現(xiàn)象仍時有發(fā)生。管道泄漏不僅會造成重大的經(jīng)濟損失,甚至會產(chǎn)生嚴重的生產(chǎn)事故[2]。2011年12月,珠海橫琴天然氣處理終端附近海底天然氣管線出現(xiàn)泄漏,天然氣凈產(chǎn)量日損失達4.53×106 m3[3]。2013年11月,青島東黃輸油管道原油泄漏現(xiàn)場發(fā)生爆炸,造成63人遇難、156人受傷,直接經(jīng)濟損失7.54億元[4]。因此,建立高效的管道泄漏檢測系統(tǒng),能夠最大程度地避免不必要的經(jīng)濟損失以及人員傷亡。
目前,針對管道泄漏檢測問題,學者已取得較多研究成果。典型的管道泄漏檢測方法,包括負壓波法[5]、動態(tài)壓變法[6]、音波法[7]等。這些方法從泄漏機理出發(fā),通過分析管道壓力、噪聲等變量的變化,來檢測管道是否出現(xiàn)泄漏。此外,針對管道信號的非平穩(wěn)性,將采集到的壓力、噪聲等信號作為時間序列,通過分析可知,該時間序列的異常模式也可用于判斷管道泄漏。文獻[8]考慮到泄漏聲源信號與非泄漏聲源信號的特征差異,將獲得聲源信號的自相關(guān)函數(shù)作為特征提取對象,然后進行近似熵計算,根據(jù)真實產(chǎn)生的泄漏聲信號具有“不可重復性”,從而識別泄漏是否發(fā)生。文獻[9]采用總體局部均值與Kullback-Leibler divergence相結(jié)合的方法分解篩選出包含主要泄漏信息的特征分量,在此基礎上采用基于過完備字典稀疏表示的分類方法實現(xiàn)泄漏孔徑的識別。文獻[10]提取管道壓力信號的特征熵作為輸入向量,選取支持向量機作為分類器,通過粒子群算法來優(yōu)化參數(shù),將優(yōu)化后的支持向量機與特征熵相結(jié)合,來完成對管道泄漏的判斷。文獻[11]通過提取固定長度的壓力序列作為時間序列,計算每個時間序列的加權(quán)排列熵值,通過加權(quán)排列熵的變化來判斷管道的泄漏。
排列熵不需要考慮時間序列具體數(shù)值的大小,而是基于相鄰數(shù)據(jù)的對比,獲取時間序列的特征信息。相對其他熵而言,排列熵能夠放大時間序列的微變信號,算法簡單,具有較好的抗噪性能,被廣泛用于時間序列復雜度的分析[12-17]。在排列熵只考慮了時間序列的序數(shù)結(jié)構(gòu)的情況下,F(xiàn)adlallah[18]等人還考慮了時間序列的幅值信息,提出了加權(quán)排列熵。然而,上述方法都只是在單一尺度上衡量時間序列的隨機性和動力學突變,所能表征的時間序列復雜度有限。因此,Aziz[19]等人在單一尺度的排列熵基礎上提出多尺度排列熵,用于衡量不同尺度下時間序列的復雜性。與單尺度排列熵相比,多尺度排列熵具有更好的魯棒性[20]。
本文基于管道壓力信號時間序列,通過移動窗方法構(gòu)建固定長度的時間序列,對其進行多尺度加權(quán)排列熵分析。以多尺度加權(quán)排列熵是否發(fā)生跳變作為判定管道泄漏的指標,實現(xiàn)管道的泄漏檢測。實驗結(jié)果驗證了所提算法的有效性。
(1)
式中,m為嵌入維數(shù);τ為延遲時間。
{yi+k1-1≤yi+k2-1≤…≤yi+km-1,1≤k1,k2,…,km≤m}
(2)
每一行重構(gòu)分量按升序排列后可以得到一組符號序列πi=[k1,k2,…,km]。m個不同的符號總共有m!種符號序列,計算每一種符號序列出現(xiàn)的概率P(πj):
(3)
按照香農(nóng)熵的形式,該時間序列的排列熵H(m,τ) 定義為:
(4)
從式(4)中可以看出排列熵的取值范圍為[0,lnm!]。由此,可得歸一化的排列熵,即
HP=H(m,τ)/ln(m!)
(5)
由排列熵的定義可知,排列熵的原理在于不考慮數(shù)據(jù)具體值,而是通過序數(shù)模式來表現(xiàn)時間序列的復雜性,算法簡單,具有較強的抗噪性能。
根據(jù)定義(3)可知,一般的排列熵方法只保留了時間序列的序數(shù)結(jié)構(gòu),而忽略了相同序數(shù)之間的幅度差。因此,文獻[18]提出了加權(quán)排列熵,即在一般排列熵的基礎上考慮了時間序列的幅值信息。然而,加權(quán)排列熵也只是在單一尺度上檢測時間序列的復雜度和動力學突變。在反映管道壓力信號時間序列特征細節(jié)方面仍存在一定的不足,因此提出了一種基于多尺度加權(quán)排列熵的泄漏檢測方法。
多尺度加權(quán)排列熵的原理就是將時間序列進行粗?;幚?,然后分別計算各個尺度下的加權(quán)排列熵值。多尺度加權(quán)排列熵的計算步驟如下所示。
(6)
② 根據(jù)排列熵的操作步驟,考慮了時間序列的幅值信息,給每個重構(gòu)分量添加一個加權(quán)系數(shù):
(7)
(8)
(9)
由于多尺度加權(quán)排列熵的大小反映了時間序列的復雜性和隨機性。當管道處于正常狀態(tài)時,壓力信號的隨機性是最大的,多尺度加權(quán)排列熵的值較大,此時熵值會在某一范圍內(nèi)上下波動,而當管道突然發(fā)生泄漏時,壓力開始下降,時間序列復雜度降低,熵值會發(fā)生跳變,因此可以構(gòu)建管道正常運行時熵值的統(tǒng)計量,結(jié)合休哈特控制圖確定其控制限,H落在區(qū)間[uH-3σH,uH+3σH]內(nèi)的概率為99.73%,uH、σH分別為構(gòu)建的統(tǒng)計量的均值和方差,將多尺度加權(quán)排列熵是否在控制限內(nèi)波動作為管道泄漏的指標。
為了保證檢測的實時性,采用最大重疊的移動窗口法選取,即下一個時間序列是上一個時間序列向后移動一個單位,利用多尺度加權(quán)排列熵將移動窗內(nèi)的時間序列進行粗?;幚?,然后計算每個粗粒化后的時間序列的熵值,具體步驟如圖1所示。
① 采集長度固定為T的實時壓力序列yt;
② 將yt進行粗粒化處理,得到新的時間序列zt;
③ 選擇合適的延遲時間τ和嵌入維數(shù)m計算當前時間序列的熵值H(m,τ);
④ 舍棄時間序列的第一個壓力值,取最新時刻的壓力值,組成一個長度為T的新的時間序列;
⑤ 獲取管道正常運行時熵值的統(tǒng)計量,通過休哈特控制圖確定其控制限;
⑥ 比較當前時刻的熵值與前一時刻的熵值,當多尺度加權(quán)排列熵值發(fā)生大的跳變不在控制限內(nèi)時,判定泄漏發(fā)生;
⑦ 如果泄漏沒有發(fā)生,則重復步驟①~步驟⑥。
圖1 管道泄漏檢測流程圖
實驗裝置示意圖如圖2所示。管道的總長度為200 m,管道內(nèi)傳輸?shù)慕橘|(zhì)為水,在管道的進口與出口處各放置一個智能數(shù)字壓力傳感器,可以對壓力信號進行濾波、放大、A/D轉(zhuǎn)換、校正,精度可達0.1%FS,適用于流體的超高精度壓力監(jiān)測[21]。傳感器的采樣頻率為100 Hz,在管道上設立3個泄漏點,泄漏點的泄漏孔的直徑分別為4、8、20 mm,與主管道的截面積之比分別為(百分比):0.07%、0.28%、1.78%,通過控制閥門的開關(guān)來模擬管道的泄漏。管道進口的壓力值由實驗臺進行控制,范圍為0~0.7 MPa。裝置現(xiàn)場圖如圖3所示。
圖2 管道布置
圖3 現(xiàn)場實驗臺
根據(jù)多尺度加權(quán)排列熵的定義和計算步驟[20]可知,數(shù)據(jù)長度、嵌入維數(shù)和延遲時間是影響多尺度加權(quán)排列熵算法的主要參數(shù)。將多尺度加權(quán)排列熵應用至管道壓力信號時間序列中,如果嵌入維數(shù)過小,重構(gòu)的序列中包含太少的狀態(tài),算法將失效,不能檢測到時間序列的突變,而嵌入維數(shù)過大,相空間的重構(gòu)將會均勻化時間序列而難以觀察壓力信號的細微變化,計算也會變得耗時。一般來講,嵌入維數(shù)取3~7。通過對包含泄漏信息的壓力信號進行分析,比較不同數(shù)據(jù)長度、嵌入維數(shù)和延遲時間,本文最后選定數(shù)據(jù)長度T=200,嵌入維數(shù)m=3,時延τ=20作為多尺度加權(quán)排列熵算法的參數(shù)。通過對不同泄漏量下的管道泄漏檢測,并與文獻[22]所提出的基于小波分析的管道泄漏檢測方法進行對比,以驗證所提出的算法的有效性。
圖4為管道在壓力為0.7 MPa、孔1發(fā)生泄漏時的原始壓力信號時間序列。圖4把壓力序列分為5個階段,分別為泄漏發(fā)生前、泄漏發(fā)生時、泄漏發(fā)生后、管道恢復正常時、管道恢復正常后。圖5(a)為尺度因子為1的管道壓力信號時間序列的多尺度加權(quán)排列熵值曲線,即單尺度加權(quán)排列熵曲線。圖5(b)、圖5(c)分別為尺度因子為4、10時的管道壓力信號時間序列的多尺度加權(quán)排列熵值曲線。從圖5可知,當管道壓力在正常范圍內(nèi)波動時,多尺度加權(quán)排列熵在控制限內(nèi)波動,尺度因子越大,波動越小,魯棒性越好;當泄漏發(fā)生和管道恢復正常時,壓力信號時間序列的復雜度降低,熵值發(fā)生巨大的跳變。同時,對比圖5(a)~圖5(c)可知,隨著尺度因子的增大,管道泄漏發(fā)生時多尺度加權(quán)排列熵的跳變更明顯,更有利于判斷泄漏是否發(fā)生。采用文獻[22]和文獻[23]所提出的方法進行小波去噪后,再采用鄰域差值法得到的差值曲線如圖5(d)所示,該方法也可檢測到管道泄漏。
圖4 0.7 MPa下孔1發(fā)生泄漏的管道壓力曲線
圖5 0.7 MPa孔1發(fā)生泄漏時的多尺度加權(quán)排列熵曲線
圖6、圖7分別為管道在壓力0.7 MPa下、孔2和孔3發(fā)生泄漏時的多尺度加權(quán)排列熵曲線,從中可以看出多尺度加權(quán)排列熵在不同的泄漏情況下對管道的泄漏檢測都有著很好的效果,且隨著尺度因子的增大,效果更加明顯。采用最大重疊的移動窗口法獲取時間序列,因此可以將多尺度加權(quán)排列熵曲線與控制限的交點作為泄漏發(fā)生的時間。為了進一步比較所提方法的性能,表1列出了不同泄漏量下,所提方法與文獻[22]所提方法檢測到的泄漏發(fā)生時間。從表1中可以看出,在不同泄漏下,所提出的算法檢測到泄漏的時間先于文獻[22]的方法,具有更好的實時性。
圖6 0.7 MPa孔2發(fā)生泄漏時的多尺度加權(quán)排列熵曲線
泄漏孔發(fā)生泄漏的真實時間/s小波法/s多尺度加權(quán)排列熵/sS=1S=4S=10115.4216.3215.9715.6215.55215.3616.3815.8415.6715.47315.2315.8715.6715.4215.32
圖8為管道在壓力為0.1 MPa、孔1發(fā)生泄漏時的原始壓力信號時間序列。如圖8所示,此時管道的泄漏量較小,且由于噪聲和外界的干擾,泄漏的信號變?nèi)?,不能有效地提取出泄漏信號的特征信息。對比此時的多尺度加權(quán)排列熵曲線,如圖9所示。圖9(a)為尺度因子為1時的熵值曲線,即單尺度加權(quán)排列熵曲線,從圖中可以看出此時正常情況下熵值的波動較大,當泄漏發(fā)生時熵值的跳變不太明顯,無法很好地判斷泄漏的發(fā)生。對比圖9(b)、圖9(c)可知隨著尺度因子的增大,管道沒有泄漏時熵的波動減小,且一直處于較大值,當管道發(fā)生泄漏時熵值發(fā)生明顯的跳變。圖9(d)為文獻[21]所提方法得到的鄰域差值曲線。對比兩個方法可以看出多尺度加權(quán)排列熵對管道的微小泄漏有著很好的效果。
圖8 0.1 MPa下的管道壓力曲線
圖9 0.1 MPa下的多尺度加權(quán)排列熵曲線
基于多尺度加權(quán)排列熵,通過對管道內(nèi)的壓力信號時間序列進行分析,提出了一種新的管道泄漏檢測方法,利用多尺度加權(quán)排列熵值的跳變來識別管道狀態(tài)的變化。通過搭建實驗裝置對所提出的方法進行驗證。結(jié)果表明,所提出的方法能有效地檢測管道的泄漏,為管道的泄漏檢測提供了一種新的思路和手段。