張凌烽,王化祥
(天津大學電氣與自動化工程學院,天津 300072)
電阻層析成像(Electrical Resistance Tomography,ERT)技術是是近年來發展的過程參數檢測技術,基于不同的介質具有不同的電導率性質,重建被測敏感場內物質的電導率分布。該技術具有非侵入性、安全性好、便攜性、價格低廉及響應快等優勢,ERT技術在工業過程檢測和醫學臨床監控等領域具有廣闊的應用前景[1]。
由于模擬器件在速度、精度、溫漂等方面有其固有的缺陷,隨著FPGA、DSP等數字器件性能的不斷提升與應用范圍的不斷拓寬,從20世紀90年代末開始,國內外各層析成像研究小組分別利用DSP或FPGA構建了數字化的ET系統[2-4]。但是DSP芯片的結構本質上是串行的,對于需要處理的數據量大、處理速度高,但運算結構相對比較簡單的底層信號處理算法并沒有優勢[5];而FPGA的不足之處在于數字信號處理能力有限,因為是硬件編程,當算法結構比較復雜時,難以勝任。為此,本文設計了一套基于DSP+FPGA的數字化16電級ERT數據采集系統。

圖1 ERT系統構成原理圖
ERT系統組成如圖1所示,主要由5個單元構成:傳感器電極陣列、激勵信號發生單元、數據采集與處理單元、圖像重建與顯示單元和控制單元[6]。本數字化ERT系統中傳感器電極陣列由均勻安裝在絕緣管道內壁的陣列電極構成;激勵信號發生單元由FPGA和前端的數模轉換器、壓控電流源電路構成[7];數據采集與處理單元由FPGA和前端電路構成;控制單元由主處理器器 DSP和協處理器FPGA共同構成;圖像重建與顯示單元由主控制器DSP和帶有相應成像軟件的PC機實現。
本系統采用相鄰電流激勵、相鄰電壓測量的“四電極模式”[8],數據采集與處理單元在FPGA的控制下測量任意一對電極間的等效電阻值,獲得不同觀察角度下的“投影數據”送入DSP進行圖像重建,實現敏感場內電導率分布圖像的可視化測量。
ERT實時信號處理系統中,前端信號處理數據量大,速度要求高,但運算結構相對比較簡單(主要是循環激勵、測量等),適于用具有大量的數據線和控制單元,易于實現各種硬件邏輯,適于多任務并行的FPGA進行硬件實現;后處理的數據量相對較少,但算法的控制結構復雜(主要是對采集的數據進行信號處理、圖像重建算法及多相流參數計算等),適于用運算速度高、尋址方式靈活、通信機制強大的DSP芯片實現。
本系統采用TI公司推出的高性能32 bit定點數字信號處理器芯片TMS320C6416 DSP作為主處理器,用于數據轉移與處理、成像算法以及與上位機的通訊;采用Xilinx公司的VirtexⅡPro系列中性價比較高的XC2VP30 FPGA作為系統的協處理器,用于與前端電路接口進行邏輯控制和數據預處理,實現激勵信號生成、數據采集控制、激勵/測量通道切換、PGA增益調節以及數字相敏解調等。數字化ERT系統硬件結構圖如圖2所示。其中激勵/測量通道切換電路由多片CMOS電子開關DG412和DG413芯片組成;DAC采用14位高速D/A轉換器AD9754;VCCS是基于AD844芯片構建的;ADC采用AD9240,其工作頻率最高可達10MHz;PGA采用TI公司的交流可編程增益放大器THS7001。

圖2 數字化ERT系統硬件結構圖
本系統采用相鄰電流激勵、相鄰電壓測量的四電極測量模式,敏感場的電勢分布如圖3所示。由圖3可知,每兩個激勵電極之間可以等效為15個不同阻值的電阻串聯[6],如圖4所示,對于每次激勵,系統需要分別測出其等效電阻,本系統只取其中的13個阻值,不考慮相鄰激勵電極的兩個阻值。

圖3 電勢分布圖

圖4 電阻測量等效圖
由于系統采用幅值恒定的正弦電流信號作為激勵信號,則Is在測量過程中保持不變,利用差分放大電路提取被測電阻上的電壓信號,由于所用的差分放大電路的輸入阻抗很高,遠大于被測場的阻值(一般在幾Ω到幾十Ω之間),由此可知Is=Ix。
設由差分放大器獲得的被測電阻兩端電壓Ux,則被測電阻可表示為

通過測量電壓Ux即可得到電阻Rx。
差分放大電路如圖5所示,其中被測電阻兩端電壓信號分別從V_ME1和V_ME2輸入,首先經過RC電路單元,濾除信號中的直流分量;然后經過限幅保護電路進入差分放大器的正/反向輸入端,通過調節R29與R30的比值改變差分放大倍數,差分放大器的OUT端輸出信號即為正比于Ux的電壓信號。

圖5 電阻測量電路原理圖
本系統的FPGA程序設計過程基于其內部集成的IP核模塊,采用模塊化設計,如圖6所示,主要包括DCM模塊、DDS模塊、DAC接口模塊、ADC接口模塊、相敏解調、異步FIFO模塊、EMIF接口模塊和Picoblaze 8位微處理器等8個模塊。

