側向儀器中數字相敏檢波算法的改進與實現(xiàn)
作者簡介,張森峰(1980-),男,山西,碩士,中國石油測井技術研究院,工程師,從事測井儀器研發(fā)工作。
本文引用地址:http://m.butianyuan.cn/article/202011/420414.htm0 引言
在側向測井中,側向儀器通過發(fā)射電極向地層發(fā)射不同頻率的正弦信號,通過其變化情況來反映地層電阻率。但是接收到的信號是多種頻率的混合信號,而且還會夾雜著各種噪聲。因此,如何精準地從其中提取出某一特定頻率的正弦信號,進而計算它的幅值與相位變化,就成為了真實客觀地反映地層電阻率情況的決定性因素。
相敏檢波技術被用來解決上述問題,但是不同的實現(xiàn)方案使得最終的實際效果與精度亦有不同。早期采用模擬電路來實現(xiàn)相敏檢波,但因為三極管的壓降導致精度不高[1]。隨著數字信號處理理論與技術的發(fā)展,基于DSP的數字相敏檢波得到了廣泛應用,使精度得到了極大的提升。這里對當前數字相敏檢波進行改進,以得到更高的精度。
圖1 數字相敏檢波的功能示意圖
1 數字相敏檢波原理
數字相敏檢波的功能示意如圖1。
假設測量信號d(t)為
此式中,D為被測信號幅度;ω為被測信號和參考信號的頻率;φ為被測信號與參考信號之間的相位差。
我們將Dcosφ記為DR,Dsinφ記為DX。它們分別為被測信號幅值的實部與虛部。
再設
所以有
同理
被測信號幅值與相位為[3]
這些數學的推導為我們揭示了實現(xiàn)數字相敏算法的具體計算方法[2],如圖2。
圖2 數字相敏檢波算法的實現(xiàn)過程
2 數字相敏檢波改進
上述實現(xiàn)方法,其實質是積分后再取平均,可以認為是一個均值濾波的過程。既然如此,我們可以向其中引入更有效的濾波算法,以使最終的計算結果精度更高。通過對上面的數學推倒進行改進,可以得到。
同理
上式中,通過推導分離出直流與交流兩個部分,可以使用低通濾波將其交流部分去掉,最終可得到直流部分,即被測信號幅值的實部與虛部。
具體實現(xiàn)過程如圖3。
圖3 使用低通濾波對數字相敏檢波的改進
3 數字相敏檢波的MATLAB仿真與對比
使用MATLAB軟件對數字相敏檢波算法改進前后進行仿真與對比,進而對其具體表現(xiàn)進行評價。
MATLAB仿真如圖4所示。
圖4 使用MATLAB對改進前后數字相敏檢波進行仿真與對比
圖4中的低通濾波器由MATLAB的濾波器設計工具FDATool生成[4]。采用四階巴特沃茲低通濾波器,截止頻率為5Hz。
對它們計算精度的對比如表1。
表1 改進前后數字相敏檢波計算結果對比表
參考信號頻率 (Hz) | 相位差 (設置值) | 相位差計算值 (改進前) | 相位差計算值 (改進后) | 幅值 (改進前) | 幅值 (改進后) |
35 | 0.1000 | 0.1007 | 0.1001 | 1.2510 | 1.2500 |
35 | 0.2300 | 0.2306 | 0.2301 | 1.2510 | 1.2500 |
35 | 0.3500 | 0.3504 | 0.3501 | 1.2510 | 1.2500 |
35 | 0.6700 | 0.6701 | 0.6700 | 1.2510 | 1.2500 |
35 | 1.2300 | 1.2300 | 1.2300 | 1.2500 | 1.2500 |
35 | 2.8900 | 2.8900 | 2.8900 | 1.2510 | 1.2500 |
162 | 0.1000 | 0.1007 | 0.1000 | 0.7504 | 0.7500 |
162 | 0.2300 | 0.2307 | 0.2300 | 0.7506 | 0.7500 |
162 | 0.3500 | 0.3506 | 0.3500 | 0.7507 | 0.7500 |
162 | 0.6700 | 0.6701 | 0.6700 | 0.7509 | 0.7500 |
162 | 1.2300 | 1.2290 | 1.2300 | 0.7508 | 0.7501 |
162 | 2.8900 | 2.8900 | 2.8900 | 0.7489 | 0.7501 |
288 | 0.1000 | 0.09827 | 0.1001 | 0.5000 | 0.5001 |
288 | 0.2300 | 0.2289 | 0.2300 | 0.4998 | 0.5001 |
288 | 0.3500 | 0.3495 | 0.3500 | 0.4998 | 0.5001 |
288 | 0.6700 | 0.6711 | 0.6698 | 0.5001 | 0.5001 |
288 | 1.2300 | 1.231 | 1.230 | 0.5017 | 0.5000 |
288 | 2.8900 | 2.884 | 2.890 | 0.4970 | 0.5001 |
注:35Hz、162Hz與288Hz為三路正弦信號,其幅值分別為2.5V、1.5V與1.0V。
表1很明顯地體現(xiàn)了加入低通濾波之后的數字相敏檢波在計算精度上普遍高于改進前。這表明了它具有顯著的精度優(yōu)勢與實用價值。
圖5 改進后數字相敏檢波的實現(xiàn)過程
4 改進后數字相敏檢波的實現(xiàn)
改進后的數字相敏檢波加入了數字低通濾波器。為了便于此算法在實際側向儀器中得以應用,需要使用C語言來對其進行實現(xiàn)。因為C語言本身較好的可移植性,故此選取VC++6.0作為開發(fā)工具。數字低通濾波器的代碼實現(xiàn)得益于MATLAB的FDATool所生成的參數。最終整體實現(xiàn)過程如下。
上圖中2階巴特沃茲濾波根據Direct Form I型 IIR濾波差分方程[5]進行實現(xiàn)。
a0*y[n]=b0*x[n]+b1*x[n-1]+b2*x[n-2]-a1*y[n-1]-a2*y[n-2]
經過5次迭代實現(xiàn)四階低通濾波。
在VC++6.0中的運行效果如圖6所示。
圖6 數字相敏檢波在VC++6.0上的測試結果
5 結論
本文所提出的基于低通濾波的數字相敏檢波算法達到了更好的檢波效果。通過理論分析與試驗結果表明,改進后的算法在不同頻率、相位、幅值等條件下,精度均比改進前有明顯提高。
加入低通濾波后,會增加計算量。但是現(xiàn)在DSP處理器的計算能力已經比較強,加之ADC芯片信號采集速度也已經很快,因此改進后的算法在實際實現(xiàn)上將不是問題。這里所提出的算法將使得側向儀器能夠更加準確地獲取數據,更加客觀地反映地層電阻率情況。
參考文獻:
[1] 張家田,梁亞萍,嚴正國. 基于數字相敏檢波的三維感應測井信號處理方法研究[J]. 石油儀器,2009,23(6):1.
[2] 黃家亮. 基于DSP的數字相敏檢波器的實現(xiàn)[J]. 石油儀器,2009,12:2.
[3] 徐方友,肖宏,曹啟剛,馬雪青. 微電成像測井儀中數字相敏檢波開方算法的改進及 DSP實現(xiàn)[J],2011,4:2.
[4] 查普曼(Stephen J.Chapman). MATLAB編程[M]. 北京:科學出版社,2007:112-120.
[5] 余志強,劉建華,何朝峰,劉寧寧. 巴特沃茲數字濾波及其在智能測控系統(tǒng)中的應[J],
2007,5:3.
[6] 楊漢生,李明,楊成梧. 設計數字式巴特沃茲濾波器的新方法[J],2006,4:2.
[7] 黃家亮. 基于DSP的數字相敏檢波器的實現(xiàn)[J],2009,12:6.
[8] 洪小麗,黃登紅. 精密電感測微儀中的數字相敏檢波技術研究[J],2007,5:4.
[9] 劉升虎,邢亞敏. 精密電感測微儀中的數字相敏檢波技術研究[J],2008:5.
[10] 張家田,梁亞萍,嚴正國. 基于數字相敏檢波的三維感應測井信號處理方法研究[J],2009,6:3.
(注:本文來自于《電子產品世界》2020年11月刊)
評論