引言
交流電磁場(chǎng)檢測(cè)(AlternatingCurrentFieldMeasure-ment.ACFM)是一種基于電磁感應(yīng)原理的主動(dòng)式電磁無(wú)損檢測(cè)技術(shù),對(duì)導(dǎo)電工件表面及近表面裂紋的檢測(cè)具有獨(dú)特的優(yōu)勢(shì)。交流電磁場(chǎng)檢測(cè)需要在被測(cè)工件表面感應(yīng)出交變電流,當(dāng)不存在缺陷時(shí),感應(yīng)電流均勻分布;存在缺陷時(shí),缺陷對(duì)感應(yīng)電流產(chǎn)生擾動(dòng),通過(guò)提取感應(yīng)電流產(chǎn)生磁場(chǎng)的變化來(lái)確定缺陷的長(zhǎng)度及深度等信息。
現(xiàn)場(chǎng)可編程門陣列(FieldProgrammableGateArray,FPGA)是近年來(lái)新型的高集成度數(shù)字器件,受到世界范圍內(nèi)電子工程設(shè)計(jì)人員的廣泛關(guān)注和普遍歡迎,可以滿足大多數(shù)專用檢測(cè)系統(tǒng)的設(shè)計(jì)。本文以FPGA為開發(fā)平臺(tái)設(shè)計(jì)頻率可調(diào)的激勵(lì)源模塊,激勵(lì)源由直接數(shù)字頻率實(shí)現(xiàn),合成頻率適用于不同的被測(cè)材料,既可以滿足交流電磁場(chǎng)檢測(cè)系統(tǒng)的需求,又可以降低該系統(tǒng)的功耗和成本。并且FPGA的引腳豐富、存儲(chǔ)區(qū)大,特別適合現(xiàn)場(chǎng)的實(shí)時(shí)檢測(cè)系統(tǒng),方便檢測(cè)儀器的野外和高空操作。
1、直接數(shù)字頻率合成原理
DDS或DDFS(DirectDigitalFrequencySysthesis)即直接數(shù)字頻率合成,原理是將信號(hào)的完整周期預(yù)先做歸一化處理,采樣足夠的點(diǎn)數(shù)存儲(chǔ),需要輸出時(shí)通過(guò)時(shí)鐘頻率查找存儲(chǔ)表地址對(duì)應(yīng)的幅值輸出給高速DA轉(zhuǎn)換器,由低通濾波器輸出模擬信號(hào)。典型的DDS原理如圖1所示。波形存儲(chǔ)表可以設(shè)置為正弦波)方波)三角波等波形。

假設(shè)正弦波信號(hào)的一個(gè)周期以2N次采樣存儲(chǔ),fclk時(shí)鐘頻率fn為合成頻率,T0為合成信號(hào)周期。并且假設(shè)累加器位數(shù)與地址位數(shù)相同,則控制合成頻率有全采樣和頻率控制字采樣兩種方法。
1.1、全采樣
時(shí)鐘頻率查找波形存儲(chǔ)表的每一個(gè)地址,輸出地址對(duì)應(yīng)的幅值。則合成激勵(lì)源的一個(gè)完整周期需要2n次查表,合成頻率與時(shí)鐘頻率的關(guān)系如式(1):

式中:fn為合成頻率,Tn為合成信號(hào)周期,fclk為時(shí)鐘頻率,2n為采樣次數(shù)。由式(1)可知所有采樣點(diǎn)都經(jīng)過(guò)查找輸出幅值時(shí),通過(guò)改變時(shí)鐘頻率fclk即可合成不同頻率的信號(hào)。
1.2、頻率控制字采樣
在采樣時(shí)鐘頻率一定時(shí),已知波形存儲(chǔ)表的長(zhǎng)度不變,通過(guò)控制每次累加頻率控制字的大小,改變查找表的次數(shù),合成不同頻率的信號(hào)。

但是設(shè)計(jì)的累加器位數(shù)與地址位數(shù)一致后,當(dāng)頻率控制字的值大于l時(shí),每次周期采樣都會(huì)丟失一部分波形存儲(chǔ)表地址。如表1所示,當(dāng)以1為頻率控制字累加步進(jìn)時(shí),每次相位累加后的結(jié)果與地址對(duì)應(yīng);當(dāng)以2為頻率控制字累加步進(jìn)時(shí),一個(gè)周期的合成只能查找一半的頻率地址,另外一半的地址信息丟失。并且隨著頻率控制字的值增加,合成信號(hào)的每個(gè)周期采樣點(diǎn)數(shù)越來(lái)越少。
表1 ?合成頻率采樣表

