張家田,呂 軍,吳銀川
(西安石油大學(xué)光電油氣測井與檢測教育部重點實驗室,西安710065)
在石油電法測井系統(tǒng)中,需要對響應(yīng)信號進行數(shù)據(jù)采集。數(shù)據(jù)采集技術(shù)主要研究信息數(shù)據(jù)的采集、存儲、處理以及控制問題[1],從而獲得對應(yīng)的地層電阻率信息,確定目標(biāo)地層的含油情況[2]。本文以C8051F020單片機和ADS1271模數(shù)轉(zhuǎn)換器為核心,設(shè)計了一種數(shù)據(jù)采集系統(tǒng)。該采集系統(tǒng)具有24位高分辨率,可以方便的通過計算機控制,實現(xiàn)數(shù)據(jù)采集控制、數(shù)據(jù)處理以及數(shù)據(jù)文件存儲等功能,滿足實驗室環(huán)境下常見測井信號的采集要求。
采集系統(tǒng)的總體設(shè)計框圖如圖1所示,單端信號從輸入端子輸入,信號調(diào)理電路對輸入信號進行放大、濾波以及單端轉(zhuǎn)差分轉(zhuǎn)換,滿足ADS1271對信號幅度、頻率以及輸入方式的要求;ADS1271完成24位高分辨率數(shù)據(jù)采集[3];C8051F020實現(xiàn)數(shù)據(jù)采集的控制、數(shù)據(jù)暫存以及上位機的通信;計算機通過USB接口實現(xiàn)數(shù)據(jù)的接收、處理以及保存二進制數(shù)據(jù)文件,整個采集系統(tǒng)在計算機的控制下工作。當(dāng)C8051F020接收到計算機發(fā)出的采集命令時,ADS1271在C8051F020控制下,不斷將采集的數(shù)據(jù)按一定的格式暫存單片機中。單片機接收到上位機發(fā)出采集命令后,將一定量的數(shù)據(jù)發(fā)送給計算機,計算機將數(shù)據(jù)處理后存儲成二進制文件。
ADS1271數(shù)據(jù)輸出采用串行接口方式[4],通過管腳FORMAT配置,當(dāng)FORMAT為0時,可將芯片配置為SPI串行接口方式,F(xiàn)ORMAT為1時,可將芯片配置為幀同步串行接口模式。ADS1271工作模式通過管腳MODE進行配置,當(dāng)MODE為0時,工作為高速模式,轉(zhuǎn)換速率可達105kS/s;MODE為1時,工作為低功耗模式,芯片耗散功率僅為35mW;MODE為懸空時,工作為高分辨率模式,轉(zhuǎn)換速率為52kS/s,輸出信噪比可達109dB。ADS1271和單片機的接口電路如圖2所示,ADS1271設(shè)置成高分辨率模式,采用SPI串口方式與單片機連接。單片機SPI口設(shè)置成主模式,MISO為采集數(shù)據(jù)的輸入,SCK為串行時鐘輸出端。
圖1 采集系統(tǒng)的總體設(shè)計
圖2 ADS1271和單片機的接口電路
SPI接口時序[2]如圖3所示,ADS1271每次轉(zhuǎn)換結(jié)束,/DRDY由高電平變?yōu)榈碗娖剑瑔纹瑱C通過程序不斷掃描P2.0的電平變化,從而確定轉(zhuǎn)換是否結(jié)束。如果結(jié)束,單片機自動接收24位數(shù)據(jù),接收結(jié)束后單片機處于等待狀態(tài)。該系統(tǒng)中ADS1271和C8051F020晶振均采用16.384MHz。在AD高分辨率模式下,采樣速率為32ksps,SPI接口最小數(shù)據(jù)傳輸速率為768kbps。單片機SPI口主模式下最高通信速率為晶振的一半[5]即為8192kbps,完全可以滿足通信的要求。
圖3 SPI接口時序
硬件上通過給單片機外擴128K×8bit的SRAM,提高單片機的數(shù)據(jù)暫存能力。數(shù)據(jù)采用循環(huán)存儲結(jié)構(gòu)[6]設(shè)計,每三個存儲單元(8bit×3=24bit)存儲一個采樣數(shù)據(jù),存放最新的1s中的數(shù)據(jù)(32k×24bit)。當(dāng)采集系統(tǒng)上電后,不斷順序采集數(shù)據(jù),暫存到SRAM,當(dāng)采集系統(tǒng)接收到上位機取數(shù)命令后,依次將數(shù)據(jù)發(fā)送到上位機,上位機利用VB軟件的文件操作[7]將數(shù)據(jù)寫入二進制文件,以便后續(xù)相關(guān)軟件對信號的方便處理。
上位機控制軟件采用VB6.0設(shè)計,其界面如圖4所示。其中工程名即為二進制數(shù)據(jù)文件名的一部分;通信控制設(shè)置通信接口以及通信速率;參數(shù)設(shè)置部分設(shè)置采集時間以及超前時間,超前時間最大為1s;當(dāng)參數(shù)設(shè)置完成后,點擊應(yīng)用控件,上位機將采集相關(guān)命令發(fā)送到單片機,單片機將接收到的命令解析后,執(zhí)行相應(yīng)的數(shù)據(jù)傳輸任務(wù)。為便于后續(xù)信號處理,二進制數(shù)據(jù)文件名的命名規(guī)則為:工程名+年月日+當(dāng)前時間 +采集時間 +超前時間。文件名為“ceshi 20110603 204106 10 1”,可理解為數(shù)據(jù)采集在2011年6月3日20點41分6秒時采集10秒的信號,其中超前時間1秒。
上位機控制指令如表1所示。指令有16位(2個字節(jié))構(gòu)成。其中FLAG為命令標(biāo)志,F(xiàn)LAG=1時,表示采集命令,F(xiàn)LAG=0時,指令忽略;POSTTIME(由 PT0~PT2共3位構(gòu)成)為超前控制,POSTTIME對應(yīng)值為超前時間,具體解析如表2所示。SAMPLETIME(由SAMT0~SAMT11共12位構(gòu)成)為采樣時間控制,SAMPLETIME對應(yīng)值為共采集數(shù)據(jù)的時間,SAMPLETIME的范圍為0~600(對應(yīng)12位二進制數(shù)),對應(yīng)時間為0~600s。整個指令由單片機負責(zé)解釋,從而實現(xiàn)數(shù)據(jù)的精確采集。例如當(dāng)采集指令要求超前1s,采樣時間20s,采集指令為 0xC0,0x14。
圖4 上位機控制界面
表1 上位機控制指令
表2 超前控制指令POSTTIME
本文以C8051F020和ADS1271為核心,設(shè)計了24位高分辨率數(shù)據(jù)采集系統(tǒng),給出了單片機與ADS1271的接口設(shè)計和上位機控制軟件設(shè)計。結(jié)果表明:該采集系統(tǒng)采樣最大頻率為32Ksps,可超前采集1s。采集命令可由上位機控制,最終采集數(shù)據(jù)以二進制文件形式保存。該系統(tǒng)采樣頻率的改變可以通過更換AD1271的晶振頻率,超前采集時間的延長,可以通過容量更大的存儲芯片實現(xiàn)。該采集系統(tǒng)已成功用于過套管電阻率測井室內(nèi)試驗研究項目中,獲得滿意的實驗效果。
[1]吳銀川,嚴(yán)正國,蘇娟.基于DAQBench的數(shù)據(jù)采集系統(tǒng)的設(shè)計[J].儀器儀表用戶,2008,15(3):32-33.
[2]張建華,劉振華,仵杰.電法測井原理與應(yīng)用[M].西安:西北工業(yè)大學(xué),2002:1-11.
[3]嚴(yán)正國,張家田.高分辨同步數(shù)據(jù)采集處理系統(tǒng)設(shè)計[J].中國計量學(xué)院學(xué)報,2006,17(3):192-195.
[4]TEXAS INSTRUMENTS INCORPORATED.24Bit,Wide Bandwidth Analog-to-Digital converter,ADS1271[EB/OL].http://www.ti.com,2007:2-6.
[5]潘琢金,施國君.C8051Fxxx高速 SOC單片機原理及應(yīng)用[M].北京:航空航天大學(xué)出版社,2002:169-171.
[6]林占江.電子測量技術(shù)[M].北京:電子工業(yè)出版社,2009:190-194.
[7]劉新民,蔡瓊,白康生.Visual Basic6.0程序設(shè)計[M].北京:清華大學(xué)出版社,2004:168-183.