王麗坤,陳進(jìn)超
基于V8系統(tǒng)大地電磁時(shí)間序列數(shù)據(jù)文件讀寫
王麗坤1,陳進(jìn)超2
(1.四川金核礦業(yè)有限公司,成都 610052;2.成都理工大學(xué),成都 610061)
大地電磁測(cè)深法已廣泛應(yīng)用于礦產(chǎn)資源勘查、工程地質(zhì)、地震及地質(zhì)災(zāi)害等領(lǐng)域。V8多功能電法儀是目前廣泛使用的大地電磁數(shù)據(jù)采集系統(tǒng),其隨機(jī)配備的軟件雖能顯示或轉(zhuǎn)換出采集到的時(shí)間序列文件數(shù)據(jù),但沒(méi)有時(shí)間域噪聲分析處理功能。為開(kāi)發(fā)與此系統(tǒng)相應(yīng)的時(shí)間域噪聲分析與處理系統(tǒng),需對(duì)采集到的大地電磁測(cè)深原始時(shí)間序列數(shù)據(jù)進(jìn)行分析。論文在分析大地電磁數(shù)據(jù)原始時(shí)間序列文件格式的基礎(chǔ)上,明確了數(shù)據(jù)存儲(chǔ)形式,根據(jù)參數(shù)特征,設(shè)計(jì)了原始數(shù)據(jù)讀寫算法程序,為大地電磁原始數(shù)據(jù)時(shí)間域分析及信噪分離提供了便利。
V8系統(tǒng);數(shù)據(jù)文件;讀寫
大地電磁測(cè)深廣泛應(yīng)用于礦產(chǎn)資源、頁(yè)巖氣和煤層氣勘探、工程地質(zhì)、地震、及地質(zhì)災(zāi)害等領(lǐng)域。目前主要采用的采集設(shè)備是加拿大鳳凰公司的V8多功能電法儀,該儀器具有簡(jiǎn)單輕便、功能強(qiáng)、勘探深度大等特性[1]。在大地電磁實(shí)際勘探過(guò)程中,會(huì)受到通訊設(shè)備、鉆井、礦山冶煉、鐵路交通等因素形成的電磁噪聲和人文噪聲的干擾[2],為了較好地分離大地電磁干擾信號(hào),需對(duì)采集到的大地電磁測(cè)深原始時(shí)間序列數(shù)據(jù)進(jìn)行分析研究。
而V8多功能電法儀配套的Synchro Time Series View、SSMT2000、NPIPlot、MTEditor等相關(guān)軟件僅具備大地電磁數(shù)據(jù)的傅里葉變換、顯示電阻率和相位曲線,及原始時(shí)間序列文件圖形顯示的功能[3],不能讀寫(提取)采集到的時(shí)間序列文件數(shù)據(jù);且目前常用的大地電磁后期處理軟件MTsoft-2D主要用于大地電磁數(shù)據(jù)反演,不能去除類階躍噪聲、類方波噪聲等人文干擾。因此,為了獲取大地電磁測(cè)深原始時(shí)間序列數(shù)據(jù),本文在分析大地電磁數(shù)據(jù)原始時(shí)間序列文件格式的基礎(chǔ)上,研究不同頻率的3字節(jié)二進(jìn)制格式數(shù)據(jù)的讀寫,并通過(guò)實(shí)測(cè)數(shù)據(jù)進(jìn)行驗(yàn)證。
V8采集大地電磁測(cè)深數(shù)據(jù)時(shí),在每個(gè)測(cè)點(diǎn)記錄電道和磁道中Ex、Ey、Hx、Hy、Hz五個(gè)分量,并將原始數(shù)據(jù)記錄在參數(shù)文件(*.TBL)、盒子標(biāo)定文件(*.CLB)、磁探頭標(biāo)定文件(*.CLC)及不同頻帶的數(shù)據(jù)文件(*.Tsn文件,n=3,4,5)中。V8采集到數(shù)據(jù)文件的命名基于采集設(shè)備的序列號(hào)和采集日期,命名格式為ssssmdda,其中ssss為采集數(shù)據(jù)的MTU/MTU-A設(shè)備的序列號(hào),m為16進(jìn)制表示的月份,dd是一個(gè)表示日期的兩位十進(jìn)制數(shù),a是一個(gè)表示當(dāng)天采集次數(shù)的英文字母。*.Tsn是存放時(shí)間序列的文件,TSn分別標(biāo)明不同的頻帶,對(duì)于V8采集系統(tǒng),*.TS3是2400Hz的采樣率數(shù)據(jù),*.TS4是150Hz的采樣率數(shù)據(jù),*.TS5是15Hz的采樣率數(shù)據(jù)[3]。

