文獻(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作為TI公司推出的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è)置為TI 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ù)洌⒖梢蕴峁┠孀兤鹘Y(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].北京:北京航空航天大學(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)