<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁(yè) > 安全與國(guó)防 > 設(shè)計(jì)應(yīng)用 > 基于STM32的MPPT光伏匯流箱設(shè)計(jì)

          基于STM32的MPPT光伏匯流箱設(shè)計(jì)

          作者:袁紹民 孟繁偉 趙海斌 張立強(qiáng) 劉浩 時(shí)間:2016-03-09 來(lái)源:電子產(chǎn)品世界 收藏
          編者按:提出了一種以STM32F103為控制芯片的MPPT匯流箱的設(shè)計(jì)方法,一片STM32F103控制四路BOOST電路,四路控制脈沖相位互錯(cuò)90度,以減小輸出紋波;RS485主從式的通訊架構(gòu);采用基于功率預(yù)測(cè)的MPPT算法,電壓外環(huán)電流內(nèi)環(huán)的控制方法;基于最小時(shí)間片的軟件設(shè)計(jì)。

          摘要:提出了一種以F103為控制芯片的的設(shè)計(jì)方法,一片F103控制四路電路,四路控制脈沖相位互錯(cuò)90度,以減小輸出紋波;RS485主從式的通訊架構(gòu);采用基于功率預(yù)測(cè)的算法,電壓外環(huán)電流內(nèi)環(huán)的控制方法;基于最小時(shí)間片的軟件設(shè)計(jì)。

          本文引用地址:http://www.ex-cimer.com/article/201603/287499.htm

          引言

            近年來(lái),由于光伏技術(shù)的發(fā)展,對(duì)光伏發(fā)電系統(tǒng)的發(fā)電密度提出了越來(lái)越高的要求,電站業(yè)主希望單位光伏組件下,能夠取得更高的發(fā)電收益。在山地等地形復(fù)雜,朝向各異的光伏電站里,組串式逆變器和由于在組串級(jí)集成了光伏最大功率點(diǎn)追蹤功能,越來(lái)越受到業(yè)主的青睞。然而,組串逆變器存在交流線損大和并網(wǎng)諧波大電能質(zhì)量較差、造價(jià)大等缺點(diǎn);MPPT配合集中式逆變器,不但發(fā)揮了集中式逆變器電能質(zhì)量高諧波小,交流線損小等優(yōu)點(diǎn),同時(shí)還具有組串式逆變器組串級(jí)MPPT追蹤的優(yōu)點(diǎn),越來(lái)越受到人們的追捧。但是,由于MPPT匯流箱較普通的匯流箱增加了成本,在方案設(shè)計(jì)和器件選型上必須充分考慮成本因素。一般的MPPT控制算法往往采用DSP等MCU來(lái)實(shí)現(xiàn),但DSP器件成本相對(duì)一般的MCU成本較高。

            是意法半導(dǎo)體生產(chǎn)的ARM CORTEX內(nèi)核的MCU,STM32F1系列屬于中低端的32位ARM Cortex-M3內(nèi)核微控制器,最高72MHz工作頻率,在存儲(chǔ)器的0等待周期訪問(wèn)時(shí)可達(dá)1.25DMips/MHZ(DhrystONe2.1),單周期乘法和硬件除法。由于具有性價(jià)比突出的優(yōu)點(diǎn),再越來(lái)越多的領(lǐng)域得到了廣泛應(yīng)用。

            本文研究了一種基于STM32F103的MPPT匯流箱的實(shí)現(xiàn)方法,包括MPPT算法和控制的實(shí)現(xiàn),TI IQmath庫(kù)在STM32上的移植,MPPT匯流箱電路結(jié)構(gòu)和實(shí)現(xiàn)方法;列舉了實(shí)驗(yàn)數(shù)據(jù)和實(shí)驗(yàn)效果。

          1 MPPT匯流箱的電路結(jié)構(gòu)

            如圖1所示,MPPT匯流箱集成了多路MPPT追蹤器,N匯一的MPPT匯流箱可以集成N路MPPT追蹤器。如圖2所示每?jī)陕稭PPT追蹤器共用一個(gè)STM32控制,構(gòu)成了一個(gè)MPPT追蹤器單元;每相鄰的兩路電路并聯(lián)二極管輸出,當(dāng)輸入電壓大于輸出電壓,MPPT停止工作,采用二極管直通發(fā)電的形式,從而最大限度降低,升壓電路損耗;多路MPPT追蹤器采用并聯(lián)結(jié)構(gòu),為了得到更小的紋波,MPPT追蹤器單元內(nèi)部四路BOOST采用互錯(cuò)90度相位輸出,其中G1和G2內(nèi)部?jī)陕稡OOST錯(cuò)180度相位。如圖2 BOOST1和BOOST2錯(cuò)180度相位,BOOST3和BOOST4錯(cuò)180度相位,BOOST1、BOOST3、BOOST2、BOOST4互相錯(cuò)90度相位。這樣的優(yōu)點(diǎn)是,可以采用更小的輸出電容,系統(tǒng)也更容易穩(wěn)定。

            可以看出,BOOST的電感電流波形為鋸齒波,兩路鋸齒波之間在相位上互相差180度。

          2 MPPT追蹤器之間的通訊

          2.1 通訊架構(gòu)

            N路 MPPT追蹤器并聯(lián)組成MPPT匯流箱,MPPT匯流箱首先要收集各個(gè)追蹤器的信息,匯總之后要和遠(yuǎn)端進(jìn)行數(shù)據(jù)交換。匯流箱之間采用RS485總線的通訊架構(gòu),N路MPPT追蹤器之間也采用RS485總線方式通訊,通過(guò)撥碼開(kāi)關(guān)選擇485地址,其中1號(hào)追蹤器為主站,其他N-1路為從站。RS485為差分方式的線路結(jié)構(gòu),能夠最大限度的抗系統(tǒng)的共模干擾。

            主站負(fù)責(zé)收集從站信息,同時(shí)主站對(duì)外也采用RS485方式傳輸匯流箱信息。

          2.2 通訊協(xié)議

            協(xié)議采用MODBUS RTU協(xié)議,Modbus是由Modicon(現(xiàn)為施耐德電氣公司的一個(gè)品牌)在1979年發(fā)明的,是全球第一個(gè)真正用于工業(yè)現(xiàn)場(chǎng)的總線協(xié)議。特點(diǎn)是穩(wěn)定可靠,通用性強(qiáng)。

            主站格式

            從站格式

            寄存器內(nèi)容(例)

            .......

          3 MPPT控制算法

            MPPT控制算法采用3點(diǎn)式功率預(yù)測(cè)的方法,如圖4所示PK2為當(dāng)前周期的功率值,PK1和PK0分別是上周期和上上周期陣列功率。UK和UK0分別是當(dāng)前周期和前上上周期陣列電壓。

            本模塊等效的采樣周期等于本模塊所設(shè)采樣周期TA的2倍,這是因采用基于功率預(yù)測(cè)的最大值追蹤方法所需要的。該方法按上述P1采集3點(diǎn)功率值,該3點(diǎn)功率值相當(dāng)于在2TA周期兩端增加中間1點(diǎn)采樣;令電壓給定增量在每個(gè)2TA周期的第1個(gè)TA周期為0;分別計(jì)算功率增量和電壓增量,令ΔP’K2=(PK2-PK1)-(PK1-PK0),ΔU=UK-UK0;根據(jù)ΔP’K2和ΔU極性、以及ΔP’K2或ΔU是否為0進(jìn)行邏輯判斷,決定電壓給定增量極性。

            基本判斷邏輯:當(dāng)ΔP’K2/ΔU<0時(shí),減小電壓給定;當(dāng)ΔP’K2/ΔU>0時(shí),增加電壓給定。步長(zhǎng)與dP/dU絕對(duì)值成正比,實(shí)現(xiàn)變步長(zhǎng)追蹤,便于收斂。

            采用該方法,可避免MPPT誤判。例如,當(dāng)光伏陣列光照不變時(shí),陣列電壓-功率特性曲線不變,因電壓給定增量在每個(gè)2TA周期的第1個(gè)TA周期為0,則PK1=PK0,預(yù)測(cè)功率P’K2=0,采用基本判斷邏輯不會(huì)誤判。

          4 PV MPPT控制實(shí)現(xiàn)

            MPPT控制的算法實(shí)現(xiàn)基于BOOST硬件電路,控制算法上采用電流內(nèi)環(huán),電壓外環(huán)的控制結(jié)構(gòu),MPPT算法模塊算出電壓環(huán)的電壓給定,電壓調(diào)節(jié)器計(jì)算出電流調(diào)節(jié)器的電流給定。其中電流調(diào)節(jié)器采用最小控制周期(64uS),電壓調(diào)節(jié)器采用8倍最小控制周期(512uS),

            MPPT算法模塊采用2000倍的最小控制周期(128mS)。

          5 基于STM32的實(shí)現(xiàn)

            (1) 應(yīng)用IQmath庫(kù)

            由于STM32F103系列MCU 為定點(diǎn)MCU,計(jì)算浮點(diǎn)算法要消耗大量的時(shí)間,因此直接計(jì)算浮點(diǎn)乘法是不可取的。本文將TI IQmath算法庫(kù)移植到了STM32F103上。

            德州儀器(TI)IQmath 是一個(gè)高度優(yōu)化和高精度的數(shù)學(xué)函數(shù)庫(kù)集,通常用于計(jì)算密集的實(shí)時(shí)應(yīng)用,可以獲得最佳的執(zhí)行速度和高精確度。此IQmath庫(kù)是TI為其C2000系列定點(diǎn)DSP發(fā)布的實(shí)時(shí)算法庫(kù),在STM32上應(yīng)用還比較少。

            (2) 如何得到得到最小的CPU帶寬

            由于一個(gè)STM32F103負(fù)責(zé)控制兩路mppt,那就需要兩個(gè)MPPT算法塊,兩個(gè)電壓調(diào)節(jié)器和兩個(gè)電流調(diào)節(jié)器。而最小控制周期是最占用CPU帶寬的,最小控制周期會(huì)執(zhí)行電壓電流AD采樣值計(jì)算,標(biāo)幺化處理,以及兩個(gè)電流調(diào)節(jié)器算法,以及PWM脈沖的生成。

            為了在最小的控制周期里執(zhí)行完成這些內(nèi)容,可以進(jìn)行如下處理。

            1)AD采樣采用DMA方式,STM32F103兩個(gè)ADC同時(shí)采樣

            2)IAR編譯器設(shè)置優(yōu)化為:最大速度優(yōu)化

            (3) 如何構(gòu)建時(shí)間片方式的架構(gòu)

            在實(shí)時(shí)控制系統(tǒng)中,要求CPU嚴(yán)格以時(shí)間片方式執(zhí)行控制算法。本文采用了ucos ii操作系統(tǒng)方式。STM32的PWM是由定時(shí)器生成,因此,本文采用了以PWM定時(shí)器作為ucos ii的時(shí)鐘節(jié)拍,分配不同的控制周期為不同的任務(wù),最小控制周期有最高的優(yōu)先級(jí)。

          6 MPPT追蹤器效率

            經(jīng)實(shí)驗(yàn)測(cè)得MPPT追蹤器效率為99.306%

          7 MPPT追蹤精度

            采用Topcontrol光伏模擬源模擬PV組件,MPPT追蹤曲線如圖7所示,可見(jiàn)MPPT追蹤精度實(shí)測(cè)達(dá)到了99.9%

          8 結(jié)論

            經(jīng)實(shí)測(cè)本MPPT匯流箱,達(dá)到了預(yù)想的效果,實(shí)現(xiàn)了較高的效率和較高的追蹤精度。應(yīng)用在光伏組串側(cè),能夠?qū)崿F(xiàn)組串級(jí)的MPPT追蹤,與集中式逆變器相配合,能夠?qū)崿F(xiàn)更加多路的MPPT追蹤效果,具有很廣闊的應(yīng)用前景。

          參考文獻(xiàn):

            [1] 劉文晉,基于雙重Boost電路的大功率光伏MPPT控制器 現(xiàn)代建筑電氣

            [2] 趙爭(zhēng)鳴,太陽(yáng)光伏發(fā)電最大功率點(diǎn)跟蹤技術(shù)


          本文來(lái)源于中國(guó)科技期刊《電子產(chǎn)品世界》2016年第2期第45頁(yè),歡迎您寫論文時(shí)引用,并注明出處。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();