圖1 V8的時(shí)間序列文件記錄樣式
時(shí)間序列文件*.TSn連續(xù)記錄時(shí)間序列數(shù)據(jù),記錄下不同時(shí)刻的采樣代數(shù)值。每段記錄(RECORDE)由一個(gè)tag(標(biāo)記)和一連串?dāng)?shù)據(jù)組成,由多段記錄(RECORDE)組成了時(shí)間序列文件,圖1為時(shí)間序列文件的記錄樣式。時(shí)間序列以在24位字節(jié)存儲(chǔ),每個(gè)采樣占3 bytes。一個(gè)scan(掃頻)是多個(gè)道的采樣,每道的值由三個(gè)字節(jié)組成。一個(gè)采樣時(shí)間的完整scan按照道號(hào)保存(道號(hào)從1開(kāi)始),scan按采樣時(shí)間的順序保存。第一個(gè)scan永遠(yuǎn)在UTC的整秒開(kāi)始記錄,掃描率永遠(yuǎn)為1Hz的整數(shù)倍[3.4.5]。

表1 Tag(標(biāo)記)各個(gè)字節(jié)的含義
根據(jù)盒子的硬件不同,tag的格式也可能不同,但是在一個(gè)文件中只會(huì)使用一種tag。目前,在TSH和TSL文件中,tag為16 bytes長(zhǎng),在TSn文件中32 bytes長(zhǎng)。表1綜合說(shuō)明了不同的tag格式細(xì)節(jié)。
讀取大地電磁測(cè)深數(shù)據(jù),需要首先定義相關(guān)參數(shù)變量見(jiàn)表2,并獲得時(shí)間序列數(shù)據(jù)文件名,接著在文件夾下查詢文件是否存在,不存在則退出程序。打開(kāi)文件,用二進(jìn)制方式逐字節(jié)順序讀取文件。讀取tag(標(biāo)簽)參數(shù)信息,不同儀器盒子的硬度不同,tag(標(biāo)記)的格式也不同。取的V8系統(tǒng)大地電磁數(shù)據(jù)的Tag如下:SEC、MIN、HOUR、DAY、MONTH分別為秒、分、時(shí)、天、月;YEAR1、YEAR2是年份,兩個(gè)字節(jié)保存,因此讀出后要將這兩個(gè)字節(jié)組合,下同;SER_NUMB1、SER_NUMB2是盒子編號(hào),分兩字節(jié)保存;SAMP_RATE1、SAMP_RATE2是采樣率,分兩字節(jié)保存;CHAN是采樣道數(shù)。
經(jīng)研究發(fā)現(xiàn)文件的數(shù)據(jù)組織如下:一個(gè)TSn文件由若干個(gè)RECORD組成,具體個(gè)數(shù)不確定,需要讀取的時(shí)候檢查文件是否結(jié)束。一個(gè)RECORD由一個(gè)tag標(biāo)簽和一組對(duì)應(yīng)的SCAN組成,這組SCAN的數(shù)量在它對(duì)應(yīng)的tag相應(yīng)的字節(jié)中給出;一個(gè)SCAN由N個(gè)CHANNEL(采集的電道和磁道)數(shù)據(jù)(整形)組成,CHANNEL的個(gè)數(shù)在tag標(biāo)簽相應(yīng)字節(jié)給出;一個(gè)tag標(biāo)簽的所占的字節(jié)數(shù)(長(zhǎng)度)也在它對(duì)應(yīng)的字節(jié)中給出,tag標(biāo)簽一般由32個(gè)字節(jié)保存。解析RECORD包含的tag長(zhǎng)度和含有的SCAN個(gè)數(shù),及每個(gè)SCAN包含的CHANNEL個(gè)數(shù)。Tsn時(shí)間序列數(shù)據(jù)讀取流程見(jiàn)圖2。

