文獻標識碼: A
文章編號: 0258-7998(2011)07-082-04
在管道缺陷檢測當中,,超聲導(dǎo)波檢測技術(shù)與傳統(tǒng)無損檢測方法相比具有沿傳播路徑衰減小,傳播距離遠,引起的質(zhì)點振動能遍及構(gòu)件內(nèi)部和表面的特點,,因此表現(xiàn)出更大優(yōu)勢[1]。超聲導(dǎo)波在傳播過程中存在多模態(tài)和頻散特性,,若激勵源選擇不當,導(dǎo)波發(fā)生嚴重頻散,,會使回波信號變得極為復(fù)雜,不利于缺陷分析,。根據(jù)導(dǎo)波頻散特性曲線可知,,在50 kHz~500 kHz范圍內(nèi),L(0,2)模態(tài)超聲導(dǎo)波傳播速度最快最穩(wěn)定,,幾乎不發(fā)生頻散,。用漢寧窗調(diào)制該頻段內(nèi)一定周期數(shù)的單音頻信號,形成窄帶脈沖作為激勵源,,激勵出L(0,2)模態(tài)占主導(dǎo)的超聲導(dǎo)波,可最大限度地避免頻散帶來的不利影響[2],。
目前出現(xiàn)了多種超聲導(dǎo)波激勵信號發(fā)生器設(shè)計方案。一是利用多功能函數(shù)發(fā)生器如HP33120A[3]實現(xiàn),。由于HP33120A存儲長度有限,長距離檢測時脈沖間會出現(xiàn)干擾,最高調(diào)制頻率不高[4],。二是采用單片機控制DDS芯片設(shè)計,精度較高,,但定制性較弱,,且一般需要兩片以上DDS芯片,成本昂貴,。還有一種方法是用高速單片機控制D/A轉(zhuǎn)換芯片直接輸出信號,,方便易行,然而精度較低,,激勵頻率受到單片機頻率限制,,而且很難做到連續(xù)可調(diào)。為了解決上述設(shè)計方案的不足,,本設(shè)計在Xilinx公司FPGA(現(xiàn)場可編程門陣列)上,,以MicroBlaze軟核處理器為控制核心,借鑒直接數(shù)字頻率合成DDS(Direct Digital Frequncy Synthesis)技術(shù),,給出了一種產(chǎn)生L(0,2)模態(tài)超聲導(dǎo)波激勵信號源的SoPC(System on Programmable Chip)實現(xiàn)方法,。所得激勵源精度高,,漢寧窗調(diào)制下的單音頻正弦波周期數(shù)可調(diào),,頻率連續(xù)可調(diào),。
1系統(tǒng)整體方案設(shè)計
本系統(tǒng)以Xilinx公司Spartan 3E-Starter開發(fā)板為硬件平臺。此開發(fā)平臺外設(shè)資源較為豐富,,通過增加少量的外圍設(shè)備即可實現(xiàn)系統(tǒng)設(shè)計,。Spartan 3E系列FPGA是Xilinx 公司性價比最高的FPGA芯片,可較好地滿足產(chǎn)品的高集成化與低成本化[5],。其內(nèi)部MicroBlaze軟核處理器采用功能強大的32位流水線RISC結(jié)構(gòu),,包含32個32位的通用寄存器、2個32位特殊寄存器,可具有3/5級流水線,。時鐘頻率高達150 MHz,。以IBM CoreConnect技術(shù)為基礎(chǔ),提供了豐富的接口資源,。其中PLB(處理器本地總線)總線提供對片上外設(shè),、外部存儲器以及基于硬件描述語言編寫的算法模塊的訪問 ,和其他外設(shè)IP核一起,完成嵌入式的SoPC開發(fā)。超聲導(dǎo)波激勵源的SoPC實現(xiàn)結(jié)構(gòu)如圖1所示,。
FPGA實現(xiàn)所有數(shù)字電路部分,。MicroBlaze軟核處理器是系統(tǒng)的控制核心,通過LMB(本地存儲器總線)訪問程序存儲空間BRAM,,PLB總線掛載所需IP核,。例化GPIO接口連接鍵盤,負責激勵信號的頻率設(shè)置,。LCD1602用于當前頻率值顯示,。自主編寫的DDS IP為系統(tǒng)波形發(fā)生的核心,直接產(chǎn)生激勵源波形,。MDM為系統(tǒng)的調(diào)試模塊,,RS232用于和PC機通信或程序調(diào)試。使用Xilinx嵌入式開發(fā)套件EDK自帶的數(shù)字時鐘管理DCM(Digital Clock Manager) IP核,,把50 MHz輸入時鐘分頻,,分別為DDS模塊和外部高速數(shù)模轉(zhuǎn)換芯片DAC902提供穩(wěn)定的5 MHz和50 MHz時鐘信號。程序通過JTAG下載到FPGA內(nèi)部的BRAM,,或者片外PROM中存儲,。FPGA產(chǎn)生的數(shù)字信號經(jīng)過DAC902轉(zhuǎn)換為模擬信號,再經(jīng)過低通濾波器去噪,,即可獲得高質(zhì)量的超聲導(dǎo)波激勵信號源,。
2 超聲導(dǎo)波DDS IP核設(shè)計
2.1 DDS算法原理
DDS是根據(jù)采樣定理,通過查找表方法產(chǎn)生波形,。通常為正弦波,、余弦波,、三角波或方波等。完整的DDS結(jié)構(gòu)示意圖如圖2所示,。在參考時鐘的驅(qū)動下,,N bit相位累加器對頻率控制字K進行相位累加,得到的相位碼對波形存儲器尋址,,使之輸出相應(yīng)的波形幅度值,。將該值送給DAC和低通濾波器LPF,實現(xiàn)量化幅值到一個平滑信號的轉(zhuǎn)換,。當相位累加值大于2N時,,相位累加器產(chǎn)生一次溢出,溢出頻率就是DDS的輸出頻率,。輸出信號頻率fout可表示為:
由DDS原理可知,,相位累加器的位數(shù)N決定 DDS 的精度。N值越大,,DDS的頻率間隔?駐f就越細,。但N值增加,所需ROM 容量也將成指數(shù)增加,。實際上在一般系統(tǒng)中,,D/A轉(zhuǎn)換器的位數(shù)m是一定的,通常選取累加器的輸出位數(shù)N=m+2,即可滿足需要[6],。設(shè)計中DAC902為12 bit,取累加器為14 bit,調(diào)制脈沖最大幅值為212, 即4 096,。借助 Matlab,生成由漢寧窗調(diào)制10個周期正弦波的窄帶脈沖波形,,如圖3所示,。
本設(shè)計基于DDS技術(shù),采用Verilog HDL 硬件描述語言設(shè)計直接產(chǎn)生導(dǎo)波激勵波形的DDS模塊,頂層原理如圖4所示。
L(0,2)模態(tài)超聲導(dǎo)波的50 kHz~500 kHz頻率是指單音頻信號頻率(如圖3所示,,10個周期, 設(shè)單音頻率為f0),而非DDS輸出頻率fout,。由Tout=10T0,得fout=f0/10。所以DDS輸出fout應(yīng)為5 kHz~50 kHz,。系統(tǒng)主時鐘為50 MHz,,在DDS輸出最高頻率為50 kHz時,為實現(xiàn)0.3 kHz(單音頻3 kHz) 步進值,,10周期窄帶脈沖取樣點數(shù)不少于100點,,以減小失真,則時鐘頻率必須大于4.9 MHz,。將系統(tǒng)主時鐘10分頻,,得到5 MHz DDS時鐘頻率。頻率控制字取8 bit就可滿足要求,。
累加器模塊Accu對頻率控制字K累加,,并將結(jié)果的低14位sum[13:0]送給下一級Reg寄存器,,作為ROM地址。Accu的最高位sum[14]為判斷位,。在累加過程中,,當相位sum[14]為1時,累加器清零,,完成一次脈沖發(fā)射,。然后通過一個計數(shù)器實現(xiàn)延時功能,,使激勵脈沖每隔1 ms發(fā)射一次,。
ROM模塊采用ISE中ROM IP核直接定制。如果在系統(tǒng)中添加多個ROM,,每個ROM中分別載入不同周期的調(diào)制脈沖,,可實現(xiàn)激勵源的周期可調(diào)。借助Matlab,,把圖3窄帶脈沖量化成 12 bit 的定點波形數(shù)值,形成.coe 文件并加載到ROM中,。
將頻率控制字K設(shè)為23時,輸出頻率fout等于7 kHz,對應(yīng)單音頻信號為70 kHz,。Modelsim仿真波形如圖5所示,。
3系統(tǒng)硬件實現(xiàn)
3.1 外設(shè)IP核掛載
利用EDK的XPS,創(chuàng)建MicroBlaze硬件平臺,。通過Base System Builder Wizard快速添加配置,如RS232,、GPIO、BRAM等,。對于自主編寫的DDS模塊,使用Create/Import Peripheral工具,,適當修改user logic 和IPIF兩個自動生成文件,可將自己的邏輯模塊掛接在PLB總線上,,無需過多關(guān)心自定義IP與PLB總線的協(xié)議和接口邏輯,。在XPS中添加自帶的DCM時鐘管理模塊,為DDS IP和DAC提供精確穩(wěn)定的時鐘輸入,。最后為所有外設(shè)分配地址,,建立端口連接。
4 軟件設(shè)計
軟件部分在SDK中通過C語言編寫完成,主要包括初始化,、GPIO口鍵盤值讀取,、LCD顯示、DDS頻率字輸入和調(diào)節(jié)等,。由于導(dǎo)波頻率在50 kHz~500 kHz,,跨度較大。為方便實際檢測,,設(shè)計了頻率粗調(diào)和微調(diào)功能,。系統(tǒng)鍵盤包括設(shè)置鍵(Set),、粗調(diào)鍵(Adjust)、微調(diào)鍵(Fine),、確認鍵(OK)以及復(fù)位鍵(Reset),。上電后,頻率控制字K為初始值16,,系統(tǒng)產(chǎn)生50 kHz默認頻率激勵信號,。每按一次粗調(diào)鍵(Adjust),K值增加,分別對應(yīng)70 kHz,、120 kHz,、170 kHz等基數(shù)頻率。用微調(diào)鍵(Fine)以3 kHz為步進值進行細調(diào),。通過寫寄存器語句DDS_IP_mWriteReg將K值賦給DDS模塊,,產(chǎn)生相應(yīng)頻率激勵信號。程序流程如圖8所示,。
5 實驗結(jié)果分析
系統(tǒng)上電后,,在鍵盤上選擇激勵頻率值為70 kHz,使用NI PCI-5102數(shù)字化儀的虛擬示波器對輸出信號進行采集和分析,。捕捉到的激勵信號如圖9所示,。由面板參數(shù)可知,波形最高幅值1.5 V,包含10個周期單音頻信號的窄帶脈沖寬度約為0.142 ms,。改變鍵盤輸入,,對輸出信號進行FFT頻譜分析,如表1所示,。實驗結(jié)果表明,,此設(shè)計產(chǎn)生的激勵信號精度高,波形純凈,,性能良好,,頻率連續(xù)可調(diào),較好地滿足了設(shè)計要求,。
利用SoPC技術(shù),,給出了一種新的超聲導(dǎo)波激勵信號發(fā)生器的設(shè)計方法。重點論述了導(dǎo)波專用DDS模塊的實現(xiàn)過程,。把系統(tǒng)的主要功能集成在單片F(xiàn)PGA內(nèi),,減少了外圍電路,體積小,,功耗低,,抗干擾能力強,易于擴展和升級,,有效降低了設(shè)計成本,。產(chǎn)生的激勵信號精度高,,穩(wěn)定性好,頻率連續(xù)可調(diào),。本設(shè)計可方便地應(yīng)用到管道超聲導(dǎo)波缺陷檢測中,,并為開發(fā)小型化、集成化的導(dǎo)波檢測系統(tǒng)提供了可能,。
參考文獻
[1] 吳斌,,鄧菲,何存富. 超聲導(dǎo)波無損檢測中的信號處理研究進展[J].北京工業(yè)大學(xué)學(xué)報,2007,33(4):342-348.
[2] 王軍陣,,王建斌,,王帥. 基于DS89C430的超聲導(dǎo)波激勵信號源的設(shè)計[J].電子設(shè)計工程,2010,18(10):136-138.
[3] 吳斌,王智,,金山,,等.用于激勵超聲導(dǎo)波的任意波形發(fā)生器[J].北京工業(yè)大學(xué)學(xué)報,2002,28(4):389-393.
[4] 金傳喜,,武新軍,,夏志敏,等.導(dǎo)波檢測用激勵源的設(shè)計與應(yīng)用[J].制造業(yè)自動化,2006,28(10):79-81.
[5] 田耘,,胡彬,,徐文波,等.Xilinx ISE Design Suite 10.xFPGA開發(fā)指南——邏輯設(shè)計篇[M].北京:人民郵電出版社,2008:27-29.
[6] 王金明.數(shù)字系統(tǒng)設(shè)計與Verilog HDL(第三版)[M].北京:電子工業(yè)出版社,2009:285-286.