FPGA平臺實現(xiàn)最小開關(guān)損耗的SVPWM算法
摘要:詳細分析了SVPWM的原理,介紹一種根據(jù)負載的功率因子來決定電壓空間零矢量的分配與作用時間的SVPWM算法,使得橋臂開關(guān)在通過其電流最大時的一段連續(xù)時間內(nèi)沒有開關(guān)動作。這樣在提高開關(guān)頻率的同時減小了開關(guān)電流,以此得到具有最小開關(guān)損耗的SVPWM算法。Si-mulink仿真結(jié)果驗證了理論的正確性,ModelSim的仿真結(jié)果表明該算法在FPGA平臺上實現(xiàn)的可行性。
關(guān)鍵詞:逆變器;SVPWM;不連續(xù)調(diào)制;零矢量;最小開關(guān)損耗;FPGA
引言
脈沖調(diào)制技術(shù)(PWM)已被廣泛應(yīng)用于逆變器的設(shè)計當中,電壓空間矢量調(diào)制技術(shù)(SVPWM)與SPWM相比,直流電壓利用率提高了(15.4%),且利于數(shù)字化實現(xiàn)。本文介紹了一種基于不連續(xù)調(diào)制的SVPWM算法,可根據(jù)負載功率因子在不同扇區(qū)內(nèi)靈活放置零電壓矢量,與傳統(tǒng)的連續(xù)調(diào)制SVPWM相比,在增加開關(guān)頻率的同時減小了開關(guān)電流。仿真結(jié)果也表明這種方法有著最小的開關(guān)損耗。
現(xiàn)場可編程邏輯陣列FPGA是高集成度和高復(fù)雜度的可編程ASIC,具有設(shè)計靈活、開發(fā)周期短、可靠性高、純硬件并行處理、不占用CPU資源等特點。本文以FPGA硬件平臺來實現(xiàn)算法,采用硬件連線實現(xiàn)軟件算法,實現(xiàn)真正的并行運算,這樣可降低系統(tǒng)對MCU/DSP的速度要求。此外,基于IP核的模塊化設(shè)計使得系統(tǒng)設(shè)計靈活,便于升級維護,滿足更高性能的要求。
1 SVPWM原理
圖1為典型的電壓型三相兩電平逆變器的設(shè)計,開關(guān)一共有8種不同的狀態(tài),因此逆變器的輸出電壓可以由這8種不同開關(guān)狀態(tài)來合成。
定義單個開關(guān)狀態(tài),三相坐標系經(jīng)Clarke變換為復(fù)平面α—β坐標系
模長為0稱為零電壓矢量,6種開關(guān)狀態(tài)如圖2所示,電壓矢量空間被6個有效電壓矢量分為6個扇區(qū)。
[!--empirenews.page--]
根據(jù)伏秒原則,落入任何一個扇區(qū)的電壓矢量都可由兩個相鄰的有效電壓矢量合成得到:
[!--empirenews.page--]
2 零空間矢量放置調(diào)制策略
逆變器換向序列是指在一個采樣周期內(nèi)有效電壓矢量和零空間矢量的切換方式。在同一扇區(qū),零矢量既有又有,稱為連續(xù)調(diào)制,只有其中一種零矢量稱為不連續(xù)調(diào)制。有效脈沖居中放置,且沿半開關(guān)周期對稱放置,可以獲得比同等條件下其他放置方式更好的諧波性能。
2.1 傳統(tǒng)SVPWM開關(guān)序列
傳統(tǒng)SVPWM開關(guān)序列采用連續(xù)調(diào)制方式,在開關(guān)周期內(nèi)兩個零矢量和的作用時間相等,圖3為在扇區(qū)I中傳統(tǒng)SVPWM開關(guān)序列排列方式。
2.2 最小開關(guān)損耗
在考慮逆變器性能時,還需考慮開關(guān)損耗Ploss:
式中,g(uT,iT)是uT、iT的單調(diào)增函數(shù),uT、iT和fT分別是開關(guān)器件的開關(guān)電壓、電流和實際的開關(guān)頻率,對于電壓源型逆變器uT是固定的,因此,若想減小開關(guān)損耗Ploss,可以從減小開關(guān)頻率fT和開關(guān)電流iT兩方面來考慮。
①減小開關(guān)頻率fT。從圖2中可以看出,在不同的扇區(qū)中選擇合適的零電壓矢量,可以使得某個橋臂在一段連續(xù)的區(qū)間內(nèi)表現(xiàn)出常開或常閉特性即無開關(guān)動作。在空間矢量的一段區(qū)間內(nèi)只選擇一個零矢量,這樣根據(jù)觀察可以得到,這種不連續(xù)調(diào)制的開關(guān)動作與傳統(tǒng)的SVPWM相比,開關(guān)頻率降低了1/3。因此在同樣的開關(guān)損耗下,不連續(xù)的開關(guān)頻率可增加至傳統(tǒng)SVPWM的3/2倍。
②減小開關(guān)電流iT。為了降低開關(guān)電流得到最小的開關(guān)損耗,需要使得在負載電流值最大時,對應(yīng)的相橋臂沒有開關(guān)動作。為了使得三相負載電流相對較大值區(qū)域都處于橋臂無開關(guān)動作狀態(tài),可以得到負載電流這一較大值區(qū)域是以正負峰值為中心的60°區(qū)域,即在這60°區(qū)域內(nèi),對應(yīng)的橋臂應(yīng)處于無開關(guān)動作狀態(tài)。
負載電流的相位是由對稱負載的功率因數(shù)角決定,如圖4所示。若逆變器三相對稱負載的功率因數(shù)角為δ(-π/2≤δ≤π/2),定義在扇區(qū)I和Ⅵ中零矢量放置區(qū)域的角平分線與矢量的夾角為α,逆變器三相對稱負載的功率因數(shù)角為δ。如果α=δ,則可以使得以電流正負峰值為中心的60°區(qū)間正好落在橋臂沒有開關(guān)動作扇區(qū)中。α和δ的關(guān)系為:
[!--empirenews.page--]
當-π/3≤α≤π/3,零矢量在空間矢量中的放置方式如下:
若α=30°,扇區(qū)I零矢量為;若α=-30°,扇區(qū)I零矢量為。當負載的功率因數(shù)角為0°時,α=0°,電壓空間矢量被分為12個扇區(qū),以為中心的30°區(qū)域的零矢量為,以為中心的30°區(qū)域的零矢量為,這樣三相橋臂就分別有著連續(xù)的60°的常開和常閉區(qū)域,三相橋臂的切換時間如表2所列,其中:Ta=Tx/2,Tb=Ty/2,Tc=(Tx+Ty)/2,Td=(T-(Tx+Ty))/2,Te=Td+Ta=(T-Ty)/2,Tf=Td+ Tb=(T-Tx)/2。
這樣就可以使得負載功率因數(shù)角為0°的三相電流波形的峰值落在橋臂沒有開關(guān)動作的60°區(qū)域內(nèi),從而達到減小開關(guān)電流的目的。
3 Simulink仿真結(jié)果
根據(jù)前文所述理論,搭建Simulink仿真模型,三相逆變器的負載電阻R=5 Ω,負載電感L=0.5 mH,當逆變器的負載對稱平衡時,功率因子約為0.999,此時α近似為0°,直流電壓為690 V,調(diào)制比M=0.9,矢量空間被劃分為12個扇區(qū)。Simulink仿真模型算法模塊包括坐標變換模塊、扇區(qū)判斷模塊、扇區(qū)時間選擇模塊、橋臂時間切換模塊。
仿真結(jié)束后逆變器輸出3相的電流波形見本刊網(wǎng)站www.mesnet.com.cn——編者注。三相之間電流相差120°,矢量空間被分為12個扇區(qū),在以a相電流峰值為中心的60°區(qū)域中,調(diào)制波為1或0,即a相橋臂是沒有開關(guān)動作的(常開或常閉)。仿真結(jié)果驗證了前文的理論分析。
4 基于FPGA的實現(xiàn)及實驗仿真結(jié)果
選擇Altera CycloneⅡ系列EP2C8Q208為FPGA的硬件核心,實現(xiàn)環(huán)境是QuartusⅡ9.0,F(xiàn)PGA硬件描述語言采用Verilog HDL,仿真環(huán)境ModelSim PE 6.6b。如圖5所示,三相調(diào)制波形相位與Simulnk仿真一致,調(diào)制波毛刺部分為FPGA內(nèi)部邏輯延遲時間,小于FPGA所能識別的最小時間,對本系統(tǒng)的設(shè)計無影響。由圖中三相橋臂的上開關(guān)的控制信號可知,橋臂在一個開關(guān)周期內(nèi)有120°的區(qū)域是沒有開關(guān)動作的(60°常開,60°常閉),因此系統(tǒng)的時序設(shè)計是正確可靠的,也驗證了上述理論以及Simulink仿真的正確性。
結(jié)論
本文實現(xiàn)了基于FPGA硬件平臺的最小開關(guān)損耗SVPWM算法。此算法相比于傳統(tǒng)SVPWM算法,在提高開關(guān)頻率的同時減少了開關(guān)損耗,可以根據(jù)實際負載的功率因子來判斷零矢量的選擇以及零矢量在扇區(qū)中的位置,控制橋臂開關(guān)的切換。FPGA硬件平臺的實現(xiàn)為今后實現(xiàn)更復(fù)雜的控制算法奠定了基礎(chǔ),相比MCU/DSP,基于FPGA硬件實現(xiàn)的SVPWM有著更好的實時性能,其模塊化的設(shè)計也有著更好的靈活性,為進一步升級控制性能提供了便利。