表2 數(shù)據(jù)讀取參數(shù)及說(shuō)明
讀取Tsn時(shí)間序列數(shù)據(jù)文件的tag(標(biāo)記)部分,可獲得文件的時(shí)間、儀器序列號(hào)、scan掃描個(gè)數(shù)、channel道數(shù)及采樣率等參數(shù)信息。接著根據(jù)tag(標(biāo)記)的相關(guān)信息,讀取大地電磁實(shí)際測(cè)量數(shù)據(jù)。因Tsn時(shí)間序列數(shù)據(jù)文件中每個(gè)道channel的數(shù)值由3個(gè)8位二進(jìn)制組成,讀取實(shí)測(cè)數(shù)據(jù)時(shí),需將三字節(jié)的二進(jìn)制數(shù)拼成24位的二進(jìn)制數(shù),最后將二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù),并存放到對(duì)應(yīng)的數(shù)組中。
V8系統(tǒng)采集到的數(shù)據(jù)以二進(jìn)制方式存儲(chǔ),負(fù)數(shù)采用補(bǔ)碼方式存儲(chǔ),在補(bǔ)碼中最高位為符號(hào)位,正數(shù)用原碼形式存儲(chǔ)。
計(jì)算機(jī)存儲(chǔ)時(shí)按照低8位、中8位、高8位順序存放,分別存放到變量SCAN_CHANNEL(1)、SCAN_CHANNEL(2)、SCAN_CHANNEL(3)中,上述三個(gè)變量均為單字節(jié)整型變量。讀取的時(shí)候SCAN_CHANNEL(3)是數(shù)據(jù)的高8位,SCAN_CHANNEL(1)是數(shù)據(jù)的低8位,因此要正確組合,就必須先將SCAN_CHANNEL(3)與SCAN_CHANNEL(1)換位,形成正確的數(shù)據(jù)格式順序,其中SCAN_CHANNEL(3)最高位為符號(hào)位。

圖2 讀取Tsn時(shí)間序列數(shù)據(jù)文件流程
數(shù)值在采集儀器存儲(chǔ)的時(shí)候?yàn)?4帶符號(hào)的補(bǔ)碼,因此需要先判斷符號(hào),因此最高的一位代表符號(hào)位,不能作為數(shù)值轉(zhuǎn)換,實(shí)際數(shù)據(jù)數(shù)值部分是23位。
1)符號(hào)的判斷:如果SCAN_CHANNEL(3)的十進(jìn)制值大于或等于128,則表示這個(gè)道值是負(fù)的,否則為正;
2)若SCAN_CHANNEL(3)表示的十進(jìn)制值大于等于128,則減去128,將結(jié)果乘以65536,與SCAN_CHANNEL(2)*256+SCAN_CHANNEL(1)求和結(jié)果與128*65536的值相減,即得24位二進(jìn)制數(shù)表示的十進(jìn)制數(shù)據(jù)。
具有的轉(zhuǎn)換程序如下:
if (SCAN_CHANNEL3 < 0) %高8位為負(fù),需要調(diào)整,加上模值128后乘以倍率65536
CHANNEL_VAUE = (SCAN_CHANNEL3+128)*65536
if (SCAN_CHANNEL2 < 0) %中8位為負(fù),需要調(diào)整,加上模值后乘以倍率256
CHANNEL_VAUE=CHANNEL_VAUE + (SCAN_ CHANNEL2+256)*256
if (SCAN_CHANNEL1 < 0) %低8位為負(fù),需要調(diào)整,加上模值后即為正確數(shù)值
CHANNEL_VAUE = CHANNEL_VAUE + SCAN_ CHANNEL1+256
else %低8位為正,不需要調(diào)整,即為正確數(shù)值
CHANNEL_VAUE = CHANNEL_VAUE + SCAN_ CHANNEL1
end
else %中8位為正,不需要調(diào)整,直接乘以倍率256
CHANNEL_VAUE = CHANNEL_VAUE + SCAN_CHANNEL2 *256
if (SCAN_CHANNEL1 < 0) %低8位為負(fù),需要調(diào)整,加上模值后即為正確數(shù)值
CHANNEL_VAUE = CHANNEL_VAUE + SCAN_CHANNEL1+256
else %低8位為正,不需要調(diào)整,即為正確數(shù)值
CHANNEL_VAUE = CHANNEL_VAUE + SCAN_CHANNEL1
end
end
CHANNEL_VAUE = CHANNEL_VAUE -8388608
else %高8位為正,不需要調(diào)整,直接乘以倍率65536
CHANNEL_VAUE = SCAN_CHANNEL3 * 65536
if (SCAN_CHANNEL2 < 0)
CHANNEL_VAUE=CHANNEL_VAUE + (SCAN_CHANNEL2+256)*256
if (SCAN_CHANNEL1 < 0) %低8位為負(fù),需要調(diào)整,加上模值后即為正確數(shù)值
CHANNEL_VAUE = CHANNEL_VAUE + SCAN_CHANNEL1+256
else %低8位為正,不需要調(diào)整,即為正確數(shù)值
CHANNEL_VAUE = CHANNEL_VAUE + SCAN_CHANNEL1
end
else %中8位為正,不需要調(diào)整,直接乘以倍率256
CHANNEL_VAUE = CHANNEL_VAUE + SCAN_CHANNEL2 *256
if (SCAN_CHANNEL1 < 0) %低8位為負(fù),需要調(diào)整,加上模值后即為正確數(shù)值
CHANNEL_VAUE = CHANNEL_VAUE + SCAN_CHANNEL1+256
else %低8位為正,不需要調(diào)整,即為正確數(shù)值
CHANNEL_VAUE = CHANNEL_VAUE + SCAN_CHANNEL1
end
end
CHANNEL_VAUE = CHANNEL_VAUE + 0
end
采樣本文所用的數(shù)據(jù)讀取方法對(duì)文件名為1659A12A.TS3的時(shí)間序列文件進(jìn)行處理,得到如下相關(guān)參數(shù):采樣時(shí)間是2015年10月12日10點(diǎn)55分,盒子編號(hào)為1659,采集到6道數(shù)據(jù),分別對(duì)應(yīng)于Ex、Ey、Ez、Hx、Hy、Hz的場(chǎng)值,采樣率為2400Hz。將讀取的數(shù)據(jù)中的Ex道數(shù)據(jù)的一小段與原程序讀取的數(shù)據(jù)進(jìn)行對(duì)比,如圖3所示,可知本文所用方法讀取的數(shù)據(jù)與V8配套軟件讀取的數(shù)據(jù)完全一致,證明了本文所用方法可行。