為了避免將查表的地址信息丟失,在電路設(shè)計(jì)中通常增加累加器的位數(shù),累加器在功能上可以劃分為地址寄存器和相位寄存器,如表2所示,在累加器的低位中增加相位寄存器。當(dāng)頻率控制字的值以小于等于相位寄存器的最大值進(jìn)行累加時(shí),都會(huì)首先向地址寄存器的最低位進(jìn)一,進(jìn)位后的相位寄存器清零,地址寄存器的值發(fā)生變化,這樣就會(huì)使地址寄存器的輸出與存儲(chǔ)表的地址一一對(duì)應(yīng),存儲(chǔ)表的地址信息全被查找。
表2 ?相位累加器功能表

2、信號(hào)源的VerilogHDL編程
VerilogHDL是硬件描述語(yǔ)言的一種,設(shè)計(jì)者需要掌握具體物理電路模型,編寫設(shè)計(jì)文件,然后使用EDA工具進(jìn)行仿真驗(yàn)證,使用自動(dòng)綜合工具轉(zhuǎn)換到門級(jí)電路網(wǎng)表,最后經(jīng)過(guò)布局布線生成電路。由上述內(nèi)容可知,DDS系統(tǒng)需要設(shè)計(jì)相位累加器、頻率寄存器、波形存儲(chǔ)表及查表。為了方便控制頻率控制字的變化,本文設(shè)計(jì)了獨(dú)立按鍵來(lái)調(diào)節(jié)頻率控制字。
2.1、相位累加器的設(shè)計(jì)
累加器功能上是由高8位地址寄存器和低8位相位寄存器組成,頻率控制字通過(guò)頻率寄存器實(shí)現(xiàn),所以在FPGA中需要設(shè)計(jì)一個(gè)16位累加器和8位wire型頻率寄存器。累加器Verilog代碼如下:

2.2、波形存儲(chǔ)表的生成
由于DA轉(zhuǎn)換芯片為8位,故波形存儲(chǔ)表的幅值位寬為8位,地址深度為256。波形存儲(chǔ)表采用QUARTUSII的波形數(shù)據(jù)生成器MifMaker來(lái)生成。累加器的高8位輸出與波形存儲(chǔ)一一對(duì)應(yīng)。正弦存儲(chǔ)表如下所示:

