新聞中心

        EEPW首頁 > 模擬技術 > 設計應用 > 基于SoPC的超聲導波激勵信號發生器設計

        基于SoPC的超聲導波激勵信號發生器設計

        作者: 時間:2011-09-21 來源:網絡 收藏

        在管道缺陷檢測當中,檢測技術與傳統無損檢測方法相比具有沿傳播路徑衰減小,傳播距離遠,引起的質點振動能遍及構件內部和表面的特點,因此表現出更大優勢[1]。在傳播過程中存在多模態和頻散特性,若激勵源選擇不當,導波發生嚴重頻散,會使回波信號變得極為復雜,不利于缺陷分析。根據導波頻散特性曲線可知,在50 kHz~500 kHz范圍內,L(0,2)模態傳播速度最快最穩定,幾乎不發生頻散。用漢寧窗調制該頻段內一定周期數的單音頻信號,形成窄帶脈沖作為激勵源,激勵出L(0,2)模態占主導的超聲導波,可最大限度地避免頻散帶來的不利影響[2]。
        目前出現了多種超聲導波設計方案。一是利用多功能函數如HP33120A[3]實現。由于HP33120A存儲長度有限,長距離檢測時脈沖間會出現干擾,最高調制頻率不高[4]。二是采用單片機控制DDS芯片設計,精度較高,但定制性較弱,且一般需要兩片以上DDS芯片,成本昂貴。還有一種方法是用高速單片機控制D/A轉換芯片直接輸出信號,方便易行,然而精度較低,激勵頻率受到單片機頻率限制,而且很難做到連續可調。為了解決上述設計方案的不足,本設計在Xilinx公司FPGA(現場可編程門陣列)上,以MicroBlaze軟核處理器為控制核心,借鑒直接數字頻率合成DDS(Direct Digital Frequncy Synthesis)技術,給出了一種產生L(0,2)模態超聲導波源的(System on Programmable Chip)實現方法。所得激勵源精度高,漢寧窗調制下的單音頻正弦波周期數可調,頻率連續可調。
        1系統整體方案設計
        本系統以Xilinx公司Spartan 3E-Starter開發板為硬件平臺。此開發平臺外設資源較為豐富,通過增加少量的外圍設備即可實現系統設計。Spartan 3E系列FPGA是Xilinx 公司性價比最高的FPGA芯片,可較好地滿足產品的高集成化與低成本化[5]。其內部MicroBlaze軟核處理器采用功能強大的32位流水線RISC結構,包含32個32位的通用寄存器、2個32位特殊寄存器,可具有3/5級流水線。時鐘頻率高達150 MHz。以IBM CoreConnect技術為基礎,提供了豐富的接口資源。其中PLB(處理器本地總線)總線提供對片上外設、外部存儲器以及基于硬件描述語言編寫的算法模塊的訪問 ,和其他外設IP核一起,完成嵌入式的開發。超聲導波激勵源的實現結構如圖1所示。

        本文引用地址:http://www.104case.com/article/187311.htm

        FPGA實現所有數字電路部分。MicroBlaze軟核處理器是系統的控制核心,通過LMB(本地存儲器總線)訪問程序存儲空間BRAM,PLB總線掛載所需IP核。例化GPIO接口連接鍵盤,負責的頻率設置。LCD1602用于當前頻率值顯示。自主編寫的DDS IP為系統波形發生的核心,直接產生激勵源波形。MDM為系統的調試模塊,RS232用于和PC機通信或程序調試。使用Xilinx嵌入式開發套件EDK自帶的數字時鐘管理DCM(Digital Clock Manager) IP核,把50 MHz輸入時鐘分頻,分別為DDS模塊和外部高速數模轉換芯片DAC902提供穩定的5 MHz和50 MHz時鐘信號。程序通過JTAG下載到FPGA內部的BRAM,或者片外PROM中存儲。FPGA產生的數字信號經過DAC902轉換為模擬信號,再經過低通濾波器去噪,即可獲得高質量的超聲導波激勵信號源。
        2 超聲導波DDS IP核設計
        2.1 DDS算法原理

        DDS是根據采樣定理,通過查找表方法產生波形。通常為正弦波、余弦波、三角波或方波等。完整的DDS結構示意圖如圖2所示。在參考時鐘的驅動下,N bit相位累加器對頻率控制字K進行相位累加,得到的相位碼對波形存儲器尋址,使之輸出相應的波形幅度值。將該值送給DAC和低通濾波器LPF,實現量化幅值到一個平滑信號的轉換。當相位累加值大于2N時,相位累加器產生一次溢出,溢出頻率就是DDS的輸出頻率。輸出信號頻率fout可表示為:



          由DDS原理可知,相位累加器的位數N決定 DDS 的精度。N值越大,DDS的頻率間隔?駐f就越細。但N值增加,所需ROM 容量也將成指數增加。實際上在一般系統中,D/A轉換器的位數m是一定的,通常選取累加器的輸出位數N=m+2,即可滿足需要[6]。設計中DAC902為12 bit,取累加器為14 bit,調制脈沖最大幅值為212, 即4 096。借助 Matlab,生成由漢寧窗調制10個周期正弦波的窄帶脈沖波形,如圖3所示。

        本設計基于DDS技術,采用Verilog HDL 硬件描述語言設計直接產生導波激勵波形的DDS模塊,頂層原理如圖4所示。

        L(0,2)模態超聲導波的50 kHz~500 kHz頻率是指單音頻信號頻率(如圖3所示,10個周期, 設單音頻率為f0),而非DDS輸出頻率fout。由Tout=10T0,得fout=f0/10。所以DDS輸出fout應為5 kHz~50 kHz。系統主時鐘為50 MHz,在DDS輸出最高頻率為50 kHz時,為實現0.3 kHz(單音頻3 kHz) 步進值,10周期窄帶脈沖取樣點數不少于100點,以減小失真,則時鐘頻率必須大于4.9 MHz。將系統主時鐘10分頻,得到5 MHz DDS時鐘頻率。頻率控制字取8 bit就可滿足要求。
        累加器模塊Accu對頻率控制字K累加,并將結果的低14位sum[13:0]送給下一級Reg寄存器,作為ROM地址。Accu的最高位sum[14]為判斷位。在累加過程中,當相位sum[14]為1時,累加器清零,完成一次脈沖發射。然后通過一個計數器實現延時功能,使激勵脈沖每隔1 ms發射一次。
          ROM模塊采用ISE中ROM IP核直接定制。如果在系統中添加多個ROM,每個ROM中分別載入不同周期的調制脈沖,可實現激勵源的周期可調。借助Matlab,把圖3窄帶脈沖量化成 12 bit 的定點波形數值,形成.coe 文件并加載到ROM中。
        將頻率控制字K設為23時,輸出頻率fout等于7 kHz,對應單音頻信號為70 kHz。Modelsim仿真波形如圖5所示。

        3系統硬件實現
        3.1 外設IP核掛載
        利用EDK的XPS,創建MicroBlaze硬件平臺。通過Base System Builder Wizard快速添加配置,如RS232、GPIO、BRAM等。對于自主編寫的DDS模塊,使用Create/Import Peripheral工具,適當修改user logic 和IPIF兩個自動生成文件,可將自己的邏輯模塊掛接在PLB總線上,無需過多關心自定義IP與PLB總線的協議和接口邏輯。在XPS中添加自帶的DCM時鐘管理模塊,為DDS IP和DAC提供精確穩定的時鐘輸入。最后為所有外設分配地址,建立端口連接。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 钟山县| 浮梁县| 韶山市| 永新县| 高密市| 新龙县| 梅河口市| 达日县| 界首市| 江达县| 定襄县| 枞阳县| 黔南| 邯郸市| 浦城县| 瑞昌市| 寻乌县| 夏邑县| 浮梁县| 宁国市| 南安市| 淮滨县| 象山县| 富裕县| 宜兰县| 通州区| 安岳县| 宁明县| 平湖市| 报价| 常宁市| 寿阳县| 秭归县| 金昌市| 佳木斯市| 重庆市| 和静县| 青州市| 郁南县| 祁连县| 临城县|