文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.170020
中文引用格式: 安永軍,帕孜來(lái)·馬合木提. 基于DSP的逆變器系統(tǒng)代碼生成方法及實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2017,43(9):64-67.
英文引用格式: An Yongjun,Pazlai Mahemuti. Code generation method and implementation of inverter system based on DSP[J].Application of Electronic Technique,2017,43(9):64-67.
0 引言
逆變器作為風(fēng)力發(fā)電系統(tǒng)與電網(wǎng)的接口,承擔(dān)著核心電能變換和控制的作用,同時(shí)是系統(tǒng)中極易發(fā)生故障的薄弱環(huán)節(jié),系統(tǒng)能否向電網(wǎng)或負(fù)載提供優(yōu)質(zhì)的電能,逆變器起到至關(guān)重要的作用[1-3]。為了確保電網(wǎng)穩(wěn)定運(yùn)行,提高電能質(zhì)量,逆變器的故障診斷尤為重要,因此近些年逆變器的故障診斷研究成為了國(guó)內(nèi)外學(xué)者的研究熱點(diǎn)。TMS320F28335 DSP作為T(mén)I公司推出的32位浮點(diǎn)數(shù)字控制處理器,其主頻150 MHz,具有外設(shè)豐富、性價(jià)比高、存儲(chǔ)空間大、處理速度快等優(yōu)點(diǎn)[4-5],一直被用作逆變器智能控制及故障檢測(cè)與診斷系統(tǒng)的核心控制器。
逆變器系統(tǒng)是典型的相互依賴、錯(cuò)綜復(fù)雜的混雜系統(tǒng)[6],傳統(tǒng)的DSP系統(tǒng)的代碼編程費(fèi)時(shí)費(fèi)工、效率低。Mathworks公司和TI公司聯(lián)合推出TSP工具,使得在Simulink環(huán)境下即可進(jìn)行嵌入式系統(tǒng)建模、仿真、代碼生成及調(diào)試工作,大大提高了工程開(kāi)發(fā)效率。本文在逆變器系統(tǒng)上實(shí)現(xiàn)代碼自動(dòng)生成。
1 代碼生成技術(shù)
代碼自動(dòng)生成技術(shù)是指用特定的軟件(MATLAB)或者軟件中特定的工具箱,建立目標(biāo)代碼的系統(tǒng)仿真模型,并根據(jù)特定的目標(biāo)配置自動(dòng)生成嵌入式系統(tǒng)應(yīng)用程序[7-8]。
Embedded Coder是MathWorks公司提供給Simulink用戶針對(duì)嵌入式系統(tǒng)開(kāi)發(fā)的強(qiáng)有力的工具。TSP TI C2000(Embedded Coder Target Support Package for Texas Instruments C2000 Processors)工具箱由TI公司和MathWorks公司聯(lián)合開(kāi)發(fā),可與TI公司的CCS(Coder Composer Studio)集成開(kāi)發(fā)環(huán)境(IDE)無(wú)縫對(duì)接,是針對(duì)基于C2000系列DSP嵌入式系統(tǒng)開(kāi)發(fā)的工具箱[9-10]。該工具箱提供了DSP外圍資源一對(duì)一的接口模塊,可以將系統(tǒng)模型轉(zhuǎn)換為可優(yōu)化的、可移植的、自定義的產(chǎn)品級(jí)嵌入式C代碼[11-12]。將模型的信號(hào)源和信號(hào)接收部分模塊替換成I/O端口,由軟件提供的系統(tǒng).tlc文件負(fù)責(zé)統(tǒng)籌調(diào)用代碼生成的整個(gè)過(guò)程,根據(jù)目標(biāo)配置自動(dòng)生成系統(tǒng)應(yīng)用程序。
應(yīng)用代碼生成技術(shù)不需要逐句逐行的編寫(xiě)模型仿真所需要代碼,并較容易進(jìn)行相應(yīng)的調(diào)試。與傳統(tǒng)設(shè)計(jì)方法相比,明顯具有開(kāi)發(fā)周期短、費(fèi)用低、效率高等特點(diǎn)。
2 基于代碼生成技術(shù)的開(kāi)發(fā)流程
首先根據(jù)需求確定系統(tǒng)設(shè)計(jì)標(biāo)準(zhǔn),在Simulink平臺(tái)中根據(jù)設(shè)計(jì)思路建立系統(tǒng)仿真模型;其次,根據(jù)系統(tǒng)設(shè)計(jì)要求設(shè)置模型參數(shù)及仿真環(huán)境,并植入相應(yīng)的智能算法,完成配置工作后進(jìn)行模型仿真,在仿真過(guò)程中實(shí)時(shí)觀測(cè)仿真結(jié)果。如若仿真結(jié)果與預(yù)計(jì)結(jié)果有偏差,則及時(shí)完善仿真模型或參數(shù)設(shè)置并進(jìn)行反復(fù)修正,直至仿真結(jié)果與理論結(jié)果吻合。仿真完成后對(duì)Simulink模型進(jìn)行目標(biāo)環(huán)境配置,設(shè)置系統(tǒng)文件及硬件調(diào)試環(huán)境,編譯代碼生成模型,生成代碼執(zhí)行文件(.out),連接硬件調(diào)試板,下載執(zhí)行文件,運(yùn)行程序,觀察并測(cè)試系統(tǒng)參數(shù)。其開(kāi)發(fā)流程如圖1所示。
3 三電平逆變器
三電平逆變器是常見(jiàn)的電力電子電路拓?fù)浣Y(jié)構(gòu),由以兩電平變換器的一個(gè)橋臂為基本開(kāi)關(guān)單元經(jīng)過(guò)串并聯(lián)拓?fù)涠?sup>[13],基本開(kāi)關(guān)單元為圖2結(jié)構(gòu),此電路只輸出兩種電平,通過(guò)此基本開(kāi)關(guān)單元的串聯(lián)或并聯(lián)的形式加以組合,以達(dá)到輸出端輸出多于兩個(gè)電壓等級(jí)的電壓值??蓸?gòu)成如圖3所示的三電平逆變器的單相橋臂,3個(gè)同樣的橋臂并聯(lián)再與直流電源等必要器件相結(jié)合,即可得到三電平全橋逆變器結(jié)構(gòu)。
對(duì)橋臂上的IGBT按調(diào)制算法規(guī)律進(jìn)行有序的控制,使IGBT按照固有的規(guī)律工作,即可輸出三電平全橋交流電壓波。其調(diào)制算法如圖4所示,正半軸載波和調(diào)制波生成互補(bǔ)的兩列觸發(fā)脈沖,分別觸發(fā)VT1和VT3;負(fù)半軸載波和調(diào)制波生成互補(bǔ)的兩列觸發(fā)脈沖,分別觸發(fā)VT2和VT4。VT1和VT2的控制脈沖p1和p2如圖5所示。輸出線電壓Uab如圖6所示,與傳統(tǒng)兩電平逆變器相比,三電平逆變器功率管的耐壓、容量提高了一倍,降低了輸出線電壓的du/dt,波形得到明顯改善,對(duì)比與兩電平線電壓更趨近于正弦波。
4 三電平PWM代碼生成
三電平PWM為12路觸發(fā)脈沖,如若在CCS中逐句逐行編寫(xiě)程序,則是非常龐大的任務(wù)量,而且在編程過(guò)程中不可避免地會(huì)出現(xiàn)錯(cuò)誤,需要不停地修改和測(cè)試代碼,需花費(fèi)大量的人力。為節(jié)約人力和時(shí)間,減少出錯(cuò)率,提高開(kāi)發(fā)效率,利用自動(dòng)代碼生成技術(shù)來(lái)生成三電平PWM控制脈沖。建立三電平PWM自動(dòng)代碼生成模型如圖7所示。
TSP工具箱中只提供DSP的外圍接口,需要利用Simulink的其他工具搭建三電平PWM模型,再由TSP中的Digital Output模塊定義輸出端口[14-15]。其中PWM模塊來(lái)自Simulink>Power Systems>SpecializedTechnology>Control&Measurements>Pulse&Signal Generators,此模塊為三電平PWM輸出模塊,設(shè)置頻率、相位、采樣周期等參數(shù),使逆變輸出電壓為50 Hz。三電平PWM輸出有12路脈沖,而每個(gè)Digital Output模塊只提供8個(gè)GPIO接口,需要用Demux和Mux模塊組合,用兩個(gè)Digital Output模塊輸出脈沖。圖7中OUT1模塊GPIO0~GPIO7設(shè)置使用,OUT2模塊GPIO8~GPIO11設(shè)置使用,如圖8所示,共12路脈沖,控制IGBT工作。
模型建立成功后,設(shè)置目標(biāo)環(huán)境。打開(kāi)Simulation>Model Configuration Parameter環(huán)境配置,在Solver中設(shè)置仿真環(huán)境為離散環(huán)境,Hardware Implementation>Hardware board設(shè)置TI Delfino F2833x目標(biāo)板,在Code Generation>System target file設(shè)置ert.tlc系統(tǒng)文件,Toolchain選擇CCS開(kāi)發(fā)環(huán)境TI CCSV6 C2000,Interface>Code replacement library設(shè)置為T(mén)I C28x。代碼優(yōu)化Code Placement>File packaging format設(shè)置為Compact,可優(yōu)化生成代碼的邏輯結(jié)構(gòu),提高代碼的可讀性。
以上建模及目標(biāo)環(huán)境配置完成后,按Ctrl+B組合快捷鍵編譯模型,或者在模型工具欄中找到編譯工具點(diǎn)擊編輯模型,如若模型設(shè)計(jì)及環(huán)境配置無(wú)誤,即可生成.out執(zhí)行文件,此文件可由CCS下載到DSP中運(yùn)行。
從整個(gè)設(shè)計(jì)過(guò)程來(lái)看,DSP開(kāi)發(fā)人員只需在MATLAB中進(jìn)行Simulink模型設(shè)計(jì)、構(gòu)建、仿真及目標(biāo)環(huán)境配置,替代了編寫(xiě)、調(diào)試DSP代碼的復(fù)雜過(guò)程,減低了出錯(cuò)率,提高了工作效率。
5 系統(tǒng)測(cè)試
本文設(shè)計(jì)了以TI公司的TMS320F28335為主控芯片的逆變器系統(tǒng),系統(tǒng)由PC、電源、電源擴(kuò)展模塊、光電隔離模塊、核心控制模塊、逆變模塊等組成。該系統(tǒng)中逆變器結(jié)構(gòu)可從兩電平—三電平的結(jié)構(gòu)拓?fù)?,并可以提供逆變器結(jié)構(gòu)性故障全模式,可進(jìn)行逆變器智能控制及故障診斷技術(shù)的研究。
連接各模塊組建實(shí)驗(yàn)系統(tǒng),所有硬件電路接電等待開(kāi)啟。將自動(dòng)生成的三電平PWM可執(zhí)行.out文件下載到DSP芯片并運(yùn)行,開(kāi)啟所有電路電源開(kāi)關(guān),觀測(cè)脈沖信號(hào)和逆變器輸出線電壓波形。觀測(cè)到VT1和VT2的控制脈沖波形如圖9所示,與圖5仿真結(jié)果吻合。
示波器顯示波形如圖10所示。對(duì)比圖10與圖6,可看出示波器波形與仿真結(jié)果完全吻合。
6 結(jié)論
針對(duì)工作在高頻狀態(tài)下的典型混雜系統(tǒng)——逆變器系統(tǒng)的智能控制及故障診斷的DSP代碼開(kāi)發(fā)周期長(zhǎng)、效率低、實(shí)現(xiàn)比較繁瑣的問(wèn)題,提出基于代碼生成技術(shù)實(shí)現(xiàn)的方法。介紹了代碼生成技術(shù)及其開(kāi)發(fā)流程,并以三電平PWM代碼生成為例展開(kāi)說(shuō)明,最后在逆變器實(shí)物系統(tǒng)中實(shí)現(xiàn)三電平PWM代碼的調(diào)試。結(jié)果證明,該方法簡(jiǎn)單實(shí)用、開(kāi)發(fā)周期短、錯(cuò)誤率低、效率有明顯提高。為逆變器智能控制及故障檢測(cè)與診斷算法實(shí)踐驗(yàn)證提供了方便,具有很高的實(shí)用價(jià)值。
參考文獻(xiàn)
[1] 付玲,帕孜來(lái)·馬合木提,廖俊勃.三相SPWM逆變器的智能故障診斷研究[J].制造業(yè)自動(dòng)化,2015,37(3):72-74.
[2] 廖俊勃,帕孜來(lái)·馬合木提,支嬋,等.三電平逆變器IGBT的開(kāi)路故障診斷研究[J].電測(cè)與儀表,2015,52(20):35-40.
[3] 廖俊勃.風(fēng)力發(fā)電逆變器的故障診斷研究[D].烏魯木齊:新疆大學(xué),2015.
[4] 張卿杰,許友,左楠,等.手把手教你學(xué)DSP-TMS320-F28335[M].北京:北京航空航天大學(xué)出版社,2015.
[5] Texas Instrument,Inc.TMS320F28335/F28334/F28332/F28235/F28234/F28232 digital signal controllers(Rev.M)[Z].2012.
[6] 帕孜來(lái)·馬合木提,貝太周.三相并網(wǎng)逆變器的鍵合圖模型實(shí)現(xiàn)[J].可再生能源,2013,31(1):21-24.
[7] 孫忠瀟.Simulink仿真及代碼生成技術(shù)入門(mén)到精通[M].北京:北京航空航天大學(xué)出版社,2015.
[8] 劉杰.基于模型的設(shè)計(jì)及其嵌入式實(shí)現(xiàn)[M].北京:北京航空航天大學(xué)出版社,2010.
[9] 郭小強(qiáng),趙剛,黃昆.基于MATLAB/Simulink平臺(tái)下TI C2000 DSP代碼的自動(dòng)生成[J].科學(xué)技術(shù)與工程,2011,11(13):2941-2944.
[10] 朱斌,謝杰,孫皓澤,等.基于CCSLink的FIR數(shù)字濾波器的DSP實(shí)現(xiàn)[J].計(jì)算機(jī)工程與應(yīng)用,2013,49(S3):245-249.
[11] MathWorks,Inc..Embedded coder getting started guide[Z].2016.
[12] MathWorks,Inc..Embedded coder user′s guide[Z].2016.
[13] 李永東.現(xiàn)代電力電子學(xué)—原理及應(yīng)用[M].北京:電子工業(yè)出版社,2011.
[14] MathWorks,Inc..Getting started with TMS320C28x digital signal controllers(Rev.A)[Z].2007.
[15] MathWorks,Inc..Configuring source of multiple ePWM trip-zone events[Z].2007.
作者信息:
安永軍,帕孜來(lái)·馬合木提
(新疆大學(xué) 電氣工程學(xué)院,新疆 烏魯木齊830047)