盧俊強(qiáng) 鞠曉東 門百永
(1 中國石油大學(xué)(北京)油氣資源與探測國家重點實驗室 北京 102249)
(2 北京市地球探測與信息技術(shù)重點實驗室 北京 102249)
遠(yuǎn)探測聲波測井技術(shù)能夠?qū)崿F(xiàn)對井眼周圍幾十米地層的探測,克服了傳統(tǒng)聲波測井徑向探測深度較淺的問題[1?4]。傳統(tǒng)單極子聲源和偶極子聲源的遠(yuǎn)探測聲波測井技術(shù)無方位分辨特性或者僅有有限的方位分辨特性[5?7],為了解決該問題,近年來發(fā)展了方位遠(yuǎn)探測聲波測井技術(shù),且在理論、探測器和現(xiàn)場應(yīng)用等方面得到了快速發(fā)展[8?13]。
測井儀器采集控制軟件系統(tǒng)是測井系統(tǒng)的重要構(gòu)成部分,主要完成儀器數(shù)據(jù)采集控制和管理、測井?dāng)?shù)據(jù)實時處理、測井過程監(jiān)控等功能?,F(xiàn)代測井儀器采集控制軟件系統(tǒng)大多基于多層分布式系統(tǒng)架構(gòu),采用面向?qū)ο蟮脑O(shè)計方法,使用組件/動態(tài)庫技術(shù)實現(xiàn)儀器的采集控制和其他功能模塊,能夠?qū)崿F(xiàn)資源共享,易于升級擴(kuò)展和維護(hù)。ACME(Acquisition control management expert)采集控制管理軟件平臺以組件庫的形式管理各種測井儀器功能模塊的動態(tài)添加和卸載[14],同時由軟件開發(fā)包生成儀器組件庫的結(jié)構(gòu)框架,通過接口函數(shù)實現(xiàn)儀器組件庫與軟件平臺的數(shù)據(jù)交互,有利于儀器功能的擴(kuò)展以及新儀器的研發(fā)。
數(shù)據(jù)采集控制軟件是方位遠(yuǎn)探測聲波測井儀器的重要構(gòu)成部分,主要實現(xiàn)儀器的控制、數(shù)據(jù)采集和處理、波形監(jiān)測、數(shù)據(jù)交互和文件記錄等功能。與傳統(tǒng)聲波測井儀器相比,該儀器采用了陣列化的傳感器,所有傳感器的波形需要獨立的采集和存儲通道,每個通道采集的數(shù)據(jù)量大幅度增加,因此,采集控制軟件要實時實現(xiàn)大批量數(shù)據(jù)的交互、解編和監(jiān)測,對軟件的響應(yīng)速度和穩(wěn)定性要求更高。基于Windows 7 和Visual Studio 2013 編程開發(fā)平臺設(shè)計開發(fā)了方位遠(yuǎn)探測聲波測井儀器數(shù)據(jù)采集控制軟件模塊,采用多線程編程技術(shù)提高系統(tǒng)響應(yīng)速度和軟件穩(wěn)定性[15]。該軟件模塊以組件庫的形式設(shè)計和開發(fā),通過修改接口函數(shù)能夠掛接到ACME等測井采集控制管理軟件平臺。
方位遠(yuǎn)探測聲波測井儀器系統(tǒng)主要由井下儀器和地面采集控制軟件模塊構(gòu)成,圖1 為儀器系統(tǒng)構(gòu)成原理示意圖。井下儀器主要由有源發(fā)射聲系、隔聲體、有源接收聲系和儀器主控短節(jié)等構(gòu)成,有源接收聲系包括由方位接收換能器陣列和測控電子系統(tǒng)構(gòu)成的若干個有源聲波測井接收節(jié)點,有源發(fā)射聲系則由多模式發(fā)射換能器和激勵電子系統(tǒng)構(gòu)成的有源聲波發(fā)射節(jié)點。地面采集控制軟件模塊以儀器庫的形式掛接到成像測井系統(tǒng),其特點是儀器庫能夠與大多數(shù)測井系統(tǒng)進(jìn)行配接,提高測井系統(tǒng)的適應(yīng)性。
儀器電子系統(tǒng)設(shè)計了一主(節(jié)點)多從(節(jié)點)的連接控制方式,主要由主控電路(主節(jié)點)、多節(jié)點采集電路(采集從節(jié)點)、相控激勵電路(激勵從節(jié)點)構(gòu)成。地面采集控制軟件通過下發(fā)命令方式對儀器工作過程進(jìn)行控制,并接收儀器上傳的采集數(shù)據(jù)和狀態(tài)信息。儀器與地面采集控制軟件的數(shù)據(jù)交互由主節(jié)點完成,在地面采集控制軟件的命令驅(qū)動下主節(jié)點主要實現(xiàn)換能器激勵、信號接收放大、模式組合選擇、有源濾波、數(shù)據(jù)采集和數(shù)據(jù)通訊等控制功能。
方位遠(yuǎn)探測聲波測井儀數(shù)據(jù)采集控制軟件由儀器初始化、數(shù)據(jù)采集、數(shù)據(jù)分析及處理、儀器參數(shù)設(shè)置、下發(fā)命令封裝、文件操作、實時波形繪圖顯示、實時波形處理、數(shù)據(jù)回放、幫助系統(tǒng)等部分組成。圖2為采集控制軟件的功能模塊構(gòu)成框圖。
圖2 儀器采集控制軟件功能構(gòu)成框圖Fig.2 Functional block diagram of tool acquisition and control software
儀器初始化模塊流程如圖3 所示。獲得儀器組件工作目錄是為了讀取和保存儀器初始化及參數(shù)文件,并在測井運行和重測井時進(jìn)行測井?dāng)?shù)據(jù)文件操作。井下儀器與遙測之間通信時都包含了特定的地址識別碼,井下儀器可據(jù)此判斷下發(fā)的命令是否是給本身儀器的,而遙測可判斷出請求到的數(shù)據(jù)是由某個特定儀器發(fā)送。因此,初始化儀器時必須設(shè)置好控制器域網(wǎng)(Controller area network,CAN)通信地址,并初始化每幀數(shù)據(jù)量的字?jǐn)?shù)。儀器初始化參數(shù)保存在初始化文件中,將這些參數(shù)與儀器的地址、數(shù)據(jù)幀傳輸長度等命令下發(fā)給前端機(jī)以初始化儀器的基本工作參數(shù)并與儀器建立通信連接。儀器初始工作參數(shù)包括采集模式、相控參數(shù)、數(shù)據(jù)采集深度、采集間隔、重復(fù)發(fā)射間隔和增益控制等參數(shù)。這些初始工作參數(shù)在前端機(jī)與遙測及儀器的通信正確建立后即可下發(fā),儀器接口電路解碼后發(fā)送到儀器電路各個功能模塊,建立儀器的初始工作參數(shù)。數(shù)據(jù)緩沖區(qū)用以存放井下儀器上傳的各類數(shù)據(jù)。波形顯示占用較多系統(tǒng)資源,但其對實時性要求較低,為了保證測井采集處理的實時運行和儀器組件工作的可靠性,將波形顯示在一個輔助工作線程中實現(xiàn),輔助線程與主線程之間的通信由事件驅(qū)動。
圖3 儀器組件初始化流程Fig.3 Tool library initialization process
數(shù)據(jù)采集功能由地面采集控制主系統(tǒng)回調(diào),當(dāng)產(chǎn)生深度中斷或者達(dá)到設(shè)定的時間間隔后,系統(tǒng)按照初始化中設(shè)置的數(shù)據(jù)長度調(diào)用儀器組件數(shù)據(jù)采集函數(shù),傳遞采集到的所有數(shù)據(jù)給儀器組件,由儀器組件保存該數(shù)據(jù)到緩存區(qū)。圖4 是數(shù)據(jù)采集流程。根據(jù)上傳數(shù)據(jù)的組織結(jié)構(gòu)和內(nèi)容,可以將上傳的數(shù)據(jù)塊分為全部有效數(shù)據(jù)塊、部分有效數(shù)據(jù)塊和冗余數(shù)據(jù)塊。冗余數(shù)據(jù)塊和有效數(shù)據(jù)塊由數(shù)據(jù)塊頭信息進(jìn)行定義和判斷,第一字為55AAH,是特征字,標(biāo)志是有效的數(shù)據(jù)塊。設(shè)計了深度中斷序號和數(shù)據(jù)幀序號,為數(shù)據(jù)的分類和排序提供依據(jù)。接收數(shù)據(jù)塊時先計算幀數(shù)據(jù)校驗碼,與上傳的校驗碼進(jìn)行比較,檢查數(shù)據(jù)傳輸是否正確,若不正確則丟棄錯誤數(shù)據(jù)。
圖4 數(shù)據(jù)采集流程Fig.4 Data acquisition process
數(shù)據(jù)分析及處理模塊是儀器組件的非常重要的組成部分,完成的功能是把井下上傳的數(shù)據(jù)轉(zhuǎn)換為各種模式分通道依次存放的波形數(shù)據(jù);分析波形并計算需要設(shè)置的增益;下發(fā)命令并保存;利用單極波形快速實時處理時差并將其輸出到儀器曲線瀏覽窗口;記錄數(shù)據(jù)文件;重測井文件回放;喚醒波形顯示線程等。圖5是數(shù)據(jù)分析及處理模塊的流程。
圖5 數(shù)據(jù)分析及處理流程Fig.5 Data analysis and processing flow
首先判斷是測井?dāng)?shù)據(jù)文件回放(重測井)還是測井運行。測井?dāng)?shù)據(jù)文件回放時只需要從打開的測井?dāng)?shù)據(jù)文件中讀取已經(jīng)記錄的數(shù)據(jù)并進(jìn)行實時時差處理,之后喚醒波形顯示線程。判斷在數(shù)據(jù)采集中設(shè)置的接收到有效數(shù)據(jù)標(biāo)志,確定是否接收到完整的采集序列數(shù)據(jù)。如果因為數(shù)據(jù)傳輸出錯等原因未能接收到全部有效數(shù)據(jù),則用上一個深度中斷的數(shù)據(jù)代替當(dāng)前深度的數(shù)據(jù)。
從上傳的數(shù)據(jù)中提取井下儀返回的命令,判斷命令是否成功發(fā)送到井下儀器。在提取波形數(shù)據(jù)前,先分析井下儀狀態(tài),將編碼轉(zhuǎn)換成相關(guān)信息進(jìn)行顯示和存儲。提取波形數(shù)據(jù)時,按照工作組合模式和每種模式的數(shù)據(jù)采集設(shè)置參數(shù)將其組合成按模式分通道依次存放的波形數(shù)據(jù)。在此過程中,分別計算出各種模式下每個通道波形數(shù)據(jù)對應(yīng)的最大絕對值,自動增益控制(Automatic gain control,AGC)將用這些最大值計算合適的增益,由程序自動實時調(diào)節(jié)通道增益,使得模擬數(shù)字轉(zhuǎn)換器(Analog-to-digital converter,ADC)在非飽和情況下有盡可能多的有效量化位數(shù)。
儀器參數(shù)設(shè)置決定著儀器運行的所有參數(shù)和全部過程,在一個非模式對話框中通過人機(jī)交互的方式設(shè)置儀器的全部關(guān)鍵參數(shù),且全部初始參數(shù)保存在初始化文件中,儀器組件啟動時自動讀取初始化文件加載參數(shù),測井過程中儀器運行的參數(shù)也可以保存到該文件中并在需要時進(jìn)行調(diào)用加載。儀器參數(shù)主要包括:增益設(shè)置模式、儀器工作模式、下傳命令幀性質(zhì)、通道增益設(shè)定方式、井下上傳數(shù)據(jù)選擇、采集節(jié)點數(shù)據(jù)選擇、井下濾波設(shè)置、儀器工作啟??刂啤⒉蓸訁?shù)設(shè)置、發(fā)射相控參數(shù)設(shè)置、發(fā)射源選擇、接收通道增益等。根據(jù)下發(fā)命令的格式封裝好儀器設(shè)置參數(shù)列表后,發(fā)送命令給前端機(jī),并保存下發(fā)的命令,用于儀器通訊的校驗和數(shù)據(jù)提取等。
文件操作全部封裝在一個類中進(jìn)行處理,記錄的是井場信息、深度、原始采集數(shù)據(jù)、采集參數(shù)和儀器狀態(tài)等所有測井儀器相關(guān)的內(nèi)容,用以后續(xù)處理。
測井運行過程中,最為直觀地判斷儀器運行情況和采集到波形質(zhì)量的方法是觀察實時顯示的波形。為了保證儀器組件運行的穩(wěn)定性和處理的實時性,波形顯示在一個輔助工作線程中完成。在處理完當(dāng)前采集序列的波形數(shù)據(jù)后,設(shè)置事件為有信號狀態(tài),喚醒波形顯示線程進(jìn)行繪圖處理。
儀器組件中涉及到的文件操作主要是儀器參數(shù)文件和數(shù)據(jù)文件。儀器參數(shù)文件在系統(tǒng)配置及應(yīng)用程序參數(shù)保存與設(shè)置方面,具有很重要的作用,是ASCII 格式的純文本文件,可以編程讀寫,也可用文本編輯軟件進(jìn)行讀寫。設(shè)計時,將儀器設(shè)置的初始化參數(shù)全部保存在參數(shù)文件中。
測井?dāng)?shù)據(jù)文件是儀器組件最重要的用戶數(shù)據(jù)文件,存儲有對應(yīng)測井模式的測井服務(wù)表參數(shù)和原始測量數(shù)據(jù),是以二進(jìn)制格式為主的復(fù)雜格式數(shù)據(jù)文件。測井?dāng)?shù)據(jù)文件在邏輯上由文件頭和數(shù)據(jù)記錄兩部分組成。測井?dāng)?shù)據(jù)文件由一個單獨的類實現(xiàn),具體包括以下功能:文件偏移量記錄、記錄總次數(shù)、當(dāng)前數(shù)據(jù)體記錄的偏移量、讀寫井場信息、讀寫文件頭信息、存取某點深度和對應(yīng)的數(shù)據(jù)偏移起始地址、寫入或者讀取某個深度值和對應(yīng)深度的數(shù)據(jù)在數(shù)據(jù)體中的偏移起始地址、存取數(shù)據(jù)體、存取某點深度和對應(yīng)的數(shù)據(jù)偏移起始地址等。
實時波形顯示在一個輔助工作線程中實現(xiàn),由主線程中的事件喚醒,在沒有新的采集波形數(shù)據(jù)準(zhǔn)備好之前,事件處于無信號狀態(tài),線程處于掛起狀態(tài)。在測井中,一般包括若干組接收波形,每組接收波形又包括多條曲線,如方位單極測井模式包括AR1、AR2、···、AR10等10組波形,每組波形包括8條曲線,這就需要多個波形顯示窗口同時觀察多組波形,設(shè)計中基于選項卡控件實現(xiàn)這種功能。這種實現(xiàn)方法可以顯示包含多頁的信息或控件,當(dāng)儀器工作模式改變后,需要顯示的波形窗口數(shù)量和顯示方式也隨之改變。
在波形顯示時,為了快速刷新和增強(qiáng)顯示效果,采用位圖的形式,首先把需要顯示的位圖繪制在內(nèi)存設(shè)備環(huán)境中,然后將其在屏幕上進(jìn)行顯示。為了實現(xiàn)這個過程,必須創(chuàng)建一個與顯示設(shè)備兼容的內(nèi)存設(shè)備環(huán)境和一個與顯示設(shè)備兼容的位圖,并把位圖選進(jìn)內(nèi)存設(shè)備環(huán)境,在刷新顯示時將位圖從內(nèi)存設(shè)備環(huán)境復(fù)制到顯示設(shè)備環(huán)境中,圖6 為波形繪制流程。
圖6 波形繪制流程Fig.6 Waveform drawing process
為了同時顯示多組波形,設(shè)計中創(chuàng)建了多個波形顯示窗口,每個波形顯示窗口擁有獨立的設(shè)置屬性。打開波形監(jiān)視窗口時,根據(jù)當(dāng)前的工作模式添加對應(yīng)的波形顯示對話框到選項卡控件。每個波形顯示對話框中都包括最大幅度設(shè)置、超限顯示控制、背景色彩、曲線色彩和曲線顯示選擇等屬性設(shè)置選項。在繪制位圖前,先讀取繪圖窗口中設(shè)置的繪圖屬性,據(jù)此繪制對應(yīng)的位圖,在窗口更新時把位圖從內(nèi)存設(shè)備環(huán)境復(fù)制到顯示設(shè)備環(huán)境,實現(xiàn)圖形的快速、無閃爍顯示。
方位遠(yuǎn)探測聲波測井儀數(shù)據(jù)采集控制軟件已經(jīng)配套實驗樣機(jī)開展了多井次實驗井測試和現(xiàn)場測試,程序運行穩(wěn)定,在測試過程中均采集到了完整的測井資料。圖7 為方位單極測井模式時的波形顯示窗口。每個波形顯示窗口均顯示了一個方位接收站的8 道波形,“AR1 波形”窗口顯示的是最小源距的方位接收站接收到的8 道波形,“AR8 波形”窗口顯示的是最長源距的方位接收站接收到的8 道波形,其他窗口則是顯示不同源距的接收站接收到的波形。
圖7 波形顯示窗口Fig.7 Waveform display window
圖8 為在一口實驗井中測試得到的方位接收模式最小源距接收站AR1 接收到的8 個方位測井?dāng)?shù)據(jù)。圖8中第1道為深度曲線,第2道為縱波時差、方位和伽馬曲線,第3 道~第10 道分別為接收器1~接收器8接收到的波形。從圖8中可以看出,接收波形形態(tài)正確,沒有出現(xiàn)多道波形錯位和丟數(shù)現(xiàn)象,波形幅度變化動態(tài)范圍控制有效,表明采集控制軟件與測井主控平臺的數(shù)據(jù)交互高效可靠,能夠完成對儀器工作過程的實時控制,并采集完整的儀器實時測量數(shù)據(jù)。
圖8 實驗井測試采集到的方位接收波形Fig.8 Azimuthal receiving waveforms collected by test of an experimental well
方位遠(yuǎn)探測聲波測井儀地面采集控制軟件模塊以儀器庫的形式掛接到成像測井系統(tǒng),其特點是儀器庫能夠與大多數(shù)測井系統(tǒng)進(jìn)行配接,提高測井系統(tǒng)的適應(yīng)性。
地面采集控制軟件通過下發(fā)命令方式對儀器工作過程進(jìn)行控制,并接收儀器上傳的波形采集數(shù)據(jù)和狀態(tài)信息。地面采集控制軟件與儀器主節(jié)點進(jìn)行數(shù)據(jù)交互,在地面采集控制軟件的命令驅(qū)動下主節(jié)點主要實現(xiàn)換能器激勵、信號接收放大、模式組合選擇、有源濾波、數(shù)據(jù)采集和數(shù)據(jù)通訊等控制功能;儀器主節(jié)點上傳波形采集數(shù)據(jù)和狀態(tài)信息,由地面測井系統(tǒng)平臺轉(zhuǎn)發(fā)給儀器采集控制軟件進(jìn)行分析、處理和存儲。
在多方位波形顯示、數(shù)據(jù)處理等模塊的實現(xiàn)過程中采用了多線程編程技術(shù),提高了與測井主控平臺進(jìn)行交互的時效性,提高程序的響應(yīng)速度,增強(qiáng)應(yīng)用過程中的用戶體驗和程序的穩(wěn)定性。
實驗室及現(xiàn)場測試表明,方位遠(yuǎn)探測聲波測井儀數(shù)據(jù)采集控制軟件的總體及各個功能模塊運行穩(wěn)定,功能符合儀器現(xiàn)場應(yīng)用過程中對儀器的控制、數(shù)據(jù)讀取、數(shù)據(jù)分析及處理、文件記錄以及與現(xiàn)場測井采集控制平臺的數(shù)據(jù)接口等需求,為儀器的進(jìn)一步功能優(yōu)化升級和現(xiàn)場應(yīng)用提供了基礎(chǔ)。