李忠偉,崔學榮,吳春雷
無線隨鉆測量系統的數據壓縮協議研究
李忠偉,崔學榮,吳春雷
在隨鉆測量系統中,目前采用的主要傳輸技術是泥漿壓力波正負脈沖的方法,該方法所固有的缺點是信號傳輸速率低,因此,在低信號傳輸速率下,研究數據的壓縮技術,從而提高信號的傳輸效率具有非常重要的意義。提出采用Huffman技術對數據進行壓縮,從而實現隨鉆測量系統的高效傳輸。實驗證明:壓縮比可以滿足實際應用需求,具有廣泛的應用意義。
隨鉆測量;連續波;數據報協議;增量數據報;完全數據報;數據域定界
從井下到地面的信息傳輸技術是導向鉆進與定向鉆進領域中研究的熱點與難點問題,也是隨鉆測量系統應用和發展的技術“瓶頸”。目前的研究熱點主要集中在傳輸設備硬件以及傳輸的編碼方面,在數據的壓縮傳輸方面少有研究。由于鉆井液信道傳輸帶寬有限、鉆井液壓力波信號的產生速率有待提高,因此,設計新型鉆井液壓力波信號發生器與引進數據壓縮技術成為大幅提高井下信息傳輸效率的有效途徑。
目前,國內井下數據壓縮技術的研究主要集中在聲波測井數據、成像測井數據、隨鉆地震數據等。例如,劉付斌等根據聲波信號的特點,研究了基于字典的LZW壓縮算法在偶極子數字陣列聲波測井儀數據壓縮方面的應用;張偉等引入了整數小波變換,采用最大幅值、最小閾值、最小輸出位等多種方法,降低了 SPIHT算法的復雜度,提高了小波變換的速度,并設計了算法的并行實現結構,滿足了聲波測井數據高速實時處理的要求[4];賈安學等以正交多極子聲波測井儀 MPAL專家模式的井下數據為測試數據,采用算術編碼、預測編碼、FLAC和APE壓縮算法分別測試了對聲波測井數據的壓縮效果,其中FLAC和APE壓縮算法具有較好的壓縮率[5];嚴正國等利用小波變換的視頻圖像壓縮技術,通過質量盒控制、背景對比度控制和場頻控制等技術實現了井下圖像數據的高度壓縮[6]。
由于隨鉆測量數據參數在一定時間以及一定的地層下,許多參數具有一定的穩定性,而且僅僅使用有限的表示數字的符號(共11個),所以在對其進行壓縮時,可以根據數字出現的頻率,極大提高數據的壓縮比,即壓縮后的二進制數據的長度將更短,從而保證了其傳輸的高效性。
數據壓縮是指按照一定的算法對數據進行重新組織,從而減少數據的長度,進而減少信道中傳輸的二進制比特流。數據壓縮可以分為無損壓縮和有損壓縮兩種,前者在接收端可以完整恢復出壓縮前的數據(例如WinRAR壓縮軟件),后者只能部分恢復出壓縮前的數據(例如:視頻、音頻的壓縮),在隨鉆測量數據傳輸中顯然要使用的是無損壓縮。
1.1 Huffman編碼簡介
Huffman編碼是1952年由Huffman提出的一種無損數據壓縮技術,是基于統計模型的數據壓縮技術,是無損壓縮當中最好的方法之一。它使用二進制來替換每個符號,長度由每個符號出現的頻率(權值)決定。Huffman編碼充分考慮了被編碼的符號的統計特性,將出現概率大的符號轉換為較短的二進制編碼,將出現概率小的符號轉換為較長的二進制編碼,從而實現對字符的壓縮,也轉換為了二進制。Huffman壓縮和解壓縮是通過Huffman樹來實現的。
1.2 Huffman樹的構造
Huffman樹,即帶權路徑長度最短的樹。其構造步驟如下:
① 根據給定的n個權值{w1,w2,……wn},構造n棵只有根結點的二叉樹,令其權值為wj;
② 在森林中選取兩棵根結點權值最小的樹作為左右子樹,構造一棵新的二叉樹,置新二叉樹根結點的權值為其左右子樹根結點權值之和;
③ 在森林中刪除這兩棵樹,同時將新得到的二叉樹加入森林中;
④ 重復上述② ③兩步,直到只含一棵樹為止,這棵樹即Huffman樹。
1.3 Huffman壓縮
首先,要根據Huffman樹獲得Huffman編碼表,方法是從根節點開始遍歷樹,左孩子的所有路徑標注為0,右孩子的所有路徑標注為1。然后,再根據生成的Huffman樹對數據進行編碼,方法是從葉子結點開始向根結點回溯,組合路徑上所有的符號(0或1),即可得到該葉子結點對應的符號的編碼。
1.4 Huffman解碼
解碼的過程本質上就是一個遍歷二叉樹的過程,一直遍歷到葉子結點,此時完成第一個字符的解碼;接著再重新從樹根開始遍歷二叉樹,一直再遍歷到葉子結點,此時完成第二個字符的解碼;直到所有的二進制都遍歷完畢為止。
在隨鉆測量中從井下向地面傳遞的參數均為數值型數據,所以只用到10個數字、負號(-)、和小數點(.),共12個字符,所以只需要對這12個字符進行Huffman編碼即可。隨鉆測量數據在某個時間段內具有一定的穩定性,即參數的取值變化不大。這樣,字符出現的頻率也就相對穩定。發送方在井下自動計算在某個周期內,各個字符出現的概率,如果符號出現的概率有了較大變化則擇期將其發送到地面主控計算機,同時修改自己的 Huffman編碼。其更新流程圖如圖1所示:

圖1 Huffman編碼表的更新過程
2.1 系統初始化
在第一次使用系統發送編號為i的數據報Pi時,需要對其參數進行初始化,主要包括:
1)權值和編碼初始化
12個字符的權值都設置為1,這樣生成的Huffman樹的形狀如圖2所示:

圖2 系統初始化時生成的Huffman樹
各字符對應的Huffman編碼如表1所示:

表1 系統初始化時生成的Huffman編碼
例如,根據表1所示的Huffman編碼,如果需要發送數值“0.34”,則壓縮碼為“00011100111000”;如果地面主控計算機收到的是“001010”,則解碼結果為“12”。
2)設定時間周期
用戶可以設定每類數據報的 Huffman編碼的更新周期,只有自上次重構編碼后的時間超過這個更新周期,系統才重新計算是否需要更新Huffman編碼。
3)標準差閾值
只有當在新的一個發送周期內所有12個字符的概率標準差超過這個閾值,才更新 Huffman編碼;否則如果在很長時間內字符的概率變化很少,即使到了更新周期,也不更新。
2.2 發送數據
在該模塊內完成數據報的封裝、壓縮、校驗和發送。
2.3 修改該序號的數據報的權值
每發送完一個數據報,系統都重新更新該序號的報文中所涉及到的所有字符的權值,注意只是更新權值,并不重新計算Huffman編碼。
2.4 判斷自上次重構編碼后的時間是否大于設定時間周期
因為在很長一段時間內或者在某個地層上參數的取值都會保持相對穩定,而且考慮到盡量減少 Huffman權值表發送的次數,所以并不是每次發送完數據報都更新Huffman編碼,只有在經過某個已經設定的時間周期后,才考慮是否更新Huffman編碼,否則再轉回第2步,繼續發送后續數據。
2.5 計算所有字符的權值的標準差
標準差的計算公式為公式(1):

2.6 判斷標準差是否大于設定閾值
如果計算出的標準差很大,說明各個字符的出現概率發生了很大的變化,此時就需要重新計算 Huffman編碼。如果標準差變化不大,即使到了 Huffman編碼更新周期,也不更新,此時再轉回第2步,繼續發送后續數據。
2.7 發送該序號數據報的Huffman權值表
Huffman權值表的數據報,采用如表所示的格式(假定數據報編號為99),其中:
(1)數據報類型標識:使用“1”,說明發送的是完全數據報,要求地面主控計算機使用支持重傳的否定確認協議,確保井下和地面Huffman編碼的一致性。
(2)數據域定界:表明后邊各個域中字符的長度,其中第一位一定為2,因為數據報編號為99,長度為2。第2位為0、1或者2表示編號的長度,因為編號最大為99,所以長度最大為2。后邊12個域的長度最大為2,即數據域定界后12位的取值只能是0、1、2。
(3)數據報編號:取固定值,99。
(4)編號:指定當前發送的權值表是屬于哪個數據報的,即數據報的編號,如表2所示:

表2 Huffman權值表的數據報的格式
2.8 對本地該序號的數據報的字符重新進行Huffman編碼
重新按照Huffman編碼的規則,構造Huffman樹,重新編碼。該步驟在井下和地面主控計算機同時進行,這樣保證下次發送的數據采用的是新的Huffman編碼。
注意:如果地面接收站沒有正確接收到該數據報,則地面主控計算機會發送一個否認幀,此時井下接收到該否認幀后,需要重新發送 Huffman權值表和隨后已經發送的使用新的Huffman編碼發送的所有數據。
衡量數據壓縮方法好壞的重要指標是壓縮比,壓縮比=壓縮后代碼長度/源代碼長度×100%,其含義是被壓縮后的代碼占源代碼的比例。為了對算法進行分析,本文選用勝利油田“高43-平51”井測深從993.81米到1079.7米的10條井史資料進行分析。假設Huffman權值表如表3所示,根據該表產生的Huffman樹如圖3所示:

圖3 仿真中采用的字符的Huffman樹
根據該Huffman樹生成的各個字符的Huffman編碼如表3所示:

表3 仿真中采用的字符的Huffman編碼表
根據表3 Huffman編碼表對仿真的數據進行Huffman壓縮的結果如表4所示:

表4 仿真的數據報及Huffman壓縮后的幀
被方框框起來的部分是數據報報頭。
從整個數據報考慮:從表4中可以看出如果采用7位的ASCII碼進行傳輸,其長度明顯比Huffman壓縮的長。所有10條數據的平均壓縮比為43%。另外,因為第1、6條是完全數據報,其Huffman編碼的長度明顯比增量數據報長。
根據無線隨鉆測量系統獨特的特征設計了基于Huffman編碼的無線隨鉆測量系統的數據壓縮協議,通過對真實井史資料的仿真,發現該方法與傳統的 ASCII碼以及浮點數的表示方法相比,可以大大減少傳輸的二進制比特流的長度,從而提高無線隨鉆測量信道的數據傳輸效率。
[1] 張煜,熊軻,裘正定,王升輝. 基于壓縮感知的隨鉆測井編碼傳輸方法[J]. 地球物理學報,2013,01:335-347.
[2] 謝小勇. 基于網絡傳輸測井數據無損壓縮算法的研究[D].電子科技大學,2013.
[3] 劉付斌, 李艾華. 偶極子數字陣列聲波測井儀中數據壓縮的實現[J]. 設計與研發, 2007, 12: 58-61.
[4] 張偉, 師奕兵. 聲波測井數據壓縮的一種 SPIHT改進算法[J]. 電子測量與儀器學報, 2008, 22(1): 15-19.
[5] 賈安學, 喬文孝, 鞠曉東等. 聲波測井井下數據壓縮算法壓縮效果測試[J]. 測井技術, 2011, 35(3): 288-291.
[6] 嚴正國, 張家田. 井下電視圖像壓縮技術[J]. 西安石油大學學報(自然科學版), 2007, 22(5): 94-97.
Study on Data Compression Protocol of Wireless Measurement While Drilling System
Li Zhongwei, Cui Xuerong, Wu Chunlei
(Department of Computer and Communication Engineering, China University of Petroleum (Huadong), Qingdao 266580, China)
In the measurement while drilling system, the main transmission technology currently used is the mud pressure wave of positive and negative pulse. The demerit of which is the low signal transmission rate. Thus in the low rate of signal transmission, to study the compression technology so as to improve the transmission efficiency of the signal is of great importance. The paper proposes Huffman technology to compress the data and consequently enable the drilling with the measurement system to transfer efficiently. The experiment shows that the compression ratio can meet the needs of practical application, and has wide application significance.
Measurement While Drilling; Continuous Wave; Datagram Protocol; Incremental Datagram; Complete Datagram; Data Domain Bound
TE243
A
2014.10.15)
1007-757X(2014)12-0015-03
中國石油科技創新基金項目(2012D-5006-0304)
李忠偉(1978-),中國石油大學(華東),計算機與通信工程學院,副教授,博士,研究方向:井下系統、信息與控制工程研究,青島,266580
崔學榮(1979-),中國石油大學(華東),計算機與通信工程學院,副教授,博士,研究方向:UWB無線定位、隨鉆測量系統、位置服務、車聯網,青島,266580
吳春雷(1980-),中國石油大學(華東),計算機與通信工程學院,講師,碩士,研究方向:UWB無線通信、隨鉆測量系統、60GHz無線通信,青島,266580