圖6 FPGA模塊化結構圖
DCM(數字時鐘管理器)模塊為FPGA內部所有模塊及外部的A/D、D/A轉換單元提供可靠而精確的工作時鐘。A/D轉換單元時鐘為10 MHz,D/A轉換單元時鐘為50 MHz,FPGA內其他模塊工作時鐘均為50 MHz。
DDS(直接數字頻率合成器)模塊為系統的激勵和相敏解調提供需要的正余弦信號數字量,保證了激勵信號和相敏解調所需的參考信號在頻率上的完全一致性。
DAC接口模塊對由DDS產生的正弦信號數字量進行的數據類型變換,實現與FPGA外部的數模轉換電路的對接。
ADC接口模塊接收從FPGA外部的模數轉換電路輸入的數字量信號,并對其進行數據類型變換。
相敏解調模塊對測量信號進行數字解調,進而獲得測量信號的幅值,為之后的成像算法提供所需數據。
異步FIFO模塊利用FPGA內部的BlockRAM資源構建。AD采樣頻率為10 MHz,而DSP的工作時鐘高達600 MHz,為充分發揮DSP中EDMA的速度優勢,采用FIFO緩存一幀數據后再送給DSP,提高了數據傳輸的整體速度,同時也保證了數據采集的安全可靠。
EMIF接口模塊實現FPGA與DSP內的EMIFA接口對接,并對 DSP的控制信號重新組合,輔助DSP將數據從異步FIFO中讀取到DSP中。
PicoBlaze 8位微處理器是Xilinx公司為Virtex系列 FPGA、Spartan-Iitxi系列 FPGA 和 CoolRunner-Ⅱ系列CPLD器件設計的嵌入式專用IP Core,以解決常量編碼可編程狀態機(KCPSM)問題。本系統中Picoblaze 8位微處理器完成系統的激勵/測量電極切換、PGA增益調節、相敏解調的復位和啟動以及異步FIFO的復位和啟動、向DSP發出中斷請求等邏輯控制。Picoblaze的邏輯控制流程如圖7所示。

圖7 Picoblaze邏輯控制流程圖
利用R/V轉換電路將電極間的阻值信息轉換為電壓信息,相敏解調(Phase Sensitive Demodulation,PSD)單元提取反映阻值信息的電壓信息,本系統利用FPGA實現的正交序列解調來完成。
正交序列解調[9]可以理解為一種特殊的 FFT解調,其算法如下:
設測量信號U(n)為

同相參考信號r(n)和正交參考信號q(n)分別為

其中,N為每個激勵信號周期的采樣點數;θ為由介質或電路引起的相移;n的取值范圍為0~N-1。
當N取偶數時,同相分量(實部)和正交分量(虛部)分別為

獲得測量信號的實部和虛部后,經過計算便可得到測量信號的幅值A和相位θ。
采用正交序列解調所需的乘法次數少,例如采用FFT解調時需要NlogN次乘法,由式(1)、(2)2可知正交序列解調僅需2N次乘法,本系統激勵采用100 kHz正弦信號,ADC9240采樣頻率為 10 MHz,每個周期采樣100個點,即N=100,正交序列解調所需的乘法次數明顯少于FFT解調,因此一定程度上有效提高了系統的實時性。
利用FPGA實現正交解調的原理圖如圖8所示。本系統中的參考信號和激勵信號由FPGA中的IP核DDS模塊同時產生,保證了參考信號與激勵信號、測量信號在頻率上的完全一致性,進而保證了解調結果的準確性。本系統中利用FPGA中的IP核MAC和CORDIC分別完成乘累加計算和開方、反三角計算。

圖8 正交解調原理圖

圖9 DSP程序流程圖
DSP程序流程圖如圖9所示,實現以下功能:接收并響應PC機的控制命令;控制FPGA開啟每一幀圖像數據的采集;通過中斷方式,利用EDMA[10]將異步FIFO中208(或104)個電壓幅值數據轉移到SDRAM中;對每幀電壓幅值數據進行矩陣乘法等運算,完成圖像重建,獲得每幅圖像中各像素點的灰度值;最后由PC機通過PCI接口讀取灰度值。
ERT系統作為一個多通道測量系統,要求系統的各測量通道必須具有較好的一致性。因此,系統通道的一致性是ERT系統的一項重要指標,直接涉及圖像重建的質量。實驗表明,當被測區域內的介質均勻分布時,采用相鄰激勵、相鄰測量的方式采集數據時,測量電壓的幅值應呈現出“U”型曲線。
本系統采用相鄰電流激勵、相鄰電壓測量的激勵模式,取內徑為100 mm,外徑為110 mm的有機玻璃管,內壁均勻鑲嵌直徑為10 mm,厚度0.2 mm的圓形鈦電極,管內充滿自來水作為連續相。首先固定1、2電極激勵,測量3、4,4、5,…15、16 電極對,得到 13 個測量值,存入SDRAM中,通過DSP的調試工具CCS-tudio 3.1顯示,如圖10所示為U型曲線。

