巨生云,蔣 贏
(上海電機學院電氣學院,上海201306)
單相全橋DC-AC電壓型逆變電路在不間斷電源、分布式發(fā)電以及微型電網(wǎng)中起著重要作用,得到廣泛應用。同時,隨著數(shù)字控制技術的不斷發(fā)展成熟,特別是高性能數(shù)字信號處理器(Digital Signal Processing,DSP)的出現(xiàn),使數(shù)字控制系統(tǒng)逐漸取代傳統(tǒng)的模擬系統(tǒng)[1-3]。在傳統(tǒng)模擬電力逆變系統(tǒng)中,除開關控制電路和濾波電路較為復雜外,傳統(tǒng)的DSP程序開發(fā)過程也較為復雜且時間花費較長,其開發(fā)過程包括算法設計、建立數(shù)學模型、代碼編寫等。在代碼開發(fā)過程中必須保證所有環(huán)節(jié)準確無誤,只要其中任意一個環(huán)節(jié)存在問題,就需要做大量的工作去查找問題甚至重新設計,使開發(fā)的難度和時間成本很高。這就需要一種只注重控制算法本身而不是編程語言的新型設計方法解決這一問題。而基于模型設計(Model-Based Design,MBD)只關注算法本身,利用仿真軟件可以將仿真模型通過轉(zhuǎn)代碼的方式轉(zhuǎn)成DSP可讀的程序,可大大降低開發(fā)過程的難度和時間,此方法已在各個領域取得廣泛應用[4]。
已有學者對MBD的代碼生成技術進行研究,取得了一些研究成果[5-8]。文獻[5]以Matlab為開發(fā)平臺,以DSP永磁同步電機矢量控制為例,在Simulink下建立系統(tǒng)的仿真模型和代碼模型,并自動生成嵌入式C代碼,最后將代碼輸入DSP控制系統(tǒng)中進行軟件測試。文獻[6]利用Matlab、Simulink、Real-Time Workshop、DSP Blocksets工具箱和TI公司的開發(fā)工具CCS IDE,在Simulink環(huán)境下,用圖形化的方式設計DSP程序,實現(xiàn)代碼的自動生成。文獻[7]利用Matlab建模和仿真功能,將嵌入式系統(tǒng)開發(fā)Matlab/Stateflow/RTW和代碼測試相結合,實現(xiàn)了基于行為模型建模的自動代碼生成和測試機制,通過項目開發(fā)驗證了此機制的實用性。文獻[8]提出了一種基于符號執(zhí)行的Return-to-dl-resolve自動化實現(xiàn)方法,該方法為ELF可執(zhí)行文件提供符號執(zhí)行環(huán)境,對程序崩潰點的符號狀態(tài)進行約束,通過約束求解器對約束進行求解,實現(xiàn)了Return-to-dl-resolve利用代碼自動生成系統(tǒng)R2dlAEG。
本文以單相全橋DC-AC電壓逆變電路為研究對象,提出了一種MBD的控制算法。以正弦脈寬調(diào)制(Sinusoidal Pulse Width Modulation,SPWM)為例在Matlab/Simulink中模擬仿真,生成單極性半波SPWM控制波形,并且在嵌入式編碼器(Embedded Coder)中自動生成嵌入式代碼,通過DSP集成開發(fā)環(huán)境將自動生成的嵌入式代碼運行到以TMS320F2 8335為核心的控制電路,最后將SPWM控制信號接入DC-AC逆變電路進行實驗驗證。
單相全橋逆變電路廣泛應用于電氣各個領域,也是電力變換最基本的逆變模型[9-10],如圖1所示。圖中,Uo為輸入直流電壓;R1、R2、R3為電阻;Uc為全橋逆變后的交流電壓;Ic為流過電感的電流;K1、K2、K3和K4為4個同型號的MOS管。DCAC逆變電路輸出端接入LC濾波電路,L和C分別為電感和電容,Ud為濾波后輸出的正弦電壓。電壓型全橋逆變電路可以看成由兩個半橋電路組合而成,共4個橋臂,分別為K1、K2、K3和K4。橋臂K1和K4為一對,橋臂K2和K3為一對,成對橋臂同時導通,兩對橋臂交替導通180o,同橋臂的兩個MOS管(K1、K2或K3、K4)不能同時導通。
圖1 DC-AC逆變主電路
圖2所示為單相全橋逆變工作過程。其中,UG1、UG2、UG3、UG4分別為MOS管K1、K2、K3和K4的控制信號。0~t1時刻K1和K4導通,輸出電壓Uc=Uo,電流從負值迅速降低為0,然后電流轉(zhuǎn)為正電流并迅速上升。在t1~t2時刻K2和K3導通,K1和K4關斷,輸出電壓Uc=-Ud,因存在LC,電流不能突變,電流會先從正值逐漸降低為零,然后反向增加。同理可得t2~t3,t3~t4的工作過程。
圖2 單相全橋逆變工作過程
由固定周期及占空比的PWM控制單相全橋逆變電路,輸出電壓會存在多次諧波,同時還需復雜的濾波處理。通過SPWM控制信號控制單相全橋逆變電路可以得到類似正弦波的方波信號。根據(jù)等面積法則,其效果類似于正弦波,通過簡單的LC濾波后即可得到標準的正弦波電壓。其工作過程如圖3所示。
圖3 SPWM逆變電路工作過程
圖3中,t1~t2時刻為兩個控制信號之間的死區(qū)時間,根據(jù)DSP的時鐘計數(shù)特性,選用自然采樣法生成SPWM控制信號。SPWM調(diào)制時,調(diào)制波和載波進行比較,當調(diào)制波大于載波時輸出電壓信號,調(diào)制波小于載波時關閉通路。同時,在單相全橋DC-AC逆變電路中,如果同一橋臂的兩個MOS管同時導通,即使導通時間很短暫,也會產(chǎn)生極大的短路電流,這樣就會燒毀整個控制電路。通過同一橋臂兩個MOS管的控制信號之間產(chǎn)生死區(qū)時間間隔,這樣就能消除同橋臂短路的隱患。采用如圖4所示的方法產(chǎn)生同頻反相的死區(qū)SPWM控制信號。圖中,Ut為單極性三角載波;Us1、Us2為調(diào)制波;td為死區(qū)時間。得到180°的Us1和小于180°的Us2調(diào)制波,通過自然采樣法可生成同頻反相的死區(qū)SPWM控制信號。
圖4 SPWM控制信號的產(chǎn)生
MBD以Matlab為開發(fā)平臺,可實現(xiàn)Simulink模型到嵌入式C代碼的自動轉(zhuǎn)化,通過CCS將代碼運行于DSP進行底層開發(fā)與驅(qū)動,顯著提高開發(fā)效率,降低開發(fā)難度。整個開發(fā)過程中,開發(fā)者需在電腦中安裝Matlab、CCS、Control SUITE等軟件,并且進行關聯(lián)配置。目前,MathWorks公司與德州儀器(TI)聯(lián)合推出了Embedded Target for TI C2000DSP,使 用 了 將Matlab/Simulink與Texas Instruments eXpress DSO工具、TIC2000DSP處理器集成在一起,并進行系統(tǒng)開發(fā)的方法,通過實時工作站(RTW)和TI的開發(fā)工具將Simulink模型轉(zhuǎn)變?yōu)閷崟r嵌入式C代碼[11]。在Matlab/Simulink庫中添加C2000處理器的支持包Embedded Coder Support Package for Texas Instruments C2000 Processors。該支持包中含有DSP TMS320F2833x的各個模塊,如ePWM、eCAP、eQEP、DMA等模塊。
MBD以實時軟件為開發(fā)平臺,快速地實現(xiàn)算法建模、DSP底層驅(qū)動集成、自動代碼生成、集成測試等,使開發(fā)者能夠更快捷、低成本地進行開發(fā)[12]。根據(jù)目標模型的設計要求和目標,確定整體的設計流程。首先確定單相全橋逆變主電路,仿真模擬控制信號SPWM,根據(jù)設計需求和定義,確定優(yōu)化控制算法。然后建立控制算法的Simulink模型,直至仿真結果滿意再建立DSP處理器的Simulink模型,將Matlab和CCS關聯(lián)配置,配置CCS集成開發(fā)環(huán)境,利用Embedded Coder(自動代碼生成工具)將修正后的模型快速地自動生成DSP可讀嵌入式C代碼。最后通過Texas Instruments XDS100v2 USB2.0仿真器運行到TMS320F28335 DSP芯片中,進行目標板實時自動測試和驗證。MBD開發(fā)流程[5]如圖5所示。
圖5 MBD開發(fā)流程
TMS320F28335 DSP中的每個ePWM模塊都是一個獨立的小模塊,且每個PWM模塊均可單獨使用,故F28335最多可以有18路PWM輸出。每一組ePWM模塊都包含:時基模塊TB、技術比較模塊CC、動作模塊AQ、死區(qū)產(chǎn)生模塊DB、PWM斬波模塊PC、錯誤聯(lián)防模塊TZ和事件觸發(fā)模塊ET等7個模塊[13]。由于DSP結構的特殊性,時基模塊選用向上-下計數(shù)模式(up-down),利用up-down的計數(shù)模式來代替調(diào)制正弦波的載波。在F28335比較計數(shù)模塊CC中,通過外部控制算法可以生成動態(tài)的比較寄存器的值CMPA(WA)和CMPB(WB)模擬20 kHz的正弦波,在ePWM模塊C283x/C2833x中進行相應設置,即可完成SPWM目標模型的建立,如圖6所示。
圖6 SPWM的目標模型
圖6中,正弦調(diào)制波生成頻率為20 kHz的正弦波,在調(diào)制波生成模塊中利用輸入的正弦波生成兩個反向且具有死區(qū)的正弦半波,最后在SPWM生成模塊中通過自然采樣法生成所需的單極性半波SPWM控制信號。
微處理器TMS320F28335的系統(tǒng)時鐘頻率為150 MHz,PWM控制周期為1/15 000 s[14-15],并且具有外設豐富、存儲空間大、處理速度快等優(yōu)點。
通過一系列的算法控制,WA和WB分別輸入同頻、相位相差180°,且存在死區(qū)的正弦數(shù)字信號。其中設置Timer period(TMS320F28335 DSP定時器周期寄存器的時鐘周期)可模擬單極三角載波,使用下式確定該值:
式中:fsys=150 MHz為TMS320F28335 DSP的CPU時鐘頻率;fpwm=400 kHz為三角載波的頻率。利用DSP的特性將這兩個信號作為ePWM1A和ePWM1B的比較信號。當F28335工作時,每一個計時周期里時基計數(shù)器的值(CTR)都會與比較寄存器的值(CMP)有兩次相交的點,在該時刻通過設置CAU(向上計數(shù)時,計數(shù)器等于計數(shù)比較器A)、CAD(向下計數(shù)時,計數(shù)器等于計數(shù)比較器A)、CBU(向上計數(shù)時,計數(shù)器等于計數(shù)比較器B)和CBD(向下計數(shù)時,計數(shù)器等于計數(shù)比較器B)的動作方式,控制高低電平的輸出,形成所需的單極性半波SPWM控制信號。
自動代碼生成并運行到TMS320F28335之前需對Simulink進行相應設置。實驗使用Matlab 2019b及Code Composer Studio 6.2.0軟件。在Simulink中搭建基于DSP的SPWM仿真模型后,點擊Model Settings,將Solver selection中的Type類型選為Fixed-step,并在Code Generation中將Target selection的System target file類型改為ert.tlc;同時在Linker command file的c28335.cmd文件中修改并寫入自己配置的仿真器類型。相關配置設置后,選用Embedded Coder APPS,使用其Generate code and build功能進行自動代碼的生成,如圖7所示。
圖7 SPWM控制波形自動代碼生成
自動代碼生成之后,在電腦和TMS320F28-335 DSP控制芯片之間使用Texas Instruments XDS100v2 USB仿真器關聯(lián)配置。同時打開CCS軟件,選擇Import CCSProject導入自動生成CCS工程,進行編譯。通過Target Configurations測試目標芯片是否連接成功,成功后進入CCS Debug模式將.out文件運行于F28335芯片中即可。
主電路采用單向DC-AC逆變電路。輸入直流電源U1=12 V,電阻R1=0.01Ω,R2=4Ω,RL濾波器中的電感L=14.1μH,電容C=5.07μF。單極性半波SPWM控制信號采用自然采樣法的方式生成,調(diào)制波采用頻率為20 kHz的正弦波,載波采用頻率為400 kHz的單極性三角波,調(diào)制比為0.9,通過比較環(huán)節(jié)即可生成單極性半波SPWM控制信號。
在DC-AC逆變仿真中,UG1控制K1、K4同時導通,UG4控制K2、K3同時導通,最后經(jīng)過RL濾波器輸出標準的正弦波電壓。單極性半波SPWM控制信號模擬仿真如圖8所示,DC-AC逆變輸出信號如圖9所示。
圖8 單極性半波SPWM控制仿真信號
圖9 DC-AC仿真波形
由圖9可見,電壓整體貼近正弦波,通過SPWM控制DC-AC全橋逆變電路在理論上是可行的。
自動代碼生成并調(diào)試后,運行于TMS320F28 335 DSP控制板,通過連接示波器可得到SPWM控制波形如圖10所示。
圖10 SPWM控制波形
由圖10可見,DSP生成的SPWM波形峰峰值為3.7 V,同時兩個控制波形之間存在明顯的死區(qū),說明基于DSP的單極性半波SPWM代碼自動生成技術是可以實現(xiàn)并且應用的。與傳統(tǒng)的DSP直接編程相比,MBD自動代碼生成技術無需人工編寫DSP嵌入式代碼,這不僅可以有效降低開發(fā)難度和開發(fā)周期,同時還能提高代碼開發(fā)的效率和準確率。
通過MBD和電力電子學科的緊密結合,研究了以MBD方式開發(fā)SPWM控制信號,并應用于DC-AC逆變電路。實驗結果表明,通過MBD自動生成SPWM嵌入式代碼,控制DC-AC逆變電路是可行的,同時也驗證了代碼的有效性。開發(fā)過程中使用Simulink提供的開發(fā)支持包、函數(shù)庫及DSP底層驅(qū)動,快速完成了系統(tǒng)建模工作,有效解決了開發(fā)者代碼編寫難度大的問題,整體縮短了DSP系統(tǒng)開發(fā)的時間和難度。可見,DSP代碼的MBD開發(fā)技術具有開發(fā)效率高、難度低和代碼可靠性高等優(yōu)點,應用價值高且前景廣泛。