基于DSP與FPGA的光柵地震檢波器的信號處理系統(tǒng)
在石油地震勘探中,地震儀通過地震檢波器采集信號。地震檢波器是為了接收和記錄地震波而設(shè)計的一種精密的機械、電子組合裝置,是地震勘探數(shù)據(jù)采集中的重要環(huán)節(jié),其性能好壞直接影響地震記錄質(zhì)量和地震資料的解釋工作。光柵傳感技術(shù)的發(fā)展為檢波器的設(shè)計提供了有力的手段。其光柵信號處理技術(shù)仍局限于低速度的信號處理,雖然測量精度較高,但其動態(tài)特性難以滿足振動信號檢測等高速變化信號的處理要求,本文設(shè)計了一種利用DSP與FPGA結(jié)合的光柵振動信號處理系統(tǒng),它主要完成對光柵震動傳感器輸出的兩路正交的正弦波信號的采集、計數(shù)、高倍細分等,從而實現(xiàn)了對快速的振動信號的復(fù)現(xiàn)。
本文引用地址:http://m.butianyuan.cn/article/241689.htm1 光柵地震檢波器的工作原理
光柵地震檢波器主要由光源(白光或單色光)、準直鏡、光電池、指示光柵(副光柵)、光柵諧振子(主光柵)組成。光柵諧振子(主光柵)為檢波器的可動部分,由上彈簧片和下彈簧片支撐。工作時,檢波器外殼通過檢波器尾釘與大地連接并固定,當(dāng)大地受到震源激發(fā)后,地震波傳至地面引起地面震動,檢波器外殼也隨之震動。而光柵振子由于彈簧片的彈性和本身的慣性,有保持絕對不動的趨勢,從而產(chǎn)生了光柵振子與外殼的相對運動,也就是說光柵副中的主光柵與裂向式指示光柵之間產(chǎn)生了相對運動。兩塊疊放在一起的光柵具有了相對運動也就會產(chǎn)生與之相對應(yīng)的莫爾條紋,從而在相位差為90°的四個光電池上產(chǎn)生莫爾條紋的變化,于是光信號被轉(zhuǎn)化為電信號,再經(jīng)差分放大后形成兩路相位相差90°的正弦或余弦波信號。
2 光柵震動信號的同步采集
要保證整個系統(tǒng)對振動信號的實時復(fù)現(xiàn),關(guān)鍵是要保證對兩路模擬正弦波的同步采集。若使用DSP直接控制多通道的模數(shù)轉(zhuǎn)換器,由于編程語言的順序結(jié)構(gòu)和單個模數(shù)轉(zhuǎn)換器不能同時采樣保持的限制,對于多路信號的采集只能分時多通道順序采集,這樣對同一點的兩路模擬波的采集肯定會產(chǎn)生相位差,這樣對復(fù)現(xiàn)出來的原振動信號會造成相當(dāng)大的失真。但是由于FPGA的編程語言VHDL執(zhí)行時是并發(fā)執(zhí)行的,并不受到它們在主結(jié)構(gòu)中的編寫順序的影響。根據(jù)上述特點,對于本系統(tǒng)的設(shè)計可以分成三個并行進程,分別是2個光柵信號采集的進程和一個加減計數(shù)器的進程。
AD轉(zhuǎn)換器選用的是LINEAR公司生產(chǎn)的LTC1606,該器件是具有采樣保持功能的16位250kHzADC。該ADC分辨率高,采樣速率高、功耗小,可在高精度的數(shù)據(jù)采集系統(tǒng)中廣泛應(yīng)用。
光柵振動莫爾條紋的信號采集采用成直線排列的相位差為90°的四個光電池,分別記為1、2、3和4,如圖1所示。它們接收由被測振動信號調(diào)制的莫爾條紋,并通過差動放大器、整形濾波器輸出兩路正交的正弦信號。這兩路信號分成兩組,其中一組經(jīng)過鑒零比較電路轉(zhuǎn)換成方波送入辨向電路為FPGA中加減計數(shù)器提供計數(shù)累加值和辨向信號。另一組則直接將放大的模擬電壓信號送入兩路AD轉(zhuǎn)換器轉(zhuǎn)換成數(shù)字量并存入FPGA。在FPGA中開辟3個雙口RAM存儲器用來順序存放每一點的整周期計數(shù)值和兩路波形的數(shù)字量,為DSP進行高倍細分提供基礎(chǔ)數(shù)據(jù)。
2.1 雙口RAM的設(shè)計
雙口RAM是常見的共享式多端口存儲器,雙口RAM最大的特點是存儲數(shù)據(jù)共享。一個存儲器配備兩套獨立的地址、數(shù)據(jù)和控制線,允許兩個獨立的CPU或控制器同時異步地訪問存儲單元。由于硬件雙口RAM接口時序復(fù)雜,成本高也會給系統(tǒng)帶來不穩(wěn)定性,因此本文在FPGA中設(shè)計了一軟RAM,用來緩沖數(shù)據(jù)采集與處理之間產(chǎn)生的異步時差。
其工作原理如圖2所示,所設(shè)計的存儲空間為3個16字容量的雙口RAM,當(dāng)信號采集部分向新地址寫入每一個振動點的三個信息量時(圖中所示地址為15),信號處理部分則讀取先前振動點的三個信息量進行細分等處理(圖中所示地址為0),當(dāng)雙口RAM寫滿數(shù)據(jù)后,寫地址指針又會重新定位到首地址寫入新的數(shù)據(jù),這種緩存結(jié)構(gòu)的設(shè)立不會丟失信息點,保證了還原信號的連續(xù)性和可靠性,雖然還原信號滯后源信號3到4個字的時間,但保證了每一個點三個信息量的同步性,這是C語言等順序結(jié)構(gòu)語言所無法達到的。
2.2 雙口RAM的流程圖設(shè)計
首先是定義實體與外部端口,包括時鐘、輸入輸出、讀寫地址端口。它們的作用分別是:
1)時鐘端口:利用時鐘的脈沖邊沿來觸發(fā)讀寫進程,使得新舊數(shù)據(jù)在雙口RAM中交替進出。
2)輸入輸出端口:分別為16位的位矢量類型,用來保證與16位AD和DSP的數(shù)據(jù)格式匹配。
3)讀寫地址端口:2位的位矢量類型,用來設(shè)置16位字的存儲器容量,并在讀寫RAM操作時提供地址選址信號。
其次是定義結(jié)構(gòu)體,包括定義內(nèi)部緩沖地址信號,并定義了一個容量為16字的Mem(存儲器類型)型變量。
評論