弱电网馈线阻抗大、系统惯量低并网逆变器VSC的LCL滤波结构与数字控制延时叠加后很容易在次同步和超同步频段出现负阻特性引发宽频振荡。这种问题靠时域仿真盲试很难定位根因阻抗建模加Nyquist判据是眼下最实用的分析手段。这篇文章我结合自己做过的Simulink仿真经历把LCL-VSC阻抗建模、次/超同步谐振机理、Nyquist判据验证的完整流程拆开讲一遍从参数计算到扫频实现再到波形判读和排错方法适合正在做并网稳定性分析、或者被振荡问题折磨的电力电子方向研究生和工程师参考。1. 为什么弱电网下的LCL-VSC容易发生次超同步谐振1.1 弱电网到底“弱”在哪从短路比SCR说起弱电网没有一个绝对统一的定义工程上最常用的指标是短路比SCR也就是并网点短路容量与变流器额定功率的比值。SCR越小电网越弱。通常SCR在10以上算强电网3到10之间算中等强度低于3就属于弱电网低于1.5甚至会被视为极弱电网。弱电网的物理表现是线路阻抗变大、电压支撑能力下降、频率波动加剧而并网变流器是通过锁相环去跟踪电网电压相位的电网电压一旦被功率传输“压弯”锁相环看到的相位和幅值就会和理想电网有偏差整个控制系统的工作点跟着偏移。这里有一个很多人忽略的细节弱电网下的工作点偏移不是静态的而是随输出功率实时变化的。比如一台额定功率1 MW的VSC接到SCR2的电网满载时并网点电压可能会被抬高或跌落好几个百分点甚至触发低电压穿越逻辑。控制器的PI参数是在额定工作点整定的工作点一偏移实际控制性能就和设计值差了一大截。这种“参数失配”是弱电网振荡的重要温床。还有一个关键点弱电网的线路阻抗以感性为主R/X比较低但它不是纯感性。在做阻抗建模时如果只考虑电感而忽略电阻会把谐振峰估得偏高阻尼也估得偏乐观。尤其当线路比较长或者用了多个变压器时R/X比可能到0.3~0.5这时候电阻对谐振点的阻尼贡献已经不容忽视了建模时最好把线路阻抗的实部一并算进去。1.2 次/超同步谐振的物理图像与工程危害所谓次同步谐振指的是振荡频率低于工频50 Hz比如10~45 Hz范围超同步谐振则高于工频比如55~90 Hz甚至上百Hz。早期电力系统的次同步谐振多发生在汽轮发电机轴系这里的次/超同步振荡则完全不同根源在于变流器控制回路的动态特性和LCL滤波器、电网阻抗发生了“电气共振”。用一个生活化的类比你推一个秋千如果每次推的节奏正好踩在秋千的固有频率上秋千就会越荡越高。变流器控制回路相当于“推手”LCL滤波器和电网等效电抗组成了一个“秋千”控制延时决定了推手的节奏偏差。当电网变弱、等效电抗变大这个“秋千”的固有频率会下移一旦落入控制带宽附近控制环路本身就会提供负阻尼振荡就起来了。工程危害主要体现在三方面一是并网点电压和电流出现明显纹波电能质量恶化二是振荡严重时触发过流保护或锁相环失锁导致逆变器频繁脱网三是持续振荡会使功率器件和电容承受额外应力加速老化甚至造成炸机。我在仿真里见过最典型的现象是功率从80%负载升到满载后并网电流出现约25 Hz的调制包络同时直流侧电压有低频波动这正是次同步振荡的标志。超同步振荡则往往体现为电流波形上的高频“毛刺”频谱分析能看到5~7次谐波附近有明显尖峰。2. 阻抗建模把变流器“翻译”成电路的语言2.1 序阻抗与dq阻抗到底选哪个阻抗建模的核心思想是把变流器从并网点看进去的端口特性等效成一个随频率变化的阻抗然后和电网阻抗串联起来分析稳定性。但这里有个选择用正负序阻抗还是dq轴阻抗。正负序阻抗的物理意义直观尤其适合分析三相不平衡或不对称工况测量上也方便可以在仿真里注入正序或负序的小扰动电压提取对应频率的电流响应。dq轴阻抗则是在同步旋转坐标系下定义的控制器的PI环节、锁相环、电压前馈都是在dq坐标系里实现的因此dq阻抗能更自然地反映控制参数的影响。实际分析次/超同步振荡我更推荐使用dq阻抗矩阵Zdd、Zdq、Zqd、Zqq或者等效的复数序阻抗。原因很简单次/超同步振荡往往是正序分量和负序分量耦合出现的单看某一序阻抗会漏掉一半信息。比如频率为f0-f1的次同步分量在正序dq坐标系里表现为频率-f1的扰动在负序坐标系里表现为f1的扰动两者的耦合路径通过锁相环和不对称控制产生。只用正序阻抗会把锁相环动态对负序通路的影响忽略掉。还有一个实测经验在Simulink里做阻抗扫频时dq阻抗需要分别在d轴和q轴注入扰动然后通过FFT提取不同频率下的响应计算量比单序扫频大一倍但结果信息完整。如果只关注控制参数的稳定性趋势可以先做序阻抗简化分析锁定危险频段后再用dq阻抗矩阵做精确校验。2.2 LCL滤波器与数字控制延时的耦合效应LCL滤波器相比单L滤波器在高频衰减能力上优势明显但在谐振频率处存在一个无阻尼的尖峰。这个尖峰本身不致命麻烦的是和数字控制延时叠加后会在某个频段把相位拉低让电流环的稳定裕度暴跌。数字控制延时主要包括采样延时、计算延时和PWM调制延时。常规做法是总延时等效为1.5个采样周期半个周期的计算延时加一个周期的PWM零阶保持延时。采样频率10 kHz、开关频率10 kHz时1.5个采样周期就是150微秒对应在1000 Hz附近会产生约54度的相位滞后。这个滞后量相当可观直接决定了你还能用多少相位裕度。LCL谐振频率一般设计在开关频率的1/10到1/6之间也就是1~1.7 kHz。这个频段恰好和控制延时造成的相位滞后区重叠所以如果不加有源阻尼仅仅靠电流环PI谐振峰附近的Nyquist曲线很容易进入单位圆系统就变得不稳定。这也是为什么LCL-VSC的阻抗建模必须把控制延时准确建模进去而不是简单用一个理想传递函数。我在仿真里试过把延时从1.5Ts改成0.5Ts谐振峰处的阻抗实部直接从-3 Ω变成1 Ω稳定性结论完全反过来。2.3 弱电网线路阻抗的影响弱电网的线路阻抗会把LCL的谐振特性进一步改变。从并网点向电网看电网阻抗和LCL的网侧电感串联等效成更大的总电感这就使得原本的LCL谐振频率向低频移动。当线路阻抗足够大时谐振频率可能从1.2 kHz掉到几百Hz甚至进入电流环带宽范围这时候就不是单纯的高频谐振问题了而是整个电流环和电网电抗之间形成低频振荡。从阻抗比的角度看稳定性取决于变流器输出阻抗Zvsc与电网阻抗Zg的比值Zg/Zvsc。电网阻抗增大阻抗比曲线在全频段的幅值普遍抬升与单位圆相交的风险显著增加。特别要注意的是电网阻抗变化还会改变Nyquist曲线的包围次数不是简单地“裕度变小”有时会从稳定变成不稳定而且在某个中间短路比下可能出现失稳区域。工程上常用短路比扫描的方式观察系统稳定性边界。比如固定变流器参数不变从SCR10逐步减小到2记录每一次Nyquist曲线与(-1,0)点的位置关系就能画出稳定域图。这个稳定域图对工程选型很有价值因为我们可以反推需要多大的最小短路比才能保证安全并网。3. Nyquist判据评估稳定性的完整流程3.1 为什么用奈奎斯特判据而不用特征值并网变流器和电网组成的闭环系统是一个高阶、多输入多输出的系统理论上可以用状态空间特征值分析算出每个模态的阻尼比。但特征值分析需要拿到全系统详细参数包括锁相环内部状态、滤波器状态、控制器的所有积分状态这在工程现场很难凑齐。阻抗法加Nyquist判据的优势在于黑箱化。只要能从并网点测量或仿真得到变流器阻抗Zvsc(s)和电网阻抗Zg(s)闭环稳定性就可以通过判断Zg(s)/Zvsc(s)的Nyquist曲线是否包围(-1,j0)来判断。这个思路简化了系统模型把我不关心的内部细节全部“折叠”进输入阻抗里非常契合工程上的“端口等效”习惯。还有一个优势是频域直观性。Nyquist曲线能同时给出相位裕度和幅值裕度还能直接看出临界不稳定频点。配合Bode图你能一眼判断出哪个频段的阻抗相角低于-90度这就是潜在的负阻尼区间然后针对性地调整相应频段的控制参数。特征值分析只能告诉你“不稳定”但很难直接告诉你“该调哪个参数”。3.2 基于阻抗比的Nyquist判据实现具体做法是画出T(s) Zg(s)/Zvsc(s)的Nyquist曲线判断T(s)对(-1,j0)点的包围。根据Nyquist稳定性判据当且仅当T(s)的Nyquist曲线逆时针包围(-1,j0)的圈数等于T(s)在右半平面的极点数时闭环系统稳定。这里有个容易踩的坑Zvsc(s)或Zg(s)本身可能是非最小相位系统在右半平面存在极点。如果直接套用“看曲线有没有包住-1点”的简化版判据可能得出错误结论。正确做法是先检查两个阻抗本身的极点分布或者用广义Nyquist判据处理。实际工程中我都是先把Zg(s)/Zvsc(s)分解成幅值和相角然后画Nyquist图。如果曲线从第三象限穿向第二象限时从(-1,j0)点左侧经过说明相位裕度不足如果曲线直接绕过(-1,j0)点说明系统可能在某个频率发生负阻尼振荡。更量化一点可以定义阻抗比在穿越0 dB处的相位裕度PM 180° ∠T(jωc)要求PM大于30°~45°才比较安全。3.3 稳定性裕度怎么量化幅值裕度与相位裕度幅值裕度关注的是阻抗比幅值达到1时相角距离-180度的余量相位裕度关注的是相角达到-180度时幅值距离1的余量。两者都满足要求系统才算有足够的安全裕度。在弱电网下幅值裕度往往比相位裕度更先被突破。原因是电网阻抗增大直接抬高阻抗比幅值低频段尤其明显。比如原来幅值裕度12 dBSCR从8降到3后可能变成4 dB再降就逼近0 dB。这时候即使Nyquist曲线没有包围-1点系统也处于临界状态线路参数稍微波动就可能进入不稳定区。我自己的习惯是同时看阻抗比Nyquist曲线和变流器阻抗实部。如果某个频段Zvsc的实部为负说明该频段变流器呈“负电阻”特性为振荡提供能量如果负阻频段和阻抗比幅值大于0 dB的频段重叠那基本可以判定会发生谐振。这个方法比单纯看裕度更直观定位问题频段也更快。4. Simulink仿真实现与实操要点4.1 仿真平台搭建主电路与控制链路Simulink里搭建弱电网LCL-VSC仿真模型核心分四块主电路、控制器、锁相环、阻抗扫频和分析工具。主电路用Simscape Electrical或Specialized Power Systems模块。直流侧可以用理想直流源代替也可以加一个直流电压控制环看你想研究什么问题。交流侧顺序VSC桥臂输出经过LCL滤波器再经过线路阻抗RgLg接到理想三相电压源用电压源的幅值和频率模拟强电网用Rg和Lg模拟弱电网特性。控制链路建议用离散模型采样周期Ts取开关周期。电流内环在dq坐标系下实现外环是直流电压控制或功率控制。PWM用规则采样或载波调制注意把调制波到输出电压的零阶保持延时模拟出来。这里我一般不用Simulink自带的三相逆变桥里的理想开关而是用平均模型先验证控制逻辑再做开关模型看谐波细节两者结合效率最高。建模时的关键是把数字控制延时明确建模。常见做法是在PWM调制模块前加一个单位延时模块1/z代表一拍计算延时PWM零阶保持物理上已经由调制器天然形成。如果你用的是Simscape里的通用桥可以通过把PWM采样保持设置成“自然采样”或“对称规则采样”来近似等效。4.2 阻抗扫频与Nyquist曲线绘制的实现方法阻抗扫频的基本思路是在并网点叠加小扰动电压测量对应频率的电流响应用FFT提取幅值和相位算出Z(jω)V(jω)/I(jω)。这里小扰动幅值一般取额定电压幅值的1%~5%既要保证信噪比又不能让系统进入非线性区。我常用的方法是分频点逐个注入。设置一个频率从1 Hz到2000 Hz的对数分布扫描列表每个频点运行一次仿真等待系统稳态后向并网点电压注入一个该频率的正弦小扰动。仿真时间需要覆盖多个扰动周期一般取扰动周期的20倍以上加启动暂态时间。然后对电压和电流波形做FFT提取扰动频率处的分量。下面这段是典型的Matlab脚本框架用来计算阻抗并保存数据% 假设仿真已经输出扰动后的电压v_t和电流i_t采样时间ts freq_list logspace(0, log10(2000), 50); Z_meas zeros(size(freq_list)); for k 1:length(freq_list) fk freq_list(k); % 提取最后一个周期的数据避免暂态影响 win_len round(20 / fk / ts); v_seg v_t(end-win_len1:end); i_seg i_t(end-win_len1:end); % 用FFT提取扰动频率分量 N length(v_seg); Vf 2/N * sum(v_seg .* exp(-1j*2*pi*fk*(0:N-1)*ts)); If 2/N * sum(i_seg .* exp(-1j*2*pi*fk*(0:N-1)*ts)); Z_meas(k) Vf / If; end注意这里没有用自带fft函数取幅值而是用复指数相关运算好处是能精确提取单一频率分量不受频谱泄漏干扰。如果采样时间不是扰动周期的整数倍FFT窗口泄漏会非常严重而相关运算天然抗泄漏。得到阻抗频率响应后用nyquist(series(Zg, Zvsc))或者直接画Zg/Zvsc的复平面曲线。实际中阻抗数据是离散频点需要先用frd或idfrd对象封装再转成传递函数拟合。我通常用tfest做有理函数拟合设定分子分母阶数然后把拟合结果用于Nyquist分析和裕度计算。4.3 典型结果解读从谐振频率到稳定域仿真做完后第一个要看的是阻抗幅值和相角曲线。正常情况下变流器阻抗在低频段呈感性相角接近90度中频段受电流环PI影响出现相角低谷LCL谐振频率附近有一个阻抗尖峰。如果发现某个频段相角低于-90度说明变流器在该频段呈容性或负阻特性需要重点关注。以次同步谐振为例我见过一组典型数据SCR3时Zg/Zvsc的Nyquist曲线在约28 Hz处穿过单位圆相位裕度只有9度系统时域仿真中并网电流出现明显的28 Hz振荡包络。把电网阻抗从Lg2 mH减到1 mH后Nyquist曲线整体内缩相位裕度恢复到35度时域振荡消失。这个对照实验很直观地说明了弱电网短路比对稳定性的主导作用。超同步谐振的判定类似但频率更高更容易受LCL谐振峰和控制延时影响。例如开关频率10 kHz、采样频率10 kHz的VSCLCL谐振频率设计在1.3 kHz当电网电抗增大到一定程度阻抗比曲线可能在1.1 kHz附近穿越-1点此时并网电流频谱会在1.1 kHz左右出现尖峰这就是超同步振荡。处理办法通常是调整有源阻尼系数或者在控制器里增加陷波器。5. 常见问题与排查技巧实录5.1 仿真中遇到的高频发散、缓慢振荡高频发散多半是仿真步长太大或者PWM开关事件没有被精确捕捉。如果你的仿真在开关频率附近出现发散先把最大步长设成开关周期的1/50比如10 kHz开关频率步长取2微秒。另一个原因是LCL电容支路没有串阻尼电阻仿真模型里无阻尼谐振会导致数值振荡建议先加一个很小的阻尼电阻比如0.1 Ω看趋势再换回有源阻尼。缓慢振荡则更像控制系统问题常见来源是锁相环带宽和电流环带宽耦合。弱电网下锁相环带宽不能设太高一般取100~200 Hz就足够了太高会把电网电压扰动放大进电流指令产生低频振荡。我调试时习惯先把锁相环带宽降到100 Hz看振荡是否消失如果消失问题基本就锁定在锁相环参数上。5.2 扫频阻抗曲线的“毛刺”处理方法扫频阻抗曲线不光滑最常见的两个原因一是扰动幅值太大系统响应进入了非线性区二是FFT相关计算时数据窗长度不够导致频率分辨率不足。处理上先把扰动幅值降到额定电压的1%左右再把每个频点的稳态等待时间延长到100个扰动周期以上。如果曲线还是有毛刺检查是否同时存在直流偏置或频率偏移可以在相关运算前先对电压和电流做去均值处理。还有一个小技巧在阻抗扫频时把扰动信号叠加在d轴或者α轴上而不是直接叠加在三相电压上这样可以减少三相不平衡带来的附加分量。5.3 参数灵敏度分析避坑指南做参数灵敏度分析时千万不要一次同时改变多个参数否则出了问题根本定位不了。正确做法是控制变量法先固定其他参数只扫描电网阻抗Lg画出不同Lg下的Nyquist曲线族再固定Lg扫描锁相环带宽最后扫描有源阻尼系数。另外要注意阻抗模型是线性化的只在某个工作点附近有效。如果你要分析大功率工况下的稳定性需要在多个功率工作点分别建模和扫频不能拿半载工况的阻抗曲线去判断满载稳定性。我在实践中发现满载和半载下的次同步谐振频率可以相差十几Hz如果拿错工作点的数据设计出来的阻尼参数可能完全无效。还有一个容易忽略的细节Simulink仿真的电气模型离散化步长会影响高频段的阻抗精度。开关模型里PWM谐波会污染扫频结果最好在做阻抗扫频时使用平均模型等确定了稳定域再用开关模型做最终验证。这样既保证精度又节省时间。