圖3 用本文程序讀取的實(shí)測(cè)MT數(shù)據(jù)Ex電場(chǎng)分量與原程序讀取數(shù)據(jù)對(duì)比
通過(guò)對(duì)V8系統(tǒng)大地電磁測(cè)深時(shí)間序列數(shù)據(jù)文件格式的深入分析和研究,提取Tsn文件的tag標(biāo)簽參數(shù)信息,并根據(jù)參數(shù)信息,實(shí)現(xiàn)了大地電磁時(shí)間序列文件的三字節(jié)數(shù)據(jù)的讀寫。該方法可快速準(zhǔn)確地獲取時(shí)間域數(shù)據(jù)信息,為后續(xù)大地電磁測(cè)深數(shù)據(jù)時(shí)間序列的研究、信噪分離及后期處理提供幫助。
[1] 郭澤秋,葉高峰,王輝,魏文博.基于MATLAB的SSMT-2000大地電磁資料批處理技術(shù)[J], 物探與化探,2013,37(5):921-925.
[2] 李晉.基于數(shù)學(xué)形態(tài)學(xué)的大地電磁強(qiáng)干擾分離及應(yīng)用[D].長(zhǎng)沙:中南大學(xué),2012.
[3] 加拿大鳳凰地球物理有限公司中國(guó)聯(lián)絡(luò)處.MTU-A操作手冊(cè)_3.2.1_beta[M].北京:加拿大鳳凰地球物理有限公司,2005:129-131.
[4] 劉俊峰,孫保山,程云濤.V8 MT時(shí)間序列數(shù)據(jù)文件讀寫[J]. 工程地球物理學(xué)報(bào),2015,12(5):660-664.
[5] 吳正剛,雷旭友,余年.基于V8系統(tǒng)大地電磁數(shù)據(jù)格式轉(zhuǎn)換及實(shí)現(xiàn)[J]. 工程地球物理學(xué)報(bào),2009,6(5):603-606.
Read and Writing of V8 Series Magnetotelluric Time Data File
WANG Li-kun1CHEN Jin-chao2
(1-Sichuan Jinhe Mining Co., Ltd, Chengdu 610052; 2-Chengdu University of Technology, Chengdu 610059)
Magnetotelluric sounding method has been widely applied to exploration of mineral resources such as shale gas and coalbed methane, engineering geology, and geohazard survey and so on. V8 multifunctional electrical method is usually used as magnetotelluric data acquisition system, and its support software can display or conversion to the time sequence of file data, but there is no noise analysis processing functions in time domain. The magnetotelluric original time series data obtained must be analyzed in order to develop the system of the corresponding time domain noise analysis and processing system. This paper defines the form of data storage based on the analyzing the formats of magnetotelluric original time series data, and designs the program of raw data read and write algorithm according to its parameter characteristics.
V8; magnetotelluric time series files; read and write
2017-04-28
四川省科技支撐計(jì)劃項(xiàng)目(2016GZ0135)
王麗坤(1985- ),女,山西省應(yīng)縣,工程師,研究方向:信號(hào)與信息處理、監(jiān)測(cè)預(yù)警、安全評(píng)價(jià)
P631.3;
A
1006-0995(2017)04-0674-04
10.3969/j.issn.1006-0995.2017.04.034