采用FPGA的SPWM變頻系統(tǒng)設(shè)計
0 引 言
由于脈寬調(diào)制技術(shù)是通過調(diào)整輸出脈沖的頻率及占空比來實現(xiàn)輸出電壓的變壓變頻效果,所以在電機調(diào)速、逆變器等眾多領(lǐng)域得到了日益廣泛的應(yīng)用。
而電磁法作為一種地球物理探測的有效方法,已經(jīng)廣泛地應(yīng)用于礦藏勘探、地質(zhì)災(zāi)害預(yù)測等領(lǐng)域。電磁法儀一般包括發(fā)射機和接收機兩大部分?,F(xiàn)階段,電磁法儀器的發(fā)射機部分一般直接采用等寬PWM技術(shù),其電流諧波畸變率較大,電壓利用率不高,效率很低。
本文利用FPGA技術(shù),根據(jù)SPWM自然采樣法原理,設(shè)計了應(yīng)用于電磁法儀的發(fā)射機的SPWM系統(tǒng)。該系統(tǒng)應(yīng)用到現(xiàn)有的電磁法儀器中,與原來的PWM產(chǎn)生的效果進行比較,得到良好的效果。
1 SPWM技術(shù)原理
SPWM信號的原理為:用一組等腰三角形波與一個正弦波比較,其交點作為開關(guān)管“開”或“關(guān)”的時刻。產(chǎn)生SPWM信號有多種方法,如諧波消去法、等面積法、采樣法等。
利用正弦波和等腰三角形的交點時刻決定開關(guān)管的開關(guān)模式,這種方法稱為自然采樣法。其可以分為單極性三角波調(diào)制法和雙極性三角波調(diào)制法,其原理圖如圖1所示。本文采用的是雙極性調(diào)制法。
2 SPWM系統(tǒng)的硬件實現(xiàn)
2.1 系統(tǒng)整體設(shè)計
系統(tǒng)原理如圖2所示。系統(tǒng)先生成三角波信號和正弦波信號,通過兩者輸出的比較產(chǎn)生脈沖序列,并對輸出的脈沖進行死區(qū)延時、數(shù)字濾波等處理。主要模塊有:分頻器、三角載波發(fā)生器、正弦函數(shù)表尋址、正弦函數(shù)表、死區(qū)時間延時模塊和數(shù)字濾波模塊等。
2.2三角載波發(fā)生器
本設(shè)計中通過加減計數(shù)器來產(chǎn)生載波三角波,三角波的幅值取256。先從0開始計數(shù)到256,再從256減數(shù)到0,得到半個周期的三角載波,然后重復(fù)前半周期的計數(shù)方式,對得到的計數(shù)值取負,這樣就可以得到一個周期的三角載波。
圖3是三角載波模塊的仿真圖??赏ㄟ^設(shè)定triwave_fp的值來實現(xiàn)三角波的分頻,當(dāng)系統(tǒng)時鐘為10 MHz時,圖3(a)設(shè)triwave_fp為0,此時三角波周期為102.4 μs;圖3(b)設(shè)triwave_tp為1,其周期變?yōu)?04.8 μs。通過改變triwave_fp的取值,可以得到不同頻率的載波。
2.3 正弦波發(fā)生器
本設(shè)計利用Matlab軟件工具,把正半周期的正弦波512等分后,把數(shù)據(jù)存人ROM中。調(diào)用ROM中的數(shù)據(jù),即可實現(xiàn)正半周期正弦波。再對正半周期取反,即可得到負半周期的值。本設(shè)計為了使得到的脈沖寬度可調(diào),加上了正弦幅度相乘調(diào)節(jié)模塊,其模塊原理圖如圖4所示。
同樣,可以控制模塊分頻單元,和調(diào)幅單元,改變正弦波的頻率及幅度。
2.4 比較模塊
三角載波和正弦參考波發(fā)生模塊設(shè)計完成后,對其輸出的結(jié)果進行比較以產(chǎn)生SPWM脈沖信號??梢酝ㄟ^Verilog硬件描述語言實現(xiàn),比較規(guī)則設(shè)置為當(dāng)載波的數(shù)值小于正弦波的函數(shù)值時,輸出‘1’,否則輸出‘0’。[!--empirenews.page--]
2.5 死區(qū)時間延時模塊
比較模塊后,得到兩路SPWM序列信號(xl,xh),用于控制電路的上下橋臂的開關(guān)。理論上,這兩路信號是完全互補的。然而,由于功率器件開通和關(guān)斷時間不完全相等,器件的關(guān)斷時間實際上要長于導(dǎo)通時間。因此,為避免上下橋臂上功率器件瞬態(tài)短路必須提供一段時間的延時,使功率開關(guān)管導(dǎo)通之前確保相應(yīng)的開關(guān)管已經(jīng)截止。
脈沖延時是通過上升沿實現(xiàn)的,延時時間的實現(xiàn)主要通過一個10位的加減計數(shù)器來實現(xiàn)。設(shè)死區(qū)時間為max,延時計數(shù)器計數(shù)規(guī)則如下:
(1)當(dāng)輸入為0時,若計數(shù)值等于0,則計數(shù)值保持不變;否則,作減1計數(shù);
(2)當(dāng)輸入為1時,若計數(shù)值等于max,則計數(shù)值保持不變;否則,作加1計數(shù);
(3)當(dāng)輸入為1且死區(qū)計數(shù)器數(shù)值為max時,xl=0,xh=1,上橋臂導(dǎo)通;
(4)當(dāng)輸入為0且死區(qū)計數(shù)器數(shù)值為0時,xl=1,xh=0,下橋臂導(dǎo)通;
(5)當(dāng)死區(qū)計數(shù)器數(shù)值在0~max之間時,xl=0,xh=0,上下橋臂均截止,形成死區(qū)。
2.6 系統(tǒng)仿真
最后可以根據(jù)需要,設(shè)置時鐘、分頻、死區(qū)時間等的值。對設(shè)計進行仿真,設(shè)定三角波頻率為正弦波頻率的5倍,得到的仿真結(jié)果如圖5所示。
觀察圖5的輸出信號xh,xl,可以看出其脈寬是按正弦規(guī)律變化的,因此設(shè)計滿足要求。
2.7濾波模塊
由于數(shù)據(jù)采集過程中不可避免地存在許多干擾,有效信息被它們所掩蓋,因此必須對資料進行提高信噪比的數(shù)字濾波處理。為了提高研發(fā)速度,濾波模塊直接采用Altera公司的IP核來生成。
設(shè)置參數(shù),設(shè)計一個帶通頻率為7.5~12.5 kHz的數(shù)字濾波器,采用Hanning窗設(shè)計結(jié)構(gòu),利用Matlab軟件的數(shù)字濾波設(shè)計分析工具,可以得到頻率衰減圖如圖6所示??梢钥闯銎鋷ㄐЧ黠@,符合系統(tǒng)要求。
3系統(tǒng)的應(yīng)用
把設(shè)計的SPWM系統(tǒng)應(yīng)用于某公司設(shè)計的電磁法儀上,其主要原理就是利用專用設(shè)備向介質(zhì)體發(fā)射一個電磁場,這種迅速衰減的磁場在其周圍的介質(zhì)中感應(yīng)出新的二次場。利用其原理,該儀器設(shè)計了一道發(fā)射道和三道接收道。圖7(a)是原儀器采用發(fā)射頻率為9.8 kHz的PWM波發(fā)射得到的結(jié)果,前四道是濾波前的波形圖,后四道是濾波后的波形圖??刂票鞠到y(tǒng)發(fā)射頻率為9.8 kHz進行調(diào)試,把發(fā)射道和接收道的數(shù)據(jù)經(jīng)過串口通訊上傳到上位機上顯示,波形如圖7(b)所示。發(fā)射道經(jīng)濾波后產(chǎn)生較理想的正弦波,產(chǎn)生的三道二次場,比較圖7(a)可以看出其諧波畸變有明顯的減弱。
4 結(jié) 語
本文是設(shè)計了基于FPGA的SPWM可變頻系統(tǒng),最后把系統(tǒng)成功應(yīng)用到電法儀的發(fā)射模塊中。經(jīng)驗證,該系統(tǒng)穩(wěn)定可靠,比原有的PWM控制有較大的改善。另外,系統(tǒng)可以根據(jù)需要在線修改發(fā)射頻率、死區(qū)時間等的值,系統(tǒng)更人性化。系統(tǒng)稍加修改,還可應(yīng)用到電機驅(qū)動或變頻電源中。