逆變器雙閉環(huán)控制與PI參數(shù)整定調(diào)試實戰(zhàn))
這兩年分布式光伏裝機量漲得很快10kW這個量級差不多是普通屋頂電站的常見配置也是很多初學者拿來練手的第一套完整并網(wǎng)系統(tǒng)。并網(wǎng)逆變器控制的核心說到底就一件事把光伏板送進來的直流功率干干凈凈地變換成跟電網(wǎng)電壓同步的交流功率。這里面的看點不在硬件多貴而在控制環(huán)路怎么設(shè)計。傳統(tǒng)的電壓外環(huán)加電流內(nèi)環(huán)雙閉環(huán)結(jié)構(gòu)看起來老掉牙卻是理解并網(wǎng)控制的鑰匙。這篇文章就圍繞一臺10kW單相兩級式光伏并網(wǎng)系統(tǒng)展開把系統(tǒng)設(shè)計、雙閉環(huán)工作原理、PI參數(shù)整定方法以及從仿真到樣機調(diào)試過程中踩過的坑全部過一遍。不管你是剛?cè)腴T的電力電子工程師還是正在做畢業(yè)設(shè)計的研究生或者想把手頭“能轉(zhuǎn)”的逆變器改造成“能并網(wǎng)”的樣機這套思路都能直接套用。文章里的參數(shù)都是可以落地的不是紙上談兵但我也盡量把為什么這么設(shè)計講清楚免得大家只會抄參數(shù)不會改參數(shù)。1. 系統(tǒng)總體設(shè)計10kW的參數(shù)怎么定下來的1.1 拓撲選擇兩級式為什么是主流光伏并網(wǎng)逆變器的拓撲方案大致分兩類單級式和兩級式。單級式直接把光伏陣列接到逆變橋母線電壓就是光伏電壓結(jié)構(gòu)簡單、效率略高但要求光伏組串電壓足夠高并且MPPT范圍受并網(wǎng)電壓牽制光照和溫度變化時最大功率點電壓波動一大并網(wǎng)質(zhì)量就難保證。兩級式則在前級加一個Boost升壓電路后級再接逆變橋。10kW這個功率等級我推薦兩級式原因很直接前級Boost可以把光伏輸入電壓從200V到400V的寬范圍都抬升到穩(wěn)定的400V直流母線后級逆變橋只負責把穩(wěn)定的直流變成交流控制解耦。MPPT在Boost側(cè)做并網(wǎng)電流控制在后級做各管一攤調(diào)試的時候也方便單獨驗證。成本上多了一路開關(guān)管和電感但換來的是魯棒性和調(diào)試便利性值。1.2 關(guān)鍵電氣參數(shù)的數(shù)據(jù)推演先把幾個基本參數(shù)算清楚后面設(shè)計環(huán)路全要依賴這些數(shù)。假設(shè)系統(tǒng)額定功率10kW并網(wǎng)電壓220V交流功率因數(shù)1。并網(wǎng)電流有效值I 10000 / 220 ≈ 45.5A并網(wǎng)電流峰值I_peak ≈ 45.5 × 1.414 ≈ 64A這兩個數(shù)決定了開關(guān)管選型。IGBT的電流規(guī)格要留出過載和紋波余量按1.5到2倍裕量來選75A規(guī)格會略緊建議直接用100A/600V的管子。600V電壓等級是針對母線400V留出的經(jīng)驗值開關(guān)管關(guān)斷瞬間的尖峰通常會到450V上下再疊加雪崩余量600V是最穩(wěn)妥的入門選擇。然后是直流母線電壓。10kW單相系統(tǒng)把母線穩(wěn)壓在400V是個平衡點太低則并網(wǎng)電流需要更大太低則調(diào)制比受限。單相220V峰值是311V母線400V時調(diào)制比在0.78附近既有足夠的線性調(diào)制區(qū)間做電流控制又不會讓開關(guān)管電壓應(yīng)力過高。如果是三相380V系統(tǒng)10kW折算下來每相電流只有15A左右器件選型會輕松很多但雙閉環(huán)的控制框架不變只是坐標變換換成了三相Clark/Park。本文討論的單相系統(tǒng)在dq和PR控制上更有代表性所以以單相為主線。1.3 電感與母線電容的取值邏輯交流側(cè)電感L不是拍腦袋定的它同時影響高頻紋波電流和電流環(huán)控制帶寬。工程上首先看紋波約束單極性SPWM調(diào)制下電感上的高頻紋波電流近似滿足 ΔI ≈ Vdc / (8 × L × fsw)。設(shè)定開關(guān)頻率fsw為16kHz紋波電流取額定峰值電流的20%左右也就是12.8A以內(nèi)。反解出來L至少要244μH這個值只保證紋波不大但實際工程中電感的取值一般在2到3mH。為什么比理論下限大這么多因為電感還承擔著抑制低次諧波和提供電流環(huán)可控性的角色。電感越大電流環(huán)對電網(wǎng)電壓擾動的抑制能力越強但電感太大會讓電流跟蹤變慢、體積變重、壓降損耗也變大。在我這個10kW系統(tǒng)里選2.5mH是一個綜合權(quán)衡的結(jié)果紋波電流約6A上下電流環(huán)帶寬做到1kHz沒有問題電感壓降在工頻下約2.5mH × 314 × 45.5 ≈ 35.7V占額定電壓16%左右可以接受。母線電容的選擇有個更值得關(guān)注的約束。單相系統(tǒng)有一個固有毛病瞬時功率以兩倍工頻脈動也就是100Hz的功率波動。這個波動會直接體現(xiàn)在母線電壓上電容越小脈動越大。按允許母線電壓紋波ΔV在10V左右來算工程簡化公式是C ≥ P / (2 × ω × Vdc × ΔV)代入P10000Wω2π×50≈314Vdc400VΔV10V得到C≥3980μF。所以我這里的母線電容選了4000μF實際取了4個1000μF電解電容并聯(lián)。這個容量確實不小但這是單相系統(tǒng)保證母線電壓質(zhì)量和后級控制穩(wěn)定性必須付出的代價。如果母線紋波要求放寬到20V電容可以降到2000μF動態(tài)會變差電壓外環(huán)調(diào)起來難度也更大。2. 雙閉環(huán)到底在控制什么電壓環(huán)和電流環(huán)的分工2.1 雙環(huán)的物理邏輯為什么不能只用一個環(huán)很多人第一次看到電壓電流雙閉環(huán)會問直接控制并網(wǎng)電流不就行了為什么前面還要套一個電壓環(huán)答案是并網(wǎng)電流不是你想給多少就多少電流的幅值必須由功率平衡關(guān)系決定而母線電壓就是功率平衡的表象。可以這樣理解Boost從光伏板抽進來的功率和逆變器饋入電網(wǎng)的功率如果兩者不等差額就會灌進母線電容母線電壓隨之上升或下降。我們要保持母線電壓穩(wěn)定就需要知道“系統(tǒng)現(xiàn)在該向電網(wǎng)送多少功率”這個判斷只能從母線電壓誤差里讀出來。電壓環(huán)就是那個“功率平衡調(diào)度器”它把母線電壓偏差換算成一個電流幅值指令電流內(nèi)環(huán)則像一個“精確執(zhí)行器”負責讓實際并網(wǎng)電流嚴格跟蹤這個指令。外環(huán)慢、內(nèi)環(huán)快時間尺度錯開系統(tǒng)才能穩(wěn)定。只用電壓環(huán)直接控制PWM電流會失去直接約束電感電流一個浪涌就可能觸發(fā)過流保護只用電流環(huán)不給幅值指令來源系統(tǒng)也沒有自我調(diào)節(jié)能力。2.2 電壓外環(huán)在具體實現(xiàn)里做了什么電壓外環(huán)的輸入非常簡單母線電壓參考值Vdc_ref減去母線電壓反饋Vdc誤差進PI輸出為并網(wǎng)電流指令的幅值I_ref。注意這個幅值是一個帶符號的量正值表示向電網(wǎng)饋電負值表示從電網(wǎng)吸收方向由系統(tǒng)工作模式?jīng)Q定。在普通戶用光伏場景里默認只饋電但遇到防逆流需求時這個符號邏輯就是切換的關(guān)鍵。MPPT是在Boost側(cè)獨立實現(xiàn)的常見擾動觀察法它的輸出是光伏板的電壓參考值并不直接生成并網(wǎng)功率指令。真正的功率指令鏈路是MPPT改變光伏工作點 → Boost輸入功率變化 → 母線電壓跟著變化 → 電壓外環(huán)感知到誤差并調(diào)整I_ref → 電流內(nèi)環(huán)改變饋網(wǎng)功率。這個鏈路每一環(huán)都有動態(tài)過程電壓外環(huán)帶寬必須選得足夠低否則會影響整條鏈路的穩(wěn)定性。電壓外環(huán)還有一個容易忽略的點母線電壓反饋上帶著100Hz紋波。如果直接把帶紋波的母線電壓送進電壓環(huán)PI輸出就會被100Hz分量污染電流指令會跟著抖動并網(wǎng)電流里就會出現(xiàn)2次、3次諧波。解決辦法一般有兩種一是電壓反饋通道加100Hz陷波器見效快但會犧牲一點動態(tài)二是把電壓采樣點同步在電網(wǎng)電壓過零點附近利用瞬時值近似平均值這個辦法在數(shù)字控制里很實用我實際調(diào)試時兩種都試過推薦陷波器加同步采樣雙保險。2.3 電流內(nèi)環(huán)怎么跟蹤正弦指令電流內(nèi)環(huán)的任務(wù)是把實際并網(wǎng)電流快速、準確地跟蹤到指令正弦波上。指令正弦波是I_ref乘以鎖相環(huán)輸出的單位正弦信號得到的i_ref(t)I_ref×sin(θ)。PI控制器在交流跟蹤上有個經(jīng)典問題對正弦參考信號普通PI會存在幅值和相位穩(wěn)態(tài)誤差比例系數(shù)越大誤差越小但噪聲也越大。所以單相系統(tǒng)里要么用PR諧振控制器要么用SOGI構(gòu)造虛擬正交相再做同步旋轉(zhuǎn)坐標變換把交流量變成直流量PI即可無差跟蹤。我采用的是SOGI加dq旋轉(zhuǎn)坐標方案。SOGI生成一組正交信號αβ然后通過Park變換得到dq軸分量。有功電流對應(yīng)d軸無功電流對應(yīng)q軸。并網(wǎng)功率因數(shù)為1時q軸參考給0如果以后要接儲能或者參與無功調(diào)節(jié)只需要把q軸參考值設(shè)成目標無功對應(yīng)的電流即可。電流內(nèi)環(huán)兩個PI分別調(diào)節(jié)d、q軸電流輸出經(jīng)過反Park變換得到調(diào)制波再加電網(wǎng)電壓前饋最終送SPWM調(diào)制器。電流內(nèi)環(huán)的時間常數(shù)很小一般在毫秒級甚至微秒級所以它可以在電網(wǎng)電壓波動、負載突變時快速響應(yīng)保證電感電流不失控。內(nèi)環(huán)PI的輸出要限幅限制調(diào)制比不越過過調(diào)制邊界這個限幅和抗積分飽和是必須做的工程里很多振蕩都和積分飽和有關(guān)。2.4 鎖相環(huán)與電網(wǎng)電壓前饋容易被低估的配角鎖相環(huán)的責任是輸出一個與電網(wǎng)電壓同頻同相的相位θ。dq變換里所有的sin和cos都來自θ鎖相環(huán)不準電流指令就不準并網(wǎng)電流會出現(xiàn)相位偏差功率因數(shù)掉下來嚴重的還會在并網(wǎng)瞬間產(chǎn)生沖擊電流。單相系統(tǒng)里我用SRF-PLL配合SOGI鎖相環(huán)PI帶寬取10到20Hz這個帶寬不能太高否則電網(wǎng)電壓畸變會干擾鎖相結(jié)果。電網(wǎng)電壓前饋的作用則更加直接。不考前饋時電流環(huán)要克服電網(wǎng)電壓這個擾動靠的是PI積分慢慢消除誤差動態(tài)響應(yīng)再快也有幾十毫秒級別的滯后。加了前饋后電流環(huán)PI的輸出直接疊加電網(wǎng)電壓瞬時值作為調(diào)制波基準相當于讓系統(tǒng)“預(yù)知”了電網(wǎng)電壓抗擾能力大幅提升。前饋系數(shù)工程上通常取接近1但要注意實際采樣到的是經(jīng)過傳感器、調(diào)理電路后的縮放值系數(shù)必須按標幺化后的比例校準。3. 環(huán)路整定與仿真調(diào)試參數(shù)是怎么算出來又調(diào)出來的3.1 電流內(nèi)環(huán)的PI設(shè)計思路電流內(nèi)環(huán)的設(shè)計可以從被控對象傳函出發(fā)。忽略電感電阻和死區(qū)非線性時電感電流對逆變橋輸出電壓的傳遞函數(shù)近似為1/(Ls)也就是一個積分環(huán)節(jié)。PI參數(shù)整定最簡單的辦法是基于期望帶寬。假設(shè)期望電流環(huán)截止頻率fci取1kHz對應(yīng)角頻率ωci≈6283 rad/s那么比例系數(shù)Kp的參考值可以取L×ωci即2.5mH×6283≈15.7。這個值代表的是“讓環(huán)路在截止頻率處增益為1所需的增益”工程上很實用。積分系數(shù)Ki參考值可以按Kp×R/L來取R是電感寄生電阻通常在0.1Ω級別算出來很小實際使用時積分增益還是要靠仿真和實驗往上加。原因在于數(shù)字控制存在一拍延遲和采樣保持純按連續(xù)域算出來的Ki往往偏軟。我的做法是在離散域仿真里從Kp15、Ki500起步逐步觀察電流波形最終調(diào)到Kp20、Ki800附近。這個參數(shù)在2.5mH電感、16kHz開關(guān)頻率、10kW功率等級下表現(xiàn)穩(wěn)定。電流環(huán)帶寬不是越高越好。內(nèi)環(huán)帶寬受到開關(guān)頻率的硬限制一般取開關(guān)頻率的1/10到1/5也就是1.6k到3.2kHz再高就會逼近采樣和控制延遲的相位裕度極限。我留了1kHz的帶寬設(shè)計值對并網(wǎng)應(yīng)用足夠了這個帶寬讓內(nèi)環(huán)響應(yīng)時間是0.16ms左右遠快于外環(huán)完全滿足內(nèi)外環(huán)時間尺度分離的要求。3.2 電壓外環(huán)的PI設(shè)計思路電壓外環(huán)的被控對象近似是母線電容傳函為1/(Cs)也是積分特性。關(guān)鍵約束是外環(huán)帶寬必須明顯低于內(nèi)環(huán)同時要避開100Hz母線紋波。內(nèi)環(huán)帶寬1kHz外環(huán)帶寬取50Hz大約等于內(nèi)環(huán)的1/20這個比例保證了內(nèi)外環(huán)不會互相干擾。按ωcv2π×50≈314 rad/s計算Kp參考值是C×ωcvC4000μF算出來Kp_v≈1.26。但這是純積分對象的結(jié)果實際還要加上功率轉(zhuǎn)換的非線性增益所以我仿真時從Kp_v1開始微調(diào)最終穩(wěn)定在Kp_v3、Ki_v150左右。電壓環(huán)積分系數(shù)再往上調(diào)會怎樣母線100Hz紋波會被放大到電流指令上直觀表現(xiàn)就是并網(wǎng)電流波形出現(xiàn)包絡(luò)抖動。如果你在示波器上看到電流正弦波外面套了一層“毛邊”大概率就是電壓環(huán)增益太高在放大紋波。調(diào)試現(xiàn)場調(diào)電壓環(huán)的原則是先用小比例系數(shù)把母線電壓穩(wěn)住再慢慢加積分每加一檔都看一眼電流波形出現(xiàn)100Hz包絡(luò)就退回上一檔。電壓環(huán)輸出也要限幅。這個限幅決定了系統(tǒng)最大允許電流指令我按額定電流的1.2倍來限制也就是約55A有效值對應(yīng)的幅值指令。限幅值設(shè)得太大會讓啟動和切載時沖擊電流過大設(shè)得太小又在電網(wǎng)電壓跌落時沒法提供必要的支撐電流這個邊界要按應(yīng)用場景權(quán)衡。3.3 仿真模型搭建與調(diào)參順序我習慣在仿真軟件里先把整體跑通再上硬件Simulink里搭兩級式模型大約需要這些模塊光伏板模塊、Boost變換器、全橋逆變、2.5mH濾波電感、電網(wǎng)模型、SOGI-PLL、雙閉環(huán)控制器、SPWM發(fā)生器。仿真步長要足夠小至少要能覆蓋PWM載波的細節(jié)我常用固定步長1μs等于載波周期的1/16左右這樣才能看出紋波和死區(qū)的影響。仿真調(diào)試順序和硬件一致我建議嚴格按下面步驟來每個階段都驗證完再進下一步先斷開閉環(huán)只給PWM模塊發(fā)固定占空比確認驅(qū)動波形、死區(qū)時間、調(diào)制波極性正確。單獨測試鎖相環(huán)電網(wǎng)電壓源接進去觀測SOGI輸出的正交信號和PLL輸出相位是否鎖準。電流內(nèi)環(huán)單獨閉環(huán)方式是給一個固定的d軸電流參考用理想直流源替代光伏側(cè)接電阻負載或者直接短接交流端調(diào)電流跟蹤能力。電壓外環(huán)加進來先讓Boost不工作用可調(diào)直流源直接給母線供電驗證電壓環(huán)能否穩(wěn)住母線電壓。把Boost和MPPT加回來完整系統(tǒng)跑并網(wǎng)流程逐步從輕載加到滿載。這套順序的核心思想是“每一層閉環(huán)都必須建立在下一層可靠的基座上”。我見過不少仿真模型直接全鏈路一起搭出現(xiàn)問題根本定位不到是哪一環(huán)最后只能全盤推倒。分步驗證雖然慢但每一步都清楚后面出了問題也知道往哪查。4. 上電調(diào)試常見問題排查從仿真到實機不得不面對的坑4.1 常見問題速查表仿真里參數(shù)調(diào)好了不代表樣機就能直接并網(wǎng)。下面這張表是我在實際調(diào)試中遇到過的典型問題可以直接當排查手冊用。異?,F(xiàn)象可能原因處理辦法并網(wǎng)瞬間沖擊電流過大鎖相環(huán)尚未穩(wěn)定就合閘或母線電壓與電網(wǎng)電壓差值未控制增加并網(wǎng)預(yù)同步流程確認PLL鎖定后延時合閘穩(wěn)態(tài)電流THD偏高死區(qū)效應(yīng)、電流采樣噪聲、電感飽和增加死區(qū)補償檢查采樣屏蔽與共地噪聲核驗電感磁芯電流波形帶100Hz包絡(luò)電壓環(huán)帶寬過高放大母線紋波降低電壓環(huán)Kp/Ki加100Hz陷波器或同步采樣母線電壓低頻振蕩電壓環(huán)與電流環(huán)帶寬接近或積分飽和重新核對內(nèi)外環(huán)帶寬比例增加抗積分飽和電網(wǎng)電壓突變時過流保護前饋系數(shù)不準或缺失校準電網(wǎng)電壓前饋系數(shù)確認采樣縮放一致輕載時電流斷續(xù)且不穩(wěn)定電流環(huán)比例系數(shù)偏小適當提高電流環(huán)Kp并檢查電感電流是否進入斷續(xù)模式這些問題的根源大部分不在參數(shù)本身而在于采樣、數(shù)字延遲和系統(tǒng)非線性這些仿真里沒體現(xiàn)的細節(jié)。下面挑兩個最常見的場景展開細說。4.2 深挖案例一死區(qū)效應(yīng)帶來的電流畸變實際逆變橋開關(guān)管必須設(shè)置死區(qū)時間防止上下橋臂直通。我在這個10kW系統(tǒng)里母線400V開關(guān)管關(guān)斷損耗和死區(qū)時間的矛盾尤其明顯死區(qū)取1.5μs左右。死區(qū)的直接后果是輸出電壓基波分量偏小還會產(chǎn)生低次諧波尤其在電流過零點附近電流極性換向時誤差最明顯THD往往從這里拉上去。處理方案業(yè)內(nèi)已經(jīng)很成熟死區(qū)補償。最簡化的補償思路是判斷電流方向在調(diào)制波上疊加一個與死區(qū)時間及母線電壓相關(guān)的修正量。我的實現(xiàn)是在數(shù)字控制器里查電流方向按死區(qū)時間折算成占空比修正值加到對應(yīng)橋臂的調(diào)制波上。加了死區(qū)補償之后空載到半載的THD能從8%以上降到3%到4%左右。但要注意死區(qū)補償依賴電流方向檢測的準確性在電流過零點附伴方向判斷抖動反而可能引入新的諧波。我的做法是在電流過零區(qū)間設(shè)置一個滯環(huán)窗口窗口內(nèi)不切換補償極性實測效果比直接判方向好很多。4.3 深挖案例二母線電壓紋波污染電流指令這個問題上面已經(jīng)提過幾次但值得單獨展開因為它太隱蔽了。母線電壓反饋如果直接進電壓環(huán)PI輸出會疊加100Hz分量電流指令變成一條帶紋波的參考最終并網(wǎng)電流里會出現(xiàn)明顯的三次諧波。仿真中如果母線電容模型不夠準確或者沒加ESR特性這個問題可能完全看不出來上機之后一測電流波形馬上現(xiàn)原形。我最終的方案是雙層處理母線電壓采樣通道先做模擬二階低通濾波截止頻率約500Hz把高頻開關(guān)噪聲濾掉保證采樣值穩(wěn)定然后在控制器內(nèi)部加數(shù)字陷波器專門衰減100Hz。陷波器的Q值不能調(diào)太高Q值太大在電網(wǎng)頻率波動時反而會把有用信號削掉我用Q值在1到2之間。電壓環(huán)帶寬保持50Hz這樣即便陷波器效果一般100Hz增益也不會被放大太多。這套組合在實際電網(wǎng)波動±1Hz的情況下都能保持電流THD在5%以內(nèi)。4.4 安全與測量設(shè)備的經(jīng)驗調(diào)試并網(wǎng)逆變器安全永遠是第一位。樣機上電前必須檢查控制信號和功率地是否可靠單點接地電流探頭必須用隔離探頭示波器建議接隔離變壓器或者用差分探頭測電壓。電網(wǎng)側(cè)接一個隔離調(diào)壓器把電壓從低往高調(diào)是第一次并網(wǎng)時最穩(wěn)妥的做法。先用低壓小功率驗證控制邏輯沒有問題再升壓升功率能避免大多數(shù)燒板事故。還有一個容易被忽略的點用直流源模擬光伏板時直流源不能吸收電流。Boost入口電壓被拉高到超過設(shè)定值時光伏板功率降低這時候邏輯上母線電壓會跌落而不是上升。如果你發(fā)現(xiàn)電壓環(huán)一直在朝一個方向飽和先檢查直流源是否工作在輸出狀態(tài)別急著改PI參數(shù)。樣機階段的測量儀器我建議至少要準備一只能測到MHz級的高壓差分探頭和一只高精度電流探頭。調(diào)試時把電流波形、母線電壓波形、電網(wǎng)電壓波形放在同一臺示波器上觸發(fā)觀察相位關(guān)系。很多動態(tài)問題靠一次截圖就能定位比反復(fù)猜參數(shù)學到的經(jīng)驗值要高效得多。最后分享一個經(jīng)驗這個系統(tǒng)我前后迭代了三版控制板最初版本把電壓環(huán)、電流環(huán)、PLL、保護邏輯全部堆在一個中斷服務(wù)函數(shù)里結(jié)果中斷執(zhí)行時間過長快到1kHz帶寬就頂不住了。后來把保護邏輯挪到硬件比較器把PLL和慢速任務(wù)挪到后臺循環(huán)控制中斷只保留電流環(huán)和坐標變換帶寬才真正跑起來。做數(shù)字控制中斷開銷和任務(wù)劃分對帶寬的影響很多時候比PI參數(shù)本身還大。這一點是我在這個10kW項目里體會最深的地方。