
搞并网变流器的工程师大概率都遇到过这种场景LCL滤波器参数按教科书算、电流环带宽卡着惯例调、仿真接理想电网时波形干净利落结果项目现场一测——短路比只有两倍三倍的弱电网——电流波形就开始“跳舞”十几赫兹到几十赫兹的次同步分量叠在工频上母线电压跟着晃严重的直接触发过流保护。我前两年做并网项目的前期稳定性评估正好把“弱电网下LCL-VSC阻抗建模、次同步/超同步谐振分析、Nyquist判据验证”这条完整链路在Simulink里从头到尾跑了一遍中间踩了不少坑也积累了一套能直接复用的方法。这篇文章就沿着这条技术路线把建模思路、仿真实现、判据写法和实操细节一次讲透适合正在做新能源并网、储能PCS或变频器接入弱电网稳定性评估的工程师参考。1. 弱电网下LCL-VSC为什么容易失稳1.1 弱电网的本质电网阻抗不可忽略弱电网最常用的量化指标是短路比SCR。SCR等于电网短路容量除以变流器额定容量SCR大于20基本可以当成理想电压源10到20算强电网3到10是中等强度低于3就算弱电网低于2属于极弱电网。SCR越低意味着并网点看进去的电网等效阻抗Zg越大外界一有扰动PCC点电压就被扰动放大变流器的控制回路会受到明显影响。我这次验证用的算例参数如下额定容量100kW、线电压380V、额定频率50Hz直流母线700V开关频率10kHz。380V侧的阻抗基准值是Z_base U_LL² / S 380² / 100k 1.444Ω。不同SCR对应的电网等效电感Lg可以按纯感性估算Lg (Z_base / SCR) / (2π × f1)结果见下表SCR电网短路容量电网等效阻抗模值等效Lg2200 kVA0.722 Ω2.30 mH3300 kVA0.481 Ω1.53 mH5500 kVA0.289 Ω0.92 mH101000 kVA0.144 Ω0.46 mH这个算例里LCL的网侧电感L2取0.5mHSCR2时电网电感Lg是L2的4.6倍。换句话说系统动态特性已经不只是VSC自身能决定的电网阻抗深度参与了电流环和锁相环的相互作用这就是弱电网问题绕不开阻抗建模的根本原因。1.2 LCL-VSC与电网阻抗构成的串联负阻尼VSC输出阻抗和电网阻抗在PCC处是一个串联回路回路上有两个频率相关的阻抗。LCL滤波器本身在1500Hz附近有一个谐振峰这个峰通常通过阻尼控制在稳定范围内但电网电感Lg串进去之后等效谐振频率会明显前移可能落到几百赫兹正好落在电流环带宽边缘附近环路相位裕度不够就变成振荡源。弱电网下更棘手的是PLL锁相环。PLL为了跟踪PCC电压相位带宽一般取20到50Hz它在次同步频段会引入所谓的“负电阻”效应某个频段内VSC对外表现为负电阻与电网电感串联后相当于电路中出现负阻尼振荡幅值不衰减反增长。这就是次同步谐振的直接物理来源。而由于dq轴不对称和控制耦合次同步扰动还会激发镜像的超同步分量形成成对的谐振特征。想要准确定量判断失稳边界靠时域仿真盲调参数太慢必须上阻抗模型配合Nyquist判据。2. 阻抗建模的完整技术路线2.1 建模路径怎么选解析法与扫频法配合阻抗建模主要有两条路线解析推导和数字扫频。解析推导在dq旋转坐标系下进行把电流环、PLL、采样延时、LCL滤波器全部做小信号线性化最终整理成一个2×2阻抗矩阵。优点是每一项都能对应到物理环节比如PLL带宽变化如何影响交叉耦合项、电流环增益如何拉低低频段阻抗幅值都能从公式里看出来缺点是与实际离散控制、PWM调制、非线性饱和等细节存在偏差。数字扫频则是在Simulink时域模型里注入小扰动信号测量扰动频率下的电压电流比值用FFT提取幅值和相位得到“实测阻抗”。优点是模型里有什么就测出什么开关纹波、控制器采样、限幅全都被包含进去缺点是计算量大扫频点设置不合理时曲线像狗啃一样低频段尤其慢。我的做法是两条腿走路先用解析模型画理论阻抗曲线再在Simulink里扫频对照两条曲线能对上这个模型才算可信。后续做参数敏感性分析时又以解析模型为主因为改一个参数重跑一遍时域扫频太费时间。2.2 dq域的VSC阻抗矩阵推导dq旋转坐标系下三相平衡系统变成直流量稳态工作点附近做小信号线性化非常方便。VSC从PCC看进去的输出阻抗写成2×2矩阵Z_dq(s) [Zdd(s) Zdq(s); Zqd(s) Zqq(s)]Zdd表示d轴电压扰动与d轴电流响应的关系Zdq表示q轴电压扰动对d轴电流的交叉耦合。理想对称、无耦合时ZdqZqd0但实际电流环和PLL都会引入耦合项。电流环对阻抗矩阵的贡献可以这样理解电流环把VSC变成一个受控电流源在电流环带宽内VSC等效阻抗被抬高近似等于(L1L2)s除以电流环开环增益超过电流环带宽后控制失效VSC输出阻抗退化为L1感抗这时LCL谐振峰才开始显露。所以电流环带宽决定了阻抗曲线转折的位置。PLL的贡献更隐蔽。PLL检测到PCC电压相位变化后会调整自己内部坐标系的参考角这个角度扰动导致d、q轴之间的信号互相串扰。PLL带宽以内的频段dq耦合量很大负电阻特性随之出现PLL带宽之外耦合逐渐减弱。因此PLL带宽是次同步段负电阻范围的直接决定因素。推导时把PLL看成一个小闭环PCC电压相位扰动Δθ经过PLL开环传递函数变成Δθ_pll再通过坐标旋转矩阵叠加到电流指令上最终在阻抗矩阵里形成Zdq和Zqd的附加项。2.3 LCL与电网侧的等效阻抗表达不光VSC要建模LCL滤波器和电网阻抗也要统一到频域表达。忽略控制时从网侧看进去的LCL等效阻抗为Z_LCL(s) sL1 (1/(sCf)) // (sL2 Zg(s))其中Zg(s) Rg sLgRg是电网等效电阻Lg是电网等效电感。这个式子算出来的幅频曲线在LCL谐振频率处有个尖峰尖峰越低对控制环路的相位裕度威胁越大。弱电网接入后Zg变大尖峰频率下移这也是为什么固定参数设计的LCL在弱电网下会失稳。序阻抗建模时频率要区分正负。对50Hz工频系统正序扰动频率fp若低于50Hz在dq域表现为负频率而镜像频率2×f1-fp由控制耦合产生。因此分析次同步谐振时必须同时关注fp和2×f1-fp这两个频率点单一频率的标量阻抗不够用。这也是为什么工程上常用对称分量法做序阻抗测量而不是简单地在三相上注入单一频率正弦波。3. 次同步/超同步谐振的频域判据与Nyquist验证3.1 次同步与超同步的镜像耦合关系次同步谐振指振荡频率低于工频常见5到45Hz超同步谐振是高于工频常见55到100Hz。两者不是独立的物理事件。三相平衡系统中频率fp的正序扰动经过dq坐标变换后变成频率为fp-f1的信号如果fp30Hzdq域里就是-20Hz。控制环虽然在线性工作点附近是线性的但dq框架下的负频率信号与正频率分量存在耦合所以30Hz扰动会同时激励出70Hz的响应70Hz就是2×f1-fp的镜像频率。因此次同步和超同步谐振在dq域对应同一个特征频率差别的只是正负号。采用对称分量法或直接分析dq阻抗矩阵才能把这对镜像关系完整抓住。如果只做单频率注入在30Hz看到稳定结论忽略了70Hz镜像通道很可能得出错误判断因为不稳定模态可能藏在镜像通道里。3.2 Nyquist判据在并网稳定性分析中的具体形式把系统划分为电网阻抗Zg和VSC等效阻抗Zvsc两个子系统后PCC处可以看成一个电压源串联Zg再串联Zvsc。VSC侧电流表达式分母含有ZgZvsc闭环稳定性取决于1Zg/Zvsc在右半平面是否存在零点。定义回比传递函数L(s) Zg(s) / Zvsc(s) Zg(s) × Yvsc(s)其中Yvsc是VSC的等效导纳。当只研究单输入单输出问题比如只分析正序次同步频段且忽略耦合时直接用标量Nyquist判据画出L(jω)从-∞到∞的频率特性曲线观察是否包围(-1, j0)点。不包围且开环无右半平面极点则闭环稳定。对于2×2的dq阻抗矩阵矩阵乘法得到回比矩阵L_dq(s) Zg_dq(s) × Yvsc_dq(s)这时必须用广义Nyquist判据也就是特征轨迹法。取L_dq的特征值λ1、λ2分别画两条Nyquist轨迹两条都不包围(-1,j0)才算稳定。工程上两条特征轨迹通常一条对应正序模态、一条对应负序模态结合物理分析很容易对应到次同步或超同步振荡。3.3 失稳时Nyquist曲线和阻抗特征的对应以PLL导致的负电阻为例。在5到20Hz频段PLL的相位跟踪使VSC对外呈现负电阻也就是说该频段Zvsc的实部为负。电网等效Zg在低频段以感抗为主实部很小那么Zg/Yvsc的相位关系会使得回比轨迹绕过-1点。时域上表现为次同步电流分量幅值按指数规律增长仿真里甚至能直接看到电流包络发散对应Nyquist曲线包围-1。在SCR2、PLL带宽30Hz的参数组合下我的扫频结果在25Hz附近明显出现负电阻正序阻抗幅频曲线在该频段的相位从接近-90度直接翻到80度左右Nyquist轨迹绕过了(-1,j0)。而把PLL带宽降到15Hz后负电阻范围缩小到更低的频段SCR2条件下不再包围-1点时域振荡也随之消失。这个对比验证了阻抗方法的有效性不需要反复跑几十秒的时域仿真只看阻抗曲线和Nyquist图就能判断参数调整方向。4. Simulink仿真实现与扫频验证步骤4.1 主电路与控制结构搭建要点我用Simscape Electrical里的三相全桥VSC模块搭建主电路直流侧用理想直流源模拟直流母线交流侧依次串L11.5mH、滤波电容Cf30uF、L20.5mH再经过等效电网电阻Rg和电感Lg接到理想三相电压源。滤波电容采用星形连接中性点悬空即可。仿真步长固定1μs因为后续要做FFT提取变步长仿真在开关时刻附近容易跳变导致提取结果全是毛刺。控制系统用dq同步旋转坐标系下的电流内环加PI调节器。电流环带宽取500HzPI参数按工程法估算Kp(L1L2)×ωc0.002×2π×500≈6.28Ki取Kp×ωc/10≈2000左右再在Simulink里微调到阶跃响应不过冲。PLL用标准三相同步锁相环结构带宽设计30HzKp_pll按2×ξ×ωn换算Ki_pll按ωn²换算其中ξ取0.707。模块清单大致是三相电压电流测量、Park变换、Clark变换、PID Controller、PWM Generator、Universal Bridge、Three-Phase Source、Series RLC Branch。需要特别注意的是PWM发生器的载波频率要和仿真步长匹配固定步长至少要比载波周期小20倍10kHz载波对应1μs步长在数值上是稳定的。4.2 双频率注入扫频的脚本设计扫频法获取VSC阻抗的基本原理在PCC处串联一个理想电压源小扰动Δv扰动频率设为fp幅值取基波幅值的1%到3%然后测同频率下的电压和电流响应阻抗就是Z(fp)ΔV(fp)/ΔI(fp)。但前面强调过只注入单频率会漏掉镜像耦合项所以要用双频率注入法。实际操作分两次注入第一次在PCC注入频率为fp的正序扰动同时记录fp和镜像频率2×f1-fp的电压电流响应第二次注入镜像频率的负序扰动再记录两个频率的响应。两次数据联立解方程才能解耦得到自阻抗和互阻抗。这个流程可以写成MATLAB脚本外层循环扫频、内层循环两次注入f_scan 5:5:500; % 扫频列表 results zeros(length(f_scan), 2); for k 1:length(f_scan) fp f_scan(k); fm 2*f1 - fp; % 镜像频率 data1 run_simulink(fp, 0.02, 1.0); % 注入fp仿真1s data2 run_simulink(fm, 0.02, 1.0); % 注入镜像仿真1s [Z_pp, Z_pm] extract_impedance(data1, fp, fm); [Z_mp, Z_mm] extract_impedance(data2, fp, fm); % 联立解耦得到正序自阻抗 results(k,1) fp; results(k,2) (Z_pp - Z_pm*Z_mp/Z_mm); end低频点比如5Hz注入时每个点至少仿真2秒才能有10个完整扰动周期整个扫频下来仿真时长很可观。我通常先用稀疏扫频比如10Hz步长找谐振大致范围再在峰值附近加密到1Hz这样能把总仿真时间控制在一小时以内。4.3 阻抗提取、Nyquist绘图与失稳判定Simulink里把PCC电压电流通过To Workspace模块按固定采样率导出到MATLAB工作区采样率建议设为100kHz以上确保FFT能分辨到500Hz范围内的扰动分量。FFT提取前要做整周期截取和加窗我习惯先算扰动频率对应的整数周期数截取整数个周期数据后加Hanning窗再做FFT取对应频率点的复数幅值。得到扫频阻抗数组后稳定性判定脚本很简单。把Zvsc和Zg构造回比L用nyquist函数或自己画实部虚部曲线L Zg ./ Zvsc; % 逐频率点计算回比 figure; plot(real(L), imag(L), b-, LineWidth, 1.2); hold on; plot(-1, 0, ro, MarkerSize, 8, LineWidth, 2); xlabel(实部); ylabel(虚部); title(回比L(s)的Nyquist轨迹); grid on;判稳不只要看图建议用绕数自动判别计算轨迹相对-1点的角度累计变化量若绝对累计等于0则稳定。配上不同SCR值批量跑一遍输出Nyquist图和对应时域电流波形就能快速定位临界失稳点。我实际验证结果是SCR5时曲线离-1点很远时域无振荡SCR2时25Hz附近轨迹绕过-1点时域电流在0.3s后出现明显次同步振荡仿真和判据完全一致。5. 实操中的高频问题与排查经验5.1 扫频曲线毛刺多、抖动大阻抗扫频最常见的烦恼是曲线毛刺。注入幅值太低扰动信号淹没在开关纹波里太高VSC进入非线性区产生大量谐波污染响应。经验值是注入幅值取额定电压的1%到3%比如380V系统取5到10V的扰动源。另外FFT窗口务必做整周期截取加Hanning窗比矩形窗效果好得多。采样率固定且与载波同步也能显著减少开关纹波泄漏。5.2 Nyquist判据的边界陷阱Nyquist曲线必须包含负频率段尤其使用序阻抗时负频率段对应镜像频率只画正频率会高估稳定性。之前我遇到过仿真波形明明有振荡但只画正频段Nyquist却判稳定的情况后来补上2f1-fp负频段数据后才发现-1点被包围了。回比的定义形式Zg/Zvsc还是Yvsc×Zg可以互换但画图前要确认开环右半平面极点数否则绕数算错会把结论完全搞反。5.3 PLL参数与次/超同步的跷跷板效应调试中会发现减小PLL带宽压住了次同步振荡超同步方向却又冒出新问题这是因为PLL带宽改变同时改变了dq耦合的相位和幅值。单独调PLL是个死胡同。正确做法是结合阻抗曲线看整个频段的包络配合增加电流环相位裕度或者在PLL前加二阶低通滤波限制高频耦合再重新扫频验证全频段。定量分析时用解析模型扫参数阵比时域仿真快几个数量级。5.4 提速技巧从手写FFT到frestimateSimulink Control Design自带的frestimate工具可以在稳态工作点自动注入小信号并提取频响省去手写扫频循环的麻烦。但它本质上是频域线性化工具对PWM开关这类强非线性环节会产生误差。我实测下来frestimate在1kHz以内给出的阻抗曲线和手写稳态扫频基本一致但超过500Hz误差变大。所以我的习惯是初步扫描和参数趋势分析用frestimate快速出结果最终验证用手写双频率注入扫频保证阻抗数据尽量贴近物理事实。6. 一点个人复盘踩过几次坑之后我最大的体会是阻抗建模这件事解析公式和数字扫频缺一不可。解析公式最大价值不是算出精确数值而是告诉你每个参数在哪个频段起作用、朝哪个方向调数字扫频则负责把真实模型的细节纳入考量两条曲线对上了你才有底气拿着Nyquist判据去指导现场参数。另一个体会是弱电网稳定性分析一定要把次同步和超同步当成一对来查只盯一个频段很容易被镜像耦合骗过去。最后分享一个小技巧把SCR、PLL带宽、电流环带宽设成脚本变量批量出Nyquist图和时域波形做对照表项目评审时这套材料非常有说服力比单张波形图管用得多。