圖10 相鄰電極激勵時各通道測量值
然后,1、2,2、3,…16、1 電極循環激勵,每次激勵測量13個電壓值,這樣每幀測量16×13=208個數據,如圖11所示,縱坐標是數字量化后的電壓幅值,橫坐標是測量序號,顯示16個U型曲線,而且各個通道的一致性和重復性很好。

圖11 16電極循環激勵時的測量值
重建一幅圖像需要16×13=208個電壓幅值數據,由于測量數據的互易性,系統只需測量104個獨立測量數即可重建一幅圖像。

圖像重建算法主要涉及矩陣運算,通過大量乘法和加法運算實現。本系統選用的TMS320C6416DSP內部集成有兩個硬件乘法器,完成4個16 bit×16 bit的乘法運算僅需一個時鐘周期。DSP的系統工作時鐘為600 MHz,每秒鐘可以實現2400MMAC(百萬次乘累加)運算。如果每幅圖像用有限元剖分為812個單元,每104個測量數據重建一幅圖像,則在重建算法實現過程中需要進行812×104=84 448次MAC運算。利用該款DSP完成以上運算只需T2=35.2 μs。
DSP實現重建算法后,獲得代表一幅圖像的812個灰度值,每個灰度值由一16 bit數據構成,這樣每幅圖像由812×16 bit數據構成。在本系統中,這些數據通過一個32 bit/33 MHz的PCI總線傳送給上位機,該總線的帶寬為132 MB/s,所以,傳送一幅圖像的灰度值數據所需時間為T3=12.3 μs。因此,重建一幅圖像所需時間為t=T1+T2+T3=2127.5 μs,考慮圖像顯示時間等時間開銷t≈2.5 ms,系統的實時成像速度可達400幅/秒。
目前,常用的 ET 圖像重建算法[11-12]包括靈敏度系數法、Landweber迭代算法、Tikhonov正則化算法、牛頓拉夫遜算法及共軛梯度算法等,本文采用Landweber迭代算法的一種改進形式landweber預迭代算法[13]進行成像。
landweber預迭代算法將大量的中間矩陣提前計算,盡可能減少實時成像的運算量,提高實時性。Landweber算法的迭代格式為

其中α為迭代步長,g為灰度向量,S為靈敏度矩陣,z為歸一化后的測量數據。
令

代入式(3),得

簡化后,得:

landweber預迭代算法將landweber在線迭代過程分解為離線預迭代和在線一步成像兩個過程。首先由式(4)和(7)離線預迭代獲得圖像的灰度分布,然后由式(5)在線一步成像。
測試條件同3.1中所述,水作連續相,模擬三種流型進行成像,圖像重建結果如表1中成像效果1所示,和實驗室基于FPGA的ERT數據采集系統[4]所得的成像效果2相比,成像質量略有改善。

表1 圖像重建結果
本系統采用DSP+FPGA的設計方案,結構靈活、便于模塊化設計、通用性強和實時信號處理能力強,既充分發揮了DSP的實時信號處理的優勢,又充分發揮了FPGA的邏輯控制和硬件可編程的優勢,實現兩種控制器的優勢互補,在不降低成像質量的前提下,在一定程度上提高了ERT系統的成像速度。
[1]董峰,崔曉會.電阻層析成像技術的發展[J].儀器儀表學報,2003,24(4):703-705.
[2]馬敏,王化祥,田莉敏.基于DSP的數字化電容層析成像系統[J].傳感技術學報,2006,19(3):705-708.
[3]胡松鈺,王保良,黃志堯,等.高速電阻層析成像數據采集系統設計[J].傳感技術學報,2008,21(1):79-82.
[4]崔自強.數字化雙模態(ECT/ERT)系統設計[D].[碩士學位論文],天津大學,2007.
[5]張雪輝,王化祥.電容層析成像數字化系統設計[J].傳感技術學報,2007,20(8):1826-1830.
[6]何永勃.電阻抗(ECT/ERT)雙模態層析成像技術研究[D].[博士學位論文],天津大學,2006.
[7]王化祥,崔自強.基于FPGA的電阻抗成像系統激勵信號源[J].電子器件,2007,30(1):90-96.
[8]KOTRE C J.A Sensitivity Coefficient Method for the Reconstruction of Electrical Impedance Tomograms[J]Clinical Physics and Physiological Measurement,1998,10(3):275-281.
[9]史學濤,董秀珍.用于電阻抗多頻及參數成像數據采集系統的正交序列解[J].第四軍醫大學學報,2000,21(7):S164-S166.
[10]任麗香,馬淑芬,李方慧.TMS320C6000系列DSPs的原理與應用[M].北京:電子工業出版社,2000,155-168.
[11]王化祥,曹章.電阻抗層析成像系統“軟場”非線性特性—基于統計的方法[J].天津大學學報,2006,39(5):543-547.
[12]Yang W Q,Peng L H.Image Reconstruction Algorithms for Electrical Capacitance tomography[J].Measurement Science and Technology,2003,14:R1-R13.
[13]王超,王化祥.電阻抗斷層圖像重建算法研究-預迭代算法提出[J].信號處理,2002,18(6):547-550.