基于FPGA的DDS勵(lì)磁恒流源設(shè)計(jì)
目前勵(lì)磁電源信號(hào)發(fā)生部分通常采用直接頻率合成技術(shù),主要功能電路由壓控振蕩器(VCO)、倍頻器、分頻器、混頻器和濾波器等構(gòu)成,整個(gè)系統(tǒng)采用開環(huán)控制,即輸入設(shè)定值→頻率合成→功率放大→輸出勵(lì)磁電流。這種結(jié)構(gòu)給勵(lì)磁電源帶來以下不足:(1)由于采用外部壓控振蕩器,勵(lì)磁信號(hào)的頻率范圍受到限制,一般約為50 kHz。(2)系統(tǒng)使用開環(huán)控制,系統(tǒng)精度依賴于各組件的精度和穩(wěn)定性,使得勵(lì)磁電流的幅度精度和穩(wěn)定性較差,儀器抗干擾性不強(qiáng)。(3)采用直接頻率合成技術(shù),系統(tǒng)中有大量模擬電路,導(dǎo)致系統(tǒng)體積大、重量大、耗電高、可靠性差。
隨著信息技術(shù)的發(fā)展,磁性材料廣泛運(yùn)用于通信、電力、信息、交通等領(lǐng)域中。磁滯回線是磁性材料中重要的磁性參數(shù)之一,是鐵磁材料的本質(zhì)特征。通常運(yùn)用于與磁性材料有關(guān)的計(jì)算和研究中,對(duì)工業(yè)生產(chǎn)和科學(xué)研究具有重要的指導(dǎo)意義。
文中提出一種基于FPGA的DDS信號(hào)發(fā)生器。信號(hào)發(fā)生電路采用直接數(shù)字頻率合成技術(shù),即DDS(Direct Digital Frequency Synth-esis)。它是以全數(shù)字技術(shù),從相位概念出發(fā),直接合成所需波形的一種新的頻率合成技術(shù)。是將先進(jìn)的數(shù)字處理技術(shù)和方法引入信號(hào)合成領(lǐng)域,把一系列數(shù)字量形式的信號(hào)通過數(shù)/模轉(zhuǎn)換器轉(zhuǎn)換成模擬信號(hào),在時(shí)域中進(jìn)行頻率合成。直接數(shù)字頻率合成器的主要優(yōu)點(diǎn)是:輸出信號(hào)頻率相對(duì)帶寬較寬;頻率分辨力好、轉(zhuǎn)換時(shí)間快;頻率變化時(shí)相位保持連續(xù);集成度高,體積小,控制方便等。整個(gè)信號(hào)源系統(tǒng)采用數(shù)字閉環(huán)控制,通過對(duì)勵(lì)磁電流瞬時(shí)值經(jīng)PID閉環(huán)控制,使得勵(lì)磁電流可瞬時(shí)跟蹤給定幅值,加快系統(tǒng)動(dòng)態(tài)響應(yīng),提高非線性負(fù)載適應(yīng)力,其較傳統(tǒng)的信號(hào)源能更好地滿足磁性測試設(shè)備的需求。
1 DDS的工作原理
DDS的工作原理如圖1所示。主要有以下基本部件:相位累加器;相位-幅度變換器,即正弦查表ROM;D/A轉(zhuǎn)換器和適當(dāng)?shù)臑V波器等濾波器。相位累加器是DDS系統(tǒng)的核心是相位累加器,它由一個(gè)加法器和一個(gè)相位寄存器組成,相位累加器在參考時(shí)鐘的作用下,按頻率控制字為步長不斷累積,累加結(jié)果產(chǎn)生遞增的傳遞給正弦查表ROM。正弦查詢表中存儲(chǔ)了一個(gè)周期正弦波在各相位點(diǎn)對(duì)應(yīng)數(shù)字幅度信息。由于相位累加器的輸出連接在波形存儲(chǔ)器(ROM)的地址線上,因此其輸出的改變就相當(dāng)于進(jìn)行查表。這樣就可把存儲(chǔ)在波形存儲(chǔ)器內(nèi)的波形抽樣值經(jīng)查找表查出,然后送至D/A轉(zhuǎn)換器,經(jīng)D/A轉(zhuǎn)換器產(chǎn)生一系列以時(shí)鐘脈沖為抽樣速率的電壓階躍。濾波器則進(jìn)一步平滑D/A轉(zhuǎn)換器輸出的近似正弦波的鋸齒階梯波,同時(shí)衰減不必要的雜散信號(hào),使輸出為要求的光滑波形。
由于相位累加器字長的限制,相位累加器累加到一定值后,其輸出將會(huì)溢出,這樣波形存儲(chǔ)器的地址就會(huì)循環(huán)一次,即意味著輸出波形循環(huán)一周。故當(dāng)頻率字取不同值,就可以改變相位累加器的溢出時(shí)間,從而在時(shí)鐘頻率不變的條件下改變輸出頻率。
設(shè)頻率控制字為K,系統(tǒng)參考時(shí)鐘為fc,相位累加器位數(shù)為N,輸出頻率為fo,則可以得到輸入與輸出的關(guān)系為
當(dāng)K=1時(shí),可以得到DDS的頻率分辨率
2 勵(lì)磁恒流源的硬件設(shè)計(jì)
勵(lì)磁信號(hào)發(fā)生器電路系統(tǒng)主要由基于FPGA的DDS電路、MCU控制電路、DAC電路、低通濾波器(LPF)、人機(jī)接口、系統(tǒng)時(shí)鐘和系統(tǒng)電源構(gòu)成。系統(tǒng)框圖,如圖2所示。
2.1 基于FPGA的DDS電路
2.1.1 相位累加器
對(duì)于利用FPGA設(shè)計(jì)DDS信號(hào)源,相位累加器是決定DDS電路性能的一個(gè)關(guān)鍵部分。相位累加器是由N位累加器和N位寄存器級(jí)聯(lián)構(gòu)成,每來一個(gè)時(shí)鐘脈沖,相位寄存器采樣上個(gè)時(shí)鐘周期內(nèi)相位累加器的值與頻率控制字K之和,并作為相位累加器在這一時(shí)鐘周期的輸出。由式(2)可知,相位累加器的位數(shù)N越大,得到的頻率分辨率越小,但在較高的工作頻率下,會(huì)產(chǎn)生較大的延時(shí)不能滿足速度的要求。在時(shí)序電路中,通常采用流水線技術(shù)來提高速度,代價(jià)是增加寄存器的數(shù)量,多占了FPGA的資料。綜合考慮,采用32位累加器,四級(jí)流水線結(jié)構(gòu)。
2.1.2 相位-幅度變換器
相位-幅度變換器是由ROM構(gòu)成,它把相位累加器的輸出的數(shù)字相位信息變換成正弦波值。在FPGA中,ROM一般是由EAB來實(shí)現(xiàn),并且ROM表的尺寸與地址位數(shù)或數(shù)據(jù)位數(shù)成指數(shù)增加的關(guān)系,因此相位-幅度轉(zhuǎn)換器的設(shè)計(jì)是影響DDS性能的另一個(gè)關(guān)鍵,在滿足信號(hào)設(shè)計(jì)指標(biāo)要求的前提下,主要在于減少資源開銷??紤]到本設(shè)計(jì)只需要輸出正弦信號(hào),正弦波信號(hào)關(guān)于點(diǎn)(π,0)奇對(duì)稱,只需存儲(chǔ)1/2周期的波形數(shù)據(jù),又根據(jù)在左半周期內(nèi),波形關(guān)于直線x=π/2成偶對(duì)稱,因此只需要存儲(chǔ)1/4周期的正弦函數(shù)值,就可以通過適當(dāng)?shù)淖儞Q得到整個(gè)正弦碼表,這樣可以節(jié)約3/4的資源。
關(guān)鍵字:DDS 勵(lì)磁恒流源2. 2 低通濾波模塊
DDS有一個(gè)明顯的缺點(diǎn),即輸出頻率越接近Nyquist帶寬的高端,采樣點(diǎn)數(shù)越少,其輸出的雜散干擾就越大。輸出波形具有大量的諧波分量和系統(tǒng)時(shí)鐘干擾。為得到所需頻段內(nèi)的信號(hào),需要在DDS輸出端加一濾波器來實(shí)現(xiàn),而低通濾波器能較好地濾除雜波,平滑信號(hào),所以低通濾波器的設(shè)計(jì)尤為重要,濾波特性的優(yōu)劣對(duì)輸出信號(hào)的性能起重要的影響。
為取得較好的濾波效果,濾波器采用了由四選一模擬開關(guān)和精密運(yùn)算放大器分段濾波的方式:采用巴特沃斯有源低通濾波器,該濾波器通帶內(nèi)幅度很平坦,濾波電路為二階巴特沃斯低通濾波電路,濾波器頻段參數(shù)的選擇由FPGA輸出的控制信號(hào)nINH,S0,S1控制模擬開關(guān)的選通實(shí)現(xiàn)。
2.3 幅度控制
本設(shè)計(jì)幅度控制電路采用調(diào)節(jié)DAC參考電壓的數(shù)字化控制方法,采用兩個(gè)D/A級(jí)聯(lián)的方式,數(shù)模轉(zhuǎn)換器DAC2采用外部可變基準(zhǔn)源,通過改變基準(zhǔn)源的值來改變輸出的滿幅度電流值,該可變基準(zhǔn)源通過DAC1產(chǎn)生。DAC1的基準(zhǔn)電壓采用輸出電壓為1.25 V精密電壓基準(zhǔn)芯片提供,設(shè)DAC1的幅度輸出字為N1,則DAC1的參考電壓為
設(shè)DAC2的數(shù)字輸入字為N2,則經(jīng)電流/電壓轉(zhuǎn)換后的輸出電壓為
2.4 人機(jī)交互
為方便快捷地控制DDS的頻率字輸入和幅度控制,本設(shè)計(jì)采用單片機(jī)來實(shí)現(xiàn)對(duì)DDS信號(hào)發(fā)生器的控制。DDS的頻率字和幅度數(shù)據(jù)字位較多,而單片機(jī)輸出端口位數(shù)有限,所以單片機(jī)與FPGA之間的通信采用SPI(Serial Peripheral Interface,串行外設(shè)接口)方式,單片機(jī)將控制命令字傳送給FPGA。同時(shí),為了輸入控制方便,添加了鍵盤和顯示系統(tǒng)。
3 數(shù)字閉環(huán)控制系統(tǒng)的實(shí)現(xiàn)
設(shè)計(jì)的勵(lì)磁恒流源主要為磁性測量儀器提供激勵(lì)電源,因而對(duì)其精度和穩(wěn)定性要求高,采用電流控制型的控制策略進(jìn)行閉環(huán)控制,結(jié)構(gòu)框圖如圖3所示。勵(lì)磁電流幅度調(diào)整時(shí),首先對(duì)勵(lì)磁電流進(jìn)行多周期采樣,然后計(jì)算其有效值,并與輸入設(shè)定值相比較,若誤差ε在允許范圍之外,則根據(jù)誤差的實(shí)際情況,通過單片機(jī)內(nèi)增量式PID算法得出了一個(gè)新的控制量,傳送給FPGA控制幅度調(diào)節(jié)經(jīng)低通濾波器濾去高頻成分,再經(jīng)功率放大,得到高精度的勵(lì)磁電流。
4 系統(tǒng)仿真與驗(yàn)證分析
在Altera公司的QuartusⅡ環(huán)境下編譯完成,采用自上而下的設(shè)計(jì)方法,即先從系統(tǒng)總體要求出發(fā)將設(shè)計(jì)內(nèi)容細(xì)化,最后完成系統(tǒng)硬件的整體設(shè)計(jì)。完成DDS設(shè)計(jì)后,通過編寫Testbench在Modelsim進(jìn)行仿真。在QuartusⅡ中,設(shè)定輸出信號(hào)頻率為1 MHz,經(jīng)過50 μs后改變?yōu)?00 kHz進(jìn)行仿真,其仿真結(jié)果如圖4所示。在Modelsim中生成的仿真數(shù)據(jù)經(jīng)驗(yàn)證完全正確,滿足設(shè)計(jì)需求。
在對(duì)勵(lì)磁信號(hào)源做硬件系統(tǒng)測試時(shí),首先完成系統(tǒng)硬件連接,并加載程序,設(shè)定輸出信號(hào)頻率為1 MHz,示波器測得實(shí)際輸出波形如圖5所示。在Modelsim環(huán)境下仿真和在硬件平臺(tái)上測試,結(jié)果表明勵(lì)磁信號(hào)源可獲得較好的設(shè)置波形,可以應(yīng)用于磁性材料的測試中。
5 結(jié)束語
運(yùn)用Verilog硬件編程語言結(jié)合DDS技術(shù),利用FPGA器件強(qiáng)大的硬件功能,提高了系統(tǒng)集成度,實(shí)現(xiàn)了輸出信號(hào)相對(duì)帶寬寬、穩(wěn)定性好;其相位累加器在一定系統(tǒng)時(shí)鐘和累加器位寬條件,輸出信號(hào)分辨率越小,頻率控制字的傳輸時(shí)間以及器件響應(yīng)時(shí)間都很短,使輸出信號(hào)頻率切換時(shí)間較短,可以達(dá)到ns級(jí),且頻率變化時(shí),相位保持連續(xù),系統(tǒng)采用閉環(huán)控制,勵(lì)磁電流輸出精度高,調(diào)節(jié)速度快。對(duì)磁性材料測量儀所要求的勵(lì)磁信號(hào)源而言,本設(shè)計(jì)不但滿足所有技術(shù)指標(biāo),而且集成度高、體積小、顯著地降低了成本。