試詳解)
直接做±800kV VSC-HVDC的Matlab仿真模型在不少搞電力電子和電力系統(tǒng)的人眼里是一件“看起來(lái)很唬人”的事。電壓等級(jí)一上去很多人第一反應(yīng)是“模型這么大、參數(shù)這么多跑得動(dòng)嗎會(huì)不會(huì)發(fā)散控制器怎么調(diào)”我一向覺(jué)得仿真模型的核心目的不是復(fù)刻一個(gè)電網(wǎng)工程而是把直流輸電里最關(guān)鍵的物理過(guò)程和控制邏輯跑明白。真到了寫(xiě)論文、出方案、做初步設(shè)計(jì)的時(shí)候一個(gè)能在Matlab/Simulink里穩(wěn)定跑起來(lái)、波形合理、能響應(yīng)功率階躍和直流故障的VSC-HVDC模型比一堆手算公式有用得多。這篇文章就把我搭±800kV VSC-HVDC仿真模型的經(jīng)驗(yàn)完整梳理一遍包括整體架構(gòu)怎么分層、MMC子模塊參數(shù)怎么定、控制器怎么設(shè)計(jì)、仿真中常見(jiàn)的“跑飛”問(wèn)題怎么排查最后給出一套可以直接改參數(shù)用的模型骨架。內(nèi)容面向已經(jīng)學(xué)過(guò)電力電子、但還沒(méi)完整搭過(guò)直流輸電仿真的研究生和工程師也適合正在做畢業(yè)設(shè)計(jì)或預(yù)研項(xiàng)目、需要快速出一個(gè)可信結(jié)果的同行??赐瓴徽f(shuō)能手搓一個(gè)商用級(jí)柔直工程但至少能讓你從0到1搭出一個(gè)能跑、能看波形、能改控制策略的VSC-HVDC模型并且知道每個(gè)模塊為什么這么設(shè)計(jì)。1. 模型層面的整體設(shè)計(jì)與方案選型1.1 為什么要用VSC-HVDC而不是常規(guī)直流LCC-HVDC先聊最基本的。LCC-HVDC用的是晶閘管電流單向換相需要交流系統(tǒng)提供換相電壓所以它天生存在“換相失敗”的問(wèn)題在弱交流系統(tǒng)里尤其難受。VSC-HVDC用的是IGBT高壓大容量場(chǎng)景現(xiàn)在用IGBT串聯(lián)或MMC拓?fù)淇梢宰該Q相能分別獨(dú)立控制有功和無(wú)功還能向無(wú)源網(wǎng)絡(luò)供電。這些優(yōu)點(diǎn)在教科書(shū)里寫(xiě)得很清楚真正搭模型的時(shí)候你會(huì)更直觀地感受到VSC-HVDC的控制自由度更高外環(huán)給定有功、無(wú)功內(nèi)環(huán)輸出dq軸電壓指令整個(gè)控制鏈路非常清晰不像LCC那樣還要考慮觸發(fā)角、關(guān)斷角那一堆非線性關(guān)系。而800kV這個(gè)電壓等級(jí)意味著單極對(duì)地電壓800kV雙極就是±800kV。早期VSC-HVDC受限于IGBT耐壓和損耗很難做到這么高電壓后來(lái)MMC模塊化多電平換流器把幾百個(gè)IGBT子模塊串聯(lián)起來(lái)通過(guò)階梯波逼近正弦才把VSC-HVDC推到了特高壓等級(jí)。所以你在Matlab里搭800kV模型本質(zhì)上用的就是MMC拓?fù)涠皇莾呻娖交蛉娖絍SC。這一點(diǎn)先明確后面所有參數(shù)和控制都圍繞MMC展開(kāi)。1.2 Matlab/Simulink搭建模型的兩條路線Simulink里實(shí)現(xiàn)MMC-HVDC常見(jiàn)做法有三種我分別說(shuō)說(shuō)利弊。第一種是詳細(xì)模型Detailed ModelDM把每個(gè)子模塊的IGBT、電容、旁路開(kāi)關(guān)全部用元件庫(kù)搭出來(lái)。這種模型最精準(zhǔn)能看出每個(gè)子模塊電容電壓的波動(dòng)、能模擬IGBT的開(kāi)通關(guān)斷細(xì)節(jié)但計(jì)算量非常大。一個(gè)換流器如果每相有幾百個(gè)子模塊整個(gè)系統(tǒng)就是幾千個(gè)開(kāi)關(guān)器件仿真步長(zhǎng)必須很小跑一次階躍響應(yīng)可能幾個(gè)小時(shí)都跑不完。第二種是平均值模型Average Value ModelAVM用受控電壓源和受控電流源來(lái)等效換流器對(duì)外特性完全忽略子模塊內(nèi)部的開(kāi)關(guān)過(guò)程。AVM算得最快適合做中長(zhǎng)期動(dòng)態(tài)過(guò)程或者機(jī)電暫態(tài)分析但你沒(méi)法看電容電壓均衡和環(huán)流抑制這些MMC特有的內(nèi)部動(dòng)態(tài)。第三種是介于兩者之間的簡(jiǎn)化模型也是我最常用的做法把每個(gè)橋臂用一個(gè)“等效子模塊”來(lái)表示即用一個(gè)大電容加一個(gè)受控電壓源替代整個(gè)橋臂的級(jí)聯(lián)子模塊同時(shí)保留MMC的外特性橋臂電壓可控、橋臂電流存在但內(nèi)部子模塊充放電用一個(gè)等效電容來(lái)模擬。Simulink的Simscape Electrical里就有現(xiàn)成的MMC模塊可以直接設(shè)置子模塊數(shù)、橋臂電抗、子模塊電容它內(nèi)部用的就是這種簡(jiǎn)化建模思路。我之前試過(guò)純手搭詳細(xì)模型也試過(guò)直接用現(xiàn)成模塊最終穩(wěn)定用的是Simscape Electrical里的MMC模型加自定義控制。為什么這樣選因?yàn)?00kV級(jí)別的MMC每個(gè)橋臂子模塊數(shù)量動(dòng)輒幾百個(gè)詳細(xì)模型在Matlab里根本跑不動(dòng)而純平均值模型又會(huì)丟失環(huán)流和電容電壓波動(dòng)這些關(guān)鍵信息。Simscape里那個(gè)MMC模塊本質(zhì)上等效但內(nèi)部包含了子模塊電容動(dòng)態(tài)我實(shí)測(cè)下來(lái)在保持關(guān)鍵物理特征的同時(shí)仿真速度能比詳細(xì)模型快一個(gè)數(shù)量級(jí)以上。對(duì)做控制策略研究來(lái)說(shuō)這個(gè)精度完全夠了。1.3 仿真整體架構(gòu)雙端還是單端很多初學(xué)者一上來(lái)就想搭一個(gè)完整的雙端±800kV直流輸電系統(tǒng)結(jié)果一邊送電一邊受電兩個(gè)MMC的控制策略還要相互配合參數(shù)整定難度直接翻倍。我的建議是第一步先搭一個(gè)“單換流器-等效交流系統(tǒng)-直流側(cè)電壓源”的模型把單個(gè)MMC的控制策略驗(yàn)證清楚再擴(kuò)展成雙端。什么意思呢就是先讓一個(gè)換流器帶一個(gè)直流電壓源或者一個(gè)純電阻負(fù)載驗(yàn)證它的調(diào)制、電容均壓、環(huán)流抑制、功率控制這四件事是不是都正常。等單端模型跑穩(wěn)了再?gòu)?fù)制一套中間用直流線路連接構(gòu)成雙端系統(tǒng)。這樣做的好處是每一步出問(wèn)題都能精準(zhǔn)定位不至于一開(kāi)跑就發(fā)散你根本不知道是控制器寫(xiě)錯(cuò)還是兩側(cè)配合出了問(wèn)題。我在實(shí)際做的時(shí)候單端驗(yàn)證大概花了半天雙端聯(lián)調(diào)又花了兩天。大部分時(shí)間都耗在調(diào)PI參數(shù)和排查數(shù)值發(fā)散上所以后面第4節(jié)我會(huì)專門(mén)把調(diào)試經(jīng)驗(yàn)拎出來(lái)講。2. 模型關(guān)鍵參數(shù)設(shè)計(jì)從電壓等級(jí)反推各個(gè)元件2.1 子模塊數(shù)量與電容電壓選擇MMC最核心的設(shè)計(jì)約束就是子模塊數(shù)量。先確定子模塊額定電壓一般取2kV到3kV之間這個(gè)取決于你選的IGBT器件耐壓和冗余要求。對(duì)于±800kV系統(tǒng)假設(shè)子模塊額定電壓是2.2kV那么單個(gè)橋臂需要承載的直流電壓是800kV以單極對(duì)地為例如果是對(duì)稱單極結(jié)構(gòu)每相上下橋臂各承擔(dān)一半直流電壓考慮調(diào)制比和冗余實(shí)際需要的子模塊數(shù)N大約在350到400之間。我這里取一個(gè)比較標(biāo)準(zhǔn)的配置橋臂子模塊數(shù)N400子模塊電容電壓額定值Uc2.2kV那么橋臂能支撐的最大電壓就是400×2.2880kV留出了約10%的裕量足以應(yīng)對(duì)調(diào)制過(guò)程中電容電壓波動(dòng)。記住交流側(cè)相電壓峰值和直流電壓之間要滿足調(diào)制關(guān)系對(duì)于MMC相電壓峰值等于ma×Udc/2其中ma是調(diào)制比通常取0.85到0.9。當(dāng)Udc800kV時(shí)Udc/2400kV取ma0.875則相電壓峰值為350kV對(duì)應(yīng)的交流線電壓有效值約為350×sqrt(3)/sqrt(2)≈428kV。這個(gè)值決定了交流側(cè)變壓器和斷路器的額定電壓你后面搭建交流系統(tǒng)時(shí)直接用這個(gè)數(shù)來(lái)設(shè)定等效電源電壓。2.2 橋臂電抗器和子模塊電容橋臂電抗器的主要作用是抑制橋臂環(huán)流和第二、第四等偶次諧波同時(shí)限制直流側(cè)故障時(shí)的電流上升率。工程上橋臂電抗的標(biāo)幺值一般在0.1到0.3之間。我取0.15pu來(lái)算實(shí)際值。系統(tǒng)基準(zhǔn)容量取1000MVA單極直流電壓800kV那么直流電流基準(zhǔn)值是1000MW/800kV1250A。交流側(cè)基準(zhǔn)阻抗ZbUb2/Sb這里的Ub取交流線電壓有效值428kVSb1000MVA所以Zb≈(428k2)/1000M≈183Ω。橋臂電抗0.15pu對(duì)應(yīng)的實(shí)際電感就是0.15×183Ω/(2π×50Hz)≈0.0874H約87mH。這個(gè)電感量級(jí)對(duì)仿真模型來(lái)說(shuō)是合理的不會(huì)太大導(dǎo)致電流響應(yīng)太慢也不會(huì)太小導(dǎo)致環(huán)流抑制不住。子模塊電容的選擇跟橋臂儲(chǔ)能有關(guān)。MMC每個(gè)橋臂的等效儲(chǔ)能通常要求能支撐系統(tǒng)額定功率幾個(gè)毫秒工程上橋臂電容的等效時(shí)間常數(shù)一般在40到60ms。所謂時(shí)間常數(shù)就是電容在額定功率下從額定電壓放電到0所需的時(shí)間。以橋臂為單位計(jì)算單個(gè)橋臂所有子模塊電容串聯(lián)后的等效電容Ceq Csm / N。如果取Csm10mFN400則Ceq25μF。橋臂儲(chǔ)能W 0.5×Ceq×(N×Uc)2 0.5×25e-6×(880k)2≈9.68MJ。單極額定功率1000MW換算成功率和時(shí)間常數(shù)就是9.68MJ/1000MW≈9.68ms。這明顯太小工程上要求40ms以上所以子模塊電容需要加大。我實(shí)際取Csm30mF則Ceq75μF橋臂儲(chǔ)能W≈29MJ時(shí)間常數(shù)約29ms接近工程下限再大一點(diǎn)到40mF會(huì)更穩(wěn)。不過(guò)電容越大仿真中的狀態(tài)變量時(shí)間常數(shù)越大仿真步長(zhǎng)可能要適當(dāng)增加收斂性反而變差。所以我最后在模型里用的是35mF折中。這里有個(gè)容易被忽略的細(xì)節(jié)MMC橋臂電容是分布式的子模塊電容電壓會(huì)隨著橋臂電流的充放電而波動(dòng)波動(dòng)幅度跟電容大小成反比。電容取小了電壓波動(dòng)大可能導(dǎo)致調(diào)制比超過(guò)1出現(xiàn)過(guò)調(diào)制取大了系統(tǒng)響應(yīng)變慢。你在調(diào)模型時(shí)如果看到子模塊電容電壓波形“抖”得厲害第一反應(yīng)應(yīng)該是電容值是不是太小了而不是去改PI參數(shù)。2.3 交流系統(tǒng)與變壓器參數(shù)交流側(cè)我習(xí)慣用理想電壓源串聯(lián)一個(gè)等效阻抗來(lái)模擬強(qiáng)交流系統(tǒng)短路比SCR取3到5之間。這比搭一個(gè)詳細(xì)同步發(fā)電機(jī)模型要省事得多而且對(duì)控制策略驗(yàn)證來(lái)說(shuō)已經(jīng)足夠。短路比5意味著系統(tǒng)等效阻抗標(biāo)幺值為0.2pu結(jié)合前面算的Zb183Ω實(shí)際阻抗約36.6Ω電感為36.6/(2π×50)≈0.116H。如果你要模擬弱交流系統(tǒng)把SCR降到2阻抗增大一倍這時(shí)鎖相環(huán)和功率控制會(huì)明顯出現(xiàn)動(dòng)態(tài)問(wèn)題這是后話。變壓器我直接用Simulink里的三相雙繞組變壓器連接方式采用YNd也就是網(wǎng)側(cè)星形接地、閥側(cè)三角形這樣可以隔離零序分量同時(shí)為MMC提供中性點(diǎn)不接地的交流系統(tǒng)。變壓器漏抗標(biāo)幺值取0.1pu容量和換流器匹配也是1000MVA。變比設(shè)計(jì)很關(guān)鍵網(wǎng)側(cè)電壓就是交流系統(tǒng)線電壓428kV閥側(cè)電壓要和MMC交流側(cè)電壓匹配。因?yàn)镸MC交流側(cè)相電壓峰值350kV對(duì)應(yīng)線電壓有效值428kV所以變壓器變比理論上接近1:1。但為了留出調(diào)節(jié)空間我通常把閥側(cè)額定電壓取低一點(diǎn)比如410kV這樣變壓器等效成一個(gè)微升壓變壓器給控制留一點(diǎn)裕量。3. 控制器設(shè)計(jì)雙閉環(huán)加環(huán)流抑制一個(gè)都不能少3.1 外環(huán)功率控制和內(nèi)環(huán)電流控制VSC-HVDC最經(jīng)典的控制結(jié)構(gòu)就是dq同步旋轉(zhuǎn)坐標(biāo)系下的雙閉環(huán)。外環(huán)根據(jù)控制目標(biāo)輸出內(nèi)環(huán)的電流參考值內(nèi)環(huán)通過(guò)PI調(diào)節(jié)器輸出換流器交流側(cè)的電壓參考值最后經(jīng)過(guò)調(diào)制生成子模塊投切信號(hào)。我搭模型時(shí)直接在Simulink里用數(shù)學(xué)模塊搭了一個(gè)完整的控制器沒(méi)有用Simscape里自帶的控制庫(kù)因?yàn)樽约捍罡菀卓辞迕總€(gè)環(huán)節(jié)的作用。外環(huán)分兩種模式定有功功率控制和定直流電壓控制。在雙端系統(tǒng)里送端換流站采用定有功功率控制受端采用定直流電壓控制這樣直流電壓由受端撐住送端只管輸送功率。單端驗(yàn)證時(shí)我通常讓換流器工作在定有功功率和定無(wú)功功率模式直流側(cè)直接接一個(gè)理想直流電壓源這樣最方便驗(yàn)證交流側(cè)控制是否正常。內(nèi)環(huán)電流控制是核心。MMC的交流側(cè)動(dòng)態(tài)方程可以寫(xiě)成L·(di_d/dt) -R·i_d ωL·i_q u_d - e_d L·(di_q/dt) -R·i_q - ωL·i_d u_q - e_q其中u_d、u_q是換流器輸出電壓的dq分量e_d、e_q是交流系統(tǒng)電壓的dq分量L是變壓器漏感加橋臂電感的等效值如果是MMC橋臂電感對(duì)交流電流來(lái)說(shuō)作用相當(dāng)于兩個(gè)橋臂并聯(lián)所以等效電感要除以2。為了讓d軸電流和q軸電流解耦控制器里要加入前饋補(bǔ)償項(xiàng)輸出電壓參考值u_d_ref e_d - ωL·i_q PI_d(s)·(i_d_ref - i_d) u_q_ref e_q ωL·i_d PI_q(s)·(i_q_ref - i_q)注意符號(hào)如果按照電動(dòng)機(jī)慣例電流從交流系統(tǒng)流向換流器那么上面的公式是對(duì)的。我在實(shí)際搭模型時(shí)經(jīng)常在這里搞錯(cuò)符號(hào)導(dǎo)致內(nèi)外環(huán)振蕩這是很經(jīng)典的調(diào)試坑后面會(huì)細(xì)說(shuō)。3.2 鎖相環(huán)PLL與dq坐標(biāo)定位MMC必須實(shí)時(shí)跟蹤交流系統(tǒng)電壓的相位才能實(shí)現(xiàn)dq解耦。鎖相環(huán)我用的就是教科書(shū)里標(biāo)準(zhǔn)的SRF-PLL同步參考坐標(biāo)系鎖相環(huán)。它的本質(zhì)是讓q軸電壓為0用PI調(diào)節(jié)器把相位誤差收斂到0。搭建時(shí)把交流系統(tǒng)三相電壓經(jīng)過(guò)Clark變換得到αβ再經(jīng)過(guò)Park變換得到dq其中q軸給定為0PI輸出頻率偏差積分后得到相位角用這個(gè)相位角再做Park變換的參考。PLL的PI參數(shù)要拉開(kāi)帶寬我的經(jīng)驗(yàn)是PLL的響應(yīng)時(shí)間常數(shù)設(shè)為10ms左右比內(nèi)環(huán)電流環(huán)慢比外環(huán)功率環(huán)快。如果PLL帶寬太高系統(tǒng)容易高頻振蕩太低則在功率階躍時(shí)相位追蹤滯后導(dǎo)致有功無(wú)功耦合。一個(gè)常用的初始值是Kp50Ki2000實(shí)際根據(jù)仿真波形再微調(diào)。3.3 MMC內(nèi)部的兩個(gè)“隱藏”控制量電容電壓均衡和環(huán)流抑制這部分是MMC和兩電平VSC的最大區(qū)別也是很多仿真模型容易“畫(huà)虎不成反類(lèi)犬”的地方。電容電壓均衡因?yàn)槊總€(gè)子模塊的電容獨(dú)立充放電如果不加控制個(gè)別的電容電壓會(huì)偏離額定值最終導(dǎo)致調(diào)制過(guò)壓或欠壓。詳細(xì)模型里會(huì)做排序均壓即根據(jù)橋臂電流方向?qū)ψ幽K電容電壓排序后決定投切哪個(gè)子模塊。但前面說(shuō)了我們用的是Simscape里簡(jiǎn)化的MMC模塊它內(nèi)部已經(jīng)做了電容電壓均衡的等效處理所以我只需要在控制器里給一個(gè)統(tǒng)一的電容電壓均值參考具體均壓由物理模塊自己去實(shí)現(xiàn)。如果你是完全自建子模塊模型那需要在每個(gè)仿真步長(zhǎng)里做冒泡排序或快速排序這一步計(jì)算量非常大也是為什么我不建議小白自建細(xì)模型的原因。環(huán)流抑制MMC三相并聯(lián)直流側(cè)可以看作恒壓源交流側(cè)各相之間會(huì)因?yàn)闃虮垭妷旱牟町惍a(chǎn)生二倍頻環(huán)流。這個(gè)環(huán)流只流經(jīng)橋臂和直流側(cè)不流向交流側(cè)但會(huì)增加器件損耗和電容電壓波動(dòng)。工程上常用二倍頻負(fù)序旋轉(zhuǎn)坐標(biāo)變換把環(huán)流分解到dq軸后用PI調(diào)節(jié)器壓制。一般用準(zhǔn)比例諧振PR控制器直接控制在兩倍頻處增益無(wú)窮大實(shí)現(xiàn)零穩(wěn)態(tài)誤差。我用的方法是在Simscape MMC模塊里直接啟用內(nèi)部的環(huán)流抑制功能參數(shù)里有一個(gè)環(huán)流抑制增益我把它設(shè)為0.5實(shí)測(cè)波形里二倍頻環(huán)流就被壓下去了。如果你用自建模型就在控制環(huán)里加一個(gè)二倍頻諧振環(huán)節(jié)諧振頻率定為100Hz其余參數(shù)和普通PI類(lèi)似。4. 實(shí)操過(guò)程單端模型搭建與仿真波形分析4.1 模型搭建的分步流程我自己建模型時(shí)為了讓過(guò)程可控、問(wèn)題可定位嚴(yán)格按下面的順序來(lái)每一步都先跑通再繼續(xù)往下做。第一步搭主電路。從Simscape Electrical庫(kù)中拖出“MMC”模塊設(shè)置橋臂子模塊數(shù)量N400子模塊電容Csm35mF橋臂電抗Larm87mH。MMC模塊自帶的橋臂等效模型參數(shù)填好。交流側(cè)先用一個(gè)理想三相電壓源替代變壓器和交流系統(tǒng)電壓幅值設(shè)為400kV線電壓頻率50Hz。直流側(cè)接一個(gè)800kV直流電壓源。這一步運(yùn)行后只做開(kāi)環(huán)測(cè)試暫不接控制器可以先用固定調(diào)制比0.8看電容電壓是否正常。第二步搭測(cè)量與坐標(biāo)變換。測(cè)量MMC交流側(cè)三相電壓、電流以及直流電壓、直流電流經(jīng)過(guò)Park變換轉(zhuǎn)到dq軸。這里注意要用PLL輸出的相位角做Park變換不能自己假設(shè)相位。第三步搭內(nèi)環(huán)電流控制器。把d軸和q軸電流參考值先設(shè)為常數(shù)比如id_ref1.0kAiq_ref0PI輸出加上前饋補(bǔ)償?shù)玫秸{(diào)制電壓的dq分量再經(jīng)反Park變換得到三相調(diào)制波送入MMC模塊的調(diào)制端。MMC模塊內(nèi)部會(huì)根據(jù)調(diào)制波和電容電壓生成子模塊投切信號(hào)。第四步搭外環(huán)功率控制器。在電流內(nèi)環(huán)的外面再套一層功率或直流電壓環(huán)。先做最簡(jiǎn)單的定有功和定無(wú)功控制測(cè)量當(dāng)前有功P與有功參考Pref做差經(jīng)過(guò)PI后輸出id_ref無(wú)功Q與Qref做差經(jīng)PI輸出iq_ref。第五步驗(yàn)證單端模型無(wú)誤后把直流電壓源去掉換成直流線路和另一個(gè)MMC搭建雙端閉環(huán)系統(tǒng)。4.2 我用的仿真參數(shù)與步長(zhǎng)設(shè)置仿真時(shí)間我一般設(shè)5秒前1秒讓系統(tǒng)啟動(dòng)在t3秒時(shí)做一次功率階躍觀察動(dòng)態(tài)響應(yīng)。步長(zhǎng)設(shè)置是個(gè)關(guān)鍵學(xué)問(wèn)Simscape模型通常用變步長(zhǎng)ode23tb或者ode15sMaximum step size設(shè)得太大會(huì)導(dǎo)致波形嚴(yán)重失真太小則仿真速度慢得讓人崩潰。我試過(guò)對(duì)于這種MMC模型Maximum step size建議設(shè)為50微秒相對(duì)容差設(shè)1e-4。如果要看IGBT開(kāi)關(guān)細(xì)節(jié)那步長(zhǎng)必須到微秒甚至納秒級(jí)但那樣跑5秒仿真基本不可能。我的目標(biāo)是看控制響應(yīng)和故障特性所以50微秒的步長(zhǎng)足夠。float model? Simulink里有個(gè)“離散化”工具可以把連續(xù)模型轉(zhuǎn)換成離散模型但MMC模塊在離散化后收斂性可能變差所以我直接用連續(xù)變步長(zhǎng)求解器沒(méi)有做離散化。這點(diǎn)和純PWM整流器模型不太一樣不要用固定步長(zhǎng)去跑不然每個(gè)開(kāi)關(guān)周期都要迭代很多次速度極慢。4.3 典型波形什么樣才叫“正?!眴味四P头€(wěn)定后我習(xí)慣抓四組波形直流電壓、交流三相電流、子模塊電容電壓、橋臂環(huán)流。直流電壓應(yīng)該平直在800kV附近紋波不要超過(guò)±1%否則說(shuō)明電容或控制器參數(shù)有問(wèn)題。交流三相電流正弦度高THD2%有功電流id和無(wú)功電流iq在階躍后能快速跟蹤參考值。子模塊電容電壓的平均值應(yīng)該穩(wěn)定在2.2kV附近波形上有小幅波動(dòng)這個(gè)波動(dòng)是正常的反映電容充放電過(guò)程。橋臂環(huán)流里二倍頻分量應(yīng)該被抑制到很小基本上是一條平滑的波形如果看到明顯的100Hz正弦分量說(shuō)明環(huán)流抑制沒(méi)生效。我遇到過(guò)最典型的波形異常是交流電流低頻振蕩頻率在5~10Hz左右。排查下來(lái)發(fā)現(xiàn)是PLL帶寬和外環(huán)帶寬?cǎi)詈蠈?dǎo)致整個(gè)系統(tǒng)的阻尼變差。解決辦法是把PLL的Kp從50降到20同時(shí)把外環(huán)PI的積分時(shí)間常數(shù)增大到0.1s振蕩就消失了。這說(shuō)明在MMC這種多環(huán)控制系統(tǒng)里帶寬分配非常重要從外到內(nèi)時(shí)間常數(shù)應(yīng)該依次減小外環(huán)0.1~0.5s內(nèi)環(huán)10~50msPLL5~10ms。5. 常見(jiàn)問(wèn)題與排查技巧實(shí)錄5.1 一運(yùn)行就發(fā)散檢查“代數(shù)環(huán)”和初始條件Simulink在運(yùn)行前會(huì)做代數(shù)環(huán)檢測(cè)如果控制路徑里有直接的前饋而沒(méi)有延遲就會(huì)形成代數(shù)環(huán)求解器可能報(bào)錯(cuò)或者發(fā)散。我最常遇到的是調(diào)制波從控制器出來(lái)直接送到MMC模塊而MMC模塊的電流測(cè)量又被用來(lái)計(jì)算功率中間沒(méi)有任何狀態(tài)變量打破循環(huán)。解決方法是給調(diào)制波路徑加一個(gè)一階慣性環(huán)節(jié)時(shí)間常數(shù)設(shè)1e-5s相當(dāng)于一個(gè)小延遲代數(shù)環(huán)就消失了。另一個(gè)常見(jiàn)問(wèn)題是初始條件沖突MMC子模塊電容初始電壓要設(shè)為額定值如果不設(shè)啟動(dòng)瞬間電容要從0充電會(huì)引起巨大的沖擊電流導(dǎo)致仿真直接崩潰。我在MMC模塊參數(shù)里把初始電容電壓設(shè)為2.2kV×400880kV實(shí)際上模塊會(huì)按單個(gè)子模塊初始化并把橋臂電感初始電流設(shè)為0這樣啟動(dòng)平穩(wěn)很多。5.2 直流電壓控制不住外環(huán)符號(hào)與方向反了我在雙端模型調(diào)試時(shí)受端站直流電壓外環(huán)的輸出是id_ref但id_ref的正方向到底是從交流流向直流還是從直流流向交流不同文獻(xiàn)定義不一樣。我按電流從交流系統(tǒng)流入換流器的方向?yàn)檎齺?lái)建模那么對(duì)于整流工況id_ref為正對(duì)于逆變工況id_ref為負(fù)。如果符號(hào)反了控制器會(huì)正反饋導(dǎo)致直流電壓發(fā)散。排查方法很簡(jiǎn)單把PI輸出斷開(kāi)手動(dòng)給一個(gè)很小的id_ref看直流電壓是上升還是下降由此確定正確的極性。5.3 功率階躍時(shí)無(wú)功波動(dòng)明顯前饋解耦沒(méi)整明白如果外環(huán)給定有功階躍后無(wú)功功率也跟著“抖”了一下說(shuō)明內(nèi)環(huán)的dq解耦不徹底。我的經(jīng)驗(yàn)是解耦項(xiàng)里的ωL必須和實(shí)際模型一致很多人只把橋臂電抗算進(jìn)去忽略了變壓器漏抗導(dǎo)致解耦不完全。還有就是PLL的響應(yīng)速度太慢相位誤差會(huì)造成d軸和q軸分量互相竄擾。解決方法是把變壓器漏抗和橋臂電抗都折算進(jìn)解耦系數(shù)ωL中同時(shí)提高PLL的帶寬到20Hz左右。5.4 仿真速度極慢合理犧牲精度做MMC仿真速度是繞不開(kāi)的痛點(diǎn)。我分享幾個(gè)有效的加速手段第一關(guān)閉不必要的波形記錄Scope里不要接太高的采樣頻率。第二把MMC模塊里的“Number of submodules”用一個(gè)小值比如20代替400雖然波形會(huì)變差但動(dòng)態(tài)特性基本一致適合先做控制調(diào)參。等控制方案確定了再把N改回400做最終驗(yàn)證。第三使用Simulink的加速模式把模型編譯成C代碼運(yùn)行我實(shí)測(cè)速度能提升3到5倍。第四對(duì)于長(zhǎng)期期動(dòng)態(tài)仿真可以考慮把MMC替換為自定義的平均值模型在Simulink里用受控源實(shí)現(xiàn)速度比MMC模塊還要快一個(gè)數(shù)量級(jí)。我通常的做法是先用20個(gè)子模塊做快速迭代再用400個(gè)子模塊出最終波形兩全其美。5.5 常見(jiàn)問(wèn)題速查表現(xiàn)象可能原因解決辦法啟動(dòng)瞬間電流巨大子模塊電容初始電壓未設(shè)置設(shè)置初始電容電壓為額定值交流電流低頻振蕩PLL帶寬過(guò)高或外環(huán)PI過(guò)慢降低PLL帶寬調(diào)整外環(huán)時(shí)間常數(shù)直流電壓發(fā)散外環(huán)控制方向反斷開(kāi)PI手動(dòng)驗(yàn)證極性電容電壓波動(dòng)過(guò)大子模塊電容容量不足增大Csm二倍頻環(huán)流明顯環(huán)流抑制未啟用打開(kāi)MMC模塊環(huán)流抑制仿真很慢步長(zhǎng)過(guò)小、子模塊數(shù)過(guò)多增大步長(zhǎng)減少子模塊數(shù)做預(yù)調(diào)試代數(shù)環(huán)報(bào)錯(cuò)控制鏈路無(wú)延遲加一階慣性環(huán)節(jié)打破代數(shù)環(huán)6. 模型驗(yàn)證與結(jié)果分析的幾個(gè)角度6.1 有功無(wú)功解耦性能測(cè)試判斷雙閉環(huán)控制是否合格最直接的方法是分別做有功階躍和無(wú)功階躍觀察另一條通道是否受影響。我在t3s時(shí)有功從0.6pu階躍到1.0pu理想情況下無(wú)功應(yīng)該保持恒定。實(shí)際波形里如果無(wú)功有短暫波動(dòng)但能在50ms內(nèi)恢復(fù)說(shuō)明解耦是有效的。如果波動(dòng)幅度超過(guò)5%就需要回頭查解耦系數(shù)和PLL帶寬。6.2 直流故障穿越仿真對(duì)于VSC-HVDC直流側(cè)故障是最嚴(yán)重的工況。因?yàn)镸MC子模塊電容會(huì)通過(guò)故障點(diǎn)快速放電產(chǎn)生巨大的故障電流所以現(xiàn)在工程上大量使用半橋子模塊加直流斷路器或者全橋子模塊來(lái)抑制故障電流。仿真里可以在模型運(yùn)行到4s時(shí)在直流線路中點(diǎn)加一個(gè)三相短路故障模塊持續(xù)100ms觀察故障期間直流電壓跌落速度、交流電流沖擊和故障切除后系統(tǒng)恢復(fù)能力。我這里多說(shuō)一句直流故障仿真是檢驗(yàn)MMC模型的“試金石”。如果模型里每個(gè)子模塊的電容和IGBT都詳細(xì)建模故障電流的上升沿會(huì)很陡對(duì)步長(zhǎng)要求很高用簡(jiǎn)化MMC模塊做故障仿真結(jié)果會(huì)偏樂(lè)觀但趨勢(shì)是正確的。我建議先做故障定性和保護(hù)策略驗(yàn)證不要拿簡(jiǎn)化模型去算故障電流峰值那個(gè)必須有詳細(xì)模型或者解析公式配合。6.3 弱交流系統(tǒng)適應(yīng)性把系統(tǒng)短路比從5降到2后會(huì)明顯看到原來(lái)的PI參數(shù)不再適用。典型表現(xiàn)是功率階躍后出現(xiàn)持續(xù)振蕩甚至發(fā)散。原因是弱系統(tǒng)下交流電壓對(duì)功率波動(dòng)更敏感PLL鎖相可能出現(xiàn)失穩(wěn)。改進(jìn)方法包括用虛擬同步機(jī)控制替代傳統(tǒng)PLL、在功率外環(huán)中加入交流電壓反饋、提高系統(tǒng)阻尼。這部分內(nèi)容比較多我先不做展開(kāi)但你可以把模型里的SCR參數(shù)改小后再試體會(huì)一下什么叫“系統(tǒng)強(qiáng)度不夠控制器再努力也白搭”。7. 后續(xù)擴(kuò)展從雙端到直流電網(wǎng)單端和雙端模型跑順后可以往多端直流、混合直流、新能源送出等方向擴(kuò)展。Matlab里現(xiàn)有模型可以非常方便地復(fù)制MMC模塊做成三端或四端直流電網(wǎng)每個(gè)換流站采用不同的控制模式一個(gè)定直流電壓其他幾個(gè)定功率或者定頻率。多端系統(tǒng)的核心問(wèn)題是直流電壓控制和功率分配你可以嘗試用直流電壓偏差控制來(lái)實(shí)現(xiàn)自然功率平衡不需要站間通信。另外風(fēng)電場(chǎng)經(jīng)MMC-HVDC并網(wǎng)也是熱點(diǎn)把交流系統(tǒng)換成永磁直驅(qū)風(fēng)機(jī)機(jī)群模型就能研究次同步振蕩和送端電壓控制。這些都是在現(xiàn)有仿真模型上做的增量工作骨架不變變的是控制策略和外接模型。我個(gè)人在實(shí)際建模中的體會(huì)是不要一開(kāi)始就追求“高大全”的詳細(xì)模型先把一個(gè)能夠在幾分鐘內(nèi)跑完的簡(jiǎn)化模型吃透把控制環(huán)的邏輯和參數(shù)調(diào)試方法學(xué)會(huì)再去增加復(fù)雜度效率會(huì)高很多。有時(shí)候我為了調(diào)好一對(duì)PI參數(shù)會(huì)把系統(tǒng)簡(jiǎn)化成兩個(gè)一階慣性環(huán)節(jié)加一個(gè)純延遲直接在Matlab腳本里做根軌跡分析拿到初值再填進(jìn)Simulink模型這樣能省掉大量盲目試湊的時(shí)間。最后再分享一個(gè)小技巧保存模型時(shí)一定把Matlab版本和用到的工具箱標(biāo)注清楚Simscape Electrical不同版本之間的MMC模塊接口差異不小我遇到過(guò)從R2020a換到R2022b后MMC模塊參數(shù)名字變了導(dǎo)致模型無(wú)法運(yùn)行的情況。給模型做一個(gè)簡(jiǎn)單的doc說(shuō)明列清楚參數(shù)定義和初值來(lái)源無(wú)論是自己后續(xù)回來(lái)改還是發(fā)給別人復(fù)現(xiàn)都會(huì)順暢得多。