波形存儲(chǔ)表生成以后需要導(dǎo)入FPGA的存儲(chǔ)區(qū),在FPGA中配置對(duì)應(yīng)的波形存儲(chǔ)塊,與波形生成器文件的深度和位寬保持一致。建立方法如下:
(1)在Tools工具欄下選擇MegaWizard創(chuàng)建新宏單元;
(2)在MemoryCompiler目錄下選擇ROM,對(duì)其進(jìn)行設(shè)置器件型號(hào)、位寬、深度相關(guān)參數(shù);
(3)添加生成的波形存儲(chǔ)表。
2.3、FPGA查表的設(shè)計(jì)
在上述第二步的基礎(chǔ)上,將波形存儲(chǔ)表導(dǎo)入FPGA的ROM存儲(chǔ)塊后,還需要例化ROM存儲(chǔ)塊,讀取波形存儲(chǔ)表的DA轉(zhuǎn)換數(shù)據(jù)。其例化程序如下:
dacwavedacwave_inst(.address(addr),.clock(clk),.q
(dac_data));
2.4、按鍵電路的設(shè)計(jì)
通過(guò)獨(dú)立按鍵控制DDS的輸出頻率,其中sb3將頻率控制字設(shè)為最小值1,sb4將頻率控制字設(shè)為FF。代碼如下:
always@(posedgeclkornegedgerst_n)
if(!rst_n)
frewordn《=
8‘hl;
else
begin
if(fre_word_ctrl
[0]fre_word_n《=fre_
word_n+l’bl;
if(fre_word_ctrl
[1])fre_word_n《=fre_
word_n-l‘bl;
if(fre_word_ctrl
[2])fre_word_n《=8’bl;
if‘(fre_word_ctrl[3])fre_word_n《=8’bllll_llll;
end
assignfre_word=fre_word_n;
2.5、DDS模塊的RTL視圖
RTL級(jí)(Register-Transfer-Level)是實(shí)際電路的行為級(jí)描述,描述數(shù)據(jù)在寄存器之間的流動(dòng)模型。通過(guò)RTL視圖可以直觀地了解設(shè)計(jì)的實(shí)際電路?;贔PGA的激勵(lì)源RTL視圖如圖2所示。

圖2 ?激勵(lì)源的RTL視圖
3、外圍電路的設(shè)計(jì)
基于FPGA的激勵(lì)源模塊主要有時(shí)鐘電路、DA轉(zhuǎn)換及4輸入按鍵電路。輸入端口包括時(shí)鐘輸入端口、復(fù)位端口、獨(dú)立按鍵端口、DAC時(shí)鐘輸出端口及DAC數(shù)據(jù)輸出端口。本次設(shè)計(jì)采用40MHz晶振,AD9708進(jìn)行DA轉(zhuǎn)換。
AD9708是電流輸出型DA轉(zhuǎn)換器,8位低功耗數(shù)模轉(zhuǎn)換器,最高支持125MSPS的更新速率。內(nèi)置一個(gè)1.2V片內(nèi)基準(zhǔn)電壓源和基準(zhǔn)電壓控制放大器,只需要單個(gè)電阻即可設(shè)置滿量程輸出電流。電流輸出可以直接連至一個(gè)輸出電阻,以提供兩路互補(bǔ)的單端電壓輸出。具體的電路設(shè)計(jì)如圖3所示,注意將模擬地和數(shù)字地通過(guò)0歐的電阻進(jìn)行連接。

圖3 ?DA轉(zhuǎn)換電路原理圖
根據(jù)AD9708的數(shù)據(jù)手冊(cè)可得DA轉(zhuǎn)換器的滿量程輸出電流可以通過(guò)REFIO與REFLO設(shè)置,REFLO連接至地時(shí),使用內(nèi)部參考電壓1.2V,Ioutfs如式(6)所示,電流輸出如式(7)所示,電壓輸出如式(8)所示。

上式中Ioutfs為滿量程輸出電流,Vrefio為內(nèi)部參考電壓,RSET為設(shè)置的電阻值,IoutA為輸出電流,VoutA為輸出電壓。電流輸出型DA轉(zhuǎn)換器通常需要外接電流一電壓轉(zhuǎn)換電路來(lái)輸出電壓,一種是直接將電流輸出端接負(fù)載,另外一種是接運(yùn)算放大器來(lái)輸出電壓。DA轉(zhuǎn)換器的輸出阻抗比較大,所以通常采用運(yùn)算放大器來(lái)輸出電壓。由于交流電磁場(chǎng)的激勵(lì)線圈需要的電壓和電流較大,因此還需要接功率放大器來(lái)提高驅(qū)動(dòng)能力。
4、激勵(lì)源模塊功能驗(yàn)證
在FPGA中設(shè)計(jì)好激勵(lì)源模塊后,將高速DA轉(zhuǎn)換芯片的輸出接到示波器上,F(xiàn)PGA上電后,通過(guò)獨(dú)立按鍵可以調(diào)節(jié)合成信號(hào)源的頻率,頻率值可以在610Hz~156kHz之間變化,頻率控制字每增加1,激勵(lì)源頻率增加610Hz。圖4為頻率控制字為1時(shí)合成正弦波信號(hào),頻率為610Hz。
5、結(jié)論
本文實(shí)現(xiàn)了交流電磁場(chǎng)檢測(cè)儀的激勵(lì)源設(shè)計(jì),對(duì)于不同的被測(cè)工件可以通過(guò)獨(dú)立按鍵控制激勵(lì)源的頻率。激勵(lì)源的波形可以通過(guò)存儲(chǔ)表來(lái)改變,形成多樣化的信號(hào)源。激勵(lì)源控制電路集成到FPGA芯片中,提高了設(shè)計(jì)靈活性,降低了開發(fā)成本及功耗。激勵(lì)源的模塊化設(shè)計(jì)可以方便地移植到其他檢測(cè)系統(tǒng),具有廣泛的應(yīng)用前景。
電子發(fā)燒友App
















